نستمر في الحديث عن الأدوات المفيدة ل pentester. في مقال جديد ، سننظر في أدوات لتحليل أمان تطبيقات الويب.
قام زميلنا
BeLove بالفعل بعمل
اختيار مماثل منذ حوالي سبع سنوات. من المثير للاهتمام معرفة الأدوات التي حافظت على مواقفها وعززتها ، والتي تراجعت إلى الخلفية ونادراً ما تستخدم الآن.

لاحظ أن تطبيق Burp Suite ينطبق أيضًا هنا ، ولكن سيكون هناك منشور منفصل عنه وعن مكوناته الإضافية المفيدة.
المحتويات:
جمع
تعد
Amass أداة Go لإيجاد وتعداد نطاقات DNS الفرعية وتعيين شبكة خارجية. Amass هو مشروع OWASP مصمم لإظهار كيف تبدو المؤسسات على الإنترنت كمراقب خارجي. تستقبل Amass أسماء النطاقات الفرعية بعدة طرق ؛ تستخدم الأداة كلا من التعداد المتكرر للنطاقات الفرعية والبحث المفتوح المصدر.
للكشف عن قطاعات الشبكة المترابطة وأرقام النظام المستقل ، يستخدم Amass عناوين IP التي تم الحصول عليها أثناء التشغيل. يتم استخدام جميع المعلومات الموجودة لإنشاء خريطة الشبكة.
الايجابيات:
- تشمل تقنيات جمع المعلومات:
* DNS - تعداد المجالات الفرعية في القاموس ، والنطاقات الفرعية bruteforce ، والتعداد "الذكي" باستخدام الطفرات على أساس النطاقات الفرعية التي تم العثور عليها ، واستعلامات DNS العكسية والبحث عن خوادم DNS حيث يكون من الممكن تقديم طلب نقل منطقة (AXFR) ؛
* البحث عن المصادر المفتوحة - اسأل ، بايدو ، بنج ، كومن كراول ، DNSDB ، DNSDumpster ، DNSTable ، دوغبل ، إكساليد ، FindSubdomains ، جوجل ، IPv4Info ، Netcraft ، PTRArchive ، Riddler ، SiteDossier ، ThreatCrowd ، VirusTotal ، Yahoo ؛
* قواعد بيانات البحث من شهادات TLS - Censys ، CertDB ، CertSpotter ، Crtsh ، Entrust ؛
* استخدام واجهات برمجة تطبيقات محرك البحث - BinaryEdge و BufferOver و CIRCL و HackerTarget و PassiveTotal و Robtex و SecurityTrails و Shodan و Twitter و Umbrella و URLScan ؛
* البحث في محفوظات الويب للإنترنت: ArchiveIt و ArchiveToday و Arquivo و LoCArchive و OpenUKArchive و UKGovArchive و Wayback؛ - التكامل مع Maltego.
- يوفر التغطية الأكثر اكتمالا لمهمة البحث عن نطاقات DNS الفرعية.
سلبيات:
- بمزيد من الدقة مع amass.netdomains - ستحاول الوصول إلى كل عنوان IP في البنية التحتية المحددة والحصول على أسماء النطاقات من استعلامات DNS العكسية وشهادات TLS. هذه تقنية "عالية" ؛ يمكن أن تكشف عن أفعال ذكائك في المنظمة قيد الدراسة.
- ارتفاع استهلاك الذاكرة ، يمكن أن تستهلك ما يصل إلى 2 غيغابايت من ذاكرة الوصول العشوائي في إعدادات مختلفة ، والتي لن تسمح لتشغيل هذه الأداة في السحابة على VDS رخيصة.

Altdns
Altdns هي أداة Python لإنشاء قواميس لتعداد نطاقات DNS الفرعية. يسمح لك بإنشاء العديد من أنواع النطاقات الفرعية باستخدام الطفرات والتباديل. للقيام بذلك ، نستخدم الكلمات التي غالبًا ما تكون موجودة في النطاقات الفرعية (على سبيل المثال: اختبار ، مطور ، مرحلي) ، يتم تطبيق جميع الطفرات والتباديل على النطاقات الفرعية المعروفة بالفعل والتي يمكن إدخالها إلى Altdns. الإخراج هو قائمة من الاختلافات في النطاقات الفرعية التي قد تكون موجودة ، ويمكن استخدام هذه القائمة فيما بعد باستخدام القوة الغاشمة لنظام أسماء النطاقات.
الايجابيات:
- يعمل بشكل جيد مع مجموعات البيانات الكبيرة.
aquatone
aquatone - كان معروفًا سابقًا كأداة أخرى لإيجاد نطاقات فرعية ، لكن المؤلف نفسه تخلى عن ذلك لصالح Amass المذكور آنفًا. تمت إعادة كتابة Aquatone الآن على Go وهو أكثر استهدافًا للاستكشاف الأولي لمواقع الويب. للقيام بذلك ، يمر aquatone بالمجالات المحددة ويبحث عن مواقع الويب الخاصة بهم في منافذ مختلفة ، وبعد ذلك يجمع كل المعلومات حول الموقع ويلتقط لقطة شاشة. مريحة للحصول على معلومات استخبارية أولية سريعة على مواقع الويب ، وبعد ذلك يمكنك تحديد الأهداف ذات الأولوية للهجمات.
الايجابيات:
- في الإخراج ، يقوم بإنشاء مجموعة من الملفات والمجلدات المناسبة للاستخدام عند العمل مع الأدوات الأخرى:
* تقرير HTML مع لقطات تم جمعها وتجميعها حسب رؤوس استجابة التشابه ؛
* ملف مع جميع عناوين المواقع التي تم العثور على المواقع ؛
* ملف مع الإحصاءات وبيانات الصفحة.
* مجلد مع الملفات التي تحتوي على رؤوس استجابة من الأهداف التي تم العثور عليها.
* مجلد يحتوي على ملفات تحتوي على نص الاستجابة من الأهداف التي تم العثور عليها ؛
* لقطات من المواقع وجدت. - يدعم العمل مع تقارير XML من Nmap و Masscan ؛
- يستخدم مقطوعة الرأس كروم / كروم لتقديم لقطات.
سلبيات:
- قد يجذب انتباه أنظمة كشف التسلل ، لذلك يتطلب التكوين.
تم التقاط لقطة الشاشة لإحدى الإصدارات القديمة من aquatone (v0.5.0) ، حيث تم تنفيذ البحث عن نطاقات DNS الفرعية. الإصدارات القديمة يمكن العثور عليها في
صفحة الإصدارات .
لقطة شاشة aquatone v0.5.0MassDNS
تعد
MassDNS أداة أخرى لإيجاد نطاقات DNS الفرعية. الفرق الرئيسي هو أنه يجعل استعلامات DNS مباشرة إلى العديد من محللي DNS مختلفة ويفعل ذلك بسرعة كبيرة.
الايجابيات:
- سريع - قادر على حل أكثر من 350 ألف اسم في الثانية.
سلبيات:
- يمكن أن يتسبب MassDNS في تحميل كبير على محللي DNS المستخدمين ، مما قد يؤدي إلى فرض حظر على هذه الخوادم أو تقديم شكاوى إلى مزود الخدمة. بالإضافة إلى ذلك ، سوف يتسبب ذلك في حمل كبير على خوادم DNS الخاصة بالشركة إذا كان لديهم هذه الخوادم وإذا كانت مسؤولة عن النطاقات التي تحاول حلها.
- قائمة أدوات التحليق قديمة الآن ، ومع ذلك ، إذا قمت بتحديد محللي DNS المعطّلين وأضفت لهم حلولاً جديدة ، فسيصبح كل شيء على ما يرام.

