ThaiCERT: Thai Computer Emergency Response Team
ศูนย์ประสานงานการรักษาความปลอดภัยคอมพิวเตอร์ ประเทศไทย 
 
 
 


เจาะลึก Malicious Mobile Code ( MMC ) ตอนที่ 1
เรียบเรียงโดย :
อ.ปริญญา หอมเอนก
เผยแพร่เมื่อ : 31 พฤษภาคม 2545

อีกรูปแบบหนึ่งของไวรัสทั้งในปัจจุบันและอนาคต มักจะมาในรูปของ Malicious Mobile Code (MMC) คำว่า "Malicious" หมายถึง มุ่งร้ายหรือปองร้าย รวมกับ "Mobile Code" นั่นก็คือ การประสงค์ร้ายที่มาในรูปแบบของโค๊ดที่เคลื่อนที่ได้นั่นเอง MMC เป็นโปรแกรมซอฟต์แวร์ประเภทหนึ่งซึ่งถูกออกแบบมาเพื่อเคลื่อนที่จากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่ง หรือจากเครือข่ายหนึ่งไปยังอีกเครือข่ายหนึ่งโดยมุ่งหวังที่จะปรับเปลี่ยนข้อมูลในระบบคอมพิวเตอร์โดยที่เจ้าของหรือผู้ใช้ไม่สามารถล่วงรู้ รูปแบบของ MMC รวมไปถึง ไวรัส, Trojan horses, worms, script attacks, และ rogue internet code

สืบเนื่องจากเทคโนโลยีของระบบปฏิบัติการทุกวันนี้ ล้วนเพิ่มความสามารถที่เน้นไปทาง Internet Technology ไม่ว่าจะเป็นภาษา script ต่างๆ เช่น Java script, VB script ( .vbs ) , Windows script host ( .wsh ), Visual Basic for Application ( VBA ) ทำให้ไวรัสยุคใหม่นั้น นำความสามารถของเทคโนโลยีนี้มาใช้งานในการแพร่กระจายและเข้าถึงระบบข้อมูลของเราได้ง่ายดายยิ่งขึ้น ไวรัส Code Red และ Nimda ถือว่าเป็น MMC ประเภทหนึ่งซึ่งมีการทำงานในลักษณะของ Internet Worms

ก่อนอื่นเรามาทำความเข้าใจกับคำว่าไวรัส, Trojan horses และ Worms กันก่อน ไวรัสหมายถึงโปรแกรมที่ประสงค์ร้ายที่เข้าไปแก้ไขไฟล์ของเครื่องที่ติดไวรัสหรือ boot record เพื่อที่จะสำเนาตัวเองไปยังคอมพิวเตอร์เครื่องอื่นๆ ส่วน Trojan horses ก็คือโปรแกรมที่ไม่ได้ออกแบบมาเพื่อสำเนาตัวเองแต่ตั้งใจหลอกให้ผู้ที่ได้รับโปรแกรมนี้เข้าใจผิดว่าเป็น Utilities, Games หรือ Freeware ต่างๆ ซึ่งแท้จริงแล้วผู้เขียน Trojan horses ต้องการให้โปรแกรมทำอย่างอื่นโดยที่ผู้ใช้ไม่รู้เช่น ทำให้ผู้ส่ง Trojan horses นี้สามารถเข้ามาทำการควบคุมการทำงานเดสท๊อปของเครื่องที่ run โปรแกรม Trojan horses นี้อยู่ ยกตัวอย่างเช่นโปรแกรม Back Orifice 2000 ( BO2K ) หรือ SubSeven เป็นต้น สำหรับ Worms จะเป็นโปรแกรมที่มีความสามารถในการทำสำเนาตัวเองด้วย code ของโปรแกรมที่มีมาอยู่ในตัวมันเองโดยอิสระ โดยไม่ต้องรอการเรียกใช้จากผู้ใช้ Worms มักจะใช้โปรแกรมที่เรานิยมใช้กันทั่วไปเช่น โปรแกรมส่ง e-mail ( outlook 97/98/2000 , outlook express ) เพื่อส่งตัวเองไปยังผู้รับ e-mail ที่อยู่ในรายการ Address Book โดย worms จะ attach ตัวเองไปกับ outgoing mail โดยอาศัยช่องโหว่ในซอฟต์แวร์ของเรา เช่นช่องโหว่ของ outlook express เป็นต้น Worms แตกต่างจากไวรัสตรงที่ Worms จะไม่เก็บตัวของมันเองไว้ใน boot sector หรือแก้ไขไฟล์ที่เราใช้งานอยู่ปกติให้เราสังเกตได้ถึงการเปลี่ยนแปลงไปของไฟล์นั้น

