You are here
Home > Alati > Rubber Ducky

Rubber Ducky

Rubber Ducky je alat kojeg je 2009. godine osmislio Darren Kitchen iz Hak5 organizacije dok je radio kao sistemski administrator. Kitchen je razvio ovaj alat za upisivanje složenih naredbi i ubrzanje procesa.

 

Rubber Ducky oponaša tipkovnicu i računalo ga prepoznaje kao tipkovnicu, što mu omogućuje da izvrši „Ducky script“ tj. skripte koje je vrlo lako pisati te razumjeti.

 

Video recenziju samog uređaja možete pogledati ovdje:

 

 

Za pisanje skripti potreban je običan uređivač teksta, no možemo posjetiti i stranicu Duck Toolkit gdje se nalaze složenije skripte koje su napisali drugi korisnici Rubber Ducky uređaja, a mogu se i izraditi vlastite, te dekodirati i kodirati postojeće skripte.

 

Nakon generiranja skripte potrebno ju je prenijeti na memorijsku karticu Rubber Duckyja te memorijsku karticu ubaciti u uređaj.

 

Primjeri nekih od naredbi su:

 

REM – naredba komentira tekst u liniji

DELAY – pauzira skriptu određeni broj milisekundi

STRING – omogućuje zapisivanje teksta simulirajući tipkovnicu.

 

 

Također, moguće je koristiti bilo koje tipke obične tipkovnice, razne prečace te praktično simulirati sve naredbe.

 

Kako bi simulirali pritisak tipaka Windows i slova „R“ (W + R), napisat ćemo u skriptu sljedeći tekst:

 

DELAY 3000

GUI r

DELAY 500

STRING notepad

DELAY 500

 

 

Na početku skripte stoji naredba DELAY jer je računalu, kao i Rubber Duckyju potrebno par sekundi da se pokrenu, a unesena naredba DELAY 3000 označava vremenski odmak od 3 sekunde što je dovoljno vremena za pokretanje upravljačkog programa kod većine današnjih računala.

 

Ako žrtva ima administratorske ovlasti, Rubber Ducky uključivanjem ima iste ovlasti kao žrtvin račun. Razlog je činjenica da računala rijetko sumnjaju u tipkovnice te smatraju Duckyjev zapis validnim i ne razlikuju ga od korisnikovog. Ovakav oblik napada naziva se HID napad – Human interface device – u kojima se uređaji računalu predstavljaju kao stvarne tipkovnice.

 

Rubber Ducky skripte moguće je pokrenuti na mobilnim uređajima. Ako imamo odgovarajući prilagodnik u koji ćemo priključiti Rubber Ducky, on će simulirati tipkovnicu.

 

Za korištenje alata na mobilnom uređaju potrebno je uzeti u obzir sam operacijski sustav i način na koji ćemo izvršiti naredbe.

 

 

Kako se zaštititi od Rubber Ducky napada?

 

Zaštititi se od Rubber Duckyja težak je zadatak ako nemamo odgovarajući hardver koji ga blokira ili pak softver koji ga pronalazi, iako je i ovaj sigurnosni mehanizam moguće zaobići. Žrtva se može zaštititi dodatnim oprezom koji podrazumijeva obraćanje pažnje na to kakav USB uključuje u svoje računalo. Također, ako je korisnik udaljen od računala, potrebno ga je zaključati. Na ovaj način onemogućavamo napadaču kompromitaciju računala jer mu je za ostvarivanje uspješnog pristupa potrebna lozinka.

 

Jedno od hardverskih rješenja je korištenje Port Blocker uređaja koji se stavlja u USB ulaz, a kojeg se korištenjem posebnog alata može ukloniti kako bi priključili  USB. Međutim Port Blocker je lako ukloniti te ne predstavlja dovoljno pouzdan sigurnosni mehanizam.

 

Uz hardverske sigurnosne mehanizme, ovu je prijetnju moguće umanjiti i softverskim rješenjima. Na primjer, jedno od rješenja je i aplikacija „Penteract Disguised-Keyboard Detector“ koja zaključava računalo prilikom svakog priključivanja USB uređaja.

 

Također, postoji niz složenih rješenja poput, na primjer, aplikacije DigitalGuardian koja korisniku pruža naprednu zaštitu od prijetnji. Korisnik se zaštititi može i besplatnom aplikacijom Duckhunt koji sprječava keystroke-injection napade, uključujući i one pokrenute putem uređaja Rubber Ducky.

 

Duckhunt konstantno prati korištenje korisničke tipkovnice i sprječava izvršavanje skripti. Više o programu Duckhunt pročitajte ovdje.

 

Međutim, sigurnosne mehanizme moguće je i zaobići korištenjem naprednih opcija samog uređaja. U novijim verzijama firmwarea moguće je promijeniti VID (Vendor ID) i PID (Product ID) vrijednosti koje govore operacijskom sustavu o kakvom se uređaju radi. Ducktoolkit stranica nudi mogućnost mijenjanja VID i PID vrijednosti generiranjem datoteke.

 

Nakon što se navedena datoteka prenese, uz .bin skriptu, na SD karticu Rubber Duckyja moguće je odabrati jednu od Roccat tipkovnica na stranici te ju dodati na SD karticu. Nakon završenog postupka žrtvino računalo Rubber Ducky uređaj prepoznaje kao tipkovnicu tvrtke Roccat.

 

 

