
أداة اختبار تفويض ويب متعددة الخيوط تقيّم صلاحيات المستخدم من خلال التحقق من وصول رمز الجلسة عبر قائمة من عناوين URL، مع إبراز مشاكل التحكم في الوصول المكسورة المحتملة.
SessionProbe هي أداة اختراق متعددة الخيوط مصممة للمساعدة في تقييم صلاحيات المستخدم في تطبيقات الويب. تأخذ رمز جلسة المستخدم وتتحقق من قائمة عناوين URL لمعرفة إمكانية الوصول، مع إبراز مشكلات التفويض المحتملة. تقوم SessionProbe بإزالة عناوين URL المكررة وتوفر تسجيلًا في الوقت الفعلي وتتبع التقدم.
يُقصد استخدام SessionProbe مع وظيفة 'Copy URLs in this host' الخاصة بـ Burp Suite في علامة التبويب Target (المتوفرة في Community Edition المجانية).
ملاحظة: قد ترغب في تغيير filter في علامة التبويب في لتضمين الملفات أو الصور. وإلا، فلن يتم نسخ هذه بواسطة "Copy URLs in this host" ولن يتم اختبارها بواسطة .
TargetBurpURLsSessionProbeالمساعدة مدمجة!
sessionprobe --help - يعرض المساعدة.Usage:
sessionprobe [flags]
Flags:
-u, --urls string file containing the URLs to be checked (required)
-H, --headers string HTTP headers to be used in the requests in the format "Key1:Value1;Key2:Value2;..."
-h, --help help for sessionprobe
--ignore-css ignore URLs ending with .css (default true)
--ignore-js ignore URLs ending with .js (default true)
-o, --out string output file (default "output.txt")
-p, --proxy string proxy URL (default: "")
-r, --filter-regex string exclude HTTP responses using a regex. Responses whose body matches this regex will not be part of the output.
-l, --filter-lengths string exclude HTTP responses by body length. You can specify lengths separated by commas (e.g., "123,456,789").
--skip-verification skip verification of SSL certificates (default false)
-t, --threads int number of threads (default 10)
--check-all Check POST, DELETE, PUT & PATCH methods (default false)
--check-delete Check DELETE method (default false)
--check-patch Check PATCH method (default false)
--check-post Check POST method (default false)
--check-put Check PUT method (default false)
Examples:
./sessionprobe -u ./urls.txt
./sessionprobe -u ./urls.txt --out ./unauthenticated-test.txt --threads 15
./sessionprobe -u ./urls.txt -H "Cookie: .AspNetCore.Cookies=<cookie>" -o ./output.txt
./sessionprobe -u ./urls.txt -H "Authorization: Bearer <token>" --proxy http://localhost:8080
./sessionprobe -u ./urls.txt -r "Page Not Found"
./sessionprobe -u ./urls.txt -H "Cookie: .AspNetCore.Cookies=<cookie>;Cookie: <another-cookie>=<another_value>"
URLs الخاص بك.docker run -it --rm -v "$(pwd):/app/files" --name sessionprobe fw10/sessionprobe [flags]
URLs الخاص بك يجب أن يكون في الدليل الحالي وأن ملف الإخراج سيكون أيضًا في هذا الدليل.Burp على جميع الواجهات إذا كنت ترغب في استخدام خيار --proxygo run .go builddocker build . -t fw10/sessionprobego test أو go test -v (لمزيد من التفاصيل).css و .js)، وتوفير الطولBurp على سبيل المثالResponses with Status Code: 200
https://example.com/<some-path> => Length: 12345
https://example.com/<some-path> => Length: 40
...
Responses with Status Code: 301
https://example.com/<some-path> => Length: 890
https://example.com/<some-path> => Length: 434
...
Responses with Status Code: 302
https://example.com/<some-path> => Length: 0
...
Responses with Status Code: 404
...
Responses with Status Code: 502
...
Releases على بعض الملفات الثنائية المترجمة مسبقًا لك حتى لا تضطر إلى بناء الأداة بنفسكلإصدارات Mac، قد يظهر تحذير في جهاز Mac الخاص بك ("لا يمكن فتحه لأنه من مطور غير معروف")
الإعداد)إذا وجدت خطأ، فيرجى تقديم Issue هنا في GitHub، وسأحاول حله في الوقت المناسب.