แอนตี้ไวรัสทำงานอย่างไร


54

ดังนั้นฉันจึงคิดเกี่ยวกับไวรัสเมื่อเร็ว ๆ นี้และสงสัยว่าจะมีการป้องกันไวรัสอย่างแน่นอนหรือไม่ การพิจารณาใครก็ตามที่ได้รับการเข้ารหัสเป็นเวลาสองสามสัปดาห์สามารถแฮ็คสิ่งที่น่ารังเกียจและน่ารังเกียจไปยังพีซีของใครบางคนปริมาณเพียงอย่างเดียวจะทำให้รายการแฮชต้องห้ามอย่างง่ายดังนั้นโปรแกรมป้องกันไวรัสจะทำอย่างไร พวกเขาติดตามกิจกรรมกระบวนการและมีกฎ 3 ข้อสำหรับการทำสิ่งที่เหมือนไวรัสหรือไม่ และถ้าเป็นเช่นนั้นสิ่งที่จะหยุดมันจากสิ่งที่เป็นอันตรายอย่างสมบูรณ์แบบ (เช่นฉันย้ายไฟล์ไปรอบ ๆ ใน \ system32)?

ฉันทำ googling นิดหน่อย แต่สถานที่ปกติไม่ได้ช่วยอะไรเป็นพิเศษและหา dupe ที่นี่ไม่ได้ดังนั้นฉันคิดว่ามันดีที่จะถาม :)


4
@ โจไม่จำเป็นต้องเพิ่มแท็ก windows แอนติไวรัสทำงานได้ดีเหมือนกันในทุกระบบปฏิบัติการ นอกจากนี้วิธีการทำงานของ AV ไม่ได้เป็นแบบอัตนัย
alex

โอ้ ขออภัยฉันคิดว่านี่อาจเป็นหน้าต่างและเป็นอัตนัย ฉันเข้าใจว่า
joe

6
พวกเขามาติดตั้งไว้แล้วเมื่อคุณซื้อแล็ปท็อปและคอยครวญครางเป็นเวลา 60 วันที่คุณควรลงทะเบียน / ชำระเงินจนกว่าพวกเขาจะออกจากระบบของคุณในที่สุด โดยปกติแล้วกล่องโต้ตอบของพวกเขาจะเป็นโมดอลและสูงสุดเพื่อให้พวกเขาสามารถบล็อกคุณจากการทำสิ่งอื่นได้อย่างมีประสิทธิภาพและพวกเขาไม่เคยเสนอวิธีที่ง่ายในการถอนการติดตั้ง
Daniel Daranas

ชน +1 สำหรับคำถามที่ดีมาก
dag729

การวิเคราะห์พฤติกรรม AV นั้นซับซ้อน แต่จะไม่สามารถตรวจจับภัยคุกคามใหม่ ๆ (หรือตัวแปรที่หลากหลายของการคุกคามที่มีอยู่) การวิเคราะห์พฤติกรรมมักให้ผลบวกที่ผิดพลาดกับซอฟต์แวร์ / รหัสที่ไม่เป็นอันตราย ซอฟต์แวร์ AV มีประโยชน์ แต่มักจะเป็นปัญหาที่ทำให้ผู้ใช้รู้สึกถึงความปลอดภัย ฉันได้ทดสอบไวรัสที่รู้จักจำนวนมากใน ( virustotal.com/th ) และชื่อยอดนิยมอย่าง Symantec, McAfee และ AVG ไม่พบสิ่งใด (โดยทั่วไปแล้ว Kaspersky ทำได้ดี) ดีกว่าคือการรู้จักระบบของคุณดูสิ่งที่คุณทำ ... และมีการสำรองข้อมูล!
AlainD

คำตอบ:


17

นี้บทความจาก 2002 พูดคุยเกี่ยวกับการสร้างเครื่องมือป้องกันไวรัส

บทความนี้จะอธิบายถึงแนวคิดพื้นฐานแนวคิดส่วนประกอบและวิธีการที่เกี่ยวข้องในการพัฒนาโปรแกรมต่อต้านไวรัสตั้งแต่เริ่มต้นจากมุมมองของนักพัฒนาซอฟต์แวร์ / นักพัฒนาซอฟต์แวร์ มันจะมุ่งเน้นไปที่องค์ประกอบหลักของโปรแกรมป้องกันไวรัส (ต่อไปนี้เรียกว่าเครื่องมือ AV) และจะแยกลักษณะเช่นส่วนต่อประสานกราฟิกผู้ใช้จอภาพแบบเรียลไทม์ไดรเวอร์ระบบไฟล์และปลั๊กอินสำหรับแอพพลิเคชั่นซอฟต์แวร์บางอย่างเช่น Microsoft Exchange หรือ Microsoft Office แม้ว่าเครื่องมือ AV ที่รัน / สแกนสำหรับแพลตฟอร์มเดียว (เช่น Palm OS หรือ EPOC / Symbian OS) สามารถออกแบบได้ในลักษณะเดียวกันบทความนี้จะเน้นการออกแบบเอ็นจิ้นการสแกนหลายแพลตฟอร์มซึ่งมีความซับซ้อนมากกว่า

นอกจากนี้ยังมีบทความเกี่ยวกับเทคนิคการวิเคราะห์พฤติกรรมเพื่อตรวจหาการติดเชื้อ นอกจากนี้ยังเป็นที่น่าสนใจอ่าน


+1 สำหรับบทความฮิวริสติกส์ - น่าสนใจมาก :)
Phoshi

นั่นคือสิ่งที่คุ้มค่าต่อการอ่าน ส่วนฮิวริสติกเป็นสิ่งสำคัญ :)
alex

ฉันมีความเคารพที่พบใหม่สำหรับแอนติไวรัสหลังจากอ่านมันสิ่งที่ค่อนข้างฉลาด!
Phoshi

มันเป็นแอพพลิเคชั่นที่ซับซ้อนอย่างเหลือเชื่อ น่าเสียดายที่พวกเขากลายเป็นสิ่งที่คนจำนวนมากรวมทั้งตัวฉันเกลียดชัง อินเตอร์เฟสแบบกำหนดเองไม่เลอะเทอะใช้งานง่ายติดอยู่ในคุณสมบัติเพื่อเพิ่มหัวข้อย่อยให้กับรายการคุณลักษณะ นี่คือสิ่งที่ทำให้พวกเขากลายเป็นฝันร้าย แม้ว่าสิ่งต่าง ๆ จะพลิกกลับ ตัวอย่างที่ดีที่สุดของโซลูชัน AV ที่ดีคือ MSE
alex

