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


15

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

สิ่งหนึ่งที่ฉันไม่เข้าใจว่าทำไมซอฟต์แวร์ป้องกันไวรัสของฉัน (Avast) กำลังพิจารณาว่าไฟล์ exe ของฉันเป็นสิ่งที่อันตรายและจะไม่เริ่มต้นโดยไม่ขอให้ใส่ลงในแซนด์บ็อกซ์เพื่อการใช้งานอย่างปลอดภัย

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

ฉันใช้ C # กับ MS Visual Studio 2010

รายงาน VirusTotal ไม่มีการฉีด DLL ทำงานเป็นเครื่องมือดาวน์โหลดไฟล์ระยะไกลโดยใช้คลาส WebClient ()

มันไม่เหมือนที่มันเตือนเกี่ยวกับไวรัส แต่มัน "แนะนำ" เพื่อ sandbox มัน ดูภาพหน้าจอ:ป้อนคำอธิบายรูปภาพที่นี่


1
ฉันขอแนะนำให้คุณอัปโหลดโปรแกรมของคุณไปที่virustotal.comเพื่อรับความประทับใจจากจำนวนผู้ขายที่พิจารณาว่าแอปของคุณน่าสงสัย หากโปรแกรม AV ทั้งหมดตั้งค่าสถานะแอปของคุณคุณจะต้องตรวจสอบว่ารหัสของคุณทำอะไรอยู่ซึ่งโปรแกรม AV อาจต้องสงสัย เป็นไปไม่ได้ที่จะตัดสินว่าฮิวริสติก AV ผู้ขายใช้อะไร - ฉันสงสัยว่าพวกเขาจะบอกคุณ หากเป็นเพียงหนึ่งหรือสองคุณสามารถรายงานผลบวกปลอมแก่พวกเขา (ตรวจสอบเว็บไซต์ของพวกเขาหรือ Google "รายงาน vendorname รายงานเท็จบวก") ข้อเสียของสิ่งนี้คือคุณจะต้องทำสิ่งนี้กับซอฟต์แวร์ทุกรุ่นของคุณ
Jan Doggen

มันไม่ได้ทำกิจกรรมใด ๆ ที่เกี่ยวข้องกับ DLL-Injection ใช่ไหม
l46kok

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

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

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

คำตอบ:


22

"ความชุกของไฟล์ / ชื่อเสียงต่ำ" หมายความว่า Avast ใช้ระบบชื่อเสียงตามการใช้งานของโปรแกรม เฉพาะเมื่อโปรแกรมของคุณได้รับการติดตั้งและ 'ทำเครื่องหมายว่ามีน้ำใจ' โดยผู้ใช้ที่เพียงพอก็จะพัฒนาชื่อเสียงที่ดีและข้อเสนอแนะนี้จะหายไป Avast เรียกคุณสมบัตินี้ว่าระบบคลาวด์ FileRepและแจ้งว่า "ไฟล์ใหม่ที่ไม่รู้จักทั้งหมดอาจเป็นอันตรายได้ทุกครั้งที่มีการแพร่กระจายอย่างกว้างขวาง นี่คือ PITA สำหรับ บริษัท ซอฟต์แวร์ขนาดเล็ก (และ Avast ไม่ใช่คนเดียวที่ทำสิ่งนี้หมายเหตุเช่น Symantec's Suspicious Insight " ) สิ่งหนึ่งที่ Avast แนะนำคือ" คุณสามารถเร่งกระบวนการได้หากคุณเซ็นชื่อแบบดิจิทัลในไฟล์ "

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


ฉันมีปัญหาที่คล้ายกัน โซลูชันการเซ็นชื่อแบบดิจิทัลใดที่คุณใช้ @Deele ผมมีมากกว่า 50 $ สำหรับนี้ ...
Basj

0

เพื่อเพิ่มสิ่งที่แจนด็อกเกนพูดว่าโปรแกรมต่อต้านไวรัสแบบอื่น ๆ ก็ทำการสแกนแบบฮิวริสติก

การสแกน Anti Virus ไม่เพียง แต่ดูว่าการปฏิบัติการเฉพาะนั้นเป็นสำเนาที่แน่นอนของไวรัสที่รู้จักหรือไม่ ที่สามารถและได้รับการหลีกเลี่ยงได้ง่าย ตอนนี้เครื่องมือ AV ตรวจสอบพฤติกรรมที่เฉพาะเจาะจงเช่นเดียวกับเครื่องมือที่ใช้ไลบรารีสุทธิทำการเข้าถึงไฟล์ / ดัดแปลงแก้ไขหรือเข้ารหัส / ถอดรหัสตัวเองตอนรันไทม์เป็นต้นและขึ้นอยู่กับอัลกอริธึมภายใน (ฮิวริสติก) มันอันตราย .

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

คุณจะพบปัญหานี้ 100% กับประเภทของซอฟต์แวร์ที่คุณกำลังพัฒนา

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