Beelzebub هو إطار عمل متقدم مصمم لتوفير بيئة آمنة للغاية لاكتشاف الهجمات الإلكترونية وتحليلها. إنه يوفر نهج رمز منخفض لسهولة التنفيذ ويستخدم الذكاء الاصطناعى لتقليد سلوك مصيبة هونموت عالية التفاعل.
ابق على اطلاع على الهجمات في الوقت الفعلي من خلال الانضمام إلى قناة Telegram المخصصة: قناة Telegram
لفهم قدرات Beelzebub بشكل أفضل ، يمكنك استكشاف مستودع مثالنا: Mariocandela/Beelzebub-Example
نحن نقدم خيارين للبدء السريع للبناء وتشغيل Beelzebub: استخدام Docker Compose أو GOPler.
بناء صور Docker:
$ docker-compose buildابدأ Beelzebub في الوضع المنفصل:
$ docker-compose up -dقم بتنزيل وحدات GO اللازمة:
$ go mod downloadبناء beelzebub القابلة للتنفيذ:
$ go buildRun Beelzebub:
$ ./beelzebubتثبيت Helm
نشر Beelzebub:
$ helm install beelzebub ./beelzebub-chartالإصدار التالي
$ helm upgrade beelzebub ./beelzebub-chartنحن نقدم نوعين من الاختبارات: اختبارات الوحدة واختبارات التكامل.
لتشغيل اختبارات الوحدة:
$ make test.unitلتشغيل اختبارات التكامل:
$ make test.dependencies.start
$ make test.integration
$ make test.dependencies.downيقدم Beelzebub مجموعة واسعة من الميزات لتعزيز بيئة 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 مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.