มันเป็นสิ่งที่ฮิวริสติกส์เอาไว้ขอโทษ joe: P คำตอบที่ดีไม่ว่า :) @alex; อนิจจาฉันต้องเห็นด้วย แต่การเข้าใจความซับซ้อนด้านล่างทำให้ฉันเห็นใจมากขึ้น มันเป็นสิ่งที่ซับซ้อนและจะไม่มีเหตุผลเพียงพอที่จะดึงดูดลูกค้าที่มีแนวโน้มว่าจะเป็น "GUI สีที่ปรับแต่งได้!" อาจ :(
Phoshi

13

ประมาณหนึ่งปีที่ผ่านมาฉันเข้าร่วมการบรรยายโดย Mikko Hyyppönenหนึ่งในนักวิจัยหลักของ F-Secure เขาแสดงเครือข่ายการทดสอบอัตโนมัติของพวกเขาที่พวกเขาสร้างเครื่องเสมือนสำหรับทุกตัวอย่างที่ส่งถึงพวกเขาวิเคราะห์โครงสร้างของมันปล่อยให้มันรันบันทึกทุกอย่างที่มันทำอ้างอิงข้ามกับตัวอย่างก่อนหน้านี้และสร้างบทสรุปสำหรับมนุษย์เพื่อตรวจสอบในภายหลัง หากมนุษย์สรุปว่าเป็นไวรัสระบบจะสร้างลายเซ็นการตรวจจับโดยอัตโนมัติและส่งการอัปเดตให้กับลูกค้า ฉันคิดว่าผู้ขายรายอื่นมีระบบที่คล้ายกันและทำให้ฐานข้อมูลลายเซ็นเป็นปัจจุบัน


4

จากวิธีการป้องกันไวรัสทำงานซอฟต์แวร์? (AntivirusWorld):

โปรแกรมซอฟต์แวร์ป้องกันไวรัสเป็นโปรแกรมคอมพิวเตอร์ที่สามารถใช้สแกนไฟล์เพื่อระบุและกำจัดไวรัสคอมพิวเตอร์และซอฟต์แวร์ที่เป็นอันตรายอื่น ๆ (มัลแวร์)

ซอฟต์แวร์ป้องกันไวรัสมักจะใช้สองเทคนิคที่แตกต่างกันเพื่อให้บรรลุสิ่งนี้:

  • การตรวจสอบไฟล์เพื่อค้นหาไวรัสที่รู้จักโดยใช้พจนานุกรมไวรัสระบุพฤติกรรมที่น่าสงสัยจากโปรแกรมคอมพิวเตอร์เครื่องใดก็ได้ที่อาจบ่งชี้ว่ามีการติดเชื้อ
  • ซอฟต์แวร์ต่อต้านไวรัสเชิงพาณิชย์ส่วนใหญ่ใช้ทั้งสองวิธีนี้โดยเน้นที่วิธีการพจนานุกรมไวรัส

วิธีการใช้พจนานุกรมไวรัส ในวิธีการใช้พจนานุกรมไวรัสเมื่อซอฟต์แวร์ป้องกันไวรัสตรวจสอบไฟล์จะหมายถึงพจนานุกรมของไวรัสที่รู้จักที่ได้รับการระบุโดยผู้สร้างซอฟต์แวร์ป้องกันไวรัส หากโค้ดในไฟล์ตรงกับไวรัสที่ระบุในพจนานุกรมซอฟต์แวร์ป้องกันไวรัสสามารถลบไฟล์กักกันเพื่อให้ไฟล์นั้นไม่สามารถเข้าถึงโปรแกรมอื่น ๆ และไวรัสไม่สามารถแพร่กระจายหรือพยายาม เพื่อซ่อมแซมไฟล์โดยลบไวรัสเองออกจากไฟล์

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

ซอฟต์แวร์ป้องกันไวรัสที่ใช้พจนานุกรมจะตรวจสอบไฟล์เมื่อระบบปฏิบัติการของคอมพิวเตอร์สร้างเปิดและปิดไฟล์ และเมื่อไฟล์ถูกส่งอีเมล ด้วยวิธีนี้ไวรัสที่รู้จักสามารถตรวจพบได้ทันทีเมื่อได้รับ ซอฟต์แวร์สามารถกำหนดตารางเวลาเพื่อตรวจสอบไฟล์ทั้งหมดในฮาร์ดดิสก์ของผู้ใช้เป็นประจำ

แม้ว่าวิธีการในพจนานุกรมนั้นถือว่ามีประสิทธิภาพ แต่ผู้เขียนไวรัสก็พยายามที่จะก้าวไปข้างหน้าซอฟต์แวร์ดังกล่าวโดยการเขียน "ไวรัส polymorphic" ซึ่งเข้ารหัสส่วนของตัวเองหรือดัดแปลงตัวเองเป็นวิธีการปลอมตัว ในพจนานุกรม

แนวทางพฤติกรรม ที่น่าสงสัยในทางตรงกันข้ามพฤติกรรมที่น่าสงสัยนั้นไม่ได้พยายามระบุไวรัสที่รู้จัก แต่จะตรวจสอบพฤติกรรมของโปรแกรมทั้งหมด หากโปรแกรมหนึ่งพยายามเขียนข้อมูลไปยังโปรแกรมที่ปฏิบัติการได้สิ่งนี้จะถูกตั้งค่าสถานะว่าเป็นพฤติกรรมที่น่าสงสัยและผู้ใช้จะได้รับการแจ้งเตือนเรื่องนี้และถามว่าจะทำอย่างไร

ซึ่งแตกต่างจากวิธีการพจนานุกรมวิธีการพฤติกรรมที่น่าสงสัยจึงให้การป้องกันไวรัสใหม่ที่ยังไม่มีในพจนานุกรมไวรัสใด ๆ อย่างไรก็ตามมันฟังดูเป็นจำนวนมากบวกเท็จและผู้ใช้อาจกลายเป็น desensitized ทุกคำเตือน หากผู้ใช้คลิก "ยอมรับ" ในคำเตือนดังกล่าวทุกครั้งแสดงว่าซอฟต์แวร์ป้องกันไวรัสนั้นไม่มีประโยชน์สำหรับผู้ใช้รายนั้น ปัญหานี้ยิ่งแย่ลงในช่วง 7 ปีที่ผ่านมาเนื่องจากการออกแบบโปรแกรมที่เป็นอันตรายจำนวนมากเลือกที่จะแก้ไข. exes อื่น ๆ โดยไม่คำนึงถึงปัญหาเชิงบวกที่ผิดพลาดนี้ ดังนั้นซอฟต์แวร์ป้องกันไวรัสที่ทันสมัยที่สุดจึงใช้เทคนิคนี้น้อยลง

วิธีอื่นในการตรวจจับไวรัส ซอฟต์แวร์ต่อต้านไวรัสบางตัวจะพยายามเลียนแบบจุดเริ่มต้นของรหัสของแต่ละไฟล์ที่เรียกใช้ใหม่ซึ่งจะถูกเรียกใช้งานก่อนที่จะถ่ายโอนการควบคุมไปยังไฟล์ที่เรียกใช้งานได้ หากโปรแกรมดูเหมือนว่าจะใช้รหัสแก้ไขตัวเองหรือปรากฏเป็นไวรัส (มันจะพยายามค้นหาโปรแกรมปฏิบัติการอื่น ๆ ในทันที) อาจสันนิษฐานได้ว่าโปรแกรมปฏิบัติการนั้นติดไวรัส อย่างไรก็ตามวิธีนี้ส่งผลให้เกิดผลบวกปลอมจำนวนมาก

อีกวิธีหนึ่งในการตรวจจับคือการใช้ Sandbox sandbox จำลองระบบปฏิบัติการและเรียกใช้ปฏิบัติการในการจำลองนี้ หลังจากโปรแกรมสิ้นสุดลงแซนด์บ็อกซ์จะทำการวิเคราะห์การเปลี่ยนแปลงที่อาจบ่งบอกถึงไวรัส เนื่องจากปัญหาด้านประสิทธิภาพการตรวจจับประเภทนี้จึงทำตามปกติระหว่างการสแกนตามต้องการ

ปัญหาของความกังวล

ไวรัสมาโครซึ่งเป็นไวรัสคอมพิวเตอร์ที่ถูกทำลายและแพร่หลายที่สุดสามารถป้องกันได้ในราคาไม่แพงและมีประสิทธิภาพมากขึ้นโดยไม่จำเป็นต้องให้ผู้ใช้ทุกคนซื้อซอฟต์แวร์ป้องกันไวรัสหากไมโครซอฟท์จะแก้ไขข้อบกพร่องด้านความปลอดภัยใน Microsoft Outlook และ Microsoft Office การดำเนินการของรหัสที่ดาวน์โหลดมาและความสามารถของมาโครเอกสารในการแพร่กระจายและสร้างความหายนะ

การให้ความรู้แก่ผู้ใช้มีความสำคัญเทียบเท่ากับซอฟต์แวร์ต่อต้านไวรัส เพียงแค่ฝึกผู้ใช้ในการใช้คอมพิวเตอร์อย่างปลอดภัยเช่นไม่ดาวน์โหลดและเรียกใช้โปรแกรมที่ไม่รู้จักจากอินเทอร์เน็ตจะชะลอการแพร่กระจายของไวรัสโดยไม่จำเป็นต้องใช้ซอฟต์แวร์ป้องกันไวรัส

ผู้ใช้คอมพิวเตอร์ไม่ควรเรียกใช้ด้วยสิทธิ์ของผู้ดูแลระบบในเครื่องของตนเอง หากพวกเขาเพียงแค่เรียกใช้ในโหมดผู้ใช้แล้วไวรัสบางประเภทจะไม่สามารถแพร่กระจาย

วิธีการแบบพจนานุกรมในการตรวจจับไวรัสมักจะไม่เพียงพอเนื่องจากการสร้างไวรัสใหม่อย่างต่อเนื่อง แต่วิธีพฤติกรรมที่น่าสงสัยนั้นไม่ได้ผลเนื่องจากปัญหาเชิงบวกที่ผิดพลาด ดังนั้นความเข้าใจในปัจจุบันของซอฟต์แวร์ป้องกันไวรัสจะไม่สามารถเอาชนะไวรัสคอมพิวเตอร์ได้

มีวิธีการเข้ารหัสและการบรรจุซอฟต์แวร์ที่เป็นอันตรายหลายวิธีซึ่งจะทำให้แม้แต่ไวรัสที่รู้จักกันดีนั้นไม่สามารถตรวจจับได้กับซอฟต์แวร์ป้องกันไวรัส การตรวจจับไวรัส "อำพราง" เหล่านี้ต้องใช้เอ็นจิ้นการเปิดไฟล์ที่มีประสิทธิภาพซึ่งสามารถถอดรหัสไฟล์ก่อนที่จะตรวจสอบได้ น่าเสียดายที่โปรแกรมต่อต้านไวรัสยอดนิยมส่วนใหญ่ไม่มีสิ่งนี้และมักจะไม่สามารถตรวจจับไวรัสที่เข้ารหัสได้

บริษัท ที่ขายซอฟต์แวร์ป้องกันไวรัสดูเหมือนจะมีแรงจูงใจทางการเงินสำหรับไวรัสที่จะถูกเขียนและแพร่กระจายและเพื่อให้ประชาชนตกใจกับการคุกคาม

(ฉันชอบบทความนี้และฉันเพิ่งคัดลอกและวางจาก AntivirusWorld)


ขอบคุณ :) สำหรับวิธีการในพจนานุกรมนั่นหมายความว่าถ้าฉันคัดลอกรหัสของไวรัสที่รู้จักและใส่ไว้ในแอปพลิเคชันของฉันมันจะถูกตรวจพบ แต่ถ้าฉันเขียนสิ่งที่คล้ายกันมันจะต้องรอสิ่งที่น่าสงสัย? (แน่นอนว่าสมมุติฐาน)
Phoshi

