Απενεργοποίηση SSLv2 και αδύναμων κρυπτογραφικών αλγορίθμων
Συμμόρφωση με PCI - Απενεργοποίηση SSLv2 και αδύναμων κρυπτογραφικών αλγορίθμων
Σύμφωνα με το Πρότυπο Ασφάλειας Δεδομένων της Βιομηχανίας Καρτών Πληρωμής (PCI DSS), οι έμποροι που χειρίζονται δεδομένα πιστωτικών καρτών υποχρεούνται να χρησιμοποιούν ισχυρά πρωτόκολλα κρυπτογράφησης και ασφάλειας, όπως SSL/TLS ή IPSEC, για την προστασία των ευαίσθητων δεδομένων των κατόχων καρτών κατά τη μεταφορά τους μέσω ανοιχτών, δημόσιων δικτύων.
Τι σημαίνει αυτό; Για να επικυρώσετε τη συμμόρφωσή σας με το PCI DSS σε αυτόν τον τομέα, θα πρέπει να βεβαιωθείτε ότι οι σχετικοί διακομιστές στο περιβάλλον PCI σας έχουν ρυθμιστεί έτσι ώστε να μην επιτρέπουν τη χρήση του Secure Sockets Layer (SSL) έκδοση 2, καθώς και «αδύναμων» κρυπτογραφικών αλγορίθμων. Επίσης, πρέπει να πραγματοποιείτε τριμηνιαίες σαρώσεις ευπάθειας ασφάλειας PCI στα συστήματα PCI που είναι εκτεθειμένα σε εξωτερικούς κινδύνους. Χωρίς την απενεργοποίηση του SSLv2 και των αδύναμων κρυπτογραφικών αλγορίθμων, είναι σχεδόν βέβαιο ότι θα αποτύχετε στις σαρώσεις. Αυτό με τη σειρά του θα οδηγήσει σε μη συμμόρφωση, με τους σχετικούς κινδύνους και συνέπειες.
Το δίλημμα του SSLv2
Ο διακομιστής σας υποστηρίζει SSLv2;
Πώς να το ελέγξετε:
Θα πρέπει να έχετε εγκαταστήσει το OpenSSL στο σύστημα από το οποίο θα εκτελέσετε τις δοκιμές. Μόλις εγκατασταθεί, χρησιμοποιήστε την ακόλουθη εντολή για να ελέγξετε τον διακομιστή ιστού σας, υποθέτοντας ότι η θύρα 443 είναι η θέση από την οποία παρέχετε συνδέσεις https:
# openssl s_client -ssl2 -connect SERVERNAME:443
Εάν ο διακομιστής δεν υποστηρίζει SSLv2, θα λάβετε ένα σφάλμα παρόμοιο με το ακόλουθο:
# openssl s_client -ssl2 -connect SERVERNAME:443
CONNECTED(00000003)
458:error:1407F0E5:SSL routines:SSL2_WRITE:ssl handshake failure:s2_pkt.c:428:
Πώς να ρυθμίσετε το Apache v2 ώστε να μην δέχεται συνδέσεις SSLv2:
Θα πρέπει να τροποποιήσετε την οδηγία SSLCipherSuite στο αρχείο httpd.conf ή ssl.conf.
Ένα παράδειγμα θα ήταν η επεξεργασία των ακόλουθων γραμμών ώστε να μοιάζουν με:
SSLProtocol -ALL +SSLv3 +TLSv1
Επανεκκινήστε τη διαδικασία Apache και βεβαιωθείτε ότι ο διακομιστής λειτουργεί. Επαναλάβετε επίσης τη δοκιμή χρησιμοποιώντας το OpenSSL για να επιβεβαιώσετε ότι το SSLv2 δεν γίνεται πλέον αποδεκτό.
Πώς να ρυθμίσετε το Microsoft IIS ώστε να μην δέχεται συνδέσεις SSLv2:
Θα πρέπει να τροποποιήσετε το μητρώο του συστήματος.
Συγχωνεύστε τα ακόλουθα κλειδιά στο μητρώο των Windows®:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Server]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]
"Enabled"=dword:00000000
Επανεκκινήστε το σύστημα και βεβαιωθείτε ότι ο διακομιστής λειτουργεί. Επίσης, εκτελέστε ξανά τη δοκιμή χρησιμοποιώντας το OpenSSL για να επιβεβαιώσετε ότι το SSLv2 δεν είναι πλέον αποδεκτό.
Αυτά τα ενοχλητικά αδύναμα κρυπτογραφικά SSL
Ο διακομιστής σας υποστηρίζει αδύναμους κρυπτογραφικούς αλγόριθμους SSL;
Πώς να το ελέγξετε:
Θα πρέπει να έχετε εγκαταστήσει το OpenSSL στο σύστημα από το οποίο θα εκτελέσετε τις δοκιμές. Μόλις εγκατασταθεί, χρησιμοποιήστε την ακόλουθη εντολή για να δοκιμάσετε τον διακομιστή ιστού σας, υποθέτοντας ότι η θύρα 443 είναι εκείνη από την οποία παρέχετε συνδέσεις https:
# openssl s_client -connect SERVERNAME:443 -cipher LOW:EXP
Εάν ο διακομιστής δεν υποστηρίζει αδύναμους κρυπτογραφικούς αλγόριθμους, θα λάβετε ένα σφάλμα παρόμοιο με το ακόλουθο:
# openssl s_client -connect SERVERNAME:443 -cipher LOW:EXP
CONNECTED(00000003)
461:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:226:
Πώς να ρυθμίσετε το Apache v2 ώστε να μην δέχεται αδύναμους κρυπτογραφικούς αλγόριθμους SSL:
Θα πρέπει να τροποποιήσετε την οδηγία SSLCipherSuite στο αρχείο httpd.conf ή ssl.conf.
Ένα παράδειγμα θα ήταν η επεξεργασία των ακόλουθων γραμμών ώστε να μοιάζουν με:
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
Επανεκκινήστε τη διαδικασία Apache και βεβαιωθείτε ότι ο διακομιστής λειτουργεί. Επίσης, εκτελέστε ξανά τη δοκιμή χρησιμοποιώντας το OpenSSL για να επιβεβαιώσετε ότι τα αδύναμα κρυπτογραφικά συστήματα SSL δεν γίνονται πλέον αποδεκτά.
Πώς να ρυθμίσετε το Microsoft IIS ώστε να μην δέχεται αδύναμα κρυπτογραφικά συστήματα SSL:
Θα πρέπει να τροποποιήσετε το μητρώο του συστήματος.
Συγχωνεύστε τα ακόλουθα κλειδιά στο μητρώο των Windows®:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\DES 56/56]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\NULL]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 40/128]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 56/128]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 64/128]
"Enabled"=dword:0000000
Επανεκκινήστε το σύστημα και βεβαιωθείτε ότι ο διακομιστής λειτουργεί. Επίσης, εκτελέστε ξανά τη δοκιμή χρησιμοποιώντας το OpenSSL για να επιβεβαιώσετε ότι οι αδύναμοι αλγόριθμοι κρυπτογράφησης SSL δεν γίνονται πλέον αποδεκτοί.
Σε αυτό το σημείο, ζητήστε από τον εγκεκριμένο προμηθευτή σάρωσης (ASV) να σαρώσει το εξωτερικό περιβάλλον PCI για επικύρωση. Η πραγματοποίηση των παραπάνω αλλαγών θα πρέπει να έχει ως αποτέλεσμα οι σαρώσεις ASV να μην επισημάνουν και να μην σας απορρίψουν για τις ακόλουθες ευπάθειες:
- Ο διακομιστής SSL υποστηρίζει αδύναμη κρυπτογράφηση
- Ο διακομιστής SSL επιτρέπει κρυπτογράφηση με σαφή κείμενο
- Ο διακομιστής SSL ενδέχεται να αναγκαστεί να χρησιμοποιήσει αδύναμη κρυπτογράφηση
- Ο διακομιστής SSL επιτρέπει ανώνυμη πιστοποίηση