mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
56 lines
4.8 KiB
Markdown
56 lines
4.8 KiB
Markdown
# Web API Pentesting
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
## API Pentesting Metodologie Opsomming
|
|
|
|
Pentesting APIs behels 'n gestruktureerde benadering om kwesbaarhede te ontdek. Hierdie gids sluit 'n omvattende metodologie in, met die klem op praktiese tegnieke en gereedskap.
|
|
|
|
### **Begrip van API Tipes**
|
|
|
|
- **SOAP/XML Web Dienste**: Gebruik die WSDL-formaat vir dokumentasie, wat tipies by `?wsdl` padhulpmiddels gevind word. Gereedskap soos **SOAPUI** en **WSDLer** (Burp Suite Extension) is instrumenteel vir die ontleding en generering van versoeke. Voorbeeld dokumentasie is beskikbaar by [DNE Online](http://www.dneonline.com/calculator.asmx).
|
|
- **REST APIs (JSON)**: Dokumentasie kom dikwels in WADL-lêers, maar gereedskap soos [Swagger UI](https://swagger.io/tools/swagger-ui/) bied 'n meer gebruikersvriendelike koppelvlak vir interaksie. **Postman** is 'n waardevolle hulpmiddel vir die skep en bestuur van voorbeeld versoeke.
|
|
- **GraphQL**: 'n Vra taal vir APIs wat 'n volledige en verstaanbare beskrywing van die data in jou API bied.
|
|
|
|
### **Praktyk Laboratoriums**
|
|
|
|
- [**VAmPI**](https://github.com/erev0s/VAmPI): 'n Opsetlik kwesbare API vir praktiese oefening, wat die OWASP top 10 API kwesbaarhede dek.
|
|
|
|
### **Doeltreffende Truuks vir API Pentesting**
|
|
|
|
- **SOAP/XML Kwesbaarhede**: Verken XXE kwesbaarhede, alhoewel DTD-verklarings dikwels beperk is. CDATA-tags mag payload-invoeging toelaat as die XML geldig bly.
|
|
- **Privilegie Eskalasie**: Toets eindpunte met verskillende priviligie vlakke om ongeoorloofde toegang moontlikhede te identifiseer.
|
|
- **CORS Misconfigurasies**: Ondersoek CORS-instellings vir potensiële uitbuitbaarheid deur CSRF-aanvalle vanuit geverifieerde sessies.
|
|
- **Eindpunt Ontdekking**: Gebruik API patrone om verborge eindpunte te ontdek. Gereedskap soos fuzzers kan hierdie proses outomatiseer.
|
|
- **Parameter Manipulasie**: Eksperimenteer met die toevoeging of vervanging van parameters in versoeke om toegang tot ongeoorloofde data of funksies te verkry.
|
|
- **HTTP Metode Toetsing**: Varieer versoekmetodes (GET, POST, PUT, DELETE, PATCH) om onverwagte gedrag of inligtingsontsluitings te ontdek.
|
|
- **Inhoud-Tipe Manipulasie**: Wissel tussen verskillende inhoudstipes (x-www-form-urlencoded, application/xml, application/json) om te toets vir ontledingsprobleme of kwesbaarhede.
|
|
- **Geavanceerde Parameter Tegnieke**: Toets met onverwagte datatipes in JSON payloads of speel met XML data vir XXE inspuitings. Probeer ook parameter besoedeling en wildcard karakters vir breër toetsing.
|
|
- **Weergawe Toetsing**: Ou API weergawes mag meer kwesbaar wees vir aanvalle. Kontroleer altyd vir en toets teen verskeie API weergawes.
|
|
|
|
### **Gereedskap en Hulpbronne vir API Pentesting**
|
|
|
|
- [**kiterunner**](https://github.com/assetnote/kiterunner): Uitstekend vir die ontdekking van API eindpunte. Gebruik dit om padhulpmiddels en parameters teen teiken APIs te skandeer en brute force.
|
|
```bash
|
|
kr scan https://domain.com/api/ -w routes-large.kite -x 20
|
|
kr scan https://domain.com/api/ -A=apiroutes-220828 -x 20
|
|
kr brute https://domain.com/api/ -A=raft-large-words -x 20 -d=0
|
|
kr brute https://domain.com/api/ -w /tmp/lang-english.txt -x 20 -d=0
|
|
```
|
|
- [**https://github.com/BishopFox/sj**](https://github.com/BishopFox/sj): sj is 'n opdraglyn hulpmiddel wat ontwerp is om te help met die oudit van **blootgestelde Swagger/OpenAPI definisie lêers** deur die geassosieerde API eindpunte vir swak outentisering te kontroleer. Dit bied ook opdrag sjablone vir handmatige kwesbaarheidstoetsing.
|
|
- Bykomende hulpmiddels soos **automatic-api-attack-tool**, **Astra**, en **restler-fuzzer** bied op maat gemaakte funksies vir API sekuriteitstoetsing, wat wissel van aanvalsimulasie tot fuzzing en kwesbaarheidsskandering.
|
|
- [**Cherrybomb**](https://github.com/blst-security/cherrybomb): Dit is 'n API sekuriteitshulpmiddel wat jou API oudit op grond van 'n OAS-lêer (die hulpmiddel is in rust geskryf).
|
|
|
|
### **Leer- en Oefenbronne**
|
|
|
|
- **OWASP API Sekuriteit Top 10**: Essensiële leesstof om algemene API kwesbaarhede te verstaan ([OWASP Top 10](https://github.com/OWASP/API-Security/blob/master/2019/en/dist/owasp-api-security-top-10.pdf)).
|
|
- **API Sekuriteitskontrolelys**: 'n Omvattende kontrolelys vir die beveiliging van API's ([GitHub link](https://github.com/shieldfy/API-Security-Checklist)).
|
|
- **Logger++ Filters**: Vir die jag op API kwesbaarhede, bied Logger++ nuttige filters ([GitHub link](https://github.com/bnematzadeh/LoggerPlusPlus-API-Filters)).
|
|
- **API Eindpunte Lys**: 'n Gekureerde lys van potensiële API eindpunte vir toetsdoeleindes ([GitHub gist](https://gist.github.com/yassineaboukir/8e12adefbd505ef704674ad6ad48743d)).
|
|
|
|
## Verwysings
|
|
|
|
- [https://github.com/Cyber-Guy1/API-SecurityEmpire](https://github.com/Cyber-Guy1/API-SecurityEmpire)
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|