ใช่ .. มันจะเป็น
joe

ที่ทำให้รู้สึกถ้าคุณไม่สามารถหยุดไวรัสถูกทำแล้วหยุดรหัสที่มีอยู่เป็นรักที่ดี (และได้รับจำนวนเงินที่ไม่มีที่สิ้นสุดของเวลาที่จะหยุดทุกไวรัสที่เป็นไปได้ - ไม่เลว: P)
Phoshi

นั่นคือสิ่งที่ลายเซ็นคือ ส่วนของรหัสเครื่องที่เป็นอันตรายซึ่งเป็นเรื่องปกติสำหรับไวรัสมากกว่าหนึ่งตัว
alex

ถ้า AV เปรียบเทียบไฟล์กับพจนานุกรมพูด 10,000 ไวรัสที่รู้จักแล้วทำไม FAST ถึงได้ วิธีมาแต่ละไฟล์จะใช้เวลาในการสแกนมิลลิวินาที ..
LantisGaius

3

Phoshi คำถามของคุณน่าสนใจมาก แต่ฉันขอแนะนำให้คุณเริ่มภารกิจใหม่ ฉันแนะนำเรื่องนี้เพราะคำตอบของคำถามที่คุณถามอาจทำให้คุณเข้าใจผิด

ฉันขอแนะนำให้คุณเริ่มต้นด้วยการคิดเกี่ยวกับสิ่งที่คุณพิจารณาไวรัสสิ่งที่เป็นคำจำกัดความของมัน

