Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
dnsmonster — أداة لالتقاط ومراقبة DNS السلبي | Kitploit
أدوات/GitHubGitHub/fenkohq/dnsmonster
التقاط وتحليل الحزمجمع المعلوماتأمن الشبكاتاستخبارات التهديداتتحليل DNSتحليل السجلات
GitHubfenkohq/dnsmonster

dnsmonster

أداة لالتقاط ومراقبة DNS السلبي

عرض المستودع
3606019منذ 14 أيامتمت المراجعة من قبل Kitploit
الموقع الإلكتروني

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

Build Status Go Version Latest Version License Open Issues

نحن نستكشف حلول SaaS المدارة لـ dnsmonster! ساعد في تشكيل مستقبل مراقبة DNS السلبية من خلال مشاركة ملاحظاتك ومتطلباتك: خذ استبياننا السريع

جدول المحتويات

  • Dnsmonster
  • الميزات الرئيسية
  • التثبيت
    • لينكس
      • الحاوية
      • البناء يدويًا
      • البناء بشكل ثابت
    • ويندوز
    • فري بي إس دي وماك أو إس
  • الهندسة المعمارية
    • التثبيت الكلي باستخدام دوكر
      • العرض التوضيحي الكلي
    • النشر المؤسسي
  • التكوين
    • خيارات سطر الأوامر
    • متغيرات البيئة
    • ملف التكوين
    • ما هي سياسة الاحتفاظ
  • أخذ العينات والتخطي
    • أخذ العينات قبل المعالجة
    • تخطي النطاقات
    • النطاقات المسموح بها
    • SAMPLE في استعلامات SELECT في كليك هاوس
  • المدخلات المدعومة
  • المخرجات المدعومة
  • خريطة الطريق
  • المشاريع ذات الصلة

Dnsmonster

إطار مراقبة DNS السلبي مبني على جولانج. dnsmonster ينفذ متشمم حزم لحركة مرور DNS. يمكنه استقبال حركة المرور من ملف pcap، أو واجهة حية، أو مقبس dnstap، ويمكن استخدامه لفهرسة وتخزين مئات الآلاف من استعلامات DNS في الثانية، حيث أظهر قدرته على فهرسة أكثر من 200 ألف استعلام DNS في الثانية على جهاز تجاري. يهدف إلى أن يكون قابلًا للتوسع وبسيطًا وسهل الاستخدام، ويساعد فرق الأمن على فهم تفاصيل حركة مرور DNS في المؤسسة. dnsmonster لا يهدف إلى تتبع محادثات DNS، بل يهدف إلى فهرسة حزم DNS فور وصولها. كما لا يهدف إلى انتهاك خصوصية المستخدمين النهائيين، مع القدرة على إخفاء عناوين IP من الطبقة الثالثة (IPv4 و IPv6)، مما يتيح للفرق إجراء تحليل الاتجاهات على البيانات المجمعة دون القدرة على تتبع الاستعلامات إلى فرد معين. منشور مدونة

يعتبر الكود قبل الإصدار 1.x ذو جودة تجريبية وعرضة لتغييرات جذرية. يرجى زيارة ملاحظات الإصدار لكل علامة للاطلاع على قائمة السيناريوهات الجذرية بين كل إصدار، وكيفية تخفيف فقدان البيانات المحتمل.```mermaid graph TD subgraph Input B1["network input"] B2["pcap file"] B3["dnstap socket"] end

subgraph "Process"
    C1["Sampling based of ratio"]
    C2["Packet Process"]
    C3["Dispatcher"]
    O11["Output1"]
    O12["Domain Skip (optional)"]
    O13["Domain Allow (optional)"]
    O21["Output2"]
    O22["Domain Skip (optional)"]
    O23["Domain Allow (optional)"]
    O31["Output3"]
    O32["Domain Skip (optional)"]
    O33["Domain Allow (optional)"]
end

B1 --> Process
B2 --> Process
B3 --> Process

C1 --> C2
C2 --> C3
C3 --> O11
C3 --> O21
C3 --> O31

O11 --> O12 --> O13
O21 --> O22 --> O23
O31 --> O32 --> O33

subgraph Output
    Splunk
    Syslog
    H["ClickHouse"]
    Postgres
    Kafka
    I["JSON File"]
    Influx
    Elastic
    J["stdout"]
    Parquet
    Sentinel
end

O13 --> H
O23 --> I
O33 --> J
## الميزات الرئيسية

- إمكانية استخدام قدرة التقاط الحزم `afpacket` وzero-copy في لينكس.
- دعم لـ BPF
- إمكانية إخفاء عنوان IP لتعزيز الخصوصية
- إمكانية وجود نسبة أخذ عينات للمعالجة المسبقة
- إمكانية وجود قائمة بـ "تخطي" `fqdn`s لتجنب كتابة بعض النطاقات/اللواحق/البادئات إلى التخزين
- إمكانية وجود قائمة بنطاقات "السماح"، تُستخدم لتسجيل الوصول إلى نطاقات معينة
- إعادة تحميل فورية لملفات/عناوين تخطي وسماح النطاقات
- إخراج معياري مع منطق قابل للتكوين لكل تيار إخراج
- سياسة احتفاظ تلقائية بالبيانات باستخدام خاصية TTL في ClickHouse
- لوحة تحكم Grafana مدمجة لإخراج ClickHouse.
- إمكانية توزيع الأداة كملف ثنائي ثابت الربط
- إمكانية التهيئة باستخدام متغيرات البيئة، أو خيارات سطر الأوامر، أو ملف التهيئة
- إمكانية أخذ عينات من المخرجات باستخدام قدرة SAMPLE في ClickHouse
- إمكانية إرسال المقاييس باستخدام `prometheus` و `statstd`
- نسبة ضغط عالية بفضل تخزين LZ4 المدمج في ClickHouse
- دعم لـ DNS عبر TCP، و DNS المجزأ (udp/tcp)، و IPv6
- دعم [dnstap](https://github.com/dnstap/golang-dnstap) عبر مقبس يونكس أو TCP
- تكامل SIEM مدمج مع Splunk و Microsoft Sentinel

# التثبيت

## لينكس

أفضل طريقة لبدء استخدام `dnsmonster` هي تنزيل الملف الثنائي من قسم الإصدارات. الملف الثنائي مبني بشكل ثابت ضد `musl`، لذا يجب أن يعمل مباشرة على العديد من التوزيعات. لدعم `afpacket`، يجب استخدام نواة 3.x فأحدث. أي توزيعة لينكس حديثة (CentOS/RHEL 7+، Ubuntu 14.0.4.2+، Debian 7+) تأتي مع إصدار 3.x+ لذا يجب أن يعمل مباشرة. إذا كانت توزيعتك لا تعمل مع الإصدار المجهز مسبقًا، يرجى تقديم مشكلة مع التفاصيل، وبناء `dnsmonster` يدويًا باستخدام هذا القسم [Build Manually](#build-manually).

### الحاوية

بما أن `dnsmonster` يستخدم وظيفة التقاط الحزم الخام، يجب على خفي Docker/Podman منح الإمكانية للحاوية```
sudo docker run --rm -it --net=host --cap-add NET_RAW --cap-add NET_ADMIN --name dnsmonster ghcr.io/mosajjal/dnsmonster:latest --devName lo --stdoutOutputType=1

