mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-25 14:10:41 +00:00
Translated ['network-services-pentesting/pentesting-web/werkzeug.md'] to
This commit is contained in:
parent
41bd21c9c1
commit
942c19fc94
1 changed files with 17 additions and 13 deletions
|
@ -2,21 +2,21 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
Ander maniere om HackTricks te ondersteun:
|
||||
|
||||
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
|
||||
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||||
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
|
||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
|
||||
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
|
||||
|
||||
</details>
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (14) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**Onmiddellik beskikbare opstelling vir kwetsbaarheidsevaluering & pentesting**. Voer 'n volledige pentest uit van enige plek met 20+ gereedskap & funksies wat strek vanaf rekognisering tot verslagdoening. Ons vervang nie pentesters nie - ons ontwikkel aangepaste gereedskap, opsporing & uitbuitingsmodules om hulle 'n bietjie tyd terug te gee om dieper te delf, skulpe te laat pop, en pret te hê.
|
||||
**Onmiddellik beskikbare opstelling vir kwetsbaarheidsevaluering & pentest**. Voer 'n volledige pentest uit van enige plek met 20+ gereedskap en funksies wat strek vanaf rekognisering tot verslagdoening. Ons vervang nie pentesters nie - ons ontwikkel aangepaste gereedskap, opsporing & uitbuitingsmodules om hulle 'n bietjie tyd terug te gee om dieper te delf, skulpe te laat pop, en pret te hê.
|
||||
|
||||
{% embed url="https://pentest-tools.com/" %}
|
||||
|
||||
|
@ -28,7 +28,7 @@ __import__('os').popen('whoami').read();
|
|||
```
|
||||
![](<../../.gitbook/assets/image (117).png>)
|
||||
|
||||
Daar is ook verskeie uitbuite op die internet soos [hierdie](https://github.com/its-arun/Werkzeug-Debug-RCE) of een in metasploit.
|
||||
Daar is ook verskeie uitbuitings op die internet soos [hierdie](https://github.com/its-arun/Werkzeug-Debug-RCE) of een in metasploit.
|
||||
|
||||
## Pin Beskerm - Pad Traversal
|
||||
|
||||
|
@ -42,7 +42,7 @@ The console is locked and needs to be unlocked by entering the PIN.
|
|||
You can find the PIN printed out on the standard output of your
|
||||
shell that runs the server
|
||||
```
|
||||
'n Berig rakende die "konsole gesluit" scenario word aangetref wanneer daar gepoog word om toegang tot Werkzeug se foutopsporingskoppelvlak te verkry, wat 'n vereiste vir 'n PIN aandui om die konsole te ontgrendel. Die voorstel word gemaak om die konsole PIN uit te buit deur die PIN-genereringsalgoritme in Werkzeug se foutopsporingsinitsialisasie-lêer (`__init__.py`) te analiseer. Die PIN-genereringsmeganisme kan bestudeer word vanuit die [**Werkzeug bronkode-opgaarplek**](https://github.com/pallets/werkzeug/blob/master/src/werkzeug/debug/\_\_init\_\_.py), alhoewel dit aanbeveel word om die werklike bedienerkode te bekom deur 'n lêertraversie-kwesbaarheid weens potensiële weergawe-afwykings.
|
||||
'n Berig rakende die "konsole gesluit" scenario word aangetref wanneer daar gepoog word om toegang tot Werkzeug se foutopsporingskoppelvlak te verkry, wat 'n vereiste vir 'n PIN aandui om die konsole te ontgrendel. Die voorstel word gemaak om die konsole PIN uit te buit deur die PIN-genereringsalgoritme in Werkzeug se foutopsporingsinitsialisasie lêer (`__init__.py`) te analiseer. Die PIN-genereringsmeganisme kan bestudeer word vanuit die [**Werkzeug bronkode respositorium**](https://github.com/pallets/werkzeug/blob/master/src/werkzeug/debug/\_\_init\_\_.py), alhoewel dit aanbeveel word om die werklike bedienerkode te bekom deur 'n lêertraversie kwesbaarheid weens potensiële weergaweverskille.
|
||||
|
||||
Om die konsole PIN uit te buit, word twee stelle veranderlikes, `probably_public_bits` en `private_bits`, benodig:
|
||||
|
||||
|
@ -56,8 +56,8 @@ Om die konsole PIN uit te buit, word twee stelle veranderlikes, `probably_public
|
|||
#### **`private_bits`**
|
||||
|
||||
* **`uuid.getnode()`**: Haal die MAC-adres van die huidige masjien op, met `str(uuid.getnode())` wat dit na 'n desimale formaat omskakel.
|
||||
* Om die **bediener se MAC-adres te bepaal**, moet mens die aktiewe netwerkinterface wat deur die app gebruik word identifiseer (byvoorbeeld, `ens3`). In gevalle van onsekerheid, **lek `/proc/net/arp`** om die toestel-ID te vind, en dan **ekstraheer die MAC-adres** uit **`/sys/class/net/<toestel id>/address`**.
|
||||
* Die omskakeling van 'n heksadesimale MAC-adres na desimaal kan uitgevoer word soos hieronder getoon:
|
||||
* Om die **bediener se MAC-adres te bepaal**, moet mens die aktiewe netwerkinterface wat deur die app gebruik word identifiseer (byvoorbeeld, `ens3`). In gevalle van onsekerheid, **lek `/proc/net/arp`** om die toestel-ID te vind, en haal dan die MAC-adres uit **`/sys/class/net/<toestel id>/address`**.
|
||||
* Omskakeling van 'n heksadesimale MAC-adres na desimaal kan uitgevoer word soos hieronder getoon:
|
||||
|
||||
```python
|
||||
# Voorbeeld MAC-adres: 56:00:02:7a:23:ac
|
||||
|
@ -154,7 +154,7 @@ rv = num
|
|||
|
||||
print(rv)
|
||||
```
|
||||
Hierdie skrip genereer die PIN deur die saamgevoegde bietjies te hash, spesifieke sout (`cookiesalt` en `pinsalt`) by te voeg, en die uitset te formateer. Dit is belangrik om daarop te let dat die werklike waardes vir `probably_public_bits` en `private_bits` akkuraat verkry moet word vanaf die teikensisteem om te verseker dat die gegenereerde PIN ooreenstem met die een wat deur die Werkzeug-konsole verwag word.
|
||||
Hierdie skrif genereer die PIN deur die saamgevoegde bietjies te hash, spesifieke soute by te voeg (`cookiesalt` en `pinsalt`), en die uitset te formateer. Dit is belangrik om daarop te let dat die werklike waardes vir `probably_public_bits` en `private_bits` akkuraat verkry moet word vanaf die teikensisteem om te verseker dat die gegenereerde PIN ooreenstem met dié wat deur die Werkzeug-konsole verwag word.
|
||||
|
||||
{% hint style="success" %}
|
||||
As jy op 'n **ou weergawe** van Werkzeug is, probeer om die **hashing-algoritme na md5** te verander in plaas van sha1.
|
||||
|
@ -164,7 +164,11 @@ As jy op 'n **ou weergawe** van Werkzeug is, probeer om die **hashing-algoritme
|
|||
|
||||
Soos waargeneem in [**hierdie probleem**](https://github.com/pallets/werkzeug/issues/2833), sluit Werkzeug nie 'n versoek met Unicode-karakters in koppe nie. En soos verduidelik in [**hierdie uiteensetting**](https://mizu.re/post/twisty-python), kan dit 'n CL.0-versoeksmokkelbaarheid veroorsaak.
|
||||
|
||||
Dit is omdat, in Werkzeug, is dit moontlik om sommige **Unicode**-karakters te stuur en dit sal die bediener **breek**. Maar, as die HTTP-verbindings geskep is met die kop **`Connection: keep-alive`**, sal die liggaam van die versoek nie gelees word nie en die verbindings sal nog oop wees, sodat die **liggaam** van die versoek as die **volgende HTTP-versoek** hanteer sal word.
|
||||
Dit is omdat, in Werkzeug, dit moontlik is om sekere **Unicode**-karakters te stuur en dit sal die bediener **breek**. Tog, as die HTTP-verbindings geskep is met die kop **`Connection: keep-alive`**, sal die liggaam van die versoek nie gelees word nie en die verbindings sal nog oop wees, sodat die **liggaam** van die versoek as die **volgende HTTP-versoek** hanteer sal word.
|
||||
|
||||
## Geoutomatiseerde Uitbuiting
|
||||
|
||||
{% embed url="https://github.com/Ruulian/wconsole_extractor" %}
|
||||
|
||||
## Verwysings
|
||||
|
||||
|
@ -175,7 +179,7 @@ Dit is omdat, in Werkzeug, is dit moontlik om sommige **Unicode**-karakters te s
|
|||
|
||||
<figure><img src="../../.gitbook/assets/image (14) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**Onmiddellik beskikbare opstelling vir kwesbaarheidsassessering & pentest**. Voer 'n volledige pentest uit van enige plek met 20+ gereedskap & kenmerke wat gaan van rekognisering tot verslagdoening. Ons vervang nie pentesters nie - ons ontwikkel aangepaste gereedskap, opsporing & uitbuitingsmodules om hulle 'n bietjie tyd terug te gee om dieper te delf, skulpe te laat spat, en pret te hê.
|
||||
**Onmiddellik beskikbare opstelling vir kwetsbaarheidsassessering & pentest**. Voer 'n volledige pentest uit van enige plek met 20+ gereedskap & kenmerke wat strek vanaf rekognisering tot verslagdoening. Ons vervang nie pentesters nie - ons ontwikkel aangepaste gereedskap, opsporing & uitbuitingsmodules om hulle 'n bietjie tyd te gee om dieper te delf, skulpe te laat klap, en pret te hê.
|
||||
|
||||
{% embed url="https://pentest-tools.com/" %}
|
||||
|
||||
|
@ -185,7 +189,7 @@ Dit is omdat, in Werkzeug, is dit moontlik om sommige **Unicode**-karakters te s
|
|||
|
||||
Ander maniere om HackTricks te ondersteun:
|
||||
|
||||
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
|
||||
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
|
||||
* Kry die [**amptelike PEASS & HackTricks-klere**](https://peass.creator-spring.com)
|
||||
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
|
||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
|
|
Loading…
Reference in a new issue