วิธีใช้ YARA เพื่อตรวจจับมัลแวร์ขั้นสูง

การปรับปรุงครั้งล่าสุด: 01/12/2025

  • YARA อนุญาตให้อธิบายกลุ่มมัลแวร์โดยใช้กฎที่ยืดหยุ่นตามสตริง รูปแบบไบนารี และคุณสมบัติไฟล์
  • กฎที่ออกแบบมาอย่างดีสามารถตรวจจับทุกอย่างได้ตั้งแต่แรนซัมแวร์และ APT ไปจนถึงเว็บเชลล์และช่องโหว่แบบ zero-day ในสภาพแวดล้อมต่างๆ มากมาย
  • การรวม YARA เข้ากับการสำรองข้อมูล เวิร์กโฟลว์นิติวิทยาศาสตร์ และเครื่องมือขององค์กร จะช่วยเสริมความแข็งแกร่งให้กับการป้องกันที่เหนือกว่าซอฟต์แวร์ป้องกันไวรัสแบบเดิม
  • ชุมชน YARA และที่เก็บข้อมูลกฎช่วยให้แบ่งปันข้อมูลข่าวสารและปรับปรุงการตรวจจับได้อย่างต่อเนื่อง

วิธีใช้ YARA เพื่อตรวจจับมัลแวร์ขั้นสูง

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

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

YARA คืออะไร และเหตุใดจึงสามารถตรวจจับมัลแวร์ได้อย่างมีประสิทธิภาพ?

YARA ย่อมาจาก “Yet Another Recursive Acronym” และกลายเป็นมาตรฐานโดยพฤตินัยในการวิเคราะห์ภัยคุกคามเนื่องจาก ช่วยให้สามารถอธิบายกลุ่มมัลแวร์ได้โดยใช้กฎเกณฑ์ที่อ่านได้ ชัดเจน และมีความยืดหยุ่นสูงแทนที่จะพึ่งพาลายเซ็นป้องกันไวรัสแบบคงที่เพียงอย่างเดียว YARA ทำงานกับรูปแบบที่คุณกำหนดขึ้นเอง

แนวคิดพื้นฐานนั้นเรียบง่าย: กฎ YARA จะตรวจสอบไฟล์ (หรือหน่วยความจำ หรือสตรีมข้อมูล) และตรวจสอบว่าตรงตามเงื่อนไขชุดหนึ่งหรือไม่ เงื่อนไขตามสตริงข้อความ ลำดับเลขฐานสิบหก นิพจน์ทั่วไป หรือคุณสมบัติไฟล์หากตรงตามเงื่อนไข จะถือว่า "ตรงกัน" และคุณสามารถแจ้งเตือน บล็อค หรือดำเนินการวิเคราะห์เชิงลึกเพิ่มเติมได้

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

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

กรณีการใช้งานขั้นสูงของ YARA ในการตรวจจับมัลแวร์

จุดแข็งประการหนึ่งของ YARA คือสามารถปรับตัวให้เข้ากับสถานการณ์ด้านความปลอดภัยต่างๆ ได้อย่างคล่องตัว ตั้งแต่ SOC จนถึงแล็บมัลแวร์ กฎเดียวกันนี้ใช้กับการล่าครั้งเดียวและการติดตามอย่างต่อเนื่อง.

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

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

YARA ยังโดดเด่นในเรื่องของการกรองด้วย ประเภทไฟล์หรือลักษณะโครงสร้างเป็นไปได้ที่จะสร้างกฎเกณฑ์ที่ใช้กับไฟล์ปฏิบัติการ PE เอกสารสำนักงาน PDF หรือรูปแบบอื่นๆ เกือบทั้งหมด โดยการรวมสตริงกับคุณสมบัติ เช่น ขนาดไฟล์ ส่วนหัวที่เจาะจง (เช่น 0x5A4D สำหรับไฟล์ปฏิบัติการ PE) หรือการนำเข้าฟังก์ชันที่น่าสงสัย

ในสภาพแวดล้อมสมัยใหม่ การใช้เชื่อมโยงกับ ข่าวกรองภัยคุกคามคลังข้อมูลสาธารณะ รายงานการวิจัย และฟีด IOC จะถูกแปลงเป็นกฎ YARA ที่รวมเข้ากับ SIEM, EDR, แพลตฟอร์มสำรองข้อมูล หรือแซนด์บ็อกซ์ ซึ่งช่วยให้องค์กรสามารถ ตรวจจับภัยคุกคามที่เกิดขึ้นใหม่ซึ่งมีลักษณะร่วมกับแคมเปญที่วิเคราะห์แล้วได้อย่างรวดเร็ว.

ทำความเข้าใจเกี่ยวกับไวยากรณ์ของกฎ YARA

โครงสร้างทางไวยากรณ์ของ YARA ค่อนข้างคล้ายกับ C แต่มีความเรียบง่ายกว่าและมุ่งเน้นมากกว่า กฎแต่ละข้อประกอบด้วยชื่อ ส่วนเมตาข้อมูลเสริม ส่วนสตริง และส่วนเงื่อนไขอย่างแน่นอนจากนี้ไป พลังจะอยู่ที่ว่าคุณจะรวมสิ่งทั้งหมดนั้นเข้าด้วยกันได้อย่างไร

ประการแรกคือ ชื่อกฎจะต้องอยู่หลังคีย์เวิร์ดทันที กฎ (o กฎ หากคุณจัดทำเอกสารเป็นภาษาสเปน แม้ว่าคำสำคัญในไฟล์จะเป็น กฎและต้องเป็นรหัสประจำตัวที่ถูกต้อง: ไม่มีช่องว่าง ไม่มีตัวเลข และไม่มีเครื่องหมายขีดล่าง ควรปฏิบัติตามแบบแผนที่ชัดเจน เช่น มัลแวร์_แฟมิลี่_ตัวแปร o เครื่องมือ APT_Actor_Toolซึ่งช่วยให้คุณระบุได้ในทันทีว่าต้องการตรวจจับอะไร

เนื้อหาพิเศษ - คลิกที่นี่  ChatGPT Search ไม่จำเป็นต้องเข้าสู่ระบบอีกต่อไป: ยุคใหม่แห่งการค้นหา

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

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

ส่วน สภาพ เป็นเพียงคำสั่งบังคับเดียว และกำหนดว่าเมื่อใดที่กฎจะถือว่า "ตรงกัน" กับไฟล์ ณ จุดนี้ คุณจะใช้การดำเนินการแบบบูลีนและเลขคณิต (และ, หรือ, ไม่, +, -, *, /, ใด ๆ, ทั้งหมด, มี, ฯลฯ) เพื่อแสดงตรรกะการตรวจจับที่ละเอียดกว่าการถามแบบง่ายๆ ว่า "ถ้าสตริงนี้ปรากฏขึ้น"

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

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

ตัวอย่างการปฏิบัติของกฎ YARA ขั้นสูง

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

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

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

ตัวอย่างทั่วไปในการวิเคราะห์ปฏิบัติการ PE เกี่ยวข้องกับการนำเข้าโมดูล pe จาก YARA ซึ่งช่วยให้คุณสามารถสอบถามคุณสมบัติภายในของไบนารีได้ เช่น ฟังก์ชันที่นำเข้า ส่วนต่างๆ ไทม์สแตมป์ ฯลฯ กฎขั้นสูงอาจกำหนดให้ไฟล์ต้องนำเข้า สร้างกระบวนการ จาก Kernel32.dll และฟังก์ชั่น HTTP บางส่วนจาก wininet.dllนอกจากจะมีข้อความเฉพาะที่บ่งบอกถึงพฤติกรรมที่เป็นอันตรายแล้ว

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

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

ด้วยกฎ "ตามพฤติกรรมของโค้ด" เหล่านี้ เป็นไปได้ ติดตามแคมเปญมัลแวร์ทั้งหมด เช่น PlugX/Korplug หรือกลุ่ม APT อื่นๆคุณไม่เพียงแต่ตรวจจับแฮชที่เฉพาะเจาะจงเท่านั้น แต่คุณยังตามสไตล์การพัฒนาของผู้โจมตีอีกด้วย

การใช้ YARA ในแคมเปญจริงและภัยคุกคามแบบ Zero-day

YARA ได้พิสูจน์คุณค่าของตนเองแล้ว โดยเฉพาะอย่างยิ่งในด้านภัยคุกคามขั้นสูงและการโจมตีแบบ zero-day ซึ่งกลไกการป้องกันแบบคลาสสิกมาช้าเกินไป ตัวอย่างที่รู้จักกันดีคือการใช้ YARA เพื่อค้นหาช่องโหว่ใน Silverlight จากข้อมูลข่าวกรองที่รั่วไหลเพียงเล็กน้อย.

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

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

เนื้อหาพิเศษ - คลิกที่นี่  วิธีจัดการรหัสผ่านด้วย SpiderOak

เมื่อคุณลากเสร็จแล้วคุณจะมี ตัวอย่างที่จัดกลุ่มตามความคล้ายคลึงกับครอบครัวหรือกลุ่มผู้โจมตีที่เฉพาะเจาะจง: “คล้ายกับสายพันธุ์ X”, “คล้ายกับสายพันธุ์ Y” เป็นต้น ตัวอย่างบางส่วนเหล่านี้อาจเป็นตัวอย่างใหม่สำหรับคุณโดยสิ้นเชิง (ไบนารีใหม่ แคมเปญใหม่) แต่ตัวอย่างเหล่านี้จะพอดีกับรูปแบบที่ทราบอยู่แล้ว ซึ่งจะช่วยเร่งการจำแนกและการตอบสนองของคุณ

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

บูรณาการ YARA เข้ากับแพลตฟอร์มการสำรองข้อมูลและการกู้คืน

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

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

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

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

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

วิธีทดสอบและตรวจสอบกฎ YARA โดยไม่ทำลายเครือข่ายของคุณ

มัลแวร์ Android

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

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

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

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

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

เครื่องมือ โปรแกรม และเวิร์กโฟลว์กับ YARA

ระบุไฟล์ที่ไม่มีไฟล์

นอกเหนือจากไบนารีอย่างเป็นทางการแล้ว ผู้เชี่ยวชาญจำนวนมากยังได้พัฒนาโปรแกรมและสคริปต์ขนาดเล็กที่ใช้ YARA เพื่อรองรับการใช้งานประจำวัน แนวทางทั่วไปเกี่ยวข้องกับการสร้างแอปพลิเคชันสำหรับ ประกอบชุดรักษาความปลอดภัยของคุณเอง ที่อ่านกฎทั้งหมดในโฟลเดอร์โดยอัตโนมัติและนำไปใช้กับไดเร็กทอรีการวิเคราะห์.

เครื่องมือทำเองประเภทนี้มักจะทำงานด้วยโครงสร้างไดเร็กทอรีที่เรียบง่าย: โฟลเดอร์หนึ่งสำหรับ กฎเกณฑ์ที่ดาวน์โหลดมาจากอินเทอร์เน็ต (เช่น “rulesyar”) และโฟลเดอร์อื่นสำหรับ ไฟล์ที่น่าสงสัยที่จะได้รับการวิเคราะห์ (ตัวอย่างเช่น "มัลแวร์") เมื่อโปรแกรมเริ่มทำงาน โปรแกรมจะตรวจสอบว่ามีทั้งสองโฟลเดอร์อยู่ แสดงรายการกฎบนหน้าจอ และเตรียมพร้อมสำหรับการดำเนินการ

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

เนื้อหาพิเศษ - คลิกที่นี่  RIFT คืออะไร และปกป้องข้อมูลของคุณจากมัลแวร์ขั้นสูงได้อย่างไร

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

เมื่อพิจารณาถึงพารามิเตอร์ที่มีประโยชน์ที่สุดเมื่อเรียกใช้ YARA ตัวเลือกต่างๆ เช่นต่อไปนี้โดดเด่นออกมา: -r เพื่อค้นหาแบบเรียกซ้ำ -S เพื่อแสดงสถิติ -m เพื่อแยกข้อมูลเมตา และ -w เพื่อละเว้นคำเตือนการรวมแฟล็กเหล่านี้จะช่วยให้คุณปรับเปลี่ยนพฤติกรรมให้เหมาะกับกรณีของคุณได้ ตั้งแต่การวิเคราะห์อย่างรวดเร็วในไดเร็กทอรีที่ระบุไปจนถึงการสแกนโครงสร้างโฟลเดอร์ที่ซับซ้อนทั้งหมด

แนวทางปฏิบัติที่ดีที่สุดในการเขียนและดูแลรักษากฎ YARA

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

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

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

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

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

ชุมชน YARA และทรัพยากรที่มีอยู่

เหตุผลหลักประการหนึ่งที่ทำให้ YARA ก้าวมาได้ไกลขนาดนี้ก็คือความเข้มแข็งของชุมชน นักวิจัย บริษัทด้านความปลอดภัย และทีมตอบสนองจากทั่วโลกต่างแบ่งปันกฎ ตัวอย่าง และเอกสารอย่างต่อเนื่องสร้างระบบนิเวศที่อุดมสมบูรณ์อย่างยิ่ง

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

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

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

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

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

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

วิธีตรวจจับมัลแวร์ไร้ไฟล์อันตรายใน Windows 11
บทความที่เกี่ยวข้อง:
วิธีตรวจจับมัลแวร์ไร้ไฟล์อันตรายใน Windows 11