Social-Engineer Toolkit (SET)

SET je Python-based open-source framework za simulaciju i izvođenje napada socijalnog inženjeringa. Ugrađen je u Kali Linux — pokreće se naredbom setoolkit kao root. Koristi text-based, menu-driven sučelje (tipkaš broj + Enter za odabir, 99 za natrag).

Ključne mogućnosti SET-a

  • Spear phishing — ciljani phishing emailovi s payload-om
  • Website spoofing — kloniranje legitimnih stranica (credential harvesting)
  • Payload delivery — kreiranje i isporuka malicioznih payloada
  • Mass mailer attacks — slanje phishing emailova na listu adresa
  • QR code generator — QR kod koji upućuje na maliciozni URL
  • Infectious media — USB/CD koji automatski pokreće Metasploit payload
  • PowerShell attacks — isporuka PowerShell skripti ciljevima
  • Arduino-based — napadi putem Arduino/X10 uređaja
  • Wireless AP — DNS on-path (attacker-in-the-middle) napad putem lažne WiFi mreže

Važne napomene

  • SET koristi Metasploit za kreiranje payloada i pokretanje listenera
  • SET napadi su dobro poznati — AV i IDS ih detektiraju s defaultnim postavkama
  • Može slati na jednu adresu ili popis adresa
  • Podržava spoofanje From adrese
  • SQL Injection nije podržan u SET-u
SET je alat za ovlašteno testiranje. Bez eksplicitne dozvole — ilegalno je koristiti.

Gotovo sve funkcionalnosti SET-a nalaze se pod opcijom 1 → Social-Engineering Attacks. Ova izbornik ima 10 stavki:

# Naziv Opis
1 Spear-Phishing Attack Vectors Mass email napad, kreiranje payload-a, izrada predloška
2 Website Attack Vectors Kloniranje stranica, credential harvesting
3 Infectious Media Generator USB/CD/DVD koji automatski pokreće payload
4 Create a Payload and Listener Generira .exe payload i pokreće MSF listener
5 Mass Mailer Attacks Slanje email napada (jedna adresa ili lista)
6 Arduino-Based Attack Vector Hardware napadi putem Arduino/X10 uređaja
7 Wireless Access Point Attack Vector DNS on-path napad, lažna WiFi mreža
8 QRCode Generator Attack Vector Generira QR kod koji upućuje na maliciozni URL
9 Powershell Attack Vectors Isporuka PowerShell skripti i remote pristup PS-u
10 Third Party Modules Moduli trećih strana (plugini i prilagođeni napadi)
SQL Injection NIJE podržan u SET-u. Na ispitu — ako pitanje navede SQL Injection kao mogućnost SET-a, to je NETOČNO.

Payload i reverse shell

U labu korišten: Windows Reverse_TCP Meterpreter payload — žrtva pokreće .exe, veza se otvara od žrtve prema napadaču (zaobilazi firewall koji blokira dolazne veze).

Tijek SET phishing napada

1. SET kreira payload.exe /root/.set/ 2. ZIP + Apache acctupd.zip /var/www/html/ 3. Phishing email + link SET Mass Mailer 4. Žrtva preuzima i pokreće .exe 5. Reverse shell otvoren port 443 Napadač ima kontrolu Korak 1 Korak 2 Korak 3 Korak 4 Rezultat MSF listener čeka na port 443

Ključne naredbe u labu

# Promjena u direktorij s payloadom
cd /root/.set

# ZIP payload na web server
zip /var/www/html/acctupd.zip payload.exe

# Pokretanje Apache web servera
service apache2 start

Zašto port 443?

Reverse shell koristi port 443 (HTTPS) jer firewalli tipično propuštaju outbound promet na tom portu. Promet izgleda kao legitimni HTTPS — teže ga detektirati.

Meterpreter naredbe

  • sessions — lista aktivnih sesija
  • sessions -i 1 — spoji se na sesiju 1
  • sysinfo — info o kompromitiranom sustavu
  • getuid — koji korisnički račun je kompromitiran
