CyberFlow Logo CyberFlow BLOG
Soc L2 Network Analysis C2

Web Shell C2 Analizi: Ağ Seviyesinde Tespit Yöntemleri

✍️ Ahmet BİRKAN 📂 Soc L2 Network Analysis C2

Web shell C2 trafiğinin analizi ve ağ seviyesinde nasıl tespit edileceği hakkında kapsamlı bilgiler.

Web Shell C2 Analizi: Ağ Seviyesinde Tespit Yöntemleri

Web shell C2 analizi, ağ güvenliği alanında kritik bir rol oynamaktadır. Bu blogda, web shell'in türlerini, iletişim kanallarını ve tespit yöntemlerini öğreneceksiniz.

Giriş ve Konumlandırma

Web shell'ler, siber güvenlik alanında önemli bir tehdit unsuru oluşturmaktadır. Saldırganların, ele geçirdikleri bir web sunucusunda komut çalıştırmak, dosya yüklemek veya ağda yanal hareket etmek için kullandıkları script tabanlı arka kapılardır. Bu noktada, web shell'ler C2 (Command and Control) trafiği ile dâhil oldukları ağ yapıları üzerinde önemli bir risk faktörü taşımaktadır. Özellikle, web sunucularının genel yapı ve protokollerinin statik doğası, bu tür kötü amaçlı trafiklerin tespitini karmaşık hale getirmektedir.

Neden Web Shell C2 Analizi Önemlidir?

Web shell C2 analizinin önemli olmasının temel sebebi; bu tür tespit yöntemlerinin, saldırganların ağda bıraktığı izleri belirlemesine ve aktivitelerini izlemeye olanak tanımasıdır. C2 trafiği, genellikle standart HTTP/HTTPS protokolleri (80/443) üzerinden aktığı için, meşru web trafiği ile kolaylıkla iç içe girebilmektedir. Bu durum ise, saldırı sonrası olay müdahale süreçlerinin karmaşıklaşmasına yol açmaktadır. Eğer bir siber güvenlik uzmanı, web shell trafiğini doğru bir şekilde analiz edebilir ve tespit ederse, bu, potansiyel olarak bir saldırının erken aşamalarında müdahale etme şansı sağlar.

Web shell'lerin zarar verici etkileri, genellikle şirket içindeki güvenlik duvarlarını aşarak, veritabanlarına veya hassas bilgilere erişim sağlama yönünde yoğunlaşır. Dolayısıyla, siber tehditlere karşı daha sağlam bir savunma mekanizması geliştirmek adına web shell C2 analizi, ele alınması gereken kritik noktalardandır.

Ağ Seviyesinde Tespit Yöntemleri

Ağ düzeyinde web shell tespiti, belirli veri akışlarını gözlemleyerek ve analiz ederek gerçekleştirilmektedir. Çeşitli analitik araçlar ve yöntemler kullanılarak, ağ trafiğinde anormallikler ve potansiyel tehditler tespit edilebilir. Aşağıda, bu konudaki bazı temel yöntemler ve izleme kriterleri yer almaktadır.

  1. Şüpheli Parametrelerin İncelenmesi: Web shell'lerden gelen trafiği analiz ederken, belirli parametre isimleri dikkat çekicidir. Örneğin, HTTP taleplerinin URI veya POST gövdesinde cmd=, exec=, shell= veya system= gibi parametrelerin varlığı, birçok dolaşım kaynağında bir web shell aracılığıyla komut çalıştırıldığını gösteren güçlü bir işarettir.

    tshark -Y http.request.uri matches "cmd|exec|shell"
    
  2. Trafik Karakteristiklerinin Analizi: Web shell trafiği genellikle insan-makine etkileşiminin tipik desenlerinden sapma gösterir. Örneğin, kısa bir komut gönderilip, bunun neticesinde büyük bir yanıt alınması (Small Request / Large Response), veya yüksek frekanslı POST talepleri gibi davranışlar dikkat çekici olabilir.

  3. Obfuscation Teknikleri: Saldırganlar, ağdaki Web Application Firewall (WAF) ve Intrusion Prevention System (IPS) gibi güvenlik sistemlerini aşmak için web shell komutlarını genellikle Base64 veya URL Encoding gibi yöntemlerle şifreleyerek gönderirler. Bu tür teknikler, tespiti daha da zorlaştırmaktadır.

  4. Web Sunucusu Log Analizi: SOC (Security Operations Center) L2 analistleri, web sunucusu loglarında herhangi bir izlenim bulmak için yaklaşım geliştirme gerekmektedir. Analiz sırasında, hiç ziyaret edilmemiş tekil dosyalara gelen POST istekleri, dönen boyutlar ve kullanıcı ajanı bilgileri gibi detaylar incelenmelidir.

Web shell C2 analizi, belirli ağ seviyesinde tespit yöntemleri ile birleştirildiğinde, daha etkili bir tehdit tespit ve yanıt mekanizması oluşturulmasına olanak tanır. Bu bağlamda, siber güvenlik profesyonellerinin bu konuda sahip olduğu bilgi ve yetkinlikler, etkili bir savunma stratejisinin inşasında kritik bir rol oynamaktadır. Böylece, hem kurumsal hem de bireysel düzeyde siber tehditlere karşı dayanıklılık artırılabilir.

Teknik Analiz ve Uygulama

Web Shell C2 Tanımı

Web shell, bir saldırganın ele geçirdiği bir web sunucusunda komut çalıştırmak, dosya yüklemek veya ağda yanal hareket etmek için kullandığı script tabanlı arka kapılardır. Saldırganlar tarafından genellikle cPanel gibi kontroller altında yüklenirler ve ağdaki normal trafiğe benzer şekilde çalıştıkları için tespit edilmesi zor olabilir. C2 (Command and Control) olarak kullanıldıklarında, saldırganlar uzaktan komutlar gönderebilir ve bu komutların yanıtlarını alabilirler.

İletişim Kanalı

Web shell'ler, genellikle HTTP/HTTPS protokolleri üzerinden iletişim sağlar. Bu, saldırganların meşru trafik ile web shell trafiği arasında ayırma yapmayı zorlaştırır. Özellikle, web shell trafiği standart portlara (80 ve 443) yönlendirildiği için, zaman zaman güvenlik cihazları tarafından es geçilir.

Web Shell Türleri ve Uzantılar

Web shell'lerin çeşitli türleri ve uzantıları vardır. Bu uzantılar, hedef web sunucusunun teknolojisine bağlı olarak değişir. Örneğin:

  • PHP Web Shell: Apache veya Nginx üzerindeki Linux sunucularında kullanılan .php uzantılı dosyalar.
  • ASPX Web Shell: Microsoft IIS sunucularında çalışan .aspx uzantılı dosyalar.
  • JSP Web Shell: Java tabanlı uygulama sunucularında (örn. Tomcat, JBoss) kullanılan .jsp dosyaları.

Her bir uzantı, kendi teknik özellikleri ve kullanımları ile beraber gelir.

Ağ İzi: Şüpheli Parametreler

Web shell kullanımı esnasında ağ trafiğinde belirli şüpheli parametrelerin bulunması, C2 iletişiminin bir göstergesi olabilir. Analiz yaparken, URI veya POST gövdesinde cmd=, exec=, shell= veya system= gibi terimlerin görülmesi, bir web shell üzerinden komut çalıştırıldığını gösterebilir. Bu tür parametreler, genelde kullanıcıdan alınan girişlerin değil, doğrudan saldırgan tarafından gönderilen direktiflerin bir parçasıdır.

Web Shell Yaşam Döngüsü

