192: vSphere Client network trafiğinin kısa bir analizi | Orcunus.cOm
192: vSphere Client network trafiğinin kısa bir analizi
24.03.2016 OzanOrcunus	Yorum bırakın Go to comments
Geçen ay içerisinde aldığım bir network troubleshoot eğitimi, bugün beni, bunun vSphere tarafında nasıl uygulanabilir olduğu sorusunu sormaya ve deneysel bir çalışma yapmaya yöneltti. Genel olarak içerik, Wireshark ile paket analizi yapmak üzerine idi. Çoğu protokol için bu sıradan bir işlem olabilir, paketleri toplar ve analiz edersiniz. Ancak vSphere Client ile vCenter sunucusu arasındaki trafik şifrelenmiş olacağından dolayı, paketleri sadece sıradan TCP paketleri olarak görebilirsiniz, içerikleri hakkında fikir sahibi olamazsınız.
Not: WebClient’ı da bu kapsamda inceleyebiliriz ancak vSphere Client vpxd servisi ile direk konuştuğundan bu konuda daha fazla ilgimi çekti.
Bu arada, Wireshark ile paket analizi yapmanın en güzel tarafı, üzerinde çalıştığınız uygulama ile ilgili detayları gözler önüne seriyor olması. Örnek olarak, yukarıdaki resimden ve paket detaylarından, şifrelemenin TLS 1.0 ile yapıldığını görebiliyoruz. Neden vSphere Client değil de WebClient kullanmamız gerektiği konusunda bir önemli sebep de budur. TLS 1.0 artık kullanılması tavsiye edilmeyen bir versiyondur ve bir çok standartdan yakın zamanda çıkarılacak gibi görünüyor. Örnek, PCI:
TLS 1.0 ile birlikte, vSphere Client’ın desteklediği cipher suite listesini de “Client Hello” paketi içerisinde görebiliriz. 6.0 versiyonunda aşağıdaki gibi görünmektedir. “Server Hello” paketinde ise vCenter sunucusu bize TLS_RSA_WITH_AES_256_CBC_SHA cipher suite’inin kullanılacağını söyleyecektir. Cipher Suite’ler ile ilgili daha detaylı bir giriş için buradan başlayabilirsiniz.
Şu ana kadar, TCP 3-way handshake ve TLS handshake bilgilerine ulaşabildik çünkü şifreleme henüz başlamadı. Başladığı andan itibaren, sadece belirsiz içeriklere sahip TCP paketleri görebileceğiz ve uygulama seviyesinde gözlem ihtiyacımız varsa bunu başaramayacağız. Bu trafiği çözümleyebilmek için, vCenter sunucusu ile iletişimde kullanılan private key’e ihtiyacınız var ve bunu Wireshark üzerinde tanımlamamız gerekmektedir. vCenter Appliance 6.0 sunucusu üzerinde, aşağıdaki komut yardımı ile .pfx uzantılı, public ve private key’i barındıran dosyayı elde edebilirsiniz. Windows versiyonunda ise pfx dosyası SSL klasörü altında erişilebilir olacaktır.
openssl pkcs12 -export -in /etc/vmware-vpx/ssl/rui.crt -inkey /etc/vmware-vpx/ssl/rui.key -name “rui” -passout pass:testpassword -out /etc/vmware-vpx/ssl/rui.pfx
Bu anahtarın Wireshark içerisinde nasıl ekleneceği ve trafiğin çözümlenebileceği ile ilgili Microsoft’tan Murat Kayacan’ın başarılı bir yazısı bulunmaktadır, buradan erişebilirsiniz. Kısaca “Preferences -> Protocols -> SSL” ekranı içerisinde RSA key olarak elinizde bulunan pfx dosyasını eklemeniz gerekmektedir. Bunu yaptığınız andan itibaren, şifreleme çözümlenebilecek ve yukarıda verdiğim ekran görüntüsü aşağıdaki şekilde değişecektir.
HTTP/XML paketlerinin içerisinde de, vSphere Client ile vCenter VPXD servisi arasındaki SOAP (Simple Object Access Protocol) mesaj trafiğini ve bilgi akışını daha net görebilirsiniz.
Bu şekilde bir network trafik analizine belki hiçbir zaman ihtiyaç duymayabiliriz ancak duyarsak nasıl yapabileceğimiz konusunda fikir vermesi açısından faydalı olacağını düşünüyorum.
193: HTML5 destekli yeni WebClient 191: SSL ile boğulmak