Discussione Come scongiurare un DOS

Stato
Discussione chiusa ad ulteriori risposte.

Netcat

Utente Jade
17 Gennaio 2022
455
129
333
691
Quest'oggi modificheremo insieme, curando molto l'aspetto del social engineering, un tool che dovrebbe lanciare un DOS. Il DOS è una piaga, come lo è il Ransomware, con la differenza che non porta neppure un profitto. Lo scopo del DOS è semplicemente creare caos, confusione e crash nel tuo server. Questo non lo vuoi, per impedirlo oggi imparerai a modificare un tool che lancia un finto DOS, e mentre lo Skid cercherà di userlo, spawnerà invece una reverse shell sul tuo terminale, interamente scritta in python. Cross-compatibile con ogni piattaforma che supporta Python.

La zip contenuta nell'archivio contiene due file. Il file originale è base2.py, la versione modificata è base.py, potete esaminarli da soli.
Il file originale si comporta come di consueto, riceve degli imput per iniziare un DOS, sfruttando IP Address del target. In seguito, il tool chiede allo Skid il packet size e il numero di thread. Con questi dati, il tool si connette al target IP e lancia l'attacco.

Il mio file, è una versione modificata, fornita di commenti, che hanno lo scopo di indurre lo Skid a credere che il tool si stia connettendo ad un proxy per eludere la detection. Le due versioni sono molto simili, con la differenza che nella mia, dopo aver inserito Target IP, Packer Size e Thread Number, invece di iniziare il DOS parte una reverse shell, interamente scritta in Python. L'artefatto ha la capacità di eludere un vasto arsenale di misure di sicurezza. Può eludere l'AV prima di tutto, può eludere l'esame di uno skid (dato che queste persone hanno solo l'obiettivo di fare danni, e non capiscono i linguaggi di programmazione), e può eludere anche l'esame di un ricercatore di sicurezza inesperto.

Alcuni signori come @JunkCoder invece, esaminando il mio artefatto si possono accorgere che c'è qualcosa di sospetto alla riga 54, perché come presunto "proxy" ne è stato già indicato uno, e il commento raccomanda di non modificarlo.

Lanciando il mio tool sul terminale, dopo aver riempito i campi richiesti, viene fatto credere all'user che il DOS è iniziato con "DOS attack started, grab a coffee and wait 10 minutes". In quel momento invece spawna la shell sul vostro terminal, e questi 10 minuti sono sufficienti per fare ogni sorta di bravate con la shell. Potete sfruttarli per caricare uno stealer e rubare le password dello skid, spegnergli il device, cancellargli altri tool nefasti, cancellargli i ransomware ecc.

Per testare le capacità dell'artefatto, rimpiazzare alla riga 54 IP Address e Port con il vostro server. Poi aprite Metasploit e mettete un listener in ascolto, usando python/meterpreter/reverse_tcp come payload. Per rendere il tool più credibile, alla riga 31, forzare l'inserimento di un indirizzo IP lungo almeno 10 caratteri (comprensivi di punti e numeri), in questo modo:

if len(target_addr) < 10: <<--- lunghezza dell'IP address
print('[!] ERROR: Target addr is missing')
exit(0)
 

Allegati

  • bin.zip
    2.4 KB · Visualizzazioni: 16
Uppare uno script su virustotal non ha molto senso occhio eh
Chiunque rimanipola un po le stringhe la dentro crea nuove signature, con gli script in python è molto più facile farlo rispetto agli .exe,
comunque grazie
 
  • Mi piace
Reazioni: MRPants
si avevo modificato ma è rimasto il link , paranoia da zipbomb ancora prima di aver letto il contenuto del topic , my bad ...

Non è poca fiducia ma alcuni forum lo fanno di default per ogni script ,

quanto al topic , mi piacerebbe leggere un tuo post di approfondimento sui Denial Of Service , magari quando hai tempo e voglia ;)
 
Va bene.
Anzi, non è neppure necessario fare grosse modifiche allo script per generare nuove signature, basta anche fare payload rotation.
Il miglior AV contro questi script è il tuo cervello. Generalmente i nabbi provano a proteggere gli script python nefasti codificandoli in base64, o proteggendoli con pyarmor, ma gli attacchi avanzati sfruttano la tecnica del code merging, che è questa roba qui. In pratica tu crei uno script in python legittimo, che fa cose apparentemente tranquille, ma in realtà quello che stampa su terminal con print è diverso da quello che fa realmente (come in questo caso). Oppure ancora, fa quello che effettivamente dice di fare, ma allo stesso tempo spawna anche un sub-thread nefasto (tecnica ancora più avanzata)
 
  • Mi piace
Reazioni: MRPants
Ultima modifica:
Un pò da bastardi, mi piace.
Anyway, chiunque abbia fatto lo script originale (non quello custom) è il cugino di Mitnick, si poteva fare tutto con un comando, se si voleva fare lo script si faceva in bash. Ancha la reverse.
l2ping lavora col bluetooth da quanto ho capito, chiede in input un mac address. è un dos per bluetooth come specifica anche l'autore:
d.png

Cross-compatibile con ogni piattaforma che supporta Python.
In realtà solo Linux, l2ping è un comando presente su sistemi Linux.
 
Stato
Discussione chiusa ad ulteriori risposte.