นักเขียนไวรัสระดับสูงเป็นนักวิจัยด้านความปลอดภัยไม่ใช่ตัวบทสคริปต์ คำจำกัดความของไวรัสคือ: "ไวรัสเป็นส่วนหนึ่งของรหัสที่สามารถคูณตัวเองได้" แค่นั้นแหละ. อย่างที่คุณเห็นไม่มีคุณสมบัติการทำลายที่กล่าวถึงที่นี่ ไวรัสทั้งหมดเป็นสิ่งที่ชั่วร้าย - นั่นคือ FUD ที่คุณได้รับจากผู้ผลิตแอนตี้ไวรัสที่มีลิขสิทธิ์ดังนั้นพวกเขาจึงสามารถขายซอฟต์แวร์ของพวกเขาได้

IMHO เป็นการดีที่จะรักษาไวรัสให้เป็นส่วนหนึ่งของระบบนิเวศซอฟต์แวร์ทั้งหมดไม่ใช่มนุษย์ต่างดาวที่ชั่วร้าย


ดีฉันไม่ถามว่าแสดง AV ทำงานดังนั้นฉันคิดว่าคำตอบ ... คำตอบที่ค่อนข้างดี แต่คุณทำให้เป็นจุดที่ดีมากมันเป็นสิ่งที่จะคิดเกี่ยวกับ :)
Phoshi