nsec3map
nsec3map هي أداة Python للحصول على قائمة كاملة بالمجالات المحمية بواسطة DNSSEC.
الايجابيات:
- يكتشف بسرعة المضيفين في مناطق DNS مع الحد الأدنى لعدد الاستعلامات إذا تم تمكين دعم DNSSEC في المنطقة ؛
- ويشمل البرنامج المساعد لجون الخارق ، والذي يمكن استخدامه للقضاء على تجزئة NSEC3 المستلمة.
سلبيات:
- لا تتم معالجة أخطاء DNS كثيرة بشكل صحيح؛
- لا يوجد موازاة تلقائية لمعالجة سجلات NSEC - عليك تقسيم مساحة الاسم يدويًا ؛
- ارتفاع استهلاك الذاكرة.
Acunetix
Acunetix هو ماسح ضوئي لضعف الويب يعمل على أتمتة عملية التحقق من أمان تطبيقات الويب. يختبر تطبيق حقن SQL و XSS و XXE و SSRF والعديد من نقاط الضعف الأخرى على الويب. ومع ذلك ، مثل أي ماسح ضوئي آخر للعديد من نقاط الضعف على الويب ، فإنه لا يحل محل المكب ، لأنه لا يمكن العثور على سلاسل معقدة من نقاط الضعف أو نقاط الضعف في المنطق. لكنه يغطي الكثير من نقاط الضعف المختلفة ، بما في ذلك CVEs المختلفة ، والتي يمكن أن ينسى المكبّر عنها ، وبالتالي فهو مناسب للغاية للإعفاء من الفحوصات الروتينية.
الايجابيات:
- ايجابيات منخفضة كاذبة
- يمكن تصدير النتائج كتقارير.
- ينفذ عددًا كبيرًا من عمليات التحقق بحثًا عن نقاط الضعف المختلفة ؛
- المسح المتوازي للمضيفين متعددة.
سلبيات:
- لا توجد خوارزمية لإلغاء البيانات المكررة (يرى Acunetix أن الصفحات هي نفسها في الوظائف لأن لديهم عناوين URL مختلفة) ، ولكن المطورين يعملون عليها ؛
- يتطلب التثبيت على خادم ويب منفصل ، مما يعقد اختبار أنظمة العميل باستخدام اتصال VPN واستخدام ماسح ضوئي في شريحة معزولة من شبكة عميل محلية ؛
- الخدمة "قيد التحقيق" قد "تحدث ضجة" ، على سبيل المثال ، ترسل الكثير من متجهات الهجوم في شكل اتصال على الموقع ، مما يعقد العمليات التجارية بشكل كبير ؛
- إنه حل مملوك ، وبالتالي ، غير حر.

Dirsearch
Dirsearch هي أداة بيثون
لأدلة القوة الغاشمة والملفات على المواقع.
الايجابيات:
- يمكن أن يميز صفحات "200 OK" الحقيقية عن صفحات "200 OK" ، ولكن مع النص "صفحة غير موجودة" ؛
- يأتي مع قاموس مفيد يحتوي على توازن جيد بين الحجم وكفاءة البحث. يحتوي على مسارات قياسية مشتركة بين العديد من أنظمة إدارة المحتوى (CMS) وأكوام التكنولوجيا ؛
- تنسيق القاموس الخاص ، والذي يسمح لك بتحقيق كفاءة ومرونة جيدة في فرز الملفات والدلائل ؛
- إخراج مريحة - نص عادي ، JSON.
- القدرة على القيام بالاختناق - توقف مؤقت بين الطلبات ، وهو أمر حيوي لأي خدمة ضعيفة.
سلبيات:
- يلزم إرسال الامتدادات كسلسلة ، وهو أمر غير مريح إذا كنت بحاجة إلى تمرير العديد من الامتدادات في وقت واحد ؛
- من أجل استخدام القاموس الخاص بك ، سوف تحتاج إلى تعديل طفيف على تنسيق قواميس Dirsearch لتحقيق أقصى قدر من الكفاءة.

wfuzz
wfuzz - بيثون fuzzer لتطبيقات الويب. ربما واحدة من phasers الويب الأكثر شهرة. المبدأ بسيط: يسمح لك wfuzz بالتدريج في أي مكان في طلب HTTP ، مما يتيح إمكانية وضع معلمات GET / POST ورؤوس HTTP ، بما في ذلك ملفات تعريف الارتباط ورؤوس المصادقة الأخرى. في الوقت نفسه ، إنه مناسب للأدلة والملفات البسيطة التي تتطلب قاموسًا جيدًا. كما أنه يحتوي على نظام تصفية مرن يمكنك من خلاله تصفية الردود من موقع ويب بمختلف المعلمات ، مما يتيح لك تحقيق نتائج فعالة.
الايجابيات:
- متعدد الوظائف - هيكل وحدات ، والتجمع يستغرق عدة دقائق.
- مريحة آلية الترشيح والاندماج.
- يمكنك إنشاء أي طريقة HTTP ، وكذلك أي مكان في طلب HTTP.
سلبيات:

