testssl.sh – analiza poprawności implementacji protokołów SSL/TLS

W celu weryfikacji poprawności implementacji protokołu SSL/TLS można posłużyć się narzędziem testssl.sh. Jest to darmowy program dostępny pod adresem testssl.sh i github.com/drwetter/testssl.sh/releases Obsługiwany jest z poziomu wiersza poleceń, działa między innymi w systemie Linux i MacOS (instalacja poleceniem brew install testssl). Pozwala sprawdzić usługę serwera na dowolnym porcie pod kątem poprawnego szyfrowania SSL/TLS. Wykrywa nagłówki HTTP, błędy w implementacji łańcucha certyfikatów oraz podatności w starszych wersjach szyfrowania. Test kończy przydzielenie oceny (A+, A, B, C, T, M) podobnie jak ma to miejsce w serwisie ssllabs.com. Narzędzie przydaje się w sytuacji, kiedy zachodzi potrzeba przetestowania usługi lokalnie lub kiedy mamy do przetestowania wiele usług/domen.

Poniżej prosty skrypt do hurtowego sprawdzenia wielu domen. Należy utworzyć plik domeny.txt i umieścić w nim listę domen. Raporty tworzą się w plikach z nawą domeny.

!/bin/bash
 for domena in `cat domeny.txt`;                                                                                                                                                                     
 do                                                                                                                                                                                                   
 ./testssl.sh --color 0 --logfile $domena.txt $domena                                                                                                                                                 
 done