Cyberdefenders: Malware Traffic Analysis 2 Challenge
เรามาดำดิ่งสู่ความท้าทายในการวิเคราะห์ทราฟฟิกมัลแวร์ 2
เราจะเรียนรู้เครื่องมือทั่วไปและเครื่องมือใหม่ในการวิเคราะห์ไฟล์ pcap และใช้กฎ Suricata ที่พบใน Brim เพื่อระบุโทรจันที่
เป็นอันตราย เริ่มกันเลย!
คำถามที่ 1: ที่อยู่ IP ของ Windows VM ที่ติดไวรัสคืออะไร
ด้วยการใช้ NetworkMiner — เราสามารถดูที่ส่วนโฮสต์และจัดเรียงผลลัพธ์ตามที่อยู่ IP
เมื่อเราดูผลลัพธ์และค้นหาที่อยู่ IP ส่วนตัว เราสามารถสังเกตเห็นที่อยู่ IP 172.16.165.132 ด้วยหน้าต่างระบบปฏิบัติการ และนี่คือคำตอบ
มิฉะนั้น เราสามารถตรวจสอบ Wireshark สำหรับที่อยู่ IP ทั้งหมดที่เป็นส่วนหนึ่งของช่วง IP ส่วนตัวและสำหรับโปรโตคอล DNS:
ด้วยวิธีนี้ เราสามารถค้นหา IP ต้นทางที่สอบถามสำหรับการแปลโดเมนและผู้ที่ตอบคำถามนั้น:
(ip.src == 10.0.0.0/8 or ip.src == 172.16.0.0/12 or ip.src == 192.168.0.0/24) && dns
คำตอบ: 172.16.165.132
คำถามที่ 2 — ที่อยู่ MAC ของ VM ที่ติดไวรัสคืออะไร
โดยใช้เครื่องมือเดียวกันกับด้านบน เราจะพบด้านล่างฟิลด์ IP — ที่อยู่ MAC ที่เรากำลังมองหา:
คำตอบ: 00:0c:29:c5:b7:a1
คำถามที่ 3 — ที่อยู่ IP และหมายเลขพอร์ตที่ส่งชุดช่องโหว่และมัลแวร์คืออะไร
การใช้การรักษาความปลอดภัย Brim และการใช้ส่วนการตรวจจับของ Suricata เราสามารถเห็น IP ที่ระบุว่าเป็นโทรจันเครือข่ายและตรวจพบชุดการโจมตี:
ข้อความค้นหา > การแจ้งเตือนของ Suricata ตามต้นทางและปลายทาง
มาหาหมายเลขพอร์ตที่มาจากการสื่อสาร — สำหรับงานนี้ เราเพียงแค่ต้องคลิกขวาที่ผลลัพธ์ จากนั้นคลิก “Pivot to logs”:
จากนั้นเราจะเห็นพอร์ตต้นทาง:
คำตอบ: 37.143.15.180:51439
คำถามที่ 4 — FQDN สองรายการที่ส่งชุดการหาประโยชน์คืออะไร คั่นด้วยเครื่องหมายจุลภาคตามลำดับตัวอักษร
Network Miner สามารถช่วยเราในการค้นหาโดเมนทั้งหมดที่เกี่ยวข้องกับ IP นั้นๆ
เมื่อไปที่แท็บโฮสต์ จัดเรียงผลลัพธ์ตามที่อยู่ IP และค้นหาที่อยู่ IP ที่เราพบด้านบน — เราจะเห็น 2 FQDN ที่พบใน IP นั้น:
คำตอบ: g.trinketking.com, h.trinketking.com
คำถามที่ 5 + 6 — ที่อยู่ IP และ FQDN ของเว็บไซต์ที่ถูกบุกรุกคืออะไร
หากโดเมนชุดช่องโหว่ถูกเปิดใช้งานโดยเว็บไซต์ที่ถูกบุกรุกและไม่ใช่ผู้ใช้โดยตรง ดังนั้นให้ค้นหาทราฟฟิก http ทั้งหมดที่ IP ปลายทางคือ 37.143.15.180 และจากนั้นเราจะค้นหาโดเมนผู้อ้างอิง
ip.dst == 37.143.15.180 && http
คำตอบ: hijinksensee.com
จากนั้นเราจะค้นหา FQDN ของเราใน NetworkMiner — จัดเรียงโฮสต์ผลลัพธ์ตามชื่อโฮสต์และค้นหาที่อยู่ IP ของเรา:
คำตอบ: 192.30.138.146
คำถามที่ 7 — ชื่อชุดช่องโหว่ (EK) ที่ส่งมัลแวร์คืออะไร (สองคำ)
กฎแต่ละข้อใน Suricata มีหมวดหมู่และลายเซ็นโดยที่ลายเซ็นคือชื่อของการแจ้งเตือนเมื่อกฎตรงกับลักษณะการทำงาน
เมื่อดูที่ลายเซ็นของ Suricata ของ IP ชุดช่องโหว่ — เราสามารถให้ความสนใจกับชื่อของมัน “ET INFO WinHttpRequest Downloading EXE”
การค้นหาอย่างง่ายใน Google เผยให้เห็นชื่อชุดการหาประโยชน์: Sweet Orange
ส้มหวาน คำอธิบาย:
คำตอบ: ส้มหวาน
คำถามที่ 8 — URL การเปลี่ยนเส้นทางที่ชี้ไปยังหน้า Landing Page ของชุดการหาประโยชน์คืออะไร
ความคิดของฉันคือ:
หากเว็บไซต์ที่ถูกบุกรุกไม่ใช่เว็บไซต์ที่เปลี่ยนเส้นทางไปยังเว็บไซต์ที่เป็นอันตราย ดังนั้นอาจมีโดเมนที่เปลี่ยนเส้นทางไปยังเว็บไซต์ที่เป็นอันตรายเฉพาะในเวลาทำงาน และปรากฏเป็นส่วนหนึ่งของเว็บไซต์ที่ถูกบุกรุกในสถานะคงที่ ดังนั้นมาค้นหาเว็บไซต์ทั้งหมด โดเมนที่มีผู้อ้างอิงของเว็บไซต์ที่ถูกบุกรุกในเวลาที่กำหนดซึ่งคำขอไปยังผู้ประสงค์ร้ายที่ส่ง… ไม่รวม IP ปลายทางของเว็บไซต์ที่ถูกบุกรุกและค้นหาไฟล์ JavaScript
ก่อนอื่น เรามาตรวจสอบแพ็กเก็ตของ IP ปลายทางที่เป็นอันตรายอีกครั้ง และให้ความสนใจกับผู้อ้างอิง:
ip.dst == 37.143.15.180 && http
http.referer == "http://hijinksensue.com/" && frame.time < "2014-11-23 02:58:46" && frame.time > "2014-11-23 02:58:44" && !ip.dst == 192.30.138.146
โดยการตรวจสอบการตอบสนองของโดเมน “intensedebate.com” (IP: 192.0.65.226) — เราสามารถเห็นสคริปต์ได้อย่างชัดเจน และนี่ไม่ใช่สคริปต์ที่คลุมเครือและเป็นอันตราย:
frame.time < "2014-11-23 02:58:46" && frame.time > "2014-11-23 02:58:44" && ip.src == 192.0.65.226 && http
frame.time < "2014-11-23 02:58:47" && frame.time > "2014-11-23 02:58:44" && ip.src == 50.87.149.90 && http
var main_request_data_content='(6i8h(74$X7o4w(70(z3a)2fY_2f)[email protected]_O72x$P69Y;R6e=R6b;6v5j!74m;H6b=69)L6QeP_M6S7_2he@63R=6vfJ;6d;i3a,[email protected])33Z(39w$t2fw!T63(6fr(r6peV.P7X3,7P5t,6dx_z65,7V2J@Z2f)6V5(w6dJ$7U0!74W;p79q$s2f=K6k2x_69n=7o2=G64_73;Z2pe;Z70.68_7N0@3f(R7O7q,6Q9;S6Oej(K74(t65,7O2k$t3d,3i3';
ตอบ:http://static.charlotteretirementcommunities.com/k?tstmp=3701802802
คำถามที่ 9: ที่อยู่ IP ของ URL การเปลี่ยนเส้นทางที่ชี้ไปยังหน้า Landing Page ของชุดการหาประโยชน์คืออะไร
ตามโดเมนที่เราพบในข้อความค้นหาด้านบน — เรายังสามารถค้นหา IP ของโดเมนได้ด้วยการตรวจสอบแท็บ “โฮสต์” ใน NetworkMiner:
คำตอบ: 50.87.149.90
คำถามที่ 10: แยกเพย์โหลดมัลแวร์ (ไฟล์ PE) จาก PCAP แฮช MD5 คืออะไร?
เราทราบ IP และยกเว้นว่าโดเมนของชุดช่องโหว่ ดังนั้นลองค้นหาอีกครั้งในฐานะที่อยู่ต้นทางเพื่อดูการตอบกลับและค้นหาช่องโหว่
ip.src == 37.143.15.180 && http
ลองส่งออกไบต์และใช้ฟังก์ชันของ PowerShell “Get-FileHash” เพื่อดึง MD5 และตรวจสอบใน VT และ BOOM !!!
คำตอบ: 1408275C2E2C8FE5E83227BA371AC6B3
คำถามที่ 11 — CVE ของช่องโหว่ที่ถูกโจมตีคืออะไร
เรารู้จากคำถามก่อนหน้านี้ว่ามัลแวร์ชื่อ “ส้มหวาน” ฉันจึงเริ่มค้นหาในกูเกิล “ส้มหวาน cve”
เมื่อเรียกดูไซต์ด้านล่าง ฉันสังเกตเห็นว่าบทความเน้นประเภทเนื้อหา
https://www.malware-traffic-analysis.net/2014/04/20/index.html
แล้วรวมผลลัพธ์เพื่อค้นหาใน Google และสร้าง "Sweet orange octet stream cve"
https://malware.dontneedcoffee.com/2014/11/cve-2014-6332.html
คำถามที่ 12: ไฟล์ประเภท mime ใดที่ใช้เวลานานที่สุด (ระยะเวลา) ในการวิเคราะห์โดยใช้ Zeek
Mime เป็นสื่อประเภทหนึ่งที่บ่งบอกถึงลักษณะและรูปแบบของเอกสาร
สามารถดูประเภท Common mime ได้ที่นี่:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types
สำหรับการค้นหาระยะเวลาที่นานที่สุดในการโหลดประเภท mime เราจะดูว่าเส้นทางใดที่เรามีกับข้อมูลทั้งหมดใน Brim โดยทำแบบสอบถามนี้:
count() by _path | sort -r
_path=="files" | mime_type!=null | sort -r duration
คำตอบ: แอปพลิเคชัน/x-dosexec
คำถามที่ 13 — อะไรคือผู้อ้างอิงสำหรับ URI ที่เข้าชมซึ่งส่งคืนไฟล์ “f.txt”
สำหรับการค้นหาผู้อ้างอิงไปยัง URI ที่เยี่ยมชมซึ่งส่งคืน f.txt เราสามารถใช้ Brim ซึ่งเราเพียงแค่ค้นหาคำขอ HTTP ทั้งหมดด้วยชื่อไฟล์ตอบกลับที่มี f.txt และใช้ "cut" เพื่อกรองเฉพาะ URL ผู้อ้างอิง
_path=="http" | "f.txt" in resp_filenames | cut referrer
คำถามที่ 14 — PCAP นี้ถูกจับเมื่อใด
เมื่อดูเวลาของแพ็กเก็ตที่บันทึก แต่ละแพ็กเก็ตจะได้รับการประทับเวลา — ด้วยเหตุนี้ เราจึงสามารถใส่ใจกับเวลาแรกสุดและเวลาล่าสุดของแพ็กเก็ต และสังเกตได้ว่าเวลาตรงกัน ซึ่งหมายความว่า PCAP นี้ถูกจับบน 23/11/2014
ตอบ: 23/11/2557
คำถามที่ 15 — ไฟล์ PE ถูกรวบรวมเมื่อใด
การใช้ซอฟต์แวร์ PEStudio ทำให้เราได้รับการวิเคราะห์แบบคงที่ของไฟล์ รวมถึงสตริง แฮช และการประทับเวลาการคอมไพล์:
ตอบ: 21/11/2014
คำถามที่ 16 — ชื่อของผู้ออกใบรับรอง SSL ที่ปรากฏเพียงครั้งเดียวคืออะไร (หนึ่งคำ)
สำหรับการดึงใบรับรองทั้งหมด — ฉันค้นหาทราฟฟิกทั้งหมดที่พอร์ตคือ 443 และปลายทางคือ IP ส่วนตัวของเราเพื่อจุดประสงค์เพื่อค้นหาการตอบสนอง "เซิร์ฟเวอร์" ทั้งหมด:
tcp.port == 443 && ip.dst == 172.16.165.132
คำตอบ: CYBERTRUST
คำถามที่ 17 — วิธีป้องกันสองวิธีใดที่เปิดใช้งานระหว่างการคอมไพล์ไฟล์ PE ปัจจุบัน รูปแบบ: คั่นด้วยเครื่องหมายจุลภาคตามลำดับตัวอักษร
สำหรับจุดประสงค์ในการค้นหาการป้องกันโปรแกรมพกพา (PE) เราสามารถใช้เครื่องมือ “winchecksec” ใน Github
https://github.com/trailofbits/winchecksec/releases/download/v3.1.0/windows.x64.Release.zip
หลังจากแตกไฟล์และใช้ winchecksec.exe บนไบนารีที่เป็นอันตรายที่แยกออกมาซึ่งโดเมนชุดเจาะช่องโหว่ส่งมา — เราสามารถเห็นการป้องกัน 2 อย่างอย่างชัดเจนที่ตรงกับคำถามของเรา:
จากข้อมูลของ Google NX เป็น non-Execute (ชื่อที่สอง — DEP) ซึ่งบล็อกการเรียกใช้โค้ดจากหน่วยความจำที่ทำเครื่องหมายว่าไม่สามารถเรียกใช้งานได้
การป้องกันที่สองเรียกว่า SEH ซึ่งเกี่ยวข้องกับการใช้ประโยชน์จาก SEH ที่ให้ฝ่ายตรงข้ามเขียนทับตัวชี้และกำหนดลำดับการดำเนินการไปยังรหัสที่เป็นอันตราย
ตอบ:ทบ