ffuf
ffuf - Go fuzzer على شبكة الإنترنت ، الذي تم إنشاؤه في "صورة ومثال" wfuzz ، يسمح لك بتشفير الملفات والدلائل ومسارات عنوان URL وأسماء وقيم معلمات GET / POST ورؤوس HTTP ، بما في ذلك رأس المضيف للقوة الغاشمة للمضيفات الظاهرية. يختلف Wfuzz عن نظيره من خلال السرعة العالية وبعض الميزات الجديدة ، على سبيل المثال ، يتم دعم قواميس تنسيق Dirsearch.
الايجابيات:
- المرشحات تشبه مرشحات wfuzz ، فهي تتيح لك تكوين bruteforce بمرونة ؛
- يسمح بدمج قيم رؤوس HTTP وبيانات طلب POST وأجزاء مختلفة من عنوان URL ، بما في ذلك أسماء وقيم معلمات GET ؛
- يمكنك تحديد أي طريقة HTTP.
سلبيات:

gobuster
gobuster - أداة على الذهاب للاستطلاع ، وضعين التشغيل. يتم استخدام الأول لفرض الملفات والأدلة على موقع الويب ، والثاني - للتكرار من خلال نطاقات DNS الفرعية. لا تدعم الأداة مبدئيًا التعداد المتكرر للملفات والدلائل ، مما يوفر ، بالطبع ، الوقت ، ولكن من ناحية أخرى ، يجب تشغيل وحشية كل نقطة نهاية جديدة على الموقع بشكل منفصل.
الايجابيات:
- سرعة عالية للعمل على حد سواء لتعداد نطاقات DNS الفرعية ، وللملفات والقوة الغاشمة.
سلبيات:
- الإصدار الحالي لا يدعم تثبيت رؤوس HTTP ؛
- افتراضيًا ، تعتبر بعض رموز حالة HTTP فقط صالحة (200،204،301،302،307).

أرجون
Arjun هو أداة ل bruteforce من المعلمات HTTP المخفية في GET / POST المعلمات ، وكذلك في JSON. يحتوي القاموس المضمن على 25،980 كلمة يتحقق عليها Ajrun في حوالي 30 ثانية. الحيلة هي أن Ajrun لا يتحقق من كل معلمة على حدة ، لكنه يتحقق على الفور ~ 1000 معلمات في وقت واحد ويتطلع لمعرفة ما إذا كان الجواب قد تغير. إذا تم تغيير الإجابة ، فقم بتقسيم 1000 معلمة على جزأين وتحقق من هذه الأجزاء التي تؤثر على الإجابة. وبالتالي ، باستخدام بحث ثنائي بسيط ، يمكنك العثور على معلمة أو عدة معلمات مخفية أثرت في الإجابة ، وبالتالي ، يمكن أن توجد.
الايجابيات:
- سرعة عالية بسبب البحث الثنائي ؛
- دعم المعلمات GET / POST ، وكذلك المعلمات في شكل JSON ؛
البرنامج المساعد لـ Burp Suite ،
param-miner ، والذي يعد جيدًا أيضًا في العثور على معلمات HTTP المخفية ، يعمل وفقًا لمبدأ مماثل. سنخبرك المزيد حول هذا الموضوع في مقالة قادمة حول Burp ومكوناته الإضافية.

LinkFinder
LinkFinder هو برنامج نصي Python للعثور على روابط في ملفات JavaScript. مفيد للعثور على نقاط نهاية / عناوين URL مخفية أو منسية في تطبيق ويب.
الايجابيات:
- السريعة؛
- هناك مكون إضافي خاص بـ Chrome استنادًا إلى LinkFinder.
.
سلبيات:
- الاستنتاج النهائي غير مريح.
- لا تحليل جافا سكريبت في ديناميات.
- إنه لمنطق بسيط تمامًا للعثور على الروابط - إذا كانت جافا سكريبت غامضة بأي شكل من الأشكال ، أو إذا كانت الروابط مفقودة في البداية وتم إنشاؤها ديناميكيًا ، فلن تتمكن من العثور على أي شيء.

JSParser
JSParser هو برنامج نصي Python يستخدم
Tornado و
JSBeautifier لتحليل عناوين URL النسبية من ملفات JavaScript. مفيد جدًا للكشف عن طلبات AJAX وتجميع قائمة بأساليب API التي يتفاعل معها التطبيق. يقترن بشكل فعال مع LinkFinder.
الايجابيات:
- تحليل سريع لملفات جافا سكريبت.

sqlmap
تعد
sqlmap واحدة من أشهر الأدوات لتحليل تطبيقات الويب. تقوم Sqlmap بأتمتة عملية البحث عن عمليات حقن SQL وتشغيلها ، وهي تعمل مع العديد من لهجات SQL ، في ترسانتها عددًا كبيرًا من التقنيات المختلفة ، بدءًا من علامة اقتباس "في الجبهة" وتنتهي باستخدام متجهات معقدة لحقن SQL المستند إلى الوقت. بالإضافة إلى ذلك ، فإنه يحتوي على العديد من تقنيات الاستغلال للعديد من قواعد إدارة قواعد البيانات (DBMSs) ، وبالتالي فهو مفيد ليس فقط كماسح ضوئي لحقن SQL ، ولكن أيضًا كأداة قوية لاستغلال حقن SQL الموجود بالفعل.
الايجابيات:
- عدد كبير من التقنيات المختلفة والمتجهات ؛
- عدد قليل من ايجابيات كاذبة.
- العديد من إمكانيات الضبط ، التقنيات المختلفة ، قاعدة البيانات الهدف ، البرامج النصية للعبث لتجاوز WAF ؛
- القدرة على تفريغ بيانات الإخراج ؛
- هناك العديد من خيارات التشغيل المختلفة ، على سبيل المثال ، بالنسبة لبعض قواعد البيانات - التحميل / التنزيل التلقائي للملفات ، والحصول على القدرة على تنفيذ الأوامر (RCE) وغيرها ؛
- دعم الاتصال المباشر بقاعدة البيانات باستخدام البيانات التي تم الحصول عليها أثناء الهجوم ؛
- يمكنك إرسال ملف نصي مع نتائج التجشؤ إلى الإدخال - لا حاجة لتكوين جميع سمات سطر الأوامر يدويًا.
سلبيات:
- من الصعب تخصيص ، على سبيل المثال ، لكتابة بعض الشيكات الخاصة بك بسبب الوثائق النادرة لهذا ؛
- بدون الإعدادات المناسبة ، ينفذ مجموعة غير كاملة من الفحوصات ، والتي يمكن أن تكون مضللة.

