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

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

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): Μηχανισμοί επίθεσης και υλοποίηση token Anti-CSRF.
  • Διαχείριση συνεδριών: Ασφάλεια cookies, session fixation και διαχείριση χρονικών ορίων.
  • Ασφάλεια API: Προστασία REST και SOAP endpoints από κατάχρηση.

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

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

4. Ασφάλεια XML

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

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

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

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

  • Κρυπτογραφικοί αλγόριθμοι: Επισκόπηση συμμετρικών (AES), ασύμμετρων (RSA, ECC) αλγορίθμων και συναρτήσεων κατακερματισμού (SHA-256/512).
  • Παραγωγή τυχαίων αριθμών: Οι κίνδυνοι του java.util.Random έναντι του java.security.SecureRandom.
  • Διαχείριση κλειδιών: Στρατηγικές δημιουργίας, αποθήκευσης και εναλλαγής κλειδιών.
  • Java Cryptography Architecture (JCA): Χρήση των κλάσεων Cipher, MessageDigest και Mac.
  • Java Cryptography Extension (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 Authentication and Authorization Service): Διαμόρφωση login.conf και υλοποίηση LoginModule.
  • Ασφάλεια Servlet: Περιορισμοί ασφαλείας διαχειριζόμενοι από το container και μέθοδοι ταυτοποίησης (FORM, BASIC, DIGEST).

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

  • Μη ασφαλής αποσειριοποίηση: Οι κίνδυνοι του ObjectInputStream και η παράκαμψη ελέγχων ασφαλείας.
  • Command Injection: Μετριασμός ευπαθειών εκτέλεσης σε επίπεδο λειτουργικού συστήματος.
  • Path Traversal: Εξυγίανση εισόδων συστήματος αρχείων για την πρόληψη directory traversal.
  • Κατάχρηση Reflection: Κίνδυνοι που σχετίζονται με το java.lang.reflect και την παράκαμψη ελέγχου πρόσβασης.
  • Σκληροκωδικοποιημένα διαπιστευτήρια: Εντοπισμός και αφαίρεση μυστικών από τον πηγαίο κώδικα.
  • Σφάλματα υλοποίησης κρυπτογραφίας: Χρήση λειτουργίας ECB, αδύναμων κλειδιών ή στατικών IV.

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

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

Απαιτήσεις

Καμία.

 21 Ώρες

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


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

Σχόλια (4)

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

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