ซอฟต์แวร์ป้องกันไวรัสขัดแย้งกันอย่างไร


59

ฉันได้รับการสอนแล้วว่าฉันไม่ควรติดตั้งซอฟต์แวร์ป้องกันไวรัสสองตัว (AV) ด้วยกันเพราะพวกเขาจะขัดแย้งกัน แม้แต่ Windows Defender (ตั้งแต่ Windows 8) ก็ปิดการใช้งานเมื่อตรวจพบซอฟต์แวร์ AV อื่น

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


ปัญหาเกี่ยวกับประสิทธิภาพของระบบเพียงอย่างเดียว ฉันคิดว่า Intel Kaby Lake i7 ของฉันสามารถจัดการกับมันได้อย่างง่ายดายด้วยหน่วยความจำที่ติดตั้ง 16 GB


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

2
@Sawdust ฉันเข้าใจคำสั่งของคุณ แต่มันก็โอเคที่จะมี AV หลายตัวที่จัดทำเฉพาะการตรวจสอบที่ใช้งานอยู่ซึ่งจะไม่สามารถเกิดขึ้นได้หากความไม่ลงรอยกันนั้นเกิดจากการตรวจจับโดยไม่ตั้งใจของฐานข้อมูล
Frank Thomas

@PeterMortensen "Antivirus Scanner" ฟังดูแปลก ๆ แม้จะมีคำตอบก็ตาม ฉันเองก็ชอบ "ซอฟต์แวร์" ไม่ว่าจะเป็นคำนามที่นับได้
iBug

คำตอบ:


83

สแกนเนอร์ป้องกันไวรัสธรรมดาสามารถอยู่ร่วมกันได้โดยไม่มีปัญหาใด ๆ มันคือการป้องกันแบบสดๆที่อาจทำให้ AVs รบกวน

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

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

น่าเสียดายที่การแก้ไขโค้ด OS ไม่เพียง แต่จำเป็นสำหรับ AVs เท่านั้น แต่ยังน่าสงสัย หากคุณกำลังสร้างไวรัสคุณจะไม่สามารถขัดขวางการทำงานของระบบเช่นเพื่อป้องกัน AV จากการสแกนไฟล์ไวรัสหรือไม่

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

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

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

นอกจากนี้ยังมีเครื่องยนต์ AV ที่ออกแบบมาให้อยู่ร่วมกับ AV อื่น ๆ เช่น Hitman Pro ClamWin (ซึ่งเป็นอิสระและโอเพนซอร์ซ) ก็ควรจะปราศจากปัญหาเมื่ออยู่ร่วมกันเพราะมันมีเพียงสแกนเนอร์ที่ไม่มีการป้องกันอยู่


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

@ComsSansMS บางครั้งแม้แต่คนเดียวที่ทำอันตรายมากกว่าไวรัส เช่นโปรแกรม AV ฟรี "จีน"
iBug

30
@iBug ออกจาก "จีน" และ "ฟรี" จากนี้ฉันได้เห็นพฤติกรรมแย่ ๆ มากมายจากแบรนด์ที่มีชื่อเสียง (McAfee, Norton / Symantec, Panda, ฯลฯ )
Bob

1
โปรดทราบว่าสแกนเนอร์ตัวใดตัวหนึ่งในสองตัวควรมีการตรวจจับแบบสดเพื่อทำให้เกิดปัญหาร้ายแรง - ฉันเคยมีปัญหากับ CCleaner ที่มีอยู่มากและ Symantec Endpoint Protection ที่ต่อต้านอย่างไม่เต็มใจต่อสู้กับการลบไฟล์
Sanchises

2
@Bob: และเราไม่ได้เริ่มต้นแม้จะพูดคุยเกี่ยวกับช่องโหว่ของพวกเขา ...
มัตเตโอเลีย

14

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

นี่คือตัวอย่างของปัญหาการทำงานพร้อมกันของหนังสือข้อความ

ปัญหาสุดท้ายชนะ

