AWS - WAF Enum

AWS - WAF Enum

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

AWS WAF

AWS WAF is 'n webtoepassing-firewall wat ontwerp is om webtoepassings of API's te beskerm teen verskeie webaanvalle wat hul beskikbaarheid, veiligheid of hulpbronverbruik kan beïnvloed. Dit gee gebruikers die vermoë om inkomende verkeer te beheer deur sekuriteitsreëls op te stel wat tipiese aanvalsvektore soos SQL-injeksie of kruisskripskripseleksie verminder, asook deur aangepaste filterreëls te definieer.

Monitoringskriteria (Voorwaardes)

Voorwaardes spesifiseer die elemente van inkomende HTTP/HTTPS-versoeke wat AWS WAF monitor, wat XSS, geografiese ligging (GEO), IP-adresse, groottebeperkings, SQL-injeksie en patrone (strings en regex-passing) insluit. Dit is belangrik om daarop te let dat versoeke wat op die CloudFront-vlak beperk is op grond van land, nie WAF sal bereik nie.

Elke AWS-rekening kan konfigureer:

  • 100 voorwaardes vir elke tipe (behalwe vir Regex, waar slegs 10 voorwaardes toegelaat word, maar hierdie limiet kan verhoog word).

  • 100 reëls en 50 Web ACL's.

  • 'n maksimum van 5 tempo-gebaseerde reëls.

  • 'n deurset van 10 000 versoeke per sekonde wanneer WAF geïmplementeer word met 'n toepassingslaaibalansier.

Reëlkonfigurasie

Reëls word saamgestel deur die gespesifiseerde voorwaardes te gebruik. Byvoorbeeld, 'n reël kan 'n versoek blokkeer as dit aan 2 spesifieke voorwaardes voldoen. Daar is twee tipes reëls:

  1. Gewone Reël: Standaardreël gebaseer op gespesifiseerde voorwaardes.

  2. Tempo-gebaseerde Reël: Tel versoeke vanaf 'n spesifieke IP-adres oor 'n vyfminutetydperk. Hier stel gebruikers 'n drempelwaarde vas, en as die aantal versoeke vanaf 'n IP-adres binne vyf minute hierdie limiet oorskry, word daaropvolgende versoeke van daardie IP-adres geblokkeer totdat die versoektempo onder die drempelwaarde daal. Die minimumdrempelwaarde vir tempo-gebaseerde reëls is 2000 versoeke.

Aksies

Aksies word aan elke reël toegewys, met opsies soos Toelaat, Blokkeer, of Tel:

  • Toelaat: Die versoek word deurgestuur na die toepaslike CloudFront-verspreiding of Toepassingslaaibalansier.

  • Blokkeer: Die versoek word onmiddellik beëindig.

  • Tel: Tel die versoeke wat aan die reël se voorwaardes voldoen. Dit is nuttig vir reëltoetsing, om die akkuraatheid van die reël te bevestig voordat dit op Toelaat of Blokkeer ingestel word.

As 'n versoek nie aan enige reël binne die Web ACL voldoen nie, ondergaan dit die standaardaksie (Toelaat of Blokkeer). Die volgorde van reële uitvoering, wat binne 'n Web ACL gedefinieer is, is krities en volg tipies hierdie volgorde:

  1. Toelaat vanaf witlys-IP's.

  2. Blokkeer vanaf swartlys-IP's.

  3. Blokkeer versoeke wat enige nadelige handtekeninge pas.

CloudWatch-integrasie

AWS WAF integreer met CloudWatch vir monitering en bied metings soos AllowedRequests, BlockedRequests, CountedRequests en PassedRequests. Hierdie metings word standaard elke minuut gerapporteer en vir 'n tydperk van twee weke behou.

Enumerasie

Die omvang kan ook CLOUDFRONT wees, maar wanneer jy vir 'n WAF wat nie verband hou met CloudFront nie, wil nagaan, moet jy REGIONAL gebruik.

# Get web acls
aws wafv2 list-web-acls --scope REGIONAL
aws wafv2 get-web-acl --scope REGIONAL --name <name> --id <id>
aws wafv2 list-resources-for-web-acl --web-acl-arn <web-acl-arn> #Resources associated with the ACL
aws wafv2 get-web-acl-for-resource --resource-arn <arn> # Get web acl of the resource

# Rule groups
aws wafv2 list-rule-groups --scope REGIONAL
aws wafv2 get-rule-group --scope REGIONAL --name <name> --id <id>

# Get IP sets
aws wafv2 list-ip-sets --scope=REGIONAL
aws wafv2 get-ip-set --scope=REGIONAL --name <name> --id <id>

# Get regex patterns
aws wafv2 list-regex-pattern-sets --scope REGIONAL

# Get logging config (buckets storing the logs)
aws wafv2 list-logging-configurations --scope=REGIONAL

Post Exploitasie / Deurbreek

Vanuit 'n aanvaller se perspektief kan hierdie diens die aanvaller help om WAF-beskerming en netwerk blootstelling te identifiseer wat hom kan help om ander webwerwe te kompromitteer.

'n Aanvaller kan egter ook belangstel om hierdie diens te ontwrig sodat die webwerwe nie deur die WAF beskerm word nie.

TODO: PR's is welkom

Verwysings

  • https://www.citrusconsulting.com/aws-web-application-firewall-waf/#:~:text=Conditions%20allow%20you%20to%20specify,user%20via%20a%20web%20application.

Leer AWS hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Last updated