44
NETSCALER SSLLABS.COM A+ NetScaler WAF Is A Challenger in the Gartner Magic Quadrant ÖZET Bu döküman SSL Weď siteleri’ŶiziŶ iŶterŶet üzeriŶdeŶ güŶĐel güǀeŶlik açıklarıŶı kapamak ve güncel güvenlik açıklarıŶa karşı NetsĐaler ADC içiŶ iLJileştirŵeleri kapsaŵaktadır. Veli Anlama Senior System & Network Engineer

NETSCALER SSLLABS A Plus

Embed Size (px)

Citation preview

Page 1: NETSCALER SSLLABS A Plus

NETSCALER SSLLABS.COM

A+ NetScaler WAF Is A Challenger in the Gartner Magic Quadrant

ÖZET Bu döküman SSL We siteleri’ izi i ter et üzeri de gü el gü e lik açıkları ı kapamak ve güncel güvenlik

açıkları a karşı Nets aler ADC içi i ileştir eleri kapsa aktadır.

Veli Anlama Senior System & Network Engineer

Page 2: NETSCALER SSLLABS A Plus

İçi dekiler

SSLla s. o ’da A+ Al ak ....................................................................................................................................................... 2

SSL renegotiation/BEAST/BREACH attack ........................................................................................................................... 3

SSL Poodle Gü e lik Açığı................................................................................................................................................ 4

SSL Freak Gü e lik Açığı ...................................................................................................................................................... 5

RC4 ipher gü e lik açığı..................................................................................................................................................... 6

SSH Ciphers ......................................................................................................................................................................... 8

SHA2/SHA256 SSL Certficate ve Intermediate sertifika imza ............................................................................................ 8

Strict Transport Security (STS, HSTS for HTTP Strict Transport Security) ......................................................................... 10

Enable Perfect Forward Secrecy (PFS) .............................................................................................................................. 13

Nets aler I ter al Ser i e açıkları ......................................................................................................................................... 15

Management Tool ............................................................................................................................................................. 15

Authentication .................................................................................................................................................................. 17

Basit Oku a ilir Pu li , Pri ate SNMP Co u it Parolası .......................................................................................... 17

Yönetim Konsolu ............................................................................................................................................................... 20

SSLv3 Poodle ve TLSv1, BEAST or BREACH güvenlik açığı ...................................................................................... 23

Internal Servis SSL Sertifika zaafiyetleri ............................................................................................................................ 24

Key Size ......................................................................................................................................................................... 24

Su je t Na e U uş azlığı ............................................................................................................................................ 25

Nets aler Certifi ate Authorit ’ i İ zaladığı Self-Sig ed Sertifika Oluştur a ........................................................... 25

Yö eti Sertifikaları ı Değiştir e ................................................................................................................................ 38

NTP Ser isi Siste Bilgileri i Açığa Çıkar a Gü e lik Açığı .............................................................................................. 42

Page 3: NETSCALER SSLLABS A Plus

SSLlabs. o ’da A+ Almak

SSLlabs taramalarında A+ alabilmek için şu ana buil 59.13’ü tavsiye ediyoruz. Güvenlik camiasında gün geçtikce yeni açıklar çıkıyor. Buna paralel olarak bu dökümanın içeriğini ve gerekli olan netscaler build’i güncelleyeceğiz.

Netscaler 10.5.59.13 Release Note:

https://www.citrix.com/content/dam/citrix/en_us/documents/downloads/netscaler-adc/NS_10_5_59_13.html

Netscaler 10.5.59.13 Yeni Özellikler Neler ? Build 59.13’de gelen değişiklikler ve geliştirmeler. NetScaler Gateway

NetScaler Gateway Windows 10 client’ları destekliyor.

