
बहु-थ्रेडेड वेब प्राधिकरण परीक्षण उपकरण जो URL की सूची में सत्र टोकन पहुँच की जाँच करके उपयोगकर्ता विशेषाधिकारों का मूल्यांकन करता है, संभावित टूटी पहुँच नियंत्रण समस्याओं को उजागर करता है।
SessionProbe एक मल्टी-थ्रेडेड पेंटेस्टिंग टूल है जो वेब एप्लिकेशन में उपयोगकर्ता विशेषाधिकारों का मूल्यांकन करने में सहायता करता है। यह उपयोगकर्ता के सत्र टोकन को लेता है और यूआरएल की एक सूची के लिए जाँचता है कि क्या पहुँच संभव है, संभावित प्राधिकरण मुद्दों को उजागर करता है। SessionProbe URL सूचियों की डुप्लिकेट हटाता है और रीयल-टाइम लॉगिंग और प्रगति ट्रैकिंग प्रदान करता है।
SessionProbe का उद्देश्य Burp Suite के "Copy URLs in this host" फीचर के साथ Target टैब में उपयोग करना है (जो मुफ्त Community Edition में उपलब्ध है)।
नोट: आप Burp के Target टैब में filter को फ़ाइलों या इमेज को शामिल करने के लिए बदलना चाह सकते हैं। अन्यथा, ये URLs "Copy URLs in this host" द्वारा कॉपी नहीं होंगे और SessionProbe द्वारा परीक्षण नहीं किए जाएंगे।
सहायता बिल्ट-इन है!
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 फ़ाइल वर्तमान निर्देशिका में होनी चाहिए और आपकी आउटपुट फ़ाइल भी इसी निर्देशिका में होगी।--proxy विकल्प का उपयोग करना चाहते हैं तो सभी इंटरफेस पर एक Burp listener चलाना याद रखें।go run . के माध्यम से चला सकते हैं।go build के माध्यम से टूल स्वयं बना सकते हैं।docker build . -t fw10/sessionprobe के माध्यम से डॉकर इमेज स्वयं बना सकते हैं।go test या go test -v (अधिक जानकारी के लिए) चलाएँ।.css, .js) के आधार पर URLs को सॉर्ट करता है और लंबाई प्रदान करता है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 एक चेतावनी दे सकता है ("cannot be opened because it is from an unidentified developer")
Setup देखें)।यदि आपको कोई बग मिलता है, तो कृपया यहाँ GitHub पर एक Issue दर्ज करें, और मैं समय पर इसे हल करने का प्रयास करूँगा।