235034 Security in Computer Systems and Networks การป้องกัน Malware Lec. Sanchai Yeewiyom School of Information and Communication Technology University of Phayao
Objective วิวัฒนาการของไวรัสคอมพิวเตอร์ Malware Payload การเริ่มทำงานของ Malware กลไกการป้องกันการถูกตรวจสอบตัวเองของ Malware
Objective วงจรชีวิตของ Malware เทคนิคการตรวจจับ Malware
https://www.fortinet.com/content/dam/fortinet/assets/white-papers/wp-ctap-threat-landscape.pdf
https://www.mcafee.com/au/resources/reports/rp-quarterly-threats-dec-2016.pdf
https://cdn2-prodint. esetstatic https://cdn2-prodint.esetstatic.com/ESET/US/resources/threat-reports/Threat_Radar_Report_november_2016.pdf
http://www. pandasecurity http://www.pandasecurity.com/mediacenter/src/uploads/2016/05/Pandalabs-2016-T1-EN-LR.pdf
https://securelist.com/analysis/kaspersky-security-bulletin/77681/mobile-malware-evolution-2016/
https://www.mcafee.com/au/resources/reports/rp-threats-predictions-2017.pdf
https://securelist.com/files/2017/02/Mobile_report_2016.pdf
วิวัฒนาการของไวรัสคอมพิวเตอร์ ???
มัลแวร์ : Malware Malware (Malicious Software) หมายถึง ซอฟต์แวร์ ใดๆ ที่ถูกออกแบบขึ้นมา โดยมีจุดมุ่งหมายที่จะสร้างความ เสียหายให้แก่เครื่องคอมพิวเตอร์ หรือระบบเครือข่าย คอมพิวเตอร์ และมีความสามารถในการเคลื่อนที่จากเครื่อง คอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่ง หรือจากเครือข่าย หนึ่งไปยังอีกเครือข่ายหนึ่งได้ ใช้แทนการเรียกโปรแกรมประสงค์ร้ายต่างๆ เช่น Virus, Worm, Trojan Horse, etc.
ตัวอย่าง Malware ประเภทต่างๆ Trojan Horse Worm Virus
Trojan Horse หมายถึงโปรแกรมที่ดูเหมือนมีประโยชน์ หรือไม่เป็นอันตราย แต่ในโปรแกรมจะมีการซ่อน Code ที่เป็นอันตราย แต่เมื่อมีการอ่านหรืออยู่ในสภาพแวดล้อมการทำงานที่เหมาะสม หรือรันโปรแกรม ไม่สามารถแพร่กระจายด้วยตัวของมันเอง
Trojan Horse ลักษณะการทำงาน ลักลอบเก็บข้อมูลของคอมพิวเตอร์เครื่องนั้น เช่น ข้อมูลชื่อผู้ใช้ รหัสผ่าน เลขที่บัญชีธนาคาร หมายเลขบัตรเครดิต และข้อมูลส่วนบุคคลอื่นๆ ผ่านทาง Key Stroke ควบคุมการทำงานของเครื่องคอมพิวเตอร์ที่ถูกคุกคามผ่านทางโปรแกรมพวก Rootkits เข้าสู่ระบบคอมพิวเตอร์ของผู้ใช้อื่นในหลากหลายรูปแบบ เช่น โปรแกรม, Screen Saver, e-Mail หรือ การ์ดอวยพร เป็นต้น
Rootkit เป็นโปรแกรมที่ออกแบบมาเพื่อซ่อน Object ต่างๆ เช่น กระบวนงาน ไฟล์ หรือข้อมูลใน Registry แม้จะเป็นโปรแกรมที่อาจไม่เป็นอันตรายเสมอไป แต่ก็ถูกนำมาใช้ในการซ่อนกิจกรรมที่เป็นอันตรายมากขึ้นในปัจจุบัน ทำให้คอมพิวเตอร์ใดๆ สามารถส่ง Spam หรือทำการโจมตีคอมพิวเตอร์เครื่องอื่นๆ ได้โดยที่ผู้ใช้เป้าหมายไม่สามารถล่วงรู้และโปรแกรมด้านความปลอดภัยทั่วไปไม่สามารถตรวจจับได้
Worm หมายถึงโปรแกรมที่ออกแบบมาให้สามารถแพร่กระจายไปยังเครื่องคอมพิวเตอร์เครื่องอื่นได้ด้วยตัวเอง (ไม่ต้องอาศัย Execute File) โดยอาศัยการสำเนาตัวเองแล้วแพร่กระจายไปในระบบเครือข่ายคอมพิวเตอร์ ทำให้การแพร่กระจายเป็นไปอย่างรวดเร็วและเป็นวงกว้าง ทำให้เกิดปัญหาการสิ้นเปลือง Bandwidth และ Resource ในระบบ หรือ เกิดปัญหา Denial of Service (DoS)
Virus คือ โปรแกรมคอมพิวเตอร์ที่ถูกออกแบบมาให้มีคุณสมบัติ นำตัวเองไปติดปะปนกับโปรแกรม หรือแฟ้มข้อมูลอื่น ที่อยู่ในระบบ (เครื่อง) เดียวกัน หรือต่างระบบกัน โดยต้องมีพาหะในการแพร่กระจาย สามารถฝังตัวไปกับไฟล์อื่น เช่น exe File, File เอกสาร หรือในส่วน Boot sector ของ Disk เริ่มทำงานเมื่อมีการ Execute (Run) ไฟล์ Virus
Virus เกิดปัญหาการสิ้นเปลือง Bandwidth และ Resource ในระบบ สามารถทำลาย Hardware, Software, Data or System ลบไฟล์ควบคุมการทำงาน Hardware ลบไฟล์ทิ้ง เพิ่มขนาดของไฟล์ Etc. สามารถ เพิ่ม ลบ แก้ไข สร้าง Code ใหม่ ให้กับไฟล์ Virus
ประเภทของ Virus Common Viruses : เป็น Virus ทั่วๆไปไม่หวังผลในการทำลาย เน้นการทำให้เกิดความกลัวและสร้างความรำคาญง่ายต่อการตรวจสอบและกำจัด Program Viruses : Virus ที่สามารถแพร่กระจายได้เมื่อมีการเรียกใช้โปรแกรมที่มี Virus อยู่ให้ทำงาน และจะกระจายไปสู่โปรแกรมอื่นอย่างรวดเร็ว
ประเภทของ Virus Boot Viruses : Virus ที่สามารถแฝงตัวเอง และแพร่กระจายในส่วนพื้นที่เฉพาะของดิสก์ หรือฮาร์ดดิสก์ คือในส่วนของ Boot Record หรือ Master Boot Record เช่น Stone Virus เป็นต้น Stealth Viruses : Virus ที่มีความสามารถในการหลบซ่อนปิดบังซ่อนเร้นตัวเองจากการตรวจสอบได้ ทำให้ยากแก่การตรวจสอบ และกำจัด
ประเภทของ Virus Polymorphic Viruses : เป็น Virus ที่มีลักษณะการทำงานหลายรูปแบบในตัวเอง มีรูปแบบที่แตกต่างกันในการแพร่กระจายแต่ละครั้ง ทำให้ยากแก่การตรวจจับ Multipartite Viruses : Virus แบบผสม ที่รวมเอาการทำงานของ Virus หลายๆแบบไว้ด้วยกัน สามารถแพร่กระจายได้ทั้งในไฟล์ และโปรแกรม
ประเภทของ Virus Macro Viruses : เป็น Virus ที่ถูกสร้างขึ้นมาจากภาษามาโครของ Microsoft Word (คือ Word Basics) และจะแพร่กระจายกับไฟล์เอกสารของ Word Excel หรือ Power Point เช่น Virus ที่ชื่อ WM.CAP เป็นต้น
โปรแกรมที่ไม่จัดเป็น Malware ไม่ได้มีจุดประสงค์ในการทำลาย แต่อาจสร้างความรำคาญ และเกิดความเสียหายทางด้านการเงิน Exp.
โปรแกรมที่ไม่จัดเป็น Malware Hoaxes : โปรแกรมที่เขียนขึ้นเพื่อหลอกให้ผู้ใช้ทำบางอย่างให้ มักจะอยู่ในรูปแบบของการส่งข้อความต่อๆ กันไป เหมือนกับการส่งจดหมายลูกโซ่ โดยข้อความประเภทนี้จะใช้หลักจิตวิทยา ทำให้ข่าวสารนั้นน่าเชื่อถือ ถ้าผู้ที่ได้รับข้อความปฏิบัติตามอาจจะทำให้เกิดความเสียหายต่อระบบคอมพิวเตอร์ เช่น การให้ลบไฟล์ข้อมูลที่จำเป็นของระบบปฏิบัติการโดยหลอกว่าเป็น Virus คอมพิวเตอร์ ทำให้ระบบปฏิบัติการทำงานผิดปกติ เป็นต้น
โปรแกรมที่ไม่จัดเป็น Malware Scams : การใช้ช่องทางสื่อสารโดยอาชญากรเพื่อพยายามหลอกให้คนอื่นช่วยเหลือตนเองในการทำอาชญากรรมบนอินเทอร์เน็ต ที่พบบ่อยในปัจจุบัน คือ Phishing Spam : การส่งอีเมล์ให้ผู้ใช้งานจำนวนมาก โดยมีจุดประสงค์เพื่อการโฆษณา ก่อให้เกิดความรำคาญ เสียเวลาและทรัพยากรระบบ Spammer อาจมีการใช้เครื่องผู้อื่นช่วยในการส่ง Spam Mail
โปรแกรมที่ไม่จัดเป็น Malware Spyware (Spybot, Tracking Software, Key Logger) : โปรแกรมที่ใช้การทำงานบางอย่างเพื่อลวงตาแต่แอบทำกิจกรรมบางอย่างในเครื่องคอมพิวเตอร์ที่ไม่ได้รับความยินยอม เช่น เก็บข้อมูลส่วนตัว ตรวจดูพฤติกรรมการใช้งาน เป็นต้น เป็นการละเมิดสิทธิส่วนบุคคล อาจทำให้ประสิทธิภาพของระบบลดลง มักหลอกล่อให้เหยื่อดาวน์โหลดและติดตั้งโปรแกรม Spyware เช่น Freeware, Anti Virus ปลอม (Rouge Antivirus)
โปรแกรมที่ไม่จัดเป็น Malware Adware : โปรแกรมโฆษณาสินค้า (Pop-up) มักรวมอยู่ใน Freeware จะถูกติดตั้งในระบบเมื่อผู้ใช้ยินยอม ก่อให้เกิดความรำคาญ เสียประสิทธิภาพของระบบ อาจมีการละเมิดสิทธิส่วนบุคคลเนื่องจากมีการจัดเก็บข้อมูล เพื่อประโยชน์ในการโฆษณาสินค้า
โปรแกรมที่ไม่ใช่ Malware Internet Cookies : โดยปกติ Cookies จะถูกสร้างขึ้นมาเพื่อใช้เก็บข้อมูลเมื่อเราเข้าถึง Website ต่างๆ เพื่อประโยชน์ในการเข้าถึง Website นั้นในครั้งถัดไป แต่บาง Website มีการแอบเข้าไปดู Cookies ของ Website อื่น โดยผู้ใช้ไม่รู้ตัว เช่น เข้าไปรวบรวมข้อมูลเพื่อจัดโฆษณาที่คาดว่าผู้ใช้น่าจะสนใจ
เป้าหมายที่ Malware ใช้ฝังตัวเพื่อใช้เป็นพาหะ Executable File : ไฟล์ที่สามรถรัน Execute ได้ เช่น .exe, .com, .sys, .dll เป็นต้น Script : ภาษา Script ต่างๆ ที่สามารถรันได้ เช่น VB Script, Java Script ที่มีนามสกุล .vbs, .js เป็นต้น Macros : เป็น Script ของโปรแกรมพวก Office ต่างๆ เช่น Macros ของ MS-Word, MS-Excel, Lotus Ami Pro
เป้าหมายที่ Malware ใช้ฝังตัวเพื่อใช้เป็นพาหะ Boot Sector : ในส่วนของ Disk จะต้องมีส่วนที่เก็บข้อมูลของ Disk ที่เรียกว่า Master Boot Record (MBR) ซึ่งต้องถูกอ่านทุกครั้งที่เรียกใช้งาน Disk หรือส่วนที่เรียกว่า DOS Boot Record ก็เช่นเดียวกัน เมื่อ Malware ถูกติดตั้งในส่วนนี้ก็จะถูกเรียกใช้งานทุกครั้งที่มีการใช้งาน Disk
เทคนิคที่ใช้สำหรับการโจมตีหรือแพร่กระจายของ Malware วิศวกรสังคม (Social Engineering) การสร้างประตูหลัง (Backdoor Creation) การขโมยรายชื่ออีเมล์ การมีระบบอีเมล์ในตัว การใช้ประโยชน์จากช่องโหว่ของซอฟต์แวร์ การใช้ประโยชน์จากเทคโนโลยีอินเทอร์เน็ตใหม่ๆ etc.
กลไกการแพร่กระจายของ Malware Removable Media : เป็นวิธีการดั้งเดิมใช้มานาน ผ่านทาง Floppy Disk, CD-ROM, DVD-ROM, Flash Drive, External Drive Network Shares : การแลกเปลี่ยนไฟล์ผ่านทางเครือข่าย ทำให้เกิดการแพร่กระจายของ Malware อย่างรวดเร็วมาก Network Scanning : สแกนเครือข่ายเพื่อหาจุดอ่อน หรือช่องโหว่ แล้วโจมตีผ่านทางจุดอ่อนหรือช่องโหว่นั้น
กลไกการแพร่กระจายของ Malware Peer-to-Peer Network : เป็นการแลกเปลี่ยนแฟ้มข้อมูลกันระหว่างเครื่องใดๆ ในระบบเครือข่าย ผ่านทางโปรแกรมพวก P2P เช่น Bit Torrent อาจมีการปล่อยไฟล์อันตรายให้คนอื่นได้ e-Mail : เป็นวิธีการที่นิยมมากในปัจจุบัน เนื่องจากง่าย และมีคนใช้งานมาก มักใช้ Social Engineering มาช่วยหลอกล่อให้ผู้ใช้เปิดเมล์อันตราย มีการแพร่กระจายอย่างรวดเร็วและสร้างความเสียหายมากในปัจจุบัน
กลไกการแพร่กระจายของ Malware Remote exploit : จะใช้ช่องโหว่หรือจุดอ่อนของ Service หรือ Application เพื่อโจมตี พบในพวก Worm เช่น Slammer ใช้ช่องโหว่ ของ SQL Server 2000 จะทำให้เกิด Buffer Overrun (การป้อนข้อมูลเข้าไปใน Buffer มากกว่าที่จะรองรับได้) ทำให้มันสามารถเขียน Code ลงใน Memory ของระบบ ซึ่ง Code นี้จะรันตัวเองเสมือนหนึ่งว่าเป็น Service หนึ่งของระบบ
Exploit Exploit หมายถึง โปรแกรมที่ออกแบบมาให้สามารถเจาะระบบโดยอาศัยช่องโหว่ของ Operating System หรือ Application Software ที่ทำงานอยู่บนระบบ เพื่อให้ Virus หรือผู้บุกรุกสามารถครอบครองควบคุม หรือกระทำการอย่างหนึ่งอย่างใดบนระบบได้
Payload การที่ Malware สามารถเข้าสู่ Host ได้ มันจะมีการรันตัวเองหรือโปรแกรมอันตรายอื่นที่ติดมาด้วย Payload มีหลายรูปแบบ ที่พบทั่วไป ได้แก่ Backdoor : เปิดช่องโหว่เพื่อให้ Cracker เข้ามาควบคุมระบบ Data Corruption or Deletion : ทำลายหรือลบแฟ้มข้อมูล Information Theft : ขโมยข้อมูลและส่งกลับไปให้ Cracker
Payload Denial of Service (DoS) : ทำให้เครื่องที่ถูกโจมตีเกิด Overload หรือหยุดให้บริการ Distributed Denial of Service (DDoS) : ใช้เครื่องหลายๆ เครื่องช่วยกันโจมตี ทำให้เกิดความรุนแรง และรวดเร็ว Network DoS : ทำให้เกิด Overload ที่ Resource ของเครื่องที่ถูกโจมตี เช่น Processor, Memory
Payload System Shutdown : ทำลายหรือหยุดการทำงานของ Service ที่สำคัญในระบบ โดยค้นหาจาก Vulnerability ของระบบ Bandwidth Flooding : พยายามส่ง Packet ข้อมูลจนเต็ม Bandwidth ทั้งหมดที่มี ทำให้ User ไม่สามารถส่งข้อมูลเพื่อขอเข้าใช้ Service ต่างๆ ได้ Service Disruption : มุ่งโจมตีเพื่อทำให้ Service บางอย่างหยุดให้บริการ เช่น การโจมตี DNS
การเริ่มทำงานของ Malware Manual Execution : ผู้ใช้สั่ง Run เองโดยอาจถูกหลอกให้สั่งให้ทำงาน (ผู้ใช้ต้องสั่ง Run ทุกครั้ง) Semi-automatic Execution : เริ่มต้นโดยผู้ใช้สั่ง Run จากนั้น Malware จะทำงานต่อโดยอัตโนมัติ Automatic Execution : Malware จะทำงานโดยอัตโนมัติ Time Bomb : Malware จะทำงานตามวันและเวลาที่กำหนด Conditional : Malware จะทำงานเมื่อสภาพแวดล้อมตรงตามเงื่อนไขที่กำหนด บางครั้งเรียก Logic Bomb
กลไกการป้องกันการถูกตรวจสอบตัวเองของ Malware Armor : พยายามป้องกันการวิเคราะห์ Code จากโปรแกรม Debugger โดยการทำให้ Debugger ทำงานไม่ถูกต้อง หรือยากในการวิเคราะห์ เช่น การเพิ่ม Code ที่ไม่มีความหมายใดๆ จำนวนมากในโปรแกรม Stealth : พรางตัว หรือซ่อนตัว โดยการให้ข้อมูลผิดๆ เมื่อ Anti Virus ตรวจสอบ เช่น การสำเนาไฟล์ที่ยังไม่ติด Virus ไปไว้ใน Boot Sector แทนที่ไฟล์ที่ติด Virus เมื่อ Anti Virus ตรวจสอบก็จะไม่พบ
กลไกการป้องกันการถูกตรวจสอบตัวเองของ Malware Encryption : จะมีการเข้ารหัสตัวเอง และ Payload เพื่อป้องกันการตรวจพบ จะมีการเปลี่ยน Key ไปเรื่อยๆ แต่ใช้ Algorithm เดียว Oilgomorphic : ใช้การเข้ารหัสเพื่อซ่อนตัว แต่เปลี่ยน Algorithm ได้ในจำนวนจำกัด เช่น มี 2 Algorithm สลับกัน Polymorphic : ใช้การเข้ารหัสเพื่อซ่อนตัว และเปลี่ยน Algorithm และ Key ได้ในจำนวนไม่จำกัด มักจะมี Mutation Engine อยู่ในตัว
วงจรชีวิตของ Malware การค้นพบช่องโหว่ การพัฒนา การแพร่ระบาด การทำลาย การตรวจพบและแจ้งเตือน การตรวจจับ การป้องกันและกำจัด
เทคนิคการตรวจจับ Malware Scan เพื่อเปรียบเทียบกับ Signature : ต้อง Update ประจำ และให้ทัน ไม่เช่นนั้นอาจตรวจไม่พบ Scan จากคุณลักษณะ : ดูจากคุณลักษณะทั่วไป แต่อาจ แจ้งเตือนผิด ช้า และมีการเปลี่ยนแปลงคุณลักษณะ ทำให้ตรวจไม่พบ Monitor พฤติกรรม : ตรวจดูจากพฤติกรรมที่แสดงออกมาว่ามีการทำงานในลักษณะใด ผิดปกติหรือไม่ เช่น พยายามเปิด Port ที่ไม่ควรเปิด
ตัวอย่าง Malware ที่เกิดปัญมาก SQLSlammer Sasser MyDoom Netsky Backmal Zeus
ช่องทางที่ใช้สำหรับการแพร่ระบาด เครือข่ายภายนอก คอมพิวเตอร์ของผู้เยี่ยมเยือน Executable File ไฟล์เอกสาร e-Mail Media เก็บข้อมูล
การป้องกัน Malware ที่เครื่อง Client ลบโปรแกรมที่ไม่ได้ใช้งาน การอัพเดท Patch Windows update Software update ติดตั้งซอฟต์แวร์ Antivirus ติดตั้ง Host-based Firewall
การป้องกัน Malware ที่เครื่อง Client การติดตั้ง Anti Spyware การสแกนหาจุดอ่อน การกำหนดรหัสผ่านก่อนเข้าใช้ระบบ กำหนดสิทธิ์ของผู้ใช้งานระบบเท่าที่จำเป็น
การป้องกัน Malware ที่เครื่อง Server ลดช่องทางการถูกโจมตี เช่น ไม่ติดตั้งโปรแกรมหรือเซอร์วิสที่ไม่จำเป็น การสแกนตรวจสอบหาช่องโหว่ การใช้ Host-based Firewall การใช้ Antivirus การอัพเดทซอฟต์แวร์
การป้องกัน Malware ระดับ Network การติดตั้ง IDS การกรองข้อมูลระดับ Application การใช้ Proxy Server บล็อกเว็บไซต์ การสร้างเครือข่ายกักกันเฉพาะ (Quarantine Network) การป้องกันทางกายภาพ การออก นโยบาย ระเบียบปฏิบัติและข้อควรระวัง
The Best Free Antivirus for 2015 http://www.pcmag.com/article2/0,2817,2388652,00.asp
Rouge Antivirus (Fake AV)
Rouge Antivirus (Fake AV)
Rouge Antivirus (Fake AV)
Rouge Antivirus (Fake AV)
Rouge Antivirus (Fake AV)
Rouge Antivirus (Fake AV)
Homework แปล Ten Cyber Security Predictions for 2017 https://www.beyondtrust.com/blog/ten-cyber-security-predictions-2017/