شرح أداة htcap لفحص المواقع من الثغرات الخطيرة

0
فحص المواقع من الثغرات الخطيرة htcap sql injection get post ajax xss

htcap هو أداة فحص تطبيقات الويب  قادر على الزحف  Crawl إلى single page application  صفحة تطبيق واحدة  (SPA) بطريقة تعاودية recursive عن طريق اعتراض intercepting ajax calls and DOM changes.
لا يمثل Htcap مجرد أداة فحص للثغرات الأمنية نظرًا لأنه يركز على عملية الزحف ويهدف إلى اكتشاف واعتراض مكالمات ajax / fetch و websockets و jsonp ecc.
ويستخدم htcap مجموعة من الأدوات الخارجية الخاصة به لاكتشاف نقاط الضعف ، وقد تم تصميمه ليكون أداة لاختبار الاختراق اليدوي والآلي لتطبيقات الويب الحديثة.
كما أنه يتميز بإطار صغير ولكنه قوي ليطور بشكل سريع أنواع fuzzers المخصصة مع أقل من 60 سطرًا من لغة البرمجة بايثون.
يمكن أن يعمل fuzzers الذي تم تطويره  مع بيانات GET / POST ، وحمولات XML و JSON والتبديل بين POST و GET.
تنقسم عملية الفحص إلى جزأين ، حيث تقوم htcap أولاً بالزحف إلى الهدف وتجمع أكبر عدد ممكن من الطلبات (عناوين url ، والنماذج ، و ajax ecc ..) وتقوم بحفظها في قاعدة بيانات SQL. عند الانتهاء من عملية الزحف ، من الممكن إطلاق العديد من عمليات الفحص الأمنية ضد الطلبات المحفوظة وحفظ نتائج الفحص إلى نفس قاعدة البيانات. عندما يتم ملء قاعدة البيانات (على الأقل مع بيانات الزحف) ، فمن الممكن استكشافها باستخدام أدوات جاهزة مثل sqlite3 أو DBEaver أو تصدير النتائج بتنسيقات مختلفة باستخدام الأدوات المساعدة المدمجة.

طريقة تثبيت اداة فحص المواقع من الثغرات HTCAP


كما ذكرت في المقدمة, هذه الاداة مبنية على عدة أدوات قوية أخرى, لذك يجب تثبيتهم أولا

المتطلبات Requirements

  1. البايثون Python 2.7
  2. Nodejs and npm
  3. اداة Sqlmap 
  4. أداة Arachni


أوامر تحميل وتشغيل الاداة


git clone https://github.com/fcavallarin/htcap.git htcap
python htcap/htcap.py

قبل فحص موقع يجب عليك أولا تحميل/زحف Crawl ليتم تحميله في قاعدة بيانات, ومن ثم ستتمكن من فحصه في اي وقت وبدوان اتصال انترنت. مثال:

htcap/htcap.py crawl www.target.com target.db

الان سنتعامل مع قاعدة البيانات target.db على أساس أنها هي الموقع الهدف

  • امر فحص بواسطة lsjax

htcap/htcap.py util lsajax target.db
بواسطة هذا الامر سنتمكن من فحص الطلبات وتطبيق عملية الكشف عن الثغرات بواسطة الفازر fuzz requests


  • الامر التالي هو فحص ثغرات Sqli بالموقع الهدف بواسطة sqlmap مع استعمال خاصية تعدد الخيوط Multi Threadings وهي خاصية تمكنك من اجراء عدة فحوصات (n 10) في نفس اللحظة.


htcap/htcap.py scan -r xhr -n 10 sqlmap target.db


  • أمر الفحص  lsvuln (موديل أخر لفحص الثغرات)

htcap/htcap.py util lsvuln target.db


  • الفحص بـ sqlmap بطريقة native

htcap/htcap.py crawl https://htcap.org htcap.db \; scan native \; scan sqlmap


  • جلب المعلومات من الهدف مثل طلبات ajax calls or websockets واي منها تحتوي على نقط الضعف

htcap/htcap.py util report target.db target.html
لمزيد من المعلومات حول الاداة