สำหรับ Worms และ Trojan มีความแตกต่างกันอย่างไรนั้น หลายคนเข้าใจผิดว่า Worms คือ Trojan หรือ Trojan ก็คือ Worms แต่ในความเป็นจริงแล้วTrojan นั้นพยายามที่จะเสแสร้งว่าเป็นโปรแกรมอื่นๆ แต่ขณะที่ Worms มีการทำงานที่อยู่เบื้องหลังโดยผู้ใช้ไม่รู้ตัว Trojan จะทำงานได้หรือไม่นั้นขึ้นอยู่กับผู้ใช้จะ Activate มันขึ้นมา หรือพูดง่ายๆว่า ขึ้นอยู่กับการตัดสินใจของผู้ใช้นั่นเอง แต่พวก Worms นั้น ไม่ต้องรอการตัดสินใจจากผู้ใช้เลย มันสามารถแพร่กระจายด้วยตัวมันได้เอง ซึ่งเป็นข้อแตกต่างที่เห็น ได้ชัด
แต่ไวรัสในอนาคตจะเป็นการทำงานแบบลูกผสม ทั้งลักษณะของไวรัส , Trojan horses และ worms รวมมิตรกัน เพื่อประสิทธิภาพการแพร่กระจายและทำลายที่สูงสุด เท่าที่ผู้เขียนโปรแกรมไวรัสจะทำได้ อีกทั้งยังสามารแพร่กระจายไปยังอุปกรณ์ไร้สายต่างๆได้อย่างง่ายดาย เช่น โทรศัพท์มือถือ หรือ เครื่อง PDA (Palm Pilot, Pocket PC) เป็นต้น ในโลกอินเทอร์เน็ตไร้พรมแดนทุกวันนี้ ทุกนาที ทุกขณะ ได้มี MMC หลายพันหลายหมื่นชนิดพยายามแทรกตัวเพื่อสร้างความวุ่นวายให้กับระบบ คอมพิวเตอร์และระบบเครือข่ายของเรา ซึ่ง Consume Bandwidth และทำให้เน็ตเวิร์คช้าลง หรือแม้แต่เข้ามาทำลายข้อมูลหรือลบข้อมูลที่สำคัญโดยที่เราไม่ทันตั้งตัวได้ ลักษณะของ MMC จะมีการเปลี่ยนแปลงตัวเองไปเรื่อยๆ เราเรียกว่า "Variant" เช่นกรณีไวรัส Nimda กลายพันธุ์เป็น Nimda.A, Nimda.B, Nimda.C, Nimda.D และ ล่าสุด " Nimda.E" หรือ "Nimda.enc" ซึ่งผมได้ประสบกับตัวเองขณะสอนอยู่ใน class "Security Audit" ที่เนคเทค ( NECTEC ) ระบบคอมพิวเตอร์ในห้องอบรมได้ต่อเชื่อมกับระบบอินเทอร์เน็ต โดยตรง ทำให้เจ้า Mobile Code ของ Nimda.enc แพร่เข้ามาโดยไม่รู้เนื้อรู้ตัว และจากการตรวจสอบของ Personal Firewall ที่ผมใช้ Backice Defender ของ www.iss.net รายงานว่า มาจากประเทศไต้หวัน เกาหลี และจีนแผ่นดินใหญ่ รวมถึงเครื่องในประเทศไทยที่ติดไวรัสนี้ด้วย ลักษณะการทำงานที่เรียกว่า "Variant" ก็คือมีการทำงานคล้าย Nimda ตัวเดิม แต่มีบางสิ่งที่เปลี่ยนไปอย่างสิ้นเชิง ที่ว่าเหมือนเดิมก็คือมีการแพร่กระจายผ่านทาง HTTP ( port 80 TCP ) เข้ามาทางช่องโหว่ของ Web Server IIS4 และ IIS5 ของ Windows NT หรือ Windows 2000 และแพร่กระจายผ่านทาง Netwotk Share ที่เปิดไว้แบบ "Everyone full control" MMC จะพาตัวเองเข้ามาในเครื่องเราโดยใช้คำสั่ง TFTP ( port 69 UDP ) โดยไฟล์ของ MMC มีชื่อว่า "cool.dll" ( Nimda ตัวเดิมชื่อ "admin.dll" ) ที่ไม่เหมือนเดิมก็คือ เมื่อมันเข้ามาอยู่ในเครื่องเราแล้ว จะเป็นไฟล์ชื่อ httpodbc.dll แทนที่จะเป็นชื่อ admin.dll เพราะฉะนั้นโปรแกรมตรวจสอบไวรัส ( Anti-virus Software ) จึงตรวจ จับไม่พบ และที่เปลี่ยนไปอย่างสิ้นเชิงก็คือ มีการติดที่ไฟล์ของเราที่มีนามสกุล .exe ด้วย ทำให้ไฟล์มีขนาดใหญ่ขึ้นเป็น 8 MB (เหมือนอาการไวรัสสมัยก่อนๆ ที่เพิ่มขนาดไฟล์ ทำให้ ไฟล์นั้นใช้งานไม่ได้อีกเลย ) ซึ่งน่ากลัวกว่าไวรัส Nimda ตัวก่อน