ลองนึกภาพคุณกำลังใช้ไดเรกทอรี FTP เพื่อแบ่งปันเอกสารที่คุณและเพื่อนร่วมงานร่วมมือกันทำเอกสาร คุณดาวน์โหลดเอกสารแก้ไขและโพสต์อีกครั้งเช่นเดียวกับเพื่อนร่วมงานของคุณ

  1. คุณดาวน์โหลดเอกสารและเริ่มชุดการเปลี่ยนแปลงที่ใช้เวลา 1 ชั่วโมง
  2. เพื่อนร่วมงานของคุณดาวน์โหลดเอกสารในเวลาเดียวกับที่คุณทำ แต่ใช้เวลาเพียงครึ่งชั่วโมงเท่านั้นในการดำเนินการให้เสร็จสมบูรณ์และอัปโหลดการเปลี่ยนแปลงอีกครั้ง

ผลลัพธ์:เมื่อคุณอัปโหลดเอกสารคุณจะเขียนทับการเปลี่ยนแปลงและเอกสารเหล่านั้นจะสูญหาย

ข้อมูลเก่า

ในสถานการณ์เดียวกันเพื่อนร่วมงานของคุณทำการเปลี่ยนแปลงบางอย่างที่คุณต้องการโดยไม่บอกคุณ สำเนาไฟล์ของคุณไม่มีการเปลี่ยนแปลง

ผลลัพธ์:คุณเขียนการเปลี่ยนแปลงเดียวกันในคำที่ต่างกันเล็กน้อยด้วยตัวคุณเองหรือแย่กว่านั้นปิดไฟอีเมลที่น่ารังเกียจเกี่ยวกับการหายไปของมัน

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

การคำนวณไม่ดี

คู่สมรสมีบัญชีธนาคารที่ใช้ร่วมกันและบัตรเอทีเอ็ม พวกเขามี 1,000 USD ในบัญชีของพวกเขา ในชีวิตประจำวันของพวกเขาพวกเขาอยู่ฝั่งตรงข้ามของเมืองและทั้งสองเข้าถึง ATM ได้ในเวลาเดียวกัน พวกเขาถอนเงิน 1,000 USD ตู้เอทีเอ็มทั้งสองรู้ว่ายอดคงเหลือคือ 1,000 ดังนั้นพวกเขาจึงอนุญาตให้ถอนได้แล้วเขียนกลับไปที่ฐานข้อมูลกลางว่ายอดคงเหลือใหม่เป็น 0

ผลลัพธ์:ตอนนี้ธนาคารหมดแล้ว 1,000USD และไม่รู้ด้วยซ้ำ

ในตัวอย่างเหล่านี้ทั้งหมดมีหลายฝ่ายที่ดำเนินการกับทรัพยากรที่ใช้ร่วมกัน ณ เวลาเดียวกันหรือในเวลาเดียวกัน ดังนั้นคำว่า "เห็นพ้องด้วย" หรือ "บังเอิญ"

โซลูชั่น

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

  • ผสานการทำงานอย่างชาญฉลาด
  • บล็อก / ล็อกหนึ่งในสองการดำเนินการจนกว่าการดำเนินการแรกที่สังเกตเห็นจะเสร็จสมบูรณ์

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

คำตอบของคุณ

ในกรณีเฉพาะของคุณทรัพยากรคือไฟล์ในดิสก์ของคุณ ความบังเอิญนั้นมาจากเหตุการณ์ต่าง ๆ เช่นไฟล์อ่าน / เขียนซึ่งจะทำการสแกนแบบ on-access ในทั้งสองโปรแกรม AV

Windows ทำหน้าที่เป็นผู้ชี้ขาดในการแก้ไขปัญหาการทำงานพร้อมกันของระบบไฟล์โดยการล็อคไฟล์เมื่อโปรแกรมเปิดสำหรับการดำเนินการเฉพาะ

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


