หมายเหตุ: คำแนะนำต่อไปนี้สำหรับ Python3
หากคุณต้องการติดตั้ง Flashmingo บน Python2.7 คุณสามารถชำระเงินรีลีส 1.0 ภายใต้แท็บ รีลีส ขั้นตอนการติดตั้งนั้นเหมือนกัน
ติดตั้งแพ็คเกจ Python3 ที่ระบุไว้ใน requirements.txt . txt
คุณสามารถใช้คำสั่งต่อไปนี้: pip3 install -r requirements.txt
หากคุณต้องการใช้ฟังก์ชั่นการสลายตัวคุณต้องติดตั้ง Jython ผู้ใช้ Ubuntu/Debian สามารถออก apt install jython
โคลนโครงการหรือดาวน์โหลดไฟล์ zip
Flashmingo เป็นกรอบการวิเคราะห์สำหรับไฟล์ SWF เครื่องมือนี้จะส่งไฟล์แฟลชที่น่าสงสัยโดยอัตโนมัติและนำทางกระบวนการวิเคราะห์เพิ่มเติมทำให้ทรัพยากรมีค่าในทีมของคุณ คุณสามารถรวมโมดูลการวิเคราะห์ของ Flashmingo ไว้ในเวิร์กโฟลว์ของคุณได้อย่างง่ายดาย
จนถึงวันนี้นักวิจัยทางนิติวิทยาศาสตร์และนักวิเคราะห์มัลแวร์จะต้องจัดการกับไฟล์ SWF ที่น่าสงสัย หากประวัติศาสตร์ซ้ำตัวเองภัยคุกคามความปลอดภัยอาจยิ่งใหญ่กว่าการสิ้นสุดของชีวิตในปี 2020 ระบบจะยังคงสนับสนุนรูปแบบไฟล์ดั้งเดิมที่จะไม่ได้รับการอัปเดตด้วยแพตช์ความปลอดภัยอีกต่อไป ระบบอัตโนมัติเป็นวิธีที่ดีที่สุดในการจัดการกับปัญหานี้และนี่คือที่ Flashmingo สามารถช่วยคุณได้ Flashmingo เป็นกรอบการวิเคราะห์ในการประมวลผลไฟล์ SWF โดยอัตโนมัติที่ช่วยให้คุณสามารถตั้งค่าตัวอย่างแฟลชที่น่าสงสัยและวิเคราะห์ด้วยความพยายามน้อยที่สุด มันรวมเข้ากับเวิร์กโฟลว์การวิเคราะห์ที่หลากหลายเป็นแอปพลิเคชันแบบสแตนด์อโลนหรือห้องสมุดที่ทรงพลัง ผู้ใช้สามารถขยายฟังก์ชั่นของเครื่องมือผ่านปลั๊กอิน Python ที่กำหนดเองได้อย่างง่ายดาย
Flashmingo ได้รับการออกแบบโดยคำนึงถึงความเรียบง่าย มันอ่านไฟล์ SWF และสร้างวัตถุ ( SWFObject ) แสดงถึงเนื้อหาและโครงสร้างของมัน หลังจากนั้น Flashmingo เรียกใช้ชุดของปลั๊กอินที่ทำหน้าที่ใน SWFObject นี้และส่งคืนค่าของพวกเขาไปยังโปรแกรมหลัก
ด้านล่างแผนภาพการไหลของ ASCII Art:
+----------+
| |
+------------+----------->+ PLUGIN 1 +------------+
| | | | |
| | +----------+ |
| | |
| | +----------+ |
| | | | |
+---------+ | +----------->+ PLUGIN 2 +--------+ |
|SWF FILE +----------->+ FLASHMINGO | | | | |
+---------+ | | +----------+ | |
| | | |
| | | |
| | | |
| | +-----v---v-+
| | | |
| | | |
+-----+------+------------------------->+ SWFOBJECT |
^ | |
| | |
| +-----+-----+
| |
| |
| |
+---------------------------------------+
เมื่อใช้ Flashmingo เป็นห้องสมุดในโครงการของคุณเองคุณจะต้องดูแลวัตถุสองชนิดเท่านั้น:
SWFObject หนึ่งหรือหลายคนซึ่งเป็นตัวแทนตัวอย่าง (s)Flashmingo สิ่งนี้ทำหน้าที่เป็นตัวควบคุมปลั๊กอินที่เชื่อมต่อและ SWFObject (s) ปลั๊กอิน Flashmingo จะถูกเก็บไว้ในไดเรกทอรีของตัวเองภายใต้ ... คุณเดาได้: plugins เมื่อวัตถุ Flashmingo โกอินสแตนซ์มันจะผ่านไดเรกทอรีนี้และประมวลผลการแสดงของปลั๊กอินทั้งหมด หากสิ่งนี้บ่งชี้ว่าปลั๊กอินทำงานอยู่สิ่งนี้จะลงทะเบียนเพื่อใช้ในภายหลัง ที่ระดับรหัสซึ่งหมายความว่ามีการเพิ่มพจนานุกรม plugin_info ขนาดเล็กลงในรายการ plugins
ปลั๊กอินจะถูกเรียกใช้ผ่าน run_plugin API พร้อมอาร์กิวเมนต์สองข้อ:
SWFObject เลือกปลั๊กอินส่วนใหญ่อนุญาตให้คุณส่ง ข้อมูลผู้ใช้ ของคุณเอง นี่คือปลั๊กอินขึ้นอยู่กับ (อ่านเอกสาร) และสามารถอธิบายได้ง่ายขึ้นด้วยตัวอย่าง ปลั๊กอินเริ่มต้น SuspiciousNames จะค้นหาพูลคงที่ทั้งหมดสำหรับสตริงที่มี substrings ที่น่าสงสัย (ตัวอย่างเช่น: 'overflow', 'สเปรย์', 'เชลล์' ฯลฯ ) มีรายการของหมวดย่อยทั่วไปที่มีรหัสยากอยู่ในปลั๊กอินเพื่อให้สามารถใช้ as-is อย่างไรก็ตามคุณสามารถผ่านรายการย่อยที่กำหนดไว้ของคุณเองในกรณีนี้ผ่านพารามิเตอร์ names
ตัวอย่างรหัส:
fm = Flashmingo ()
print fm . run_plugin ( 'DangerousAPIs' , swf = swf )
print fm . run_plugin ( 'SuspiciousNames' , swf = swf , names = [ 'spooky' ])Flashmingo Ships พร้อมปลั๊กอินที่มีประโยชน์ออกมาจากกล่อง:
ปลั๊กอินเทมเพลตมีไว้เพื่อการพัฒนาที่ง่าย การขยาย Flashmingo ค่อนข้างตรงไปตรงมา ทำตามขั้นตอนง่ายๆเหล่านี้:
runคุณพร้อมที่จะไป :)
docs สำหรับเอกสารที่มีการปรับเปลี่ยนแบบ autogenerated $ pip install sphinxcontrib-napoleon
หลังจากตั้งค่าสฟิงซ์เพื่อสร้างเอกสารของคุณให้เปิดใช้งาน Napoleon ในไฟล์ Sphinx Conf.py:
ใน conf.py เพิ่มนโปเลียนลงในรายการส่วนขยาย
extensions = ['sphinxcontrib.napoleon']
ใช้ Sphinx-Apidoc เพื่อสร้างเอกสาร API ของคุณ:
$ sphinx-apidoc -f -o docs/source projectdir
สิ่งนี้สร้างไฟล์ .rst สำหรับสฟิงซ์เพื่อประมวลผล
$ make html
แค่ไหน! -