Kako spriječiti napad izveden alatom Rubber Ducky nakon što je uključen u računalo?

 

Ako prilikom pokretanja Rubber Ducky skripte, korisnik ciljanog računala pritisne, na primjer, tipki „b“, Rubber Ducky će, nakon pokretanja „Run“ prozora, umjesto „notepad“ upisati „bnotepad“ te se uređivač teksta neće pokrenuti. Također, Rubber Ducky možete prekinuti u izvršavanju radnje isključivanjem iz samog uređaja.

 

 

Svojstva:

 

  • Izgledom podsjeća na obični USB
  • Vrlo je lako programirati skripte za ovaj alat
  • Može pisati brzinama većim od 1000 znakova u minuti
  • Može napraviti sve što i korisnik
  • 32 bitni CPU , 60 MHz
  • Type-A USB connector
  • Proširiva memorija
  • Mogućnost pokretanja predodređenih radnji pritiskom na vanjsku tipku
  • JTAG sučelje s GPIO i DFU bootloader-om

 

 

Kako napisati Rubber Ducky skripte?

 

Za veliki broj napada potrebno je biti u mogućnosti pristupiti računalu pomoću administratorskih ovlasti. Razlog je tome činjenica kako je većini Rubber Ducky skripti ovisna o ovlastima u, na primjer, Powershellu.

 

Prije izvođenja napada potrebno je odabrati što želimo na uređaj prenijeti te unijeti potrebne informacije.

 

 

Odabir jezika

 

Koristeći uređaj Rubber Ducky moguće je izmijeniti i postavke jezika te podesiti novi raspored tipkovnice. U nastavku se nalazi primjer promjene jezika.

 

Evo kako:

 

DELAY 2000
GUI r
DELAY 600
STRING Powershell.exe /Command Set/WinUserLanguageList /LanguageList en/GB, hr/HR /FORCE
DELAY 600
ENTER
DELAY 300
<VAŠA SKRIPTA>
DELAY 500
GUI r
DELAY 600
STRING Powershell.exe -Command Set-WinUserLanguageList -LanguageList hr-HR -Force
DELAY 600
ENTER
DELAY 600

 

 

Ova skripta će promijeniti raspored tipkovnice na žrtvinom računalu te ga s hrvatskog prebaciti na engleski jezik te izvršiti prethodno stvorenu skriptu. Također, na stranici usluge Duck Toolkit možete odabrati i slovenski jezik. Važno je da prije postavljanja na uređaj skriptu testirate kako biste uklonili potencijalne greške.

 

Nakon preuzimanja skripte s ducktoolkit stranice, .bin datoteku potrebno je prenijeti na Rubber Ducky kako bi ga se moglo početi koristiti.

 

 

Primjeri korištenja

 

Složeniji napadi mogu podrazumijevati da napadač prethodno generiranu reverse shell skriptu postavlja na poslužitelj nakon što ju je pretvorio u izvršnu datoteku.

 

Sljedeći korak podrazumijeva postavljanje skripte koja pomoću Invoke-WebRequest Powershell naredbe dohvaća tu izvršnu datoteku te ju pokreće. Izvršna datoteka je FUD (Fully undetectable) tako da ju Windows Defender, a ni većina antivirusnih rješenja neće pronaći.

 

U nastavku se nalazi primjer koda što ga napadač koristi prilikom korištenja uređaja Rubber Ducky:

 

 

Iako je riječ o vrlo jednostavnom kodu koji preuzima i snima, a zatim pokreće datoteku koju je preuzeo, ovaj kod je iznimno opasan. Ni jedan sistem danas koji nema posebno dedicirano sigurnosnog rješenja neće ovo detektirati kao zlonamjernu radnju.

 

 

Napadač zatim izvozi .bin datoteku koju pohranjuje na memorijsku karticu svog Rubber Ducky uređaja.

 

Kako bi prihvatio konekciju od žrtve, napadač uspostavlja listener koji osluškuje konekcije koje dolaze na njegovu IP adresu i to na određeni port, 1337. U ovom slučaju, napadač koristi program netcat program za osluškivanje.

 

 

U sljedećem koraku, napadač uspostavlja web poslužitelj na kojem se nalazi izvršna datoteka, spremna da ju računalo žrtve preuzme i izvrši nakon što napadač uključi Rubber Ducky uređaj.

 

Nakon što je napadač uključio Rubber Ducky, mijenja se raspored tipkovnice te pokreće preuzimanje izvršne datoteke.

 

 

Nakon što je žrtvino računalo preuzelo datoteku, ona se pokreće te spaja na napadačevo računalo.

 

 

Kako napada djeluje iz napadačeve perspektive, možete vidjeti u nastavku.

 

 

Kako bi provjerio da je sve validno uspostavljeno, napadač pokreće ipconfig naredbu.

 

Top
More in Alati, Novosti
Otkrivena kritična ranjivost DNS servisa Windows Servera 

Poznata sigurnosna tvrtka CheckPoint otkrila je kritičnu ranjivost Windows DNS poslužitelja staru čak 17 godina.     DNS ili Domain name system je sustav koji pruža usluge pretvaranja...

Close