SSLyze, hedef uygulamaya bağlanarak bu uygulamaya ait SSL/TLS yapılandırmasını analiz etmeye ve yanlış SSL yapılandırmasını tespit etmeye yarayan bir Python aracıdır. SSLv2‘den TLS1.3‘e dek olan protokolleri desteklemekte ve zafiyete açık olan SSL/TLS yapılandırmalarını ortaya çıkarır.
Betik github üzerinden indirilebilir.
git clone https://github.com/nabla-c0d3/sslyze.git
cd sslyze
ls
Kurulumu gerçekleştirilir.
cat requirements.txt
pip install -r requirements.txt –upgrade
Aracın bir çok özelliği bulunmaktadır.
python -m sslyze -h
Temel özellikleri aşağıdaki gibi sıralanabilir.
- Hedef uygulama tarafından desteklenen kriptografik paketleri listeleme
- Hedef uygulama tarafından desteklenen ve zayıf olan kriptografik paketleri belirtme
- OpenSSL CCS enjeksiyonu, CRIME, Heartbleed, ROBOT gibi zafiyetleri tespit etme
- Sertifika bilgilerini ve geçerliliğini sorgulama
- Düşürme (Downgrade) saldırılarına karşı durumunu kontrol etme
- HSTS (HTTP Strict Transport Security), HPKP (HTTP Public Key Pinning) gibi HTTP başlıklarını kontrol etmek ve HPKP pinini hesaplamak
- HTTPS haricinde SMTP, XMPP, LDAP, POP, IMAP, RDP, PostGres, FTP gibi servisler için de el sıkışması (StartTLS) başlatabilmek
- İstemci taraflı sertifika kullanabilme
- Birden fazla hedef için girdi dosyası alabilmek ve XML/JSON gibi formatlarda çıktı verebilme
Örnek bir kullanım aşağıdaki gibidir. Birden fazla hedef için boşluk bırakılarak yan yana hedefler verilebilir. Kendi içerisinde porta erişim kontrolü yapıldıktan sonra yapılandırma ayarları kontrol edilmektedir.
python -m sslyze –regular gmail.com 173.254.71.248:8443 www.yahoo.com:9443
Örnek bir tarama sonucunda elde edilen sertifika bilgileri aşağıdaki gibidir.
Desteklenen kriptografik paketlerin listesi aşağıdaki gibidir.
Bunun yanında bir hedef listesi (“IP:PORT” şeklinde) oluşturularak da tarama yapılabilir.
cat IpPortListesi
Belirli hedef uygulamalar ve belirli bir yapılandırma kontrolü aşağıdaki gibi gerçekleştirilebilir.
python -m sslyze –targets_in=IpPortListesi –robot
Böylece ROBOT zafiyetine sahip uygulamalar listelenebilir.