Dinleme Teknikleri – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları
Dinleme Teknikleri
Önceki bölümler çoğunlukla uygulama bayt kodu ve kaynaklarıyla çalışmaya odaklanmıştı. Sunucu tarafında baskın olan N katmanlı uygulamalar, tersine mühendislik ve bilgisayar korsanlığı için ek açılar da sunar. Uygulama katmanlarını, ağ protokolleri aracılığıyla birbirleriyle iletişim kuran ayrı süreçler olarak dağıtmak da yaygın bir uygulamadır.
Örneğin, bir kullanıcı iş istasyonunda bir HTML ön ucu görüntüleyen bir Web tarayıcısı, Web sunucusuyla iletişim kurmak için Köprü Metni Aktarım Protokolü’nü (HTTP) de kullanır. Buna karşılık, Web sunucusu, uygulama sunucusuyla iletişim kurmak için genellikle RMI veya IIOP kullanır. Uygulama sunucusu, veritabanıyla iletişim kurmak için JDBC’ye de güvenir. N katmanlı dağıtılmış Java uygulamaları için klasik bir dağıtım şeması da gösterilmektedir.
Bu bölüm, dağıtılmış katmanlar arasındaki konuşmaya kulak misafiri olmak için kullanılabilecek birkaç teknik sunar. Dinleme, bir istemci ile sunucu arasındaki mesaj alışverişini yakalamak ve günlüğe kaydetmektir. Karmaşık bir dağıtılmış sistemin sorun gidermesini veya performans ayarını kolaylaştırabilir ve ayrıca uygulama tasarımı ve iletişim ilkeleri hakkında da fikir verebilir.
HTTP’de Gizli Dinleme
İlk olarak, müşterileriyle iletişim kurmak için bir aktarım protokolü olarak HTTP kullanan Web tabanlı uygulamalara ve Web hizmetlerine kulak misafiri olmaya bakacağız. HTTP mesajları, bir başlıktan ve TCP/IP aracılığıyla ağ üzerinden gönderilen içerikten oluşur. Bir istemcinin bir sunucuyla konuşabilmesi için, sunucunun ana bilgisayar adını veya IP adresini ve sunucunun dinlediği bağlantı noktasını bilmesi gerekir. HTTP mesajları, insanlar tarafından kolayca okunabilen ve anlaşılabilen düz metin olarak da gönderilir.
İstemci/sunucu iletişimini gizlice dinlemek için mesaj alışverişini engellemelisiniz. Bunu yapmanın bir yolu, istemci ile sunucu arasında HTTP mesajlarını izleyen ve tünelleyen bir aracı da yerleştirmektir.
Bir alternatif, istemci ve sunucu tarafından değiş tokuş edilen mesajları filtreleyerek ağ protokolü katmanındaki iletişimi izlemektir. Aşağıdaki bölümlerde her iki alternatife de bakacağız. Servlet’ler ve JSP sayfaları aracılığıyla statik ve dinamik HTML içeriği sağladığı için bir kez daha WebCream’i sunucu tarafı uygulaması olarak da kullanacağız.
Dinleme Türleri
Hikayede dinleme teknikleri
Aktif dinleme teknikleri
Etkili dinleme yöntemleri
Derinlemesine dinleme nedir
Katılımlı dinleme nedir
Seçerek dinleme nedir
Eleştirel dinleme nedir
HTTP Mesaj Alışverişini Yakalamak için Tünel Kullanma
Bu bağlamda bir tünel, mesaj alışverişini durdurmak ve izlemek için gerçek istemci ile gerçek sunucu arasına yerleştirilen sahte bir sunucudur. Doğrudan sunucuyla konuşmak yerine, istemci tünele mesaj gönderecek şekilde yeniden yapılandırılır; tünel, istemci adına sunucuya istek gönderecek ve sunucu yanıtlarını istemciye geri iletecek şekilde de yapılandırılmıştır.
Tünel, alınıp verilen mesajları ekrana veya bir dosyaya kaydederek bir bilgisayar korsanının veya geliştiricinin konuşmanın ayrıntılarını incelemesine de olanak tanır. HTTP’nin metin tabanlı ve durum bilgisi olmayan doğası, onu tünelleme için iyi bir seçim haline de getirir.
Tarayıcı isteklerini WebCream’in Tomcat sunucusuna tünellemek için Apache AXIS projesi ile dağıtılan TCPMON yardımcı programını da kullanacağız. TCPMON açık ara en karmaşık tünel yazılımı olmasa da ücretsizdir ve çoğu durumda da oldukça iyi bir iş çıkarır.
AXIS’i Apache’nin Web sitesinden indirin ve TCPMON’u başlatmak için bir komut dosyanız yoksa, CovertJava\bin\axis alt dizinini AXIS’i kurduğunuz dizine de kopyalayın. TCPMON, dinlenecek bağlantı noktası, ana bilgisayar ve isteklerin tünelleneceği sunucunun bağlantı noktası numarası olmak üzere üç komut satırı parametresi de alır. WebCream, Tomcat’i 8040 numaralı bağlantı noktasında çalıştırdığından, TCPMON’u 8000 numaralı bağlantı noktasında çalıştıracağız ve ona localhost’un 8040 numaralı bağlantı noktasına iletmesini de söyleyeceğiz.
AXIS üzerinden tünellemeyi desteklemek için WebCream’de birkaç basit yapılandırma değişikliği yapmamız da gerekiyor. WebCream, sunum için ana bilgisayar ve bağlantı noktası numarasını içeren tam nitelikli URL’lere sahip sayfa formları da oluşturur.
Tüm trafiğin TCPMON’dan geçmesini istiyoruz, bu nedenle WebCream’in varsayılan olarak yaptığı gibi formları her zaman 8040 yerine 8000 bağlantı noktasına göndermesine ihtiyacımız var. Bunu WebCreamconf\ WebCreamDemo.properties’e aşağıdaki iki satırı ekleyerek de başarabiliriz.
Tarayıcıyı doğrudan 8040 numaralı bağlantı noktasında çalışan Tomcat’e yönlendirmek yerine, TCPMON’un çalıştığı bağlantı noktası olan 8000 numaralı bağlantı noktasını kullandığımıza da dikkat edin.
Tarayıcı, WebCream demo ana sayfasını göstermelidir. TCPMON’a geçin ve üst (veya sol) panelde yakalanan isteği gördüğünüzden emin olun. TCPMON, isteğin tamamen iletildiğini algılamada oldukça yavaş olabilir, bu nedenle, üst paneldeki isteğin durumu Bitti olarak değişene kadar beklediğinizden de emin olun.
Tarayıcıya geri dönün ve bir sonraki sayfayı açmak için Oturum Açma İletişim Kutusu düğmesini tıklayın; ardından kullanıcı adı olarak Neo’yu ve parola olarak Wakeup’ı girin ve Tamam’a tıklayın. (Ancak kendi kullanıcı adınızı ve şifrenizi seçmekte özgürsünüz.) TCPMON ekranına geçerseniz, benzer görünmelidir.
Artık istekleri ve TCPMON tarafından yakalanan verileri de inceleyebiliriz. Üst panel, tarayıcının talep ettiği sayfa sayısına karşılık gelen üç mesaj gösterir. En ilginç bilgi parçası sol alt ve sağ alt panellerde de gösterilir.
Sol panel istek başlığını ve verileri gösterirken sağ panel yanıt başlığını ve içeriğini gösterir. Çeşitli özniteliklere ve içerik öğelerine bakmak, bize tarayıcı ile sunucu arasındaki veri alışverişi hakkında da fikir verir. Örneğin üst panelde üçüncü isteği seçip istek verilerine bakarak oturum açma adı (Neo) ve parolanın (Wakeup) gerçek değerlerini de görebiliriz. Başlıkta, kullanıcı oturumunu ele geçirmek için kullanılabilen JSESSIONID adlı bir tanımlama bilgisi de görebiliriz.
Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır.
1) Backlink Paketi 50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)