
CoWitness هي أداة قوية لاختبار تطبيقات الويب تعزز دقة وكفاءة جهود الاختبار الخاصة بك. تتيح لك محاكاة خادم HTTP وخادم DNS، مما يوفر استجابات كاملة ورؤى قيمة أثناء عملية الاختبار.

CoWitness هي أداة مصممة لتعمل كخادم HTTP وHTTPS وDNS. تتيح لك تقديم صفحات ويب، وتسجيل طلبات HTTP، وتخصيص استجابات DNS. يقدم هذا الملف README نظرة عامة على الميزات وتعليمات حول كيفية تجميع الأداة واستخدامها.
خادم HTTP: يتضمن CoWitness خادم HTTP يستمع على المنفذ 80. يمكنه تقديم ملفات ثابتة من مجلد العمل الحالي. يتم تسجيل كل طلب HTTP، بما في ذلك عنوان IP الخاص بالعميل والمورد المطلوب ووكيل المستخدم.
خادم HTTPS: بالإضافة إلى خادم HTTP، يوفر CoWitness أيضًا خادم HTTPS يستمع على المنفذ 443. على غرار خادم HTTP، يقدم ملفات ثابتة ويسجل كل طلب.
خادم DNS: يعمل CoWitness كخادم DNS، يستمع على المنفذ 53. يسمح لك بتخصيص استجابات DNS، بما في ذلك سجلات NS و A. يتم تسجيل طلبات DNS، بما في ذلك عنوان IP الخاص بالعميل والنطاق المطلوب.
التسجيل: يقوم CoWitness بإنشاء ملفات سجل لطلبات HTTP وDNS. يتم إلحاق السجلات بالملفات الموجودة، مما يسمح لك بتتبع وتحليل نشاط الخادم.
الوضع الصامت: يمكن تشغيل CoWitness في الوضع الصامت عن طريق تمرير الوسيطة -q في سطر الأوامر. في هذا الوضع، لن يتم عرض شعار ASCII.
قبل استخدام CoWitness، تأكد من توفر المتطلبات التالية:
اتبع هذه الخطوات لتثبيت وبناء CoWitness:
git clone https://github.com/your-username/CoWitness.git
cd CoWitness
make -f Makefile build
يقوم هذا الأمر بتجميع الكود المصدري لـ CoWitness وإنشاء ملف تنفيذي لـ amd64 و arm64.
لاستخدام CoWitness على خادم بعيد، اتبع هذه الخطوات:
اتصل بالخادم البعيد عبر SSH:
ssh username@your-server-ip
طريقة سهلة لتثبيت cowitness هي الحصول على حزمة البناء الآلي من هنا والتي يمكنك بعد ذلك استخدام curl أو wget لتحميلها إلى نظامك أو نقل الملف عبر scp من نظامك.
cowitness
يمكنك تخصيص CoWitness ليتناسب مع احتياجاتك الخاصة. فيما يلي بعض التعديلات الممكنة:
تغيير المنافذ الافتراضية: راجع تعليمات الاستخدام لمعرفة وسائط سطر الأوامر لتغيير المنافذ الافتراضية.
تعديل مسارات ملفات السجل: يمكنك تغيير مسارات ملفات سجل HTTP و DNS (http.log و dns.log) عن طريق تحديث استدعاءات os.OpenFile في الكود المصدري.
نرحب بالمساهمات والملاحظات من المجتمع. إذا واجهت أي مشكلات أو كانت لديك اقتراحات للتحسين، فيرجى فتح مشكلة أو إرسال طلب سحب على مستودع GitHub الخاص بنا!
تم إصدار CoWitness بموجب ترخيص MIT.