การดูแอนตีไวรัสสองตัวบนคอมพิวเตอร์เครื่องเดียวกันที่พยายามฆ่าแต่ละคนนั้นก็เป็นเรื่องตลกเช่นกัน รู้สึกอิสระที่จะสงสัยว่าทำไมพวกเขาทำอย่างนั้น :-)
geek

1

อีกวิธีหนึ่งที่สำคัญในการดู virusses เป็นวิธีอื่น ๆ ไวรัสทำอันตรายต่อระบบได้อย่างไร ซึ่งมักจะผ่านช่องโหว่ของซอฟต์แวร์ ซอฟต์แวร์ต่อต้านไวรัสตระหนักถึงช่องโหว่เหล่านี้และค้นหาซอฟต์แวร์ที่มีอิทธิพลต่อช่องโหว่เหล่านี้ ไม่ว่าจะด้วยวิธีใด virusses มักจะ Someting ดังนั้นพวกเขาจึงต้องการกระบวนการทำงานเพื่อทำสิ่งที่พวกเขาทำได้ดีที่สุด บางครั้งสิ่งนี้อยู่ในสิ่งที่มีอยู่บางครั้งพวกเขาสร้างขึ้นมาเอง

อย่างไรก็ตามไวรัส MOST ทำงานในลักษณะที่คล้ายกันทำให้ง่ายสำหรับเครื่องสแกนไวรัสที่จะแยกแยะความแตกต่างระหว่างพวกเขา มีไวรัสหลายชนิดที่ใช้ช่องโหว่เดียวกัน!

http://en.wikipedia.org/wiki/List_of_computer_viruses

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.