Bir web shell’in C2 olarak kullanım süreci aşağıdaki aşamalardan geçer:

  1. Yükleme: Saldırgan, hedef web sunucusuna zafiyetler aracılığıyla web shell dosyasını yükler.
  2. Bağlantı Sağlama: Web shell, saldırganın kontrolünde bir bağlantı oluşturur.
  3. Talep Gönderme: Saldırgan, belirli komutları yürütmek için web shell'e talimatlar gönderir.
  4. Yanıt Alma: Web shell, verilen komutların sonuçlarını saldırgana iletir.

Trafik Karakteristiği: İstek/Yanıt Oranı

Web shell kullanımı sırasında dikkat edilmesi gereken bir diğer özellik, istek/yanıt oranıdır. Genellikle, kısa bir komut (örn. ls -la) gönderildiğinde, uzun bir yanıt alınır (örn. tüm dizin listesinin döndürülmesi). Bu tür bir davranış, anormallik gösterir ve analistlerin dikkatini çekmelidir.

Tshark ile Web Shell Avı

Ağ trafiği analizi için Tshark aracı, web shell komutlarını tespit etmek amacıyla oldukça etkilidir. Aşağıdaki komut, HTTP GET sorgularında yaygın olan web shell komut parametrelerini aramak için kullanılabilir:

tshark -Y http.request.uri matches "cmd|exec|query|shell"

Bu komut ile, ağı tarayan analistler, potansiyel web shell aktivitelerini tespit edebilirler.

Obfuscation (Karartma) Teknikleri

Saldırganlar, web shell komutlarını güvenlik aygıtlarından gizlemek için genellikle Base64 veya URL Encoding gibi yöntemler kullanır. Bu teknikler, komutların okunabilirliğini zorlaştırır ve bu da tespit edilmeyi daha da güçleştirir. Aşağıda, bir örnekte Base64 ile şifrelenmiş bir komut yer almaktadır:

echo "cGhwIGZpbGUgdGVzdC5waHA=" | base64 --decode

Bu komut, php file test.php olarak çözümlenir ve analistlerin bu tür şifrelenmiş iletileri araması gerekir.

SOC L2 Pratiği: Log Analizi

Web shell tespiti için log analizi kritik bir adımdır. Analistler, hedef sunucu loglarındaki her bir POST isteğinin içeriğini kontrol eder. Özellikle ziyaret edilmemiş tekil dosyalara gelen POST istekleri ve dönen boyutları incelenmelidir. Anomaliler tespit edildiğinde, bu, olası bir web shell kullanımı olarak değerlendirilebilir.

Olay Müdahale (IR) Adımı

Web shell tespit edildikten sonra ilk aşama, sunucu üzerindeki aktif web shell dosyasını izole etmektir. Sonra, başlangıç zafiyetini belirlemek üzere ağı taramak ve web shell dosyasını bulmak gerekir. Bu, saldırganın erişimini engellemek için kritik bir adımdır. Analistlerin bu sürecin her aşamasında dikkatli olmaları ve olağan dışı davranışları izlemeleri büyük önem taşır.

Web shell tespiti, ağ güvenliğinin önemli bir parçasıdır ve etkili tespit yöntemlerinin uygulanması, olası saldırılara karşı korunma sağlar. Analistlerin dikkatle ve sürekli olarak ağ trafiğini izlemeleri gerekmektedir.

Risk, Yorumlama ve Savunma

Risk Değerlendirme

Web shell'ler, siber saldırganların ele geçirdikleri web sunucularında komut çalıştırmak için kullandıkları script tabanlı arka kapılardır. Bu tür backdoor'lar, güvenlik açıkları aracılığıyla sistemlerimize sızarak kritik verileri tehlikeye atmaktadır. Bu nedenle, web shell'lerin tespiti ve analiz edilmesi, siber güvenlik stratejilerinin en önemli parçalarından birini oluşturur. Aşağıda, bu tespit sürecinde hangi güvenlik riskleriyle karşılaşılabileceği açıklanmaktadır.

Yanlış Yapılandırma ve Zafiyetlerin Etkisi

