Nwlapcug.com


Come fare uno Script di inondazione



Inondazioni, o attacchi denial-of-service, tentano di sopraffare le risorse del computer e renderli disponibili per gli utenti. Di solito, gli attacchi bombardano risorse di destinazione con richieste di comunicazione affinché non possono rispondere al traffico autentico o rispondere così lentamente che sembrano non disponibile. Tuttavia, se si desidera creare uno script Perl che genera un diluvio per testare le risorse sotto stress. Si può inondare una porta specifica di protocollo UDP (User Datagram) su una risorsa di destinazione con entrambi dimensioni pacchetto fisso o variabile. È inoltre possibile generare un diluvio costante controllato indicando una larghezza di banda di destinazione o il ritardo dei Inter pacchetti.

Istruzioni

1

Definire i parametri della riga di comando che si desidera utilizzare. Ad esempio, è possibile utilizzare un parametro di tempo per specificare la durata del diluvio. Se il parametro viene omesso, il diluvio potrebbe essere continuo. Un esempio di utilizzo dello script Perl riga di comando potrebbe essere come segue:

Flood.pl - port porta - dimensione bytes - tempo secondi - kbps di larghezza di banda - ritardo msec

2

Includono la "presa", "Getopt" e "Time::HiRes" Perl moduli nello script. La "Presa" modulo carichi il C ad definisce e struttura manipolatori. Il modulo "Getopt" implementa la funzione GetOptions (). La funzione legge la riga di comando del programma, sembra per la corrispondenza di argomenti e se trovata, imposta la variabile corrispondente opzione su true. Il modulo "Time::HiRes" fornisce tempo ad alta risoluzione e timer, ad esempio la chiamata di sistema "gettimeofday". Per esempio:

utilizzare getopt;

utilizzare la presa;

utilizzare Time::HiRes;

3

Dichiarare le variabili. Per esempio:

il nostro $port = 0;

il nostro $size = 0;

il nostro $time = 0;

il nostro $bw = 0;

il nostro $delay = 0;

4

Definire il tipo per le variabili dichiarate. Per esempio:

GetOptions (

"port=i" => \$port, # UDP port to use

"size=i" => \$size, # packet size

"bandwidth=i" => \$bw, # how much bandwidth to consume

"time=i" => \$time, # running time

"delay=f"=> \$delay, # inter-packet delay5

Valore predefinito del parametro di riga di comando e l'utilizzo di codice. Ad esempio, è possibile impostare la dimensione del pacchetto a 256 byte in se il parametro "larghezza di banda" viene utilizzato senza il parametro "dimensione":

$size = 256 se $bw & &! $size;

6

Includono la stampa su schermo che cosa fa lo script. Per esempio:

Stampare "Flooding $IP". ($port? $port: "casuale"). "porta con".

($size? "$size-byte": "dimensione casuale"). "pacchetti". ($time? "per $time secondi": ""). " \n";