เห็นได้ชัดว่าระบบอินเทอร์เน็ตทุกวันนี้เต็มไปด้วย MMC ซึ่งพูดได้ว่า ถ้าเรา online ไม่เกิน 15 นาที ทิ้งไว้ เราจะต้องมีโอกาสเจอกับ "Bots" (ย่อมาจาก "Robots" ) ของพวก MMC วิ่งมาที่เครื่องของเรา ในทางเทคนิคเราเรียกว่า MMC "in the wide" ก็คือ มีการแพร่กระจายและค้นพบโดยเหล่าผู้ผลิตโปรแกรมป้องกันไวรัส ซึ่งแม้จะตรวจพบ แต่ก็ยังฆ่า (วิสามัญ) ไม่ได้ ต้องรอสักระยะหนึ่ง บริษัทผู้ผลิตโปรแกรมป้องกันไวรัส รายงานว่ามีการค้นพบ MMC ตัวใหม่ๆ 200-400 ตัว/เดือน และขณะนี้ตรวจจับได้แล้วมากกว่า 54,000 ตัว ซึ่งดูจากตัวเลขแล้วก็น่า ตกใจไม่น้อย ในอนาคตอันใกล้ เราสามารถ online ได้ง่ายขึ้น ไม่ว่าจากทางโทรศัพท์มือถือผ่านระบบ GPRS ที่มีความเร็วสูงขึ้นกว่าเดิม, ระบบ ADSL หรือ Cable Modem รวมทั้งระบบไร้สาย เช่น Bluetooth ( สามารถเชื่อมต่ออุปกรณ์ Bluetooth ด้วยกันแบบ 360 องศา ในระยะไม่เกิน 10 เมตร ) รวมถึงเทคโนโลยี Wireless LAN ( 802.11b ) ที่นับวันจะมีแนวโน้มใช้งานเพิ่มขึ้นเรื่อยๆ MMC จึงสามารถติดต่อไปยังอุปกรณ์ไร้สายที่มี IP Address ได้โดยง่าย ผลกระทบจาก MMC นั้นก็ขึ้นกับว่า Payload ( การทำงานของ MMC หลังจากที่ติดในเครื่องเป้าหมายแล้ว ) นั้นออกแบบมาอย่างไร เช่นลบข้อมูลในเครื่องเป้าหมายจนเกลี้ยง หรือส่งข้อมูลสำคัญๆที่ได้จากเครื่องเป้าหมายไปยังผู้ไม่หวังดีโดยที่เรา ไม่รู้ตัว( หรือรู้อีกทีก็สายเสียแล้ว )

ตอนนี้ผมคิดว่าท่านผู้อ่านคงพอมองเห็นภาพและเข้าใจ MMC และคำศัพท์ต่างๆที่เกี่ยวข้องกับเรื่องไวรัสกันพอสมควร ฉบับหน้าผมจะยกตัว อย่างถึง MMC และวิธีการป้องกันอย่างมีประสิทธิภาพ เพื่อที่จะไม่ตกเป็นเหยื่อของภัยที่มาจาก MMC นะครับ ข้อมูลเพิ่มเติมเข้าไปดูได้ที่ www.topsecure.net หรือส่ง e-mail มาคุยกันที่ prinya@netengtel.com




Home || เอกสารเผยแพร่ || Virus

ThaiCERT Disclaimer | Copyright © 2001 ThaiCERT(NECTEC). All rights reserved.