[# 579428]

NetScaler VPX Appliance

The NetScaler VPX appliance VMware ESX server version 6.0’da destekleniyor

[# 592395]

SSL

NetScaler MPX ve SDX Appliance için backend’de TLS Versiyon 1.1 ve 1.2’yi destekleniyor.

NetScaler MPX appliance şimdi TLS prorokol versiyon 1.1 ve 1.2 backend’de destekliyor. SDX

appliance’da TLSv1.1/1.2 sadece eğer SSL chip VPX’e atanmışssa destekleniyor.

[# 494082, 566364]

Page 4: NETSCALER SSLLABS A Plus

SSLab

Appliance Score

MPX/SDX with NS10.5-59.13 A+

VPX (not on an SDX) with NS10.5-59.13 A+

MPX/SDX without NS10.5-59.13 A

VPX (not on an SDX) without NS10.5-59.13 C

SSL renegotiation/BEAST/BREACH attack

TLS 1.0 içerdiği güvenlik zaifiyeti nedediyle BEAST veya BREACH saldırıları neden olabilir. Eğer TLSV1 enable

edilmek zorunda ise ya SSL renegotiation disable edilmeli veya TLSv1 disable edilip TLSv1.1 enable edilerek

TLSv1.1’e zorlanmalıdır.

NS GUI

1. Traffic Management>SSL>Settings altında ki “Change advanced SSL settings” ‘ tıklayalım. 2. Advanced SSL setting ayarlarında Deny SSL Renegotiation’dan “FRONTEND_CLIENT” seçip OK’e tıklayalım.

Page 5: NETSCALER SSLLABS A Plus

SSLv3 Poodle Güvenlik Açığı

Citrix Article : http://support.citrix.com/article/CTX200238

SSL Protokolü istemci ve sunucu arasında güvenli ve şifreli iletişim için kullanılan bir protokoldür. SSLv3 protokol desteği bulunan sunucuların Poodle (Padding Oracle On Downgraded Legacy Encryption) adı verilen Man-In-The-Middle saldırılarından etkilenebileceği bilinmektedir. Saldırganların belirlenen zafiyeti kullanabilmesi için tarayıcıların veya istemcilerin SSLv3 protokolünü kullanarak haberleşmesi gerekmektedir. Bundan sonra saldırganlar araya girerek aktarılan trafiği protokol zafiyetinden yararlanarak açabilmekte ve şifreli veri içeriğine ulaşabilmektedirler. SSlv3 1996 yılında kullanıma alınmış oldukça eski bir protokoldür. Belirtilen problemden sistemlerinizin etkilenmesini engellemek için SSLv3 desteğinin Netscaler üzerinde kaldırılması, bunun yerine TLSv1.1 ve TLSv1.2 gibi daha yeni protokollerin kullanılması tavsiye edilmektedir. Ancak SSLv3 desteğinin kapatılması Internet Explorer 6.0 gibi eski tarayıcıların bağlantılarında problem ile karşılaşılmasına neden olabilir. SSLv3 desteğinin nasıl kapatılacağı ile ilgili bilgiler aşağıda bulunmakatdır. Netscaler SSL VIP üzerinde SSLv3 Poodle güvenlik açığı için SSLv3 kapatılmalıdır.

Netscaler Content SW ve LB Virtual IP

set ssl vserver <LBserverName> -ssl3 disabled

Page 6: NETSCALER SSLLABS A Plus

set ssl vserver <LBserverName> -tls1 disabled

NS GUI

3. Aşağıda ki menüler altında bulunan SSL Load Balance Virtual Server, Content Switching Virtual Server ve Service’lerimize tıklayıp açalım. Traffic Management>Load Balancing>Virtual Servers

Traffic Management>Load Balancing>Services

Traffic Management>Content Switching>Virtual Servers

4. SSL Parameters ayarlarında SSLv3 ve TLSv1’i kapatalım.

SSL Freak Güvenlik Açığı

Citrix Article: http://support.citrix.com/article/CTX200491

Freak güvenlik problemi SSL/TLS bileşenlerini etkileyen, istemci ve sunucuların zayıf SSL cipher’ları kullanmasını zorlayarak MITM saldırıları yapmaya olanak veren bir güVenlik problemidir. Eğer hedef sunucu üzeride RSA_EXPORT cipher bileşenleri aktif ise belirtilen problemden etkilenecektir. Sunucu üzerindeki RSA_EXPORT cipher desteği kaldırılmalıdır. Söz konusu işlemin değişik web sunucuları üzerinde nasıl yapılacağı ile ilgili bilgiler aşağıda yer almaktadır. Default olarak Netscaler ADC SSL vServer’lardan tarafından kullanılan cipher’lar EXPORT cipher içermiyor.Ama eğer export cipher’lar kullanılmak için ayarlandıysa manuel olarak vServer’lar üzerinden aşağıda ki NSCLI komutlarıyla silebilirsiniz.

Page 7: NETSCALER SSLLABS A Plus

NSCLI

set ssl vserver <vServer name> -eRSA DISABLED

Yönetim Interface Cipher Konfigurasyonu:

set ssl service nshttps-127.0.0.1-443 -eRSA DISABLED (for IPv4)

set ssl service nshttps-::1l-443 -eRSA DISABLED (for IPv6)

RC4 cipher güve lik açığı

Netscaler üzerinde SSL VIP oluşturulduğunda DEFAULT SSL Cipher grup kullanılır. Malesef DEFAULT cipher grubu penetration testlerinde karşıma çıkan güvensiz RC4 temelli cipher’lar içermektedir. RC4, yeterli düzeyde

rastgeleliğe sahip şifreleme gerçekleştirememekte ve bu eksikliği nedeni ile aktarılan şifreli veri içindeki bilgilerin çözülmesine izin verecek zayıflıklar barındırmaktadır. Bu nedenle RC4 cipher’larının Netscaler üzerinde

aktif bulunması güvenlik açısından risk oluşturmaktadır.

Netscaler üzerinde SSL kullanan VIP’ler için DEFAULT cipher gurubu yerine daha güvenli özelleşmiş bir cipher grubu oluşturmalı ve SSL kullnanan tüm IP’lere bağlamalıyız. Oluşturcağız cipher grubunun içerisinde ki cipher listesi üretim ortamına göre değişkenlik göstermektedir. Bu nedenle cipher listesi için güvenlik ekibiyle tartışıp beraber karar vermeliyiz.

MPX/SDX için tavsiye ettiğimiz özelleşmiş güvenli cipher listesi;

***NSCLI***

add ssl cipher HIGH-CIPHER

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-ECDHE-RSA-AES256-GCM-SHA384

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-ECDHE-RSA-AES128-GCM-SHA256

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-ECDHE-RSA-AES-256-SHA384

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-ECDHE-RSA-AES-128-SHA256

bind ssl cipher HIGH-CIPHER -cipherName TLS1-ECDHE-RSA-AES256-SHA

bind ssl cipher HIGH-CIPHER -cipherName TLS1-ECDHE-RSA-AES128-SHA

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-DHE-RSA-AES256-GCM-SHA384

bind ssl cipher HIGH-CIPHER -cipherName TLS1.2-DHE-RSA-AES128-GCM-SHA256

bind ssl cipher HIGH-CIPHER -cipherName TLS1-DHE-RSA-AES-256-CBC-SHA

bind ssl cipher HIGH-CIPHER -cipherName TLS1-DHE-RSA-AES-128-CBC-SHA

bind ssl cipher HIGH-CIPHER -cipherName TLS1-AES-256-CBC-SHA

bind ssl cipher HIGH-CIPHER -cipherName TLS1-AES-128-CBC-SHA

bind ssl cipher HIGH-CIPHER -cipherName SSL3-DES-CBC3-SHA

Page 8: NETSCALER SSLLABS A Plus

unbind ssl vserver <virtual server name> -cipherName DEFAULT

bind ssl vserver <virtual server name> -cipherName HIGH-CIPHER

** Eğer SSL3 disable edildiği durumalarda SL3-DES-CBC3-SHA cipher kullanışlıdır. Çünkü Bu TLS_RSA_WITH_3DES_EDE_CBC_SHA cipher Windows XP üzerinde IE8 için gereklidir. Eğer ihtiyacınız yoksa bu cipher’ı cipher listesinden silebilirsiniz.

**Cipher grubunu virtual server’a bağladıktan sonra ECDHE cipher’ları kullanabilmek için eccCurves’u virtual server’a bağlamayı unutmamalıyız.

bind ssl vs <VserverName> -eccCurveName ALL

Netscaler 10.5.57.7 VPX üzerinden MPX üzerinde ki desteklenen bazı cipher şu an için desteklenmiyor. Bu nedenle VPX üzerinde tavsiye ettiğimiz cipher listesi aşağıdadır

add ssl cipher vpx-cipher-list

bind ssl cipher vpx-cipher-list -cipherName TLS1.2-ECDHE-RSA-AES-128-SHA256

bind ssl cipher vpx-cipher-list -cipherName TLS1-ECDHE-RSA-AES256-SHA

bind ssl cipher vpx-cipher-list -cipherName TLS1-ECDHE-RSA-AES128-SHA

bind ssl cipher vpx-cipher-list -cipherName TLS1-DHE-RSA-AES-256-CBC-SHA

bind ssl cipher vpx-cipher-list -cipherName TLS1-DHE-RSA-AES-128-CBC-SHA

bind ssl cipher vpx-cipher-list -cipherName TLS1-AES-256-CBC-SHA

bind ssl cipher vpx-cipher-list -cipherName TLS1-AES-128-CBC-SHA

bind ssl cipher vpx-cipher-list -cipherName SSL3-DES-CBC3-SHA

NS GUI

1. Traffic Management>Load Balancing>Virtual Servers’a tıkla, 2. SSL Virtual Server’u seçip Edit’e tıkla

3. Advanced menüsünden SSL Chiphers’a tıkla

4. Varsayılan olarak seçili olan DEFAULT Ciphers gurubu oluşturulan HIGH-CIPHER grubu ile değiştir.

Page 9: NETSCALER SSLLABS A Plus

SSH Ciphers

SSH BDS kernel’inde çalıştığı için SSH Daemon’daki cipher’ları değiştirme Netscaler GUI’den yapılamıyor.

SSH command prompt’dan vi ile /etc/ssd_config dosyası editlenerek virgüllerle ayrılmış olarak cipher listesi eklenmelidir.

Ciphers aes128-ctr,aes192-ctr,aes256-ctr

Desteklenen cipher’lar:

3des-cbc aes128-cbc aes192-cbc aes256-cbc aes128-ctr aes192-ctr aes256-ctr [email protected] [email protected] arcfour arcfour128 arcfour256 blowfish-cbc cast128-cbc [email protected]

Varsayılan cipher’lar: [email protected], aes128-ctr,aes192-ctr,aes256-ctr,

SHA2/SHA256 SSL Certficate ve Intermediate sertifika imza

SSL Virtual server ve Content Switching virtual server’larına atanan sertifikalar zayıf hash algoritması ile imzalanmış olabilir. SHA2/SHA256 imzasına sahip olmalıdır.

Page 10: NETSCALER SSLLABS A Plus

NS GUI

5. Traffic Management> SSL >Certificates bölümünden Virtual Server’lara atadığımız sertfika ve onun intermediate

sertifikasının SHA256 imzalı olduğunu kontrol etmek için ayrı ayrı sertifika, intermediate sertfikası ve root sertifikası üzerinde mouse ile üzerine gelerek çift tıklayalım.

6. Eğer sertifikanın Signature Algorithm bölümünde sha256 görüyorsanız sertifikanız sha256 imzalanmıştır.

Page 11: NETSCALER SSLLABS A Plus

Strict Transport Security (STS, HSTS for HTTP Strict Transport Security)

HTTPS Strict Transport Security (HSTS), güvenli HTTPS web sitelerinin downgrade attack ve cookie hijacking

saldırılarına karşı koruyan bir web güvenlik policy mekanizmasıdır. Bu koruma, web serverların web browser ile güvesiz HTTP protocol ile değilde sadece güvenli HTTPS bağlantısıyla etkileşime girmesini declare etmesini

sağlar.

HSTS bir IETF standard track prorokolü’dür ve RFC 6797’de tanımlanmıştır.

HSTS Policy server’lar ile browser’ların user agent’larında bulunana HTTP response header’da alanı "Strict-Transport-Security" ile haberleşir.

NSCLI

add rewrite action insert_STS_header insert_http_header Strict-Transport-Security "\"max-age=157680000\""

add rewrite policy enforce_STS "true" insert_STS_header

bind lb vserver vs1 -policyName enforce_STS -priority 100 -gotoPriorityExpression END -type RESPONSE

NS GUI

1. AppE pert>Re rite altı da ki A tio ’a tıkla alı . 2. Ye i ir A tio oluştur ak içi sol üst köşede ki Add’e tıkla alı

Page 12: NETSCALER SSLLABS A Plus

3. A tio Na e’e a t_sts_header azalı . T pe kıs ı da INSERT_HTTP_HEADER seçeli . Header Na e kı ı a

Strict-Transport-Se urit azalı . E pressio ala ı a "\"max-age=157680000\"" girdikte so ra Ok tuşu a tıkla alı .

4. AppE pert>Re rite e sü de Poli ’ e tıkla alı . 5. Ye i ir Poli oluştur ak içi sol üst köşede ki Add’e tıkla alı .

Page 13: NETSCALER SSLLABS A Plus

6. Na e’e pol_sts_for e azalı . A tio olarak daha ö e oluşturduğu uz a t_sts_header a tio ’ı seçeli . E pressio ala ı a true azıp Ok tuşu a tıkla alı .

7. AppE pert>Re rite’da Re rite Poli Ma ager’a tıkla alı .

8. Traffi Ma age e t>Load Bala i g>Virtual Ser ers altı da SSL irtual ser er’u uzu seçeli . Sağ üst köşede ki Poli ’e tıkla alı . Poli tipi olarak Re rite e Respo se’u seçeli . Sele t Poli ’de daha ö e oluşturduğu uz pol_sts_for e’u seçip Ok’e tıkla alı .

Page 14: NETSCALER SSLLABS A Plus

Enable Perfect Forward Secrecy (PFS)

Perfect Forward Secrecy, server key gizliliği açığa çıktığı zaman session’ı korur. PFS’i enable etmek için bir tane Deffie-Hellman (DH) key oluşturmalıyız.

NS GUI

1. Traffi Ma age e t>SSL’de Tools’da ulu a Create Diffie-Hell a DH ke ’e tıkla alı .

Page 15: NETSCALER SSLLABS A Plus

2. DH File a e ala ı a dhke 8.ke azalı . DH Para eter Size ala ı a 8 azalı . DH Ge erator’de ’ i seçeli e Create uto u a tıkla alı .

3. Traffi Ma age e t>Load Bala i g>Virtual Ser ers altı da SSL Virtual Ser er’u uzu Edit’le eli . 4. SSL Para eter ala i da kale işsareti e tıkla arak Edit oda alalı .

5. E a le DH Para ’I he k’le eli . Refresh ou t’a azalı . File Path’de daha ö e oluşturduğu uz dhke 8 dos ası ı seçeli e Ok uto u a tıkla alı .

Page 16: NETSCALER SSLLABS A Plus

Netscaler I ter al Servi e açıkları

Management Tool

Management olarak açtığımız NSIP (Netscaler IP),SIP (Subnet IP) üzerinde gereksiz management araçlarını kapatmalıyız. Telnet ve FTP güvensiz bir protokol olduğu için herzaman kapalı kalması gerekir.Ayrıca Netscaler,

external monitoring bir cihaz tarafından monitor edilmiyorsa ve yönetilmiyorsa SNMP’de kapatılmaldır.

Telnet servisi cihaz üzerine uzaktan yapılandırmaya olanak tanımaktadır. Telnet servisi üzerinden aktarılan paketler, herhangi bir şifreleme (encryption) yapılmadan iletildiği için önemli bilgilerin yerel ağın dinlemesi (sniffing) durumunda yetkisiz kullanıcılar tarafından tespit edilmesi mümkündür. Sisteme login için kullanılan kullanıcı hesapları ve parolalar, aktarılan kritik veriler rahatlıkla tespit edilebilir.

GUI’ye SSL erişimini zorlamak için “Secure Access only” seçili olduğundan emin olmalıyız.

NSCLI

> set ns ip <Netscaler IP> -restrictAccess ENABLED

> set ns ip <Netscaler IP> telnet DISABLED ftp DISABLED

Page 17: NETSCALER SSLLABS A Plus

> set ns ip <Netscaler IP> mgmtAccess DISABLED

NS GUI

1. NSIP’ye http ile bağlan. 2. System>Network altında ki IPs’ye tıkla. 3. Netscaler IP’yi seç ve Edit’e tıkla

4. Secure Access only seç ve OK’e tıkla

5. Management erişimin sadece internal IP’ler (NSIP veya SIP) için açık olduğundan emin olunmalı ve Management erişime ihtiyaç olmayan IP’ler için “Enable Management Access...” sekmesi kapatılmalıdır.

6. Aynı adımları Management erişime açılmış olan SNIP’ler içinde izle

7. Aynı adımları Secondary Nerscaler içinde izle.

Page 18: NETSCALER SSLLABS A Plus

Authentication

Varsayılan nsroot şifresini uzun bir şifre kombinasyonuyla değiştirilmelidir. Eğer GUI’ye yönetimsel erişim için LDAP AD kimlik denetleme kullanıyorsak netscaler üzerinde GUI’ye

erişen kullanıcıların dahil olduğu filitre bir grup oluşturduğumuzdan emin olmalıyız. Aksi taktirde AD hesabi olan herhangi bir kullanıcı rahatlıkla Netscaler GUI’ye erişimi olacaktır.

Eğer Netscaler üzerinde tanımladığınız LDAP kimlik denetleme policy’sini global olarak bağlamışsanız nsroot hesabı üzerinde external authentication’ın aktif olmadığından emin olmalıyız. Aksi taktirde birileri AD üzerinde nsroot adlı bir hesap oluşturup Netscaler’a full erişim hakkı kazanabilir.

System>User Administration>Users

Eğer Netscaler GUI erişim için LDAP kimlik denetleme kullanılıyorsa hesap bilgilerinin şifrelenmemiş olarak gönderilmesini önlemek için LDAPS (TLS veya SSL) kullanmalıyız.

Basit Oku a ilir Pu li , Private SNMP Co u ity Parolası

CVE: CVE: CVE-1999-0254 CVE-1999-0516 CVE-1999-0517 CVE-2004-0311 CVE-2004-1474 CVE-2001-0514 CVE-2002-0109

SNMP network yönetiminde kullanılan servislerden biridir. Sistem ayarlarını değiştirmek veya sistemden bilgi toplamak için kullanılabilir. Netscaler üzerinde SNMP servisinin okunabilir Community şifresi default’da PUBLIC’tir. Gerekli güvenlik önlemi alınmayan SNMP servisleri yetkisiz kullanıcılara işletim sistemi,versiyonu, CPU kullanımı, makine adı, IP adresi, çalışan process’ler, tanımlı kullanıcılar, yüklü programlar gibi sistem hakkındaki pekçok bilgiyi verecektir. Yine güvenlik açığı içeren kimi SNMP uygulamaları sistem şifresi gibi kritik bilgileri de yetkisiz kullanıcılara verebilmektedir.

Aşağıda konuyla ilgili olarak alınabilecek önlemler listelenmiştir.

SNMP servisinin kullanılması gerekmeyen NS Ipler üzerinde kapatılması

Page 19: NETSCALER SSLLABS A Plus

Default SNMP Community (PUBLIC, PRIVATE) şifrelerinin değiştirilmesi ve bunlar yerine tahmini zor

şifreler kullanılması SNMP kullanılacak ise tanımlanacak filtreler ile sadece belirli IP adreslerinden erişilecek şekilde gerekli

tanımların yapılması SNMP çalıştırılacak sistemlerde SNMPv1 yerine daha fazla güvenlik opsiyonu olan SNMPv2 veya SNMPv3

kullanılması ve bu

SNMP Community String

NSCLI

add snmp trap generic 192.168.3.84 -communityName "7Ulmdnz!"

add snmp trap specific 192.168.3.84 -communityName "7Ulmdnz!"

NS GUI

1. S ste >SNMP altı da Traps’ı seçeli .

2. Ge eri e spe ifi ’ı seçip Edit’e tıkla alı .

3. Co u it a e Pas ord’u u değiştireli . A rı a eğer V seçili se i u u V seçeli .

Page 20: NETSCALER SSLLABS A Plus

SNMP Filitre tanımlama

NSCLI

add snmp manager 192.168.3.84

NS GUI

1. S ste >SNMP altı da Ma agers’a tıkla alı . 2. Sol üst köşede ki Add Buto u a tıkla alı

Page 21: NETSCALER SSLLABS A Plus

3. SNMP Alert’ları ı gö dere eği iz spesifik SNMP Ma ager ip’si i gireli e Create uto u a tıkla alı .

Yönetim Konsolu

Yönetim konsolı (port 443), Secure Java port (3008) ve HA synchronisation port (3009) SSL sertifikası kullanıyor.Bu nedenle bunlarada oluşturduğumuz cipher grubunu bağlamalıyız.Aşağıda ki Internal Servisler için Netscaler VIP’ler için izlediğimiz prosedürün aynısını izlemeliyiz.

Page 22: NETSCALER SSLLABS A Plus

NSCLI

unbind ssl service nsrpcs-127.0.0.1-3008 -ciphername DEFAULT

bind ssl service nsrpcs-127.0.0.1-3008 -ciphername HIGH-CIPHER

unbind ssl service nshttps-127.0.0.1-443 -ciphername DEFAULT

bind ssl service nshttps-127.0.0.1-443 -ciphername HIGH-CIPHER

unbind ssl service nskrpcs-127.0.0.1-3009 -ciphername DEFAULT

bind ssl service nskrpcs-127.0.0.1-3009 -ciphername HIGH-CIPHER

unbind ssl service nsrpcs-::1l-3008 -ciphername DEFAULT

bind ssl service nsrpcs-::1l-3008 -ciphername HIGH-CIPHER

unbind ssl service nshttps-::1l-443 -ciphername DEFAULT

bind ssl service nshttps-::1l-443 -ciphername HIGH-CIPHER

NS GUI

1. Trafic Management>Load Balancing>Services>Internal Services altın daki ilk servisi seçip Edit’e tıkla.

2. Advanced menüsünden SSL Ciphers’a tıkla. 3. “Remove All” a tıklayarak daha önce Internal Servise bağlanmış DEFAULT cipher grubunu sil.

Page 23: NETSCALER SSLLABS A Plus

4. Sonrasında “Add” butonuna tıklayıp oluşturduğumuz cipher grubu seçip sağ ok tuşuna tıklayarak cipher gurubumuzu ekliyoruz

Page 24: NETSCALER SSLLABS A Plus

SSLv3 Poodle ve TLSv1, BEAST or BREACH güvenlik açığı

Netscaler SSL VIP ve Internal Servis’ler üzerinde SSv3 ve TLSv1 kapatılmalıdır.

SSLv3 Poodle güvenlik açığı için SSLv3 kapatılmalıdır. TLSv1, BEAST or BREACH ataklarına açık olduğundan TLSv1 kapatılmaldır.

NSCLI

Netscaler Internal Service’leri

set ssl service <ServiceName> -ssl3 disabled

set ssl service nskrpcs-127.0.0.1-3009 –ssl3 disabled

set ssl service nshttps-::1l-443 –ssl3 disabled

set ssl service nsrpcs-::1l-3008 –ssl3 disabled

set ssl service nshttps-127.0.0.1-443 –ssl3 disabled

set ssl service nsrpcs-127.0.0.1-3008 –ssl3 disabled

set ssl service nskrpcs-127.0.0.1-3009 –tls1 disabled

set ssl service nshttps-::1l-443 –tls1 disabled

Page 25: NETSCALER SSLLABS A Plus

set ssl service nsrpcs-::1l-3008 –tls1 disabled

set ssl service nshttps-127.0.0.1-443 –tls1 disabled

set ssl service nsrpcs-127.0.0.1-3008 –tls1 disabled

Internal Servis SSL Sertifika zaafiyetleri

Netscaler aşağıda ki SSL ile korunan Internal Servisleri için varsayılan olarak self-sign sertfika kullanır.

Port 443’de çalışan NSIP yönetim interface (servis listesinde nshttps-127.0.0.1-443 bulunur.)

Port 21’de çalışan SSH hizmeti (Internal servis listesinde bulunmamaktadır. Çünkü ssh daemon Netscaler kernel’de değilde BSD’de çalışmaktadır.)

Port 3008’de çalışan güvenli Java yönetim interface (Internal servis listesinde nsrpcs-127.0.0.1-3008

adıyla bulunur.)

Güvenlik taramasında yukarda ki portlara atanan self-sign sertifikalarında aşağıda ki iki sebepten dolayı güvenlik açıkları çıkabiliyor.

Key Size

Internal hizmetler için kullanılan Netscaler yönetim ip’lerine atanan self-sign varsayılan yönetim sertifikası (ns-server-certificate) olarak 512 bit’tir. Güvenlik riskinden dolayı 2048 bit sertifika kullanılmalıdır.

Page 26: NETSCALER SSLLABS A Plus

Subject Name Uyuş azlığı

Subject name uyuşmazlığı, Netscaler management interface’ine erişmek için kullanılan gerçek hostname ile self-signed sertifika’sında ki subject name eşleşmediğinde yaşanır. Bu durum genellikle testlerde karşımıza düzeltilmesi gereken bir güvenlik açığı olarak çıkar. Man-in-the-middle saldırılarını önlemek için SSL sertifikasında ki subject name, daima bağlanılan yerin gerçek hostname’i ile eşleşmelidir. Eğer Netscaler yönetimsel arayüzü için real sertifika kullanımında fiyat bit faktör ise Certificate Authority olarak AD veya

Netscaler kullanılabilir. Netscaler management’ına atanmış ve kendi root’una linklenmemiş (full chain olmayan ) internal signed sertifikalar penetration tesetlerinde çıksada bir güvenlik açığı oluşturmamaktadır. Sadece CA root sertifikası eklenmediğinden dolayı browser’ların internal singned serfikaya güvenmediği konusunda size uyarmaktadır.

Netscaler Certificate Authority’ i İ zaladığı Self-Sig ed Sertifika Oluştur a

NSCLI

***NS Root Sertifika

create rsakey root.key 2048 -exponent 3 -keyform PEM -des3 -password Password1!

create ssl certReq root.csr -keyFile root.key -keyform PEM -pEMPassPhrase Password1! -countryName TR -stateName

ATASEHIR -organizationName "EXCLUSIVE NETWORKS" -commonName Netscaler-Root-CA

create ssl cert root.cer root.csr ROOT_CERT keyFile root.key keyform PEM -days 3650 -PEMPassPhrase Password1!

*** NS Management Sertifika

create rsakey mgmt.key 2048 -exponent 3 -keyform PEM -des3 -password Password1!

create certReq mgmt.csr -keyFile mgmt.key -keyform PEM -PEMPassPhrase Password1! -countryName TR -stateName

ATASEHIR -organizationName "EXCLUSIVE NETWORKS" -localityName ISTANBUL -commonName ns1.networking.lab

create ssl cert mgmt.cer mgmt.csr SRVR_CERT CAcert root.cer CAkey root.key CAserial serial -CAcertForm PEM -

CAkeyForm PEM -CertForm PEM -days 3650 -keyform PEM -PEMPassPhrase Password1!

add ssl certKey mgmt -cert mgmt.cer -key mgmt.key -password Password1! -inform PEM -bundle NO -expiryMonitor

ENABLED -notificationPeriod 30

add ssl certKey root -cert root.cer -key root.key -password Password1! -inform PEM -bundle NO -expiryMonitor ENABLED

-notificationPeriod 30

link ssl certKey mgmt root

NS GUI

1. Traffic Management altında SSL’e tıkla.

Page 27: NETSCALER SSLLABS A Plus

2. Root-CA Certificate Wizard’a tıkla.

3. Key Filename alanına yeni oluşturacağımız dosyanın ismi için root.key yaz. 4. Key Size alanına en az 2048 bits gir. 5. Key File’ı seçime bağlı olarak şifrelemek için PEM Encoding Algorithm’i DES3 olarak değiştir ve yeni şifre gir. 6. Create butonuna tıkla.

Page 28: NETSCALER SSLLABS A Plus

7. Request File Name alanına yeni oluşturacağımız dosyanın ismini root.cst gir. 8. Eğer key file şifrelenmiş ise şifre gir. 9. Mouse aşağıda kaydır.

Page 29: NETSCALER SSLLABS A Plus

10. Country alanına ülkeyi gir. 11. State alanına şehri gir. 12. Organization Name alanına, şirket ismini gir.. 13. Diğer alanları istediğin gibi doldur. 14. Common Name alnına ,Certificate Authority adını gir.. 15. Create butonuna tıkla .

Page 30: NETSCALER SSLLABS A Plus

16. Certificate File Name alanına yeni oluşturacağımız sertifikanın adını root.cer gir

17. Certificate Request File Name alanına yedinci adımda oluşturulan root.csr(CSR File) dosya adını gir.

18. Validity Period’u 3650 (10 sene) gir.

19. Eğer key file şifrelenmiş ise PEM Passphrase alnına şifre gir. 20. Key Filename alanına üçüncü adımda oluşturulan root.key(RSA Key File) dosyasının adını gir. 21. Create butonuna tıkla.

Page 31: NETSCALER SSLLABS A Plus

22. Certificate-Key Pair Name alanına, CA sertifikasına vermek istediğin adı yaz.

23. Certificate File Name alanına onaltıncı adımda oluşturduğun root.cer sertifikasını adını yaz. 24. Key File Name alanına üçüncü adımda oluşturduğun root.key dosyasının adını yaz. 25. Eğer key file şifrelenmiş ise Password alanına şifreyi yaz. 26. Create butonuna tıkla.

Page 32: NETSCALER SSLLABS A Plus

27. Done butonuna tıkla.

Page 33: NETSCALER SSLLABS A Plus

28. Server Certificate Wizard’a tıkla.

29. Key Filename alanına yeni oluşturacağımız dosyanın ismi için mgmt.key yaz. 30. Key Size alanına en az 2048 bits gir. 31. Key File’ı seçime bağlı olarak şifrelemek için PEM Encoding Algorithm’i DES3 olarak değiştir ve yeni şifre gir. 32. Create butonuna tıkla.

Page 34: NETSCALER SSLLABS A Plus

33. Request File Name alanına yeni oluşturacağımız dosyanın ismini mgmt.cst gir. 34. Eğer key file şifrelenmiş ise şifre gir. 35. Mouse aşağıda kaydır.

Page 35: NETSCALER SSLLABS A Plus

36. Country alanına ülkeyi gir. 37. State alanına şehri gir. 38. Organization Name alanına, şirket ismini gir.. 39. Diğer alanları istediğin gibi doldur. 40. Common Name alanına ,Netscaler’ın hostname’ini (FQDN) gir. 41. Create butonuna tıkla .

Page 36: NETSCALER SSLLABS A Plus

42. Certificate File Name alanına yeni oluşturacağımız sertifikanın adını mgmt.cer gir

43. Certificate Request File Name alanına otuzüçüncü adımda oluşturulan mgmt.csr(CSR File) dosya adını gir. 44. Validity Period’u 3650 (10 sene) gir. 45. Eğer key file şifrelenmiş ise PEM Passphrase alnına şifre gir. 46. CA Certificate File Name alanına onaltıncı adımda oluştulan Netscaler Root Sertifika adı olan root.cer’i yaz. 47. CA Key File Name alnına üçüncü adımda oluşturulan root.key(Netscaler Root Key) dosya ismini gir.

48. CA Serial File Number alanına seri numarasını içerecek yeni dosyanın ismini gir. 49. Create butonuna tıkla.

Page 37: NETSCALER SSLLABS A Plus

50. Certificate-Key Pair Name alanına, Management sertifikasına vermek istediğin adı yaz.

Page 38: NETSCALER SSLLABS A Plus

51. Certificate File Name alanına kırkikinci adımda oluşturduğun mgmt.cer sertifikasının adını yaz. 52. Key File Name alanına yırmıdokuncu adımda oluşturduğun mgmt.key dosyasının adını yaz. 53. Eğer key file şifrelenmiş ise Password alanına şifreyi yaz. 54. Create butonuna tıkla.

Page 39: NETSCALER SSLLABS A Plus

55. Done butonuna tıkla.

Yö eti Sertifikaları ı Değiştir e

NSCLI

unbind ssl service nsrnatsip-127.0.0.1-5061 -certkeyName ns-server-certificate

unbind ssl service nskrpcs-127.0.0.1-3009 -certkeyName ns-server-certificate

unbind ssl service nshttps-::1l-443 -certkeyName ns-server-certificate

unbind ssl service nsrpcs-::1l-3008 -certkeyName ns-server-certificate

unbind ssl service nshttps-127.0.0.1-443 -certkeyName ns-server-certificate

unbind ssl service nsrpcs-127.0.0.1-3008 -certkeyName ns-server-certificate

bind ssl service nsrnatsip-127.0.0.1-5061 –certkeyName mgmt

bind ssl service nskrpcs-127.0.0.1-3009 –certkeyName mgmt

bind ssl service nshttps-::1l-443 –certkeyName mgmt

bind ssl service nsrpcs-::1l-3008 –certkeyName mgmt

bind ssl service nshttps-127.0.0.1-443 –certkeyName mgmt

bind ssl service nsrpcs-127.0.0.1-3008 –certkeyName mgmt

NS GUI

1. Traffic Management>Load Balancing> Services sekmesine seçelim.

Page 40: NETSCALER SSLLABS A Plus

2. Internal Services tab’ına tıklayalım. Nsrpcs ile başlayan servis’lere sırası ile editlelim.

3. Certificates sekmesinde Client Certificates’e edit’leyelim.

4. Ns-server-certifcate’ı seçip unbind’a tıklayalım.

Page 41: NETSCALER SSLLABS A Plus

5. Yes butonuna tıklayarak unbind edelim.

6. Add Binding butonuna tıklayalım.

7. Ok işaretine tıklayalım.

Page 42: NETSCALER SSLLABS A Plus

8. Daha önce oluştruduğumuz mgmt sertifikasını seçelim.

9. Bind butonuna tıklayalım.

10. Close Butonuna tıklayalım.

Page 43: NETSCALER SSLLABS A Plus

11. Ok butonuna tıklayalım.

NTP Servisi Siste Bilgileri i Açığa Çıkar a Güve lik Açığı CVE-2013-5211- https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-5211

NTP (Network Time Protocol) sistemleri ağ üzerinden tarih saat bilgilerini senkronize etmek için kullandığı bir servistir. Buna ek olarak NTP üzerinden çalıştığı sistem hakkında sunucu adı, lokal NTP sunucuları, kullanılan işletim sisteminin tipi, kullanılan ntp yazılımının sürümü gibi bazı bilgileri de toplamak mümkün olabilir

NTP amplification attak’ları güvenlik taramalarında çıkabilir. Netscaler üzerinde amplification attak’larını önlemek için NTP aşağıda ki şekilde konfigure edilmelidir.

1. Eğer aşağıda ki satır ntp.conf dosyasında yer alıyorsa adım 2 de ki satırlarla değiştirelim

> restrict default ignore

2. Aşağıda ki satırları "/etc/ntp.conf" dosyasına ekleyelim.

# By default, exchange time with everybody, but don't allow configuration:

restrict -4 default kod notrap nomodify nopeer noquery

restrict -6 default kod notrap nomodify nopeer noquery

Page 44: NETSCALER SSLLABS A Plus

# Local users may interrogate the ntp server more closely:

restrict 127.0.0.1

restrict ::1

3. NTP aşağıda ki komutlarla restart edelim.

root@ns# ps -aux |grep "ntp"

root@ns# kill <PID obtained from step above>

root@ns# /usr/sbin/ntpd -g -c /flash/nsconfig/ntp.conf

Kaynakça;

Citrix Netscaler Edoc https://docs.citrix.com/en-us/netscaler/10-5.html