Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
API-dnsdumpster.com — عميل Python لموقع dnsdumpster.com لاسترجاع سجلات DNS والنطاقات الفرعية وخرائط الشبكة لأغراض الاستطلاع والبحث الأمني. | Kitploit
أدوات/GitHubGitHub/paulsec/api-dnsdumpster.com
الاستخبارات مفتوحة المصدر (OSINT)الاستطلاعجمع المعلوماتأمن الشبكاتاختبار الاختراقتعداد النطاقات الفرعيةتحليل DNS
GitHubpaulsec/api-dnsdumpster.com

API-dnsdumpster.com

عميل Python لموقع dnsdumpster.com لاسترجاع سجلات DNS والنطاقات الفرعية وخرائط الشبكة لأغراض الاستطلاع والبحث الأمني.

عرض المستودع
283867منذ 5 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

واجهة برمجة تطبيقات DNSDumpster (غير رسمية)

Tests PyPI version Python Versions License

⚠️ إخلاء مسؤولية مهم: هذه غلاف غير رسمي لواجهة برمجة تطبيقات dnsdumpster.com يقوم بجمع البيانات من الموقع العام.

يقدم DNSDumpster.com خطة واجهة برمجة تطبيقات رسمية للاستخدام التجاري والثقيل. إذا كنت بحاجة إلى وصول موثوق ومناسب للإنتاج، يرجى النظر في واجهتهم الرسمية: https://dnsdumpster.com/

يجب استخدام هذا الغلاف غير الرسمي بمسؤولية ووفقًا لشروط خدمة DNSDumpster.

نظرة عامة

مكتبة عميل بلغة Python للتفاعل مع dnsdumpster.com لاسترجاع سجلات DNS ومعلومات النطاقات الفرعية. هذه الأداة مفيدة لباحثي الأمن، ومختبري الاختراق، ومسؤولي الشبكات لأغراض الاستطلاع.

الميزات

  • 🔍 استرجاع سجلات A و MX و NS و TXT لنطاق معين
  • 🌐 استخراج معلومات النطاقات الفرعية
  • 🗺️ تنزيل صور خرائط الشبكة
  • 📊 تصدير النتائج إلى تنسيق Excel
  • 🎯 واجهة برمجة نظيفة مع تلميحات الأنواع
  • ✅ تغطية اختبارات شاملة
  • 📝 توافق كامل مع الإصدارات السابقة

التثبيت

من PyPI (موصى به)

root@kitploit:~
pip install dnsdumpster

من GitHub

root@kitploit:~
pip install git+https://github.com/PaulSec/API-dnsdumpster.com.git

من المصدر (التطوير)

root@kitploit:~
# استنساخ المستودع
git clone https://github.com/PaulSec/API-dnsdumpster.com
cd API-dnsdumpster.com

# التثبيت في وضع التطوير
pip install -e .

# تثبيت تبعيات التطوير
pip install -r requirements-dev.txt

بدء سريع

root@kitploit:~
from dnsdumpster.DNSDumpsterAPI import DNSDumpsterAPI

# تهيئة الواجهة
api = DNSDumpsterAPI(verbose=True)

# البحث عن نطاق
results = api.search('example.com')

# الوصول إلى النتائج
print(f"Domain: {results['domain']}")
print(f"DNS Records: {results['dns_records']['dns']}")
print(f"MX Records: {results['dns_records']['mx']}")
print(f"NS Records: {results['dns_records']['ns']}")
print(f"TXT Records: {results['dns_records']['txt']}")

أمثلة الاستخدام

بحث أساسي عن نطاق

root@kitploit:~
from dnsdumpster.DNSDumpsterAPI import DNSDumpsterAPI

api = DNSDumpsterAPI()
results = api.search('microsoft.com')

# طباعة جميع سجلات A (النطاقات الفرعية)
for record in results['dns_records']['dns']:
    print(f"{record['host']} - {record['ip']} - {record['country']}")

حفظ صورة خريطة الشبكة

root@kitploit:~
import base64

results = api.search('example.com')

if results['image_data']:
    with open('network_map.png', 'wb') as f:
        f.write(base64.b64decode(results['image_data']))
    print(f"Network map saved! URL: {results['image_url']}")

التصدير إلى Excel

root@kitploit:~
import base64

results = api.search('example.com')

if results['xls_data']:
    with open('results.xlsx', 'wb') as f:
        f.write(base64.b64decode(results['xls_data']))
    print("Excel file saved!")

استخدام جلسة مخصصة

root@kitploit:~
import requests
from dnsdumpster.DNSDumpsterAPI import DNSDumpsterAPI

# إنشاء جلسة مخصصة مع وكيل
session = requests.Session()
session.proxies = {
    'http': 'http://proxy.example.com:8080',
    'https': 'https://proxy.example.com:8080',
}

api = DNSDumpsterAPI(session=session)
results = api.search('example.com')

معالجة الأخطاء

root@kitploit:~
from dnsdumpster.DNSDumpsterAPI import (
    DNSDumpsterAPI,
    DNSDumpsterAPIError,
    DNSDumpsterRequestError,
    DNSDumpsterParseError
)

api = DNSDumpsterAPI()

try:
    results = api.search('example.com')
except DNSDumpsterRequestError as e:
    print(f"Network error: {e}")
except DNSDumpsterParseError as e:
    print(f"Parsing error: {e}")
except DNSDumpsterAPIError as e:
    print(f"API error: {e}")

بنية استجابة الواجهة

تقوم طريقة search() بإرجاع قاموس بالبنية التالية:

root@kitploit:~
{
    'domain': 'example.com',
    'dns_records': {
        'dns': [  # سجلات A (النطاقات الفرعية)
            {
                'host': 'subdomain.example.com',
                'ip': '192.0.2.1',
                'reverse_dns': 'reverse.dns.com',
                'asn': 'ASN:12345',
                'asn_name': 'Provider Name',
                'country': 'United States',
                'subnet': '192.0.2.0/24',
                'open_services': '80, 443',
                # مفاتيح التوافق مع الإصدارات السابقة:
                'domain': 'subdomain.example.com',
                'as': 'ASN:12345',
                'provider': 'Provider Name'
            }
        ],
        'mx': [  # سجلات MX
            {
                'priority': '10',
                'server': 'mail.example.com',
                'ip': '198.51.100.1',
                'reverse_dns': 'mail.reverse.com',
                'asn': 'ASN:23456',
                'asn_name': 'Mail Provider',
                'country': 'Germany',
                'subnet': '198.51.100.0/24'
            }
        ],
        'ns': [  # سجلات NS
            {
                'nameserver': 'ns1.example.com',
                'ip': '203.0.113.1',
                'reverse_dns': 'ns1.reverse.com',
                'asn': 'ASN:34567',
                'asn_name': 'DNS Provider',
                'country': 'United Kingdom',
                'subnet': '203.0.113.0/24'
            }
        ],
        'txt': [  # سجلات TXT
            'v=spf1 include:_spf.example.com ~all',
            'google-site-verification=abcdef123456'
        ],
        'host': []  # اسم مستعار لسجلات NS (توافق مع الإصدارات السابقة)
    },
    'image_data': b'base64_encoded_image_bytes',  # أو None
    'image_url': 'https://dnsdumpster.com/static/map/example.com.png',
    'xls_data': b'base64_encoded_excel_bytes',  # أو None
    'xls_url': 'https://dnsdumpster.com/static/xlsx/example-uuid.xlsx'
}

التطوير

إعداد بيئة التطوير

root@kitploit:~
# استنساخ المستودع
git clone https://github.com/PaulSec/API-dnsdumpster.com
cd API-dnsdumpster.com

# إنشاء بيئة افتراضية
python -m venv venv
source venv/bin/activate  # على Windows: venv\Scripts\activate

# تثبيت التبعيات
pip install -r requirements.txt
pip install -r requirements-dev.txt

# تثبيت خطافات ما قبل الالتزام (اختياري)
pip install pre-commit
pre-commit install

تشغيل الاختبارات

root@kitploit:~
# تشغيل جميع الاختبارات
pytest

# التشغيل مع تغطية
pytest --cov=dnsdumpster --cov-report=html

# تشغيل ملف اختبار محدد
pytest tests/test_parsing.py

# التشغيل مع إخراج مفصّل
pytest -v

# تشغيل اختبار محدد
pytest tests/test_parsing.py::TestRetrieveResults::test_retrieve_results_basic

جودة الكود

root@kitploit:~
# تنسيق الكود باستخدام black
black dnsdumpster/ tests/

# ترتيب الاستيرادات
isort dnsdumpster/ tests/

# الفحص باستخدام flake8
flake8 dnsdumpster/ tests/

# فحص الأنواع باستخدام mypy
mypy dnsdumpster/

# تشغيل جميع فحوصات الجودة
black dnsdumpster/ tests/ && isort dnsdumpster/ tests/ && flake8 dnsdumpster/ tests/ && mypy dnsdumpster/

بنية المشروع

root@kitploit:~
API-dnsdumpster.com/
├── dnsdumpster/              # الحزمة الرئيسية
│   ├── __init__.py
│   ├── DNSDumpsterAPI.py    # فئة الواجهة الرئيسية
│   ├── API_example.py       # مثال الاستخدام
│   └── requirements.txt
├── tests/                    # مجموعة الاختبارات
│   ├── __init__.py
│   ├── conftest.py          # أدوات pytest
│   ├── test_parsing.py      # اختبارات الوحدة
│   └── test_integration.py  # اختبارات التكامل
├── .github/
│   └── workflows/           # سير عمل CI/CD
│       ├── tests.yml
│       └── publish.yml
├── requirements.txt         # تبعيات الإنتاج
├── requirements-dev.txt     # تبعيات التطوير
├── setup.py                 # إعداد الحزمة
├── README.md
└── LICENSE

المساهمة

نرحب بالمساهمات! إليك كيف يمكنك المساعدة:

الإبلاغ عن المشكلات

  • استخدم GitHub Issues للإبلاغ عن الأخطاء
  • قم بتضمين إصدار Python ونظام التشغيل ورسائل الخطأ
  • قدم أمثلة قابلة للتكرار بأقل قدر ممكن

تقديم طلبات السحب

  1. قم بعمل Fork للمستودع
  2. أنشئ فرع ميزة (git checkout -b feature/amazing-feature)
  3. قم بإجراء تغييراتك
  4. أضف اختبارات للوظائف الجديدة
  5. تأكد من نجاح جميع الاختبارات (pytest)
  6. قم بتشغيل فحوصات جودة الكود (black, flake8, mypy)
  7. قم بإنشاء التزام (git commit -m 'Add amazing feature')
  8. ادفع إلى الفرع (git push origin feature/amazing-feature)
  9. افتح طلب سحب

إرشادات البرمجة

  • اتبع دليل نمط PEP 8
  • أضف تلميحات الأنواع لجميع الدوال
  • اكتب docstrings للطرق العامة
  • حافظ على التوافق مع الإصدارات السابقة
  • حافظ على تغطية الاختبارات فوق 80%
  • قم بتحديث الوثائق للميزات الجديدة

تعليمات الاختبار

اختبارات الوحدة

اختبار طرق التحليل الفردية دون استدعاءات الشبكة:

root@kitploit:~
pytest tests/test_parsing.py -v

اختبارات التكامل

اختبار سير عمل الواجهة الكامل مع استجابات HTTP محاكاة:

root@kitploit:~
pytest tests/test_integration.py -v

تقرير التغطية

root@kitploit:~
pytest --cov=dnsdumpster --cov-report=term-missing

CI/CD

يستخدم المشروع GitHub Actions من أجل:

  • الاختبار: يعمل على كل push و PR عبر Python 3.8, 3.9, 3.10, 3.11, 3.12
  • الفحص: فحوصات جودة الكود باستخدام flake8 و mypy
  • النشر: نشر تلقائي على PyPI عند الإصدارات الموسومة

الترخيص

هذا المشروع مرخص بموجب رخصة MIT - راجع ملف LICENSE للتفاصيل.

إخلاء المسؤولية

هذه أداة غير رسمية وليست تابعة أو معتمدة من dnsdumpster.com. استخدمها بمسؤولية ووفقًا لشروط خدمة الموقع المستهدف و robots.txt. المؤلفون غير مسؤولين عن سوء استخدام هذه الأداة.

الدعم

  • 📧 للأخطاء وطلبات الميزات، استخدم GitHub Issues
  • 💬 للأسئلة العامة، ابدأ نقاش GitHub
  • 🐦 تابع المؤلف على تويتر: @PaulWebSec

سجل التغييرات

الإصدار 0.10 (الحالي)

  • إعادة هيكلة كاملة للكود مع تلميحات الأنواع
  • تحسين معالجة الأخطاء مع استثناءات مخصصة
  • مجموعة اختبارات شاملة باستخدام pytest
  • وثائق وأمثلة أفضل
  • CI/CD باستخدام GitHub Actions
  • الحفاظ على التوافق الكامل مع الإصدارات السابقة

الإصدارات السابقة

راجع CHANGELOG.md لتاريخ الإصدارات الكامل.

الشكر والتقدير

  • المؤلف الأصلي: PaulSec
  • المساهمون: راجع CONTRIBUTORS.md
  • DNSDumpster.com لتوفير الخدمة
تنزيل الأداة