بناء يدويًا

  • مع libpcap: تأكد من تثبيت حزم go و libpcap-devel و linux-headers. قد يختلف اسم الحزم بناءً على توزيعتك. بعد ذلك، ببساطة انسخ المستودع وشغّل `go build ./cmd/dnsmonster````sh git clone https://github.com/mosajjal/dnsmonster --depth 1 /tmp/dnsmonster cd /tmp/dnsmonster go get go build -o dnsmonster ./cmd/dnsmonster
- بدون `libpcap`:
يستخدم `dnsmonster` وظيفة واحدة فقط من `libpcap`، وهي تحويل مرشحات نمط `tcpdump` إلى كود بايت BPF. إذا كنت تستطيع العيش بدون دعم BPF، فيمكنك بناء `dnsmonster` بدون `libpcap`. لاحظ أنه بالنسبة لأي منصة أخرى، يعود التقاط الحزم إلى `libpcap` لذا يصبح اعتمادًا صلبًا (*BSD، Windows، Darwin)```sh
git clone https://github.com/mosajjal/dnsmonster --depth 1 /tmp/dnsmonster 
cd /tmp/dnsmonster
go get
go build -o dnsmonster -tags nolibpcap ./cmd/dnsmonster

البناء أعلاه يعمل أيضًا على ARMv7 (RPi4) و AArch64.

بناء ثابت

إذا كان لديك نسخة من libpcap.a، يمكنك ربطها بشكل ثابت مع dnsmonster وبنائه بالكامل بشكل ثابت. في الكود أدناه، يرجى تغيير /root/libpcap-1.9.1/libpcap.a إلى موقع نسختك.``` git clone https://github.com/mosajjal/dnsmonster --depth 1 /tmp/dnsmonster cd /tmp/dnsmonster/ go get go build --ldflags "-L /root/libpcap-1.9.1/libpcap.a -linkmode external -extldflags "-I/usr/include/libnl3 -lnl-genl-3 -lnl-3 -static"" -a -o dnsmonster ./cmd/dnsmonster

لمزيد من المعلومات حول كيفية إنشاء الثنائي المرتبط بشكل ثابت، ألق نظرة على [هذا](https://github.com/fenkohq/dnsmonster/blob/main/Dockerfile) ملف Dockerfile.

## Windows

البناء على Windows يشبه إلى حد كبير البناء على Linux. فقط تأكد من أن لديك `npcap`. استنسخ المستودع (`--history 1` يعمل)، ثم قم بتشغيل `go get` و `go build ./cmd/dnsmonster`

كما ذكر، يعتمد إصدار Windows من الثنائي على تثبيت [npcap](https://nmap.org/npcap/#download). بعد التثبيت، يجب أن يعمل الثنائي مباشرة. تم اختباره في بيئة Windows 10 وتم تنفيذه دون مشكلة. للعثور على أسماء الواجهات لإعطاء معامل `--devName` وبدء الالتقاط، ستحتاج إلى القيام بما يلي:
تنزيل الأداة