Zašto dvije instance SET-a? Kad u prvoj instanci pokreneš listener, terminal je "zaključan" čekajući sesiju. Trebaš drugu instancu SET-a za kreiranje i slanje phishing emaila — inače nema načina napraviti oboje istovremeno.

Spear phishing email

U labu poslan email korisniku jaime@structureality.com s lažnim From poljem support@structurealty.com (nedostaje slovo "i" — structurealty umjesto structureality):

SET email konfiguracija

  • To: jaime@structureality.com
  • From: support@structurealty.com (spoofano, typosquatting)
  • From Name: Support Department
  • Subject: Important Account Update
  • Priority: High
  • Format: HTML (s klikabilnim linkom)

Socijalni inženjering elementi

  • Urgentnost: "vaši certifikati istječu" — navodi žrtvu na hitnu akciju
  • Autoritet: "Support Department" — izgleda legitimno
  • Typosquatting: blago kriva domena — korisnici ne čitaju pažljivo
  • Primamljivi link: "Update" → preuzimanje ZIP-a
Primarno ograničenje SET napada: Napad uspijeva samo ako žrtva pokrene preuzetu datoteku. Clientside sigurnost (upozorenja OS-a, UAC, AV) je prva linija obrane — ali social engineering uvjerava korisnike da je ignoriraju.

Obrana i sigurnosna svjesnost

Primarna obrana od ovog napada

  • Ne pokretati .exe datoteke iz emaila — najefikasnija obrana
  • Provjeri domensko ime pošiljatelja (structureality vs structurealty)
  • Ažurirani antivirus i email gateway s filtrom attachmenta
  • SPAM i phishing filteri
  • Redoviti sigurnosni treninzi korisnika

Zašto treninzi nisu dovoljni sami

Windows prikazuje upozorenja ("nepoznati izdavač", "potencijalno štetan fajl") — ali korisnici koji su uvjereni social engineeringom ignoriraju upozorenja.

Kombinacija: tehnička zaštita + trening korisnika = minimalan rizik.

Ključno: upozorenja OS-a treba ostaviti aktivna — nikad ih ne gasiti. Korisnici moraju naučiti poštovati ih i prijaviti sigurnosnom timu.

Na ispitu zapamti:
  • SET = Social-Engineer Toolkit, pokreće se kao setoolkit
  • SET koristi Metasploit za payload generiranje i listenere
  • SQL Injection nije u SET-u — zapamti koje napade SET podržava
  • Reverse shell ide od žrtve prema napadaču (outbound) — zaobilazi firewall
  • Port 443 koristi se jer firewalli propuštaju outbound HTTPS promet
  • Payload se sprema u /root/.set/payload.exe
  • Primarna obrana: ne pokretati .exe iz emaila = sigurnosna svjesnost korisnika

Kviz — 15 pitanja

0 / 15
Odgovori na pitanja da vidiš rezultat.

1. Koji framework SET koristi za kreiranje payloada i pokretanje listenera za reverse shell?

SET integrira Metasploit za generiranje payloada (npr. Windows Reverse_TCP Meterpreter) i pokretanje MSFconsole listenera koji čeka na dolazne reverse shell veze od kompromitiranih žrtava.

2. Phishing email poslan je s adrese support@structurealty.com umjesto support@structureality.com. Koja je socijalni inženjering tehnika ovdje primijenjena?

Typosquatting = blago kriva domena (structurealty vs structureality) koje korisnici ne primijete u brzom čitanju. Kombinira se sa spoofanjem From polja da email izgleda kao da dolazi od legitimnog odjela.

3. Zašto je payload.exe zapackiran u .zip datoteku prije slanja linkom?

Email gateway filteri i klijenti često blokiraju ili upozoravaju na .exe attachmente. Pakiranje u ZIP datoteku zaobilazi tu prvu liniju obrane — korisnik sam raspakirava i pokreće izvršnu datoteku.

4. Zašto reverse shell koristi port 443 za komunikaciju prema napadaču?

Reverse shell ide od žrtve prema napadaču (outbound). Firewalli rijetko blokiraju outbound 443 (HTTPS). Napadač sluša na 443 — promet izgleda kao normalni web promet.

5. Koja je PRIMARNA obrana od napada opisanog u ovom labu (phishing email + malicious .exe)?

Primarni cilj napada je prevariti korisnika da pokrene .exe. Ako korisnik to ne napravi — napad propada. Trening sigurnosne svjesnosti je najefikasnija primarna obrana.

6. Meterpreter naredba getuid prikazuje MS10\Jaime. Što to znači?

getuid prikazuje koji račun je pokrenuo payload. Meterpreter sesija ima iste ovlasti kao taj račun — ako Jaime nije administrator, napadač nema admin privilegije bez daljnje eskalacije.

7. Koja SET mogućnost omogućuje kloniranje legitimne web stranice radi krađe korisničkih kredencijala?

Website Attack Vectors (opcija 2) u SET-u uključuje credential harvesting — klonira legitimnu stranicu (npr. login formu), žrtva upiše credentials, a SET ih bilježi na napadačevom serveru.

8. SET napadi su "dobro poznati" — što to konkretno znači za napadača koji koristi SET s defaultnim postavkama?

Jer su SET napadi javno dokumentirani, antivirusne baze ih sadržavaju. Napadač mora dodatno obfuskirati payloade (encodiranje, prilagođeni shellcode) da zaobiđe modernu zaštitu.

9. Koje tvrdnje o SET-u su točne? (Odaberi 3)

SET može slati na jednu ili više adresa, podržava spoofanje From polja, i kombinira tehničke exploite sa socijalnim inženjeringom. SET payloadi su detektabilni — nisu allow-listed.

10. Korisnik dobiva upozorenje "Unknown Publisher" pri pokretanju payload.exe ali ga ignorira. Što je organizacija trebala napraviti da spriječi ovaj scenarij?

Tehnička upozorenja su neučinkovita bez treninga. Korisnici uvjereni social engineeringom ignoriraju upozorenja. Trening mora naglasiti: nikad ne pokrećeš nepoznate .exe, uvijek prijaviš sigurnosnom timu.

11. Koji tip SET napada stvara autorun USB ili CD koji automatski pokreće Metasploit payload?

Infectious Media Generator (opcija 3) kreira USB, CD ili DVD koji automatski pokreće payload — klasična "malicious USB drop" taktika. Fizički medij koji žrtva pronađe i umetne.

12. U labu je potrebno pokrenuti dvije instance SET-a istovremeno. Zašto?

Kad u prvoj instanci pokreneš listener, terminal je zaključan čekajući sesiju. Trebaš drugu instancu SET-a za kreiranje i slanje phishing emaila — inače nema načina napraviti oboje istovremeno.

13. Koji od navedenih napadnih vektora SET NE podržava?

SQL Injection NIJE podržan u SET-u. SET podržava: spear phishing, website spoofing, payload delivery, mass mailer, QR code, infectious media, PowerShell, Arduino, wireless AP napade.

14. Koji SET menu broj odabireš da kreiraš payload i pokreneš listener za reverse shell?

Opcija 4 = "Create a Payload and Listener" — generiš payload (npr. Windows Reverse_TCP Meterpreter), odabireš IP listenera i port, te pokrećeš MSFconsole listener.

15. Gdje SET sprema generirani payload.exe na Kali VM-u?

SET uvijek sprema payload.exe u /root/.set/payload.exe. Ako kreirač novi payload, stari se prepiše — treba ga preimeovati ako se želi zadržati. ZIP naredba: zip /var/www/html/acctupd.zip payload.exe (dok ste u /root/.set/).
0 / 15
Riješi kviz da vidiš rezultat.