9
ปัญหาเกี่ยวกับการทำงานพร้อมกันอาจแย่ลงถ้าโปรแกรมป้องกันไวรัส 1 แจ้งว่ามีการเข้าถึงไฟล์และสแกนแล้วในทางกลับกันโปรแกรมป้องกันไวรัส B จะเห็นว่าไฟล์นั้นถูกเข้าถึงดังนั้นจึงทำการสแกนแล้วตรวจพบไวรัสแล้ว การสแกนครั้งล่าสุดดังนั้นจึงสแกนอีกครั้ง ฯลฯ ... (ฉันเห็นสิ่งนี้เกิดขึ้นในแล็ปท็อปเพื่อนของฉัน Windows ค้างหลังจากประมาณ 10-20 นาทีหลังจากเริ่มต้นกลายเป็นช้ากว่าก่อนกำหนด)
Ferrybig

4
การเห็นพ้องด้วยกันเป็นปัญหาที่แก้ไขได้มากกว่าหรือน้อยกว่าและไม่ใช่ปัญหาเฉพาะของ AV ฉันลงคะแนนเพราะฉันคิดว่าคำตอบของคุณพลาดประเด็นหลักอย่างสิ้นเชิงและมุ่งเน้นไปที่ปัญหาที่จะส่งผลกระทบต่อซอฟต์แวร์คอมพิวเตอร์ส่วนใหญ่หากยังไม่ได้รับการแก้ไข แต่ไม่ได้เพราะแก้แล้ว
gronostaj

1
@ gronostaj ถ้าฉันจะถามคุณคิดว่าประเด็นหลักคืออะไร? AV ที่ใช้งานอยู่ที่ตอบสนองต่อเหตุการณ์การอ่าน / เขียนทั้งหมดบนดิสก์สร้างปัญหาการเกิดขึ้นพร้อมกันที่ไม่ซ้ำกันส่วนใหญ่เพราะพวกเขาทั้งสองต้องการที่จะตอบสนองต่อเหตุการณ์เดียวกัน นี่ไม่ใช่เรื่องปกติในหมู่ซอฟต์แวร์อื่น ๆ ในฐานะที่เป็นวิธีการแก้ไขให้ความสนใจที่จะอธิบาย?
Frank Thomas

2
ฉันได้พยายามที่จะอยู่ที่ว่าในคำตอบของฉัน AV สองตัวจะไม่แย่งดิสก์ I / O ในแง่ที่ว่ามันพยายามขนานกันทำให้เกิดสภาพการแข่งขัน แต่ละคนจะพยายามฉีดตัวเองเข้าไปในระบบปฏิบัติการ สถานการณ์ใดสถานการณ์หนึ่งจะสงบลงในขณะที่อีกคนหนึ่ง AV ถูกสแกนโดยคนอื่น ๆ หรือมันจะจบลงด้วยความยุ่งเหยิงที่เปราะบางไม่เช่นนั้น AV ก็จะพยายามครอบงำซึ่งกันและกัน
gronostaj

1
@gronostaj ที่เป็นแกนหลักทั้งสองคำตอบไม่ใช่ข้อยกเว้นใช่ไหม เหตุใดจึงไม่มีปัญหาเกี่ยวกับ OS hook contention (IE: ต่อสู้เพื่อ "เขียนไฟล์") ... และ ... มีปัญหาเกี่ยวกับการทำงานพร้อมกัน? แก้ไขให้ถูกต้องหากฉันผิด แต่ทั้งคู่ดูเหมือนว่าปัญหา "เสริม" ซึ่งทั้งสองทำให้โกรธมากเกินไป (ในขณะที่เพิ่มปัญหาอื่น ๆ ที่ด้านบนของมัน - AV แต่ละตัวมีข้อบกพร่องด้านความปลอดภัยปัญหาด้านประสิทธิภาพ ดูเหมือนว่านี่เป็นการต่อสู้เพื่อย่อปัญหาใหญ่ลงไปหนึ่งประเด็น ... และการต่อสู้เพื่อตัดสินว่าใครมีปัญหา ""
WernerCD

3

กระบวนการตรวจสอบทั้งสองจะแข่งขันกันเพื่อตรวจสอบไดรฟ์และเครือข่าย I / O

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

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

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