Web sunucularının yanlış yapılandırılması, saldırganların web shell'leri yerleştirmeleri için zemin hazırlar. Özellikle, izinlerin yanlış ayarlandığı durumlarda, saldırganlar sistem üzerinde geniş bir erişim elde edebilir. Örneğin, belirli dizinlere yanlışlıkla açık erişim izni verilmesi, kötü niyetli kullanıcıların dosya yüklemelerine ve bu dosyalar üzerinden komut çalıştırmalarına olanak tanır.

Buna ek olarak, sistem güncellemelerinin yapılmaması veya güvenlik açıklarının göz ardı edilmesi de ciddi riskler barındırır. Örneğin, belirli veritabanı sistemlerinde keşfedilen SQL Injection açıkları, saldırganların web shell yüklemelerine olanak tanıyabilir.

Sızan Veri ve Topoloji Analizi

Siber saldırılar sonucunda, ele geçirilen verilerin niteliği ve kapsamı, işletmeler için kritik önem taşımaktadır. Web shell trafiği, genellikle standart HTTP(S) protokolleri üzerinden gerçekleştiğinden, ağ üzerinde diğer meşru taleplerle karıştırılması kolaydır. Bu nedenle, ağ izleme sistemlerinde anormalliklerin tespiti büyük önem taşır.

Sızma sonucu elde edilen verilere ilişkin yapılacak bir topoloji analizi, hangi sistemlerin etkilenip etkilenmediğini belirlemek için gereklidir. Örneğin, aşağıdaki özelliklerin analiz edilmesi gerekir:

  • Saldırganın erişim sağladığı sistemler: Hangi sunucuların etkilendiği ve bu sunucuların hangi hizmetleri sağladığı.
  • Güvenlik açıkları: Hangi güvenlik açıklarının kullanıldığı ve bu açıkların nasıl istismar edildiği.

Profesyonel Önlemler ve Hardening Önerileri

Web shell tespit sürecinde, aşağıdaki profesyonel önlemler alınmalıdır:

  1. Log Yönetimi: Ağ trafiği ve sunucu logları yakından takip edilmelidir. Aşağıdaki gibi komutlar kullanılarak log analizi yaparak anomalilerin tespiti sağlanabilir.

    tshark -Y http.request.uri matches "cmd|exec|query|shell"
    
  2. Güvenlik Duvarları ve IDS/IPS Kullanımı: Web Application Firewall (WAF) ve Intrusion Detection Systems (IDS) kullanarak malici trafik tespit edilebilir. Bu sistemler, belirli kalıpların izlenmesini sağlar.

  3. Yazılım Güncellemeleri: Tüm yazılımların ve sistem bileşenlerinin güncel tutulması, güvenlik açıklarının kapatılmasını sağlar.

  4. Erişim Kontrolleri: Sunucu üzerinde yeterli erişim kontrollerinin sağlanması, yetkisiz kullanıcıların sistemlere girişini engelleyerek web shell yüklemelerini zorlaştırır.

  5. Düzenli Penetrasyon Testleri: Web uygulamalarınızda düzenli olarak penetrasyon testleri yaparak, güvenlik açıklarını zamanında tespit edebilirsiniz.

Sonuç Özeti

Web shell'ler, siber güvenlik tehditleri arasında önemli bir yer tutmakta olup, etkili analiz ve tespit yöntemleri uygulanmadığında ciddi riskler barındırmaktadır. Yanlış yapılandırmalar, sistem zafiyetleri ve zayıf erişim politikaları, saldırganlara kapı açmaktadır. Bu nedenle, log analizi, güncel yazılımlar ve güvenlik duvarları gibi profesyonel önlemleri uygulamak, saldırıların önlenmesi ve etkilerinin azaltılması açısından kritik öneme sahiptir. Doğru tespit ve savunma stratejileri ile sistemlerinizi koruyabilir, olası siber saldırılara karşı dayanıklılığınızı artırabilirsiniz.