058 - เมื่อผม Hack Twitter API
posted on 20 Mar 2010 13:13 by thiticgi in Security, Twitterด้วยความอยากรู้ว่า หากเราจะลองเชื่อมข้อมูลกับพวก WEB API Service แบบ เนื้อๆ เลย แบบที่ไม่ต้องไปผ่าน Tools นั่นนี่ จะทำได้อย่างไรบ้าง งานนี้ Twitter เลยเป็นเหยื่อครับ เพราะว่า มี Protocal ที่ออกแบบไว้ค่อนข้างง่าย สะดวกทีเดียว จึงไม่แปลกใจเลยว่า ทำไม โปรแกรมที่เป็น Client จึงเยอะนัก
หลังจากทดลองดักข้อมูลดูแล้ว (Sniffer เครื่องตัวเอง) ได้ดังนี้
ที่เห็นขีดอยู่ เป็นข้อมูลที่ผ่านการเข้ารหัส User, Password ของโปรแกรม ที่ใช้ทดสอบการ Post ข้อความไปยัง Twitter ครับ แต่เอ... Authorization : Basic งั้นเหรอ งั้นลองเอาค่าที่ได้นี่ ไปลองถอดออกมาดูซิ
นี่เป็น Code ที่ทดลองเขียนด้วย Visual Basic ครับ Code แค่นี้ บวกกับ Class อีกนิดหน่อย เอาค่าที่เข้ารหัสแล้ว มาทดสอบดู หลังจากนั้นทดลอง Run
แว๊ก.... ที่มันเข้ารหัสไว้ ถูกถอดออกมาชัดเจนในรูปของ User:Password ครับ
พูดง่ายๆ เมื่อเอาข้อมูลนี้มาถอด ผมจะทราบข้อมูล 2 อย่างคือ Twitter ของผู้้ที่ Post เข้ามา อย่างนี้ ก็จะเป็น http://twitter.com/comnets (แนะ จะแอบโปรโมทละซิ)
และได้ Password ที่พร้อมจะ Login เพื่อใช้ Post ข้อความต่างๆ ในนามของผมได้เลย
จากการทดสอบครั้งนี้ ได้ผลสรุปคือ เราจะเห็นการทำงานของการใช้สิทธิของ Web API ได้ชัดเจนมากขึ้น จากที่เดิม ไปผ่าน Tools Service ต่างๆ
นอกจากนั้น เราพบว่า หาก API เข้ารหัสแบบปิด แบบนี้ สามารถถูกถอดออกมาได้ โดยง่าย ดังนั้น ควรมี Password ที่เราใช้ทั่วๆ ไป กับ Password ที่ต้องการใช้เมื่อ ต้องการความปลอดภัยสูง เช่น Password ของธนาคาร, Email ที่ใช้เป็นหลัก (ซึ่งผ่าน https) เป็นต้น
อีกอย่าง สำหรับ ผู้ที่บอกว่า อยาก Sniff ก็ Sniff ไป เราไม่มีความลับอะไรอยู่แล้ว ก็น่าจะดูไว้หน่อยนะ จะได้เข้าใจว่า หลังจากที่เราได้ข้อมูลดิบเหล่านี้มาแล้ว เราเอามาทำอะไรได้เยอะแยะเลยครับ


แต่มันก็จำเป็นแหละเนอะ ไม่งั้นจะเอาไปทำ client ยังไง
#1 By warr on 2010-03-20 13:57