NoSQLMap
NoSQLMap هي أداة بيثون لأتمتة البحث والتشغيل لحقن NoSQL. إنه مناسب للاستخدام ليس فقط في قواعد بيانات NoSQL ، ولكن أيضًا بشكل مباشر عند تدقيق تطبيقات الويب باستخدام NoSQL.
الايجابيات:
- مثل sqlmap ، فإنه لا يجد نقاط ضعف محتملة فقط ، ولكنه يتحقق أيضًا من إمكانية استغلالها لـ MongoDB و CouchDB.
سلبيات:
- لا يدعم NoSQL لـ Redis ، كاساندرا ، التطوير مستمر في هذا الاتجاه.
oxml_xxe
oxml_xxe هي أداة لتضمين XXE XML يستغلها في أنواع مختلفة من الملفات التي تستخدم تنسيق XML في بعض النماذج.
الايجابيات:
- يدعم العديد من التنسيقات الشائعة ، مثل DOCX و ODT و SVG و XML.
سلبيات:
- لم يتم التنفيذ بالكامل لدعم PDF و JPEG و GIF ؛
- يخلق ملف واحد فقط. لحل هذه المشكلة ، يمكنك استخدام أداة docem ، والتي يمكنها إنشاء عدد كبير من ملفات البيانات الفعلية في أماكن مختلفة.
تقوم الأدوات المساعدة أعلاه بعمل رائع في اختبار XXE عند تحميل المستندات التي تحتوي على XML. لكن لا تنسَ أيضًا أنه يمكن العثور على معالجات تنسيق XML في العديد من الحالات الأخرى ، على سبيل المثال ، يمكن استخدام XML كتنسيق بيانات بدلاً من JSON.
لذلك ، نوصي بأن تنتبه إلى المستودع التالي ، والذي يحتوي على عدد كبير من الحمولات المختلفة:
PayloadsAllTheThings .
tplmap
tplmap هي أداة Python للكشف عن الثغرات الموجودة في Server-Side Template Injection واستغلالها تلقائيًا ؛ وتحتوي على إعدادات وعلامات مشابهة لـ sqlmap. يستخدم العديد من التقنيات والناقلات المختلفة ، بما في ذلك الحقن العمياء ، ولديه أيضًا تقنيات لتنفيذ التعليمات البرمجية وتحميل / تفريغ الملفات التعسفية. بالإضافة إلى ذلك ، يحتوي على تقنيات ترسانة لـ 12 محركًا مختلفًا للقوالب وبعض التقنيات لإيجاد eval () - حقن تشفير مماثل في Python و Ruby و PHP و JavaScript. في حالة التشغيل الناجح ، يفتح وحدة تحكم تفاعلية.
الايجابيات:
- عدد كبير من التقنيات المختلفة والمتجهات ؛
- يدعم العديد من المحركات لتقديم القوالب ؛
- العديد من تقنيات التشغيل.
CeWL
CeWL هو منشئ قاموس روبي ، مصمم لاستخراج كلمات فريدة من موقع محدد ، يتبع روابط على موقع إلى عمق محدد. يمكن فيما بعد استخدام قاموس مترجم يحتوي على كلمات فريدة لفرض كلمات المرور الغاشمة على الخدمات أو الملفات والأدلة ذات القوة الغاشمة على نفس الموقع ، أو لمهاجمة التجزئة المستلمة باستخدام hashcat أو John the Ripper. مفيد عند تجميع قائمة "مستهدفة" بكلمات المرور المحتملة.
الايجابيات:
سلبيات:
- يجب أن تكون حذراً فيما يتعلق بعمق البحث حتى لا تلتقط نطاقًا إضافيًا.
Weakpass
Weakpass هي خدمة تحتوي على العديد من القواميس بكلمات مرور فريدة. إنه مفيد للغاية لمختلف المهام المتعلقة باختراق كلمات المرور ، بدءًا من حساب القوة الغاشمة البسيطة عبر الإنترنت على الخدمات المستهدفة ، وينتهي
بتجميع القوة الغاشمة التي تم تلقيها
بلا اتصال باستخدام
hashcat أو
John The Ripper . يتكون من حوالي 8 مليارات كلمة مرور بطول 4 إلى 25 حرفًا.
الايجابيات:
- أنه يحتوي على قواميس وقواميس محددة مع كلمات المرور الأكثر شيوعا - يمكنك اختيار قاموس معين لاحتياجاتك الخاصة ؛
- يتم تحديث القواميس وتحديثها بكلمات مرور جديدة.
- يتم فرز القواميس حسب الأداء. يمكنك اختيار خيار لكل من القوة الغاشمة السريعة عبر الإنترنت ، وللاختيار الدقيق لكلمات المرور من قاموس ضخم مع أحدث التسريبات ؛
- هناك آلة حاسبة تظهر كلمة المرور الغاشمة في الوقت على المعدات الخاصة بك.

في مجموعة منفصلة ، نود أن نضع أدوات لفحص CMS: WPScan ، JoomScan و AEM hacker.
AEM_hacker
AEM hacker هو أداة لتحديد نقاط الضعف في تطبيقات Adobe Experience Manager (AEM).
الايجابيات:
- يمكنه تحديد تطبيقات AEM من قائمة عناوين URL المقدمة إليه عند الإدخال ؛
- أنه يحتوي على برامج نصية للحصول على RCE عن طريق تحميل shell JSP أو تشغيل SSRF.
JoomScan
JoomScan هي أداة بيرل لأتمتة الكشف عن الثغرات الأمنية عند نشر Joomla CMS.
الايجابيات:
- قادرة على العثور على عيوب التكوين والمشاكل مع إعدادات المسؤول.
- يعدّد إصدارات جملة ونقاط الضعف ذات الصلة ، بالمثل للمكونات الفردية ؛
- يحتوي على أكثر من 1000 عملية استغلال لمكونات جملة.
- HTML-.

WPScan
WPScan — WordPress, WordPress, .
الايجابيات:
- WordPress- , TimThumb-;
- - WordPress-.
:

: - , , , . , - — !