Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

1. Ασφάλεια πληροφοριακών συστημάτων και ασφαλής κωδικοποίηση

  • Θεμελιώδεις Αρχές Ασφάλειας: Εμπιστευτικότητα, Ακεραιότητα και Διαθεσιμότητα (CIA) στο πλαίσιο εφαρμογών Java.
  • Κύκλος Ζωής Ανάπτυξης Ασφαλούς Λογισμικού (SSDLC): Ενσωμάτωση της ασφάλειας από τις απαιτήσεις έως την ανάπτυξη.
  • Παραδείγματα Ασφαλούς Κωδικοποίησης: Άμυνα σε βάθος, ελάχιστο προνόμιο και ασφαλείς προεπιλογές.
  • Τυπικές Κατηγορίες Ευπαθειών: Κατανόηση του CWE (Common Weakness Enumeration) και του OWASP.

2. Ασφάλεια διαδικτυακών εφαρμογών

  • Βαθύτερη Ανάλυση του OWASP Top Ten: Λεπτομερής ανάλυση της Injection, Broken Authentication και Sensitive Data Exposure.
  • Cross-Site Scripting (XSS): Σενάρια Reflected, Stored και DOM-based XSS σε Java/JSP.
  • Cross-Site Request Forgery (CSRF): Μηχανισμοί επίθεσης και υλοποίηση Anti-CSRF tokens.
  • Διαχείριση Συνόδου: Ασφάλεια cookies, καθήλωση συνόδου (session fixation) και διαχείριση χρονικού ορίου.
  • Ασφάλεια API: Προστασία REST και SOAP τελικών σημείων από κατάχρηση.

3. Ασφάλεια υπηρεσιών ιστού

  • Υπηρεσίες Ιστού vs. Παραδοσιακές Διαδικτυακές Εφαρμογές: Διαφορές στις επιφάνειες επίθεσης.
  • Ασφάλεια Επιπέδου Μεταφοράς: Ρύθμιση SSL/TLS για πελάτες και διακομιστές Java.
  • Ασφάλεια Μηνύματος: Ακεραιότητα και Εμπιστευτικότητα σε επίπεδο ωφέλιμου φορτίου.
  • Πρότυπα Αυθεντικοποίησης: Υλοποίηση OAuth 2.0, OpenID Connect και JWT (JSON Web Tokens).

4. Ασφάλεια XML

  • Ευπάθειες Ανάλυσης XML: Πρόληψη επιθέσεων XML External Entity (XXE).
  • Επικύρωση Σχήματος XML: Καλές πρακτικές για αυστηρή εφαρμογή σχήματος.
  • Ψηφιακές Υπογραφές XML: Υλοποίηση υπογραφών για διασφάλιση μη αποποίησης.
  • Κρυπτογράφηση XML: Τυπικές προσεγγίσεις για κρυπτογράφηση περιεχομένου XML.

5. Θεμέλια ασφάλειας Java

  • Η Αρχιτεκτονική Ασφάλειας της Java: Το πακέτο java.security και η αρχιτεκτονική παρόχων.
  • Πάροχοι Ασφάλειας: Εγκατάσταση και ρύθμιση παρόχων όπως το Bouncy Castle.
  • Έλεγχος Πρόσβασης: Αρχεία πολιτικής, Δικαιώματα και ο Διαχειριστής Ασφάλειας (Παραδοσιακός vs. Σύγχρονος).
  • Διαχείριση KeyStore: Δημιουργία και διαχείριση keystores και truststores για πιστοποιητικά.

6. Πρακτική κρυπτογραφία

  • Κρυπτογραφικοί Αλγόριθμοι: Επισκόπηση συμμετρικών (AES), ασύμμετρων (RSA, ECC) και συναρτήσεων κατακερματισμού (SHA-256/512).
  • Παραγωγή Τυχαίων Αριθμών: Οι κίνδυνοι του java.util.Random έναντι του java.security.SecureRandom.
  • Διαχείριση Κλειδιών: Στρατηγικές δημιουργίας, αποθήκευσης και εναλλαγής κλειδιών.
  • Αρχιτεκτονική Κρυπτογραφίας Java (JCA): Χρήση των κλάσεων Cipher, MessageDigest και Mac.
  • Επέκταση Κρυπτογραφίας Java (JCE): Κατανόηση αρχείων πολιτικής και απεριόριστης ισχύος δικαιοδοσίας.

7. Υπηρεσίες ασφάλειας Java

  • SSL/TLS στη Java: Χρήση SSLSocketFactory και HttpsURLConnection.
  • Διαχειριστές Εμπιστοσύνης (Trust Managers): Προσαρμογή επαλήθευσης εμπιστοσύνης για περιβάλλοντα ιδιωτικού PKI.
  • Αυθεντικοποιητές (Authenticators): Προγραμματιστική αυθεντικοποίηση με χρήση Authenticator.getDefault().
  • Ανάλυση Πιστοποιητικών: Ανάγνωση και ανάλυση πιστοποιητικών X.509 προγραμματιστικά.

8. Ασφάλεια Java EE

  • Δηλωτική Ασφάλεια: Έλεγχος πρόσβασης βάσει ρόλων (RBAC) με χρήση web.xml και annotations.
  • Προγραμματιστική Ασφάλεια: Χρήση HttpServletRequest.isUserInRole() και getRemoteUser().
  • JAAS (Υπηρεσία Αυθεντικοποίησης και Εξουσιοδότησης Java): Ρύθμιση login.conf και υλοποίηση LoginModule.
  • Ασφάλεια Servlets: Περιορισμοί ασφάλειας διαχειριζόμενοι από τον container και μέθοδοι αυθεντικοποίησης (FORM, BASIC, DIGEST).

9. Συνήθη σφάλματα κωδικοποίησης και ευπάθειες

  • Μη ασφαλής αποσειριοποίηση (Insecure Deserialization): Οι κίνδυνοι του ObjectInputStream και παράκαμψη ελέγχων ασφαλείας.
  • Command Injection: Μείωση των ευπαθειών εκτέλεσης σε επίπεδο λειτουργικού συστήματος.
  • Path Traversal: Καθαρισμός εισόδων συστήματος αρχείων για αποφυγή διάσχισης καταλόγων.
  • Κατάχρηση Reflection: Κίνδυνοι που σχετίζονται με java.lang.reflect και παράκαμψη ελέγχου πρόσβασης.
  • Σταθερές Διαπιστευτηρίων (Hardcoded Credentials): Εντοπισμός και αφαίρεση μυστικών από τον πηγαίο κώδικα.
  • Σφάλματα Υλοποίησης Κρυπτογραφίας: Χρήση λειτουργίας ECB, αδύναμων κλειδιών ή στατικών IVs.

10. Πηγές γνώσης

  • Εργαλεία Στατικής Ανάλυσης: Χρήση SonarQube, Checkmarx και Fortify για αυτοματοποιημένη σάρωση.
  • Εργαλεία Δυναμικής Ανάλυσης: Επισκόπηση των Burp Suite και OWASP ZAP.
  • Βάσεις Δεδομένων CVE: Πώς να παρακολουθείτε και να αντιδράτε σε νέες ευπάθειες του πλαισίου Java.
  • Προτεινόμενες Αναγνώσεις: Λίστα βιβλίων, τεκμηρίωσης και λιστών ελέγχου ασφαλούς κωδικοποίησης.

Απαιτήσεις

Κανένα.

 21 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (4)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες