Beelzebub เป็นเฟรมเวิร์กฮันนีพ็อตขั้นสูงที่ออกแบบมาเพื่อให้สภาพแวดล้อมที่ปลอดภัยสูงสำหรับการตรวจจับและวิเคราะห์การโจมตีทางไซเบอร์ มันมีวิธีการรหัสต่ำสำหรับการใช้งานง่ายและใช้ AI เพื่อเลียนแบบพฤติกรรมของ honeypot การโต้ตอบสูง
อัพเดทอยู่ในการโจมตีแบบเรียลไทม์โดยเข้าร่วมช่องโทรเลขเฉพาะของเรา: Telegram Channel
เพื่อให้เข้าใจถึงความสามารถของ Beelzebub ได้ดีขึ้นคุณสามารถสำรวจตัวอย่างที่เก็บตัวอย่างของเรา: Mariocandela/Beelzebub ตัวอย่างตัวอย่าง
เรามีตัวเลือกการเริ่มต้นอย่างรวดเร็วสองตัวเลือกสำหรับการสร้างและเรียกใช้ Beelzebub: การใช้ Docker Compose หรือ Go Compiler
สร้างภาพนักเทียบท่า:
$ docker-compose buildเริ่ม Beelzebub ในโหมดเดี่ยว:
$ docker-compose up -dดาวน์โหลดโมดูล GO ที่จำเป็น:
$ go mod downloadสร้าง Beelzebub ปฏิบัติการ:
$ go buildเรียกใช้ Beelzebub:
$ ./beelzebubติดตั้งหางเสือ
ปรับใช้ beelzebub:
$ helm install beelzebub ./beelzebub-chartรุ่นต่อไป
$ helm upgrade beelzebub ./beelzebub-chartเราให้การทดสอบสองประเภท: การทดสอบหน่วยและการทดสอบการรวม
เพื่อเรียกใช้การทดสอบหน่วย:
$ make test.unitเพื่อเรียกใช้การทดสอบการรวม:
$ make test.dependencies.start
$ make test.integration
$ make test.dependencies.downBeelzebub นำเสนอคุณสมบัติที่หลากหลายเพื่อเพิ่มสภาพแวดล้อม honeypot ของคุณ:
Beelzebub ช่วยให้สามารถกำหนดค่าได้ง่ายสำหรับบริการและพอร์ตที่แตกต่างกัน เพียงสร้างไฟล์ใหม่สำหรับแต่ละบริการ/พอร์ตภายในไดเรกทอรี /configurations/services
ในการดำเนินการ Beelzebub ด้วยเส้นทางที่กำหนดเองของคุณให้ใช้คำสั่งต่อไปนี้:
$ ./beelzebub --confCore ./configurations/beelzebub.yaml --confServices ./configurations/services/นี่คือตัวอย่างการกำหนดค่าสำหรับสถานการณ์ฮันนีพ็อตที่แตกต่างกัน:
apiVersion : " v1 "
protocol : " http "
address : " :80 "
description : " Wordpress 6.0 "
commands :
- regex : " ^(/index.php|/index.html|/)$ "
handler :
<html>
<header>
<title>Wordpress 6 test page</title>
</header>
<body>
<h1>Hello from Wordpress</h1>
</body>
</html>
headers :
- " Content-Type: text/html "
- " Server: Apache/2.4.53 (Debian) "
- " X-Powered-By: PHP/7.4.29 "
statusCode : 200
- regex : " ^(/wp-login.php|/wp-admin)$ "
handler :
<html>
<header>
<title>Wordpress 6 test page</title>
</header>
<body>
<form action="" method="post">
<label for="uname"><b>Username</b></label>
<input type="text" placeholder="Enter Username" name="uname" required>
<label for="psw"><b>Password</b></label>
<input type="password" placeholder="Enter Password" name="psw" required>
<button type="submit">Login</button>
</form>
</body>
</html>
headers :
- " Content-Type: text/html "
- " Server: Apache/2.4.53 (Debian) "
- " X-Powered-By: PHP/7.4.29 "
statusCode : 200
- regex : " ^.*$ "
handler :
<html>
<header>
<title>404</title>
</header>
<body>
<h1>Not found!</h1>
</body>
</html>
headers :
- " Content-Type: text/html "
- " Server: Apache/2.4.53 (Debian) "
- " X-Powered-By: PHP/7.4.29 "
statusCode : 404 apiVersion : " v1 "
protocol : " http "
address : " :8080 "
description : " Apache 401 "
commands :
- regex : " .* "
handler : " Unauthorized "
headers :
- " www-Authenticate: Basic "
- " server: Apache "
statusCode : 401 ตัวอย่างด้วย OpenAI GPT-4:
apiVersion : " v1 "
protocol : " ssh "
address : " :2222 "
description : " SSH interactive OpenAI GPT-4 "
commands :
- regex : " ^(.+)$ "
plugin : " LLMHoneypot "
serverVersion : " OpenSSH "
serverName : " ubuntu "
passwordRegex : " ^(root|qwerty|Smoker666|123456|jenkins|minecraft|sinus|alex|postgres|Ly123456)$ "
deadlineTimeoutSeconds : 60
plugin :
llmModel : " gpt4-o "
openAISecretKey : " sk-proj-123456 "ตัวอย่างกับ Ollama Llama3:
apiVersion : " v1 "
protocol : " ssh "
address : " :2222 "
description : " SSH Ollama Llama3 "
commands :
- regex : " ^(.+)$ "
plugin : " LLMHoneypot "
serverVersion : " OpenSSH "
serverName : " ubuntu "
passwordRegex : " ^(root|qwerty|Smoker666|123456|jenkins|minecraft|sinus|alex|postgres|Ly123456)$ "
deadlineTimeoutSeconds : 60
plugin :
llmModel : " llama3 "
host : " http://example.com/api/chat " # default http://localhost:11434/api/chat apiVersion : " v1 "
protocol : " ssh "
address : " :22 "
description : " SSH interactive "
commands :
- regex : " ^ls$ "
handler : " Documents Images Desktop Downloads .m2 .kube .ssh .docker "
- regex : " ^pwd$ "
handler : " /home/ "
- regex : " ^uname -m$ "
handler : " x86_64 "
- regex : " ^docker ps$ "
handler : " CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES "
- regex : " ^docker .*$ "
handler : " Error response from daemon: dial unix docker.raw.sock: connect: connection refused "
- regex : " ^uname$ "
handler : " Linux "
- regex : " ^ps$ "
handler : " PID TTY TIME CMD n 21642 ttys000 0:00.07 /bin/dockerd "
- regex : " ^(.+)$ "
handler : " command not found "
serverVersion : " OpenSSH "
serverName : " ubuntu "
passwordRegex : " ^(root|qwerty|Smoker666)$ "
deadlineTimeoutSeconds : 60 แผนการในอนาคตของเราสำหรับ Beelzebub รวมถึงการพัฒนาเป็นแพลตฟอร์ม PAAS ที่แข็งแกร่ง
ทีม Beelzebub ยินดีต้อนรับการมีส่วนร่วมและการมีส่วนร่วมของโครงการ ไม่ว่าคุณต้องการรายงานข้อบกพร่องมีส่วนร่วมในคุณสมบัติใหม่หรือมีคำถามใด ๆ โปรดดูคู่มือผู้สนับสนุนของเราสำหรับข้อมูลโดยละเอียด เราสนับสนุนให้ผู้เข้าร่วมและผู้ดูแลทุกคนปฏิบัติตามจรรยาบรรณของเราและส่งเสริมชุมชนที่ให้การสนับสนุนและให้ความเคารพ
แฮ็คมีความสุข!
Beelzebub ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT