PDA

View Full Version : เทคนิคใหม่ในการทำ Phishing, Hacking Websites



tonynuc
31-01-2008, 10:51 AM
DNS spoofing เป็นเทคนิคในการโจมตี web browser โดยทำการหลอก web browser ให้ใช้ ip address ของ website ปลอม ตัวอย่างเช่น เวลาเรากดเข้า web www.citecclub.org แล้ว web browser ของเราจะถาม DNS server เพื่อแปลง hostname เป็น IP address (61.19.248.246) ก่อนแล้วค่อย connect ไปยัีง ip นั้นๆ ถ้าสังเกตุดีๆ dns response จะมี TTL flag มาด้วย (บอกว่า ipaddress นี้จะ valid หรือ expire เมือไหร่ เพื่อให้ webbrowser ทำการถามใหม่ โดยปกติจะถูกกำหนดไว้นานๆ) แต่เรามาลองคิดกันดูว่าถ้าเราสามารถหลอก web browser โดยอาศัยจุดอ่อนของ TTL field นี้เพื่อให้ ipaddress มัน expire เร็วก่อนกำหนดเช่น 1 วินาที เพื่อให้ webbrowser ถาม dns server ใหม่ แต่ attacker จะตอบกลับมาด้วย ip address ปลอม ที่นี้เราก็จะถูกหลอกให้ใช้งาน citecclub ของปลอมโดยไม่รู้ตัว แล้วลองจินตนาการว่าถ้า web นี้เป็น internet banking, online payment ,etc ดูสิ ถึงแม้คุณจะพิมพ์ชื่อ website เข้าไปเองก็ไม่แน่เสมอไปว่าจะเป็น website ของจริง!!! น่ากลัวไหมครับ? (อธิบาย คร่าวๆคงได้ประมาณนี้)

จริงๆแล้วไม่น่ากลัวหรอกครับเพราะ web browser ของเรามีเทคนิคในการป้องกันการโจมตีแบบนี้ที่เรียกว่า DNS Pinning ครับโดยเทคนิคนี้จะบังคับให้ web browser ใช้ ip address เดียวกับ host เดิมเสมอ (Same Origin Policy) เช่นเมื่อเราเรียก web ใดก็ตาม web browser จะทำการปักหมุด (pin) หมายเลข ip ไว้กับ hostname ไว้ใน cache โดยไม่สนใจ ip address ปลอมที่ attacker ส่งมาอีก ทำไห้การโจมตีแบบ dns spoofing ทำได้ยากหรือเป็นไปไม่ได้เลยครับ ดูเหมือนจะสบายใจกันแล้วใช่ไหม?

http://img411.imageshack.us/img411/74/dnspinningwz0.png
DNS Pinning

ไม่เสมอไปครับ ในโลกของ hacking อย่างพวกเราก็มีเทคนิคใหม่ที่เรียกว่า Anti-DNS Pinning Attack ครับเป็นการ defeat DNS Pinning โดยอาศัยข้อจำกัดที่ว่า web server ต้อง online อยู่เมื่อ DNS TTL expire ที่นี่ถ้าเราทำให้ webserver นั้นไม่ online ชัวขณะ เราก็จะสามารถ ทำลายการป้องการ DNS Pinning นี้ลงได้ เริ่มไม่มันใจใน browser ของตัวเองแล้วใช่ไหมครับ?

ขั้นตอนในการโจมตี Anti-DNS Pinning โดย (โดยอาศัย XSS Javascript เข้ามาช่วย) ทำได้แบบนี้ครับ:

**Hidden Content: Check the thread to see hidden data.**