Pentest və SOC Cheat Sheet
  • Reconnaissance
  • Post-Explotation
    • Linux Post-Explotation
      • Linux Local Enumeration
      • Linux Privilege Escalation
      • Dumping and cracking hashes on Linux
      • Linux Persistence
    • Windows Post-Explotation
      • Windows Local Enumeration
      • Windows Privilege Escalation
      • Windows Persistence
  • Network Services Pentesting
    • 21-Pentesting FTP
    • 22-Pentesting SSH
    • 23-Pentesting Telnet
    • 53-Pentesting DNS
    • 25,465,587-Pentesting SMTP
    • 110,995-Pentesting POP
    • 139,445-Pentesting SMB
    • 3306-Pentesting MySQL
    • 3389-Pentesting RDP
    • 1433-Pentesting MSSQL-Microsoft SQL Server
    • 389,636,3268,3269-Pentesting LDAP
  • Web Pentesting
    • Broken Access Control
      • Praktiki nümunə
    • OS Command Injection
      • Praktiki nümunə
    • SQL Injection
      • Praktiki nümunə
    • Cross-Site-Scripting (XSS)
      • Praktiki nümunə
    • File Upload
      • Praktiki nümunə
    • Directory Traversal və Path Traversal
      • Praktiki nümunə
    • CSRF
    • XXE
    • Clickjacking
      • Praktiki nümunə
    • SSRF
      • Praktiki nümunə
    • JWT (Json Web Token)
      • Praktiki nümunə
    • Local&Remote File İnclusion
      • Praktiki nümunə
      • Local File inclusion ilə reverse shell almaq
    • 401&403 Bypass
    • Login Bypass
    • Open Redirect
    • Unicode Injection
    • Security Misconfiguration
    • CRLF injection
    • LDAP Injection
    • Cookies Hacking
    • Cross site WebSocket hijacking (CSWSH)
    • SSTI (Server Side Template Injection)
    • CSTI (Client Side Template Injection)
    • XSLT Server Side Injection (Extensible Stylesheet Languaje Transformations)
    • Registration & Takeover Vulnerabilities
    • Regular expression Denial of Service - ReDoS
    • Reset/Forgotten Password Bypass
    • SAML Hücumları
    • Reverse Tab Nabbing
    • Web Tool - WFuzz
    • XPATH enjeksiyonu
    • Server-Side Includes (SSI) Injection
    • Edge Side Inclusion Injection (ESII)
    • Race Condition
    • PostMessage
    • Parameter Pollution
    • Cache Poisoning and Cache Deception
    • Captcha Bypass
  • AD Pentesting
    • Domain Enumeration
      • PowerView ilə enumeration
      • AD Module ilə enumeration
      • BloodHound ilə enumeration
        • On Site BloodHound
      • Using Adalanche
        • Remote adalanche
      • Useful Enumeration Tools
    • Local Privilege Escalation
      • Useful Local Priv Esc Tools
      • UAC Bypass
    • Lateral Movement
      • Powershell Remoting
      • Mimikatz
      • Remote Desktop Protocol
      • URL File Attacks
      • Useful Tools
    • Domain Privilege Escalation
      • Kerberoast
      • ASREPRoast
      • Password Spray Attack
      • Force Set SPN
      • Abusing Shadow Copies
      • List and Decrypt Stored Credentials using Mimikatz
      • Unconstrained Delegation
      • Constrained Delegation
      • Resource Based Constrained Delegation
      • DNSAdmins Abuse
      • Abusing Active Directory-Integraded DNS (ADIDNS) poisoning
      • Abusing Backup Operators Group
      • SID History Abuse
      • Active Directory Certificate Services
    • Domain Persistence
      • Golden Ticket Attack
      • Silver Ticket Attack
      • Skeleton Key Attack
      • DSRM Abuse
      • DCsync Attack
    • Cross Forest Attacks
      • Trust Tickets
      • Abuse MSSQL Servers
      • Breaking Forest Trusts
  • SOC - Cheat Sheet
    • SOC Nədir?
    • SOC Komponentləri Nələrdir?
    • SOC Checklist
    • SIEM
      • Splunk Qurulması və Konfiqurasiyası
    • IDS/IPS
    • Firewall
    • Firewall qurulması və konfiqurasiyası
    • EDR/XDR
    • SOAR
    • Windows Commands for SOC analysts
      • GUI Programs in Windows
      • Event Viewer
      • Task Scheduler
      • Group Policy Editor
      • Device Manager
      • Task Manager
      • Registry Manager
    • Linux Commands for SOC analysts
    • LOLBAS Apps and Commands
      • Apps and Commands
Powered by GitBook
On this page
  • Qarışıq Yollar və Fayllar
  • URL-lərdə qeyri-səlis parametrlər
  • Qeyri-səlis POST sorğuları
  • Qarışıq kukilər
  • Fərdi başlıqlar
  • Qarışıq HTTP felləri
  • Proksilər
  • İdentifikasiyası
  • Rekursiya
  • Performans
  • Fayla yazmaq
  • Fərqli çıxış

Was this helpful?

  1. Web Pentesting

Web Tool - WFuzz

PreviousReverse Tab NabbingNextXPATH enjeksiyonu

Last updated 1 year ago

Was this helpful?

Qarışıq Yollar və Fayllar

Wfuzz veb server daxilində fayl və kataloqlar kimi gizli məzmunu axtarmaq üçün istifadə oluna bilər ki, bu da əlavə hücum vektorlarını tapmağa imkan verir. Qeyd etmək lazımdır ki, bu tapşırığın uğuru istifadə olunan wordlist-dən çox asılıdır.

Bununla belə, məhdud sayda platformalar, standart quraşdırmalar, log faylları, administrativ qovluqlar kimi tanınmış resurslar səbəbindən xeyli sayda resurs proqnozlaşdırıla bilən yerlərdə yerləşir. Buna görə də, bu məzmunları brute force daha mümkün bir işə çevrilir.

Wfuzz bəzi lüğətləri əhatə edir, digər daha böyük və ən müasir açıq mənbə söz siyahıları bunlardır:

Aşağıda ümumi qovluqları axtaran wfuzz nümunəsi göstərilir:

$ wfuzz -w wordlist/general/common.txt http://testphp.vulnweb.com/FUZZ

Aşağıda ümumi faylları axtaran wfuzz nümunəsi göstərilir:

$ wfuzz -w wordlist/general/common.txt http://testphp.vulnweb.com/FUZZ.php

URL-lərdə qeyri-səlis parametrlər

Siz tez-tez URL sorğu sətirində bir növ məlumatı gizlətmək istəyirsiniz, buna sual işarəsindən sonra URL-də FUZZ açar sözünü göstərməklə nail olmaq olar:

$ wfuzz -z range,0-10 --hl 97 http://testphp.vulnweb.com/listproducts.php?cat=FUZZ

Qeyri-səlis POST sorğuları

HTML forması kimi bəzi forma kodlu məlumatları gizlətmək istəyirsinizsə, sadəcə olaraq -d əmr satırı arqumentini ötürün:

$ wfuzz -z file,wordlist/others/common_pass.txt -d "uname=FUZZ&pass=FUZZ"  --hc 302 http://testphp.vulnweb.com/userinfo.php
********************************************************
* Wfuzz 2.2 - The Web Fuzzer                           *
********************************************************

Target: http://testphp.vulnweb.com/userinfo.php
Total requests: 52

==================================================================
ID      Response   Lines      Word         Chars          Request
==================================================================

00044:  C=200    114 L       356 W         5111 Ch        "test"

Total time: 2.140146
Processed Requests: 52
Filtered Requests: 51
Requests/sec.: 24.29739

Qarışıq kukilər

Öz kukilərinizi serverə göndərmək üçün, məsələn, sorğunu HTTP seansları ilə əlaqələndirmək üçün siz -b parametrindən istifadə edə bilərsiniz (müxtəlif kukilər üçün təkrarlayın):

$ wfuzz -z file,wordlist/general/common.txt -b cookie=value1 -b cookie2=value2 http://testphp.vulnweb.com/FUZZ

Yuxarıdakı əmr aşağıdakı kimi HTTP sorğuları yaradacaq:

GET /attach HTTP/1.1
Host: testphp.vulnweb.com
Accept: */*
Content-Type:  application/x-www-form-urlencoded
Cookie:  cookie=value1; cookie2=value2
User-Agent:  Wfuzz/2.2
Connection: close

Kukilər də tündləşdirilə bilər:

$ wfuzz -z file,wordlist/general/common.txt -b cookie=FUZZ http://testphp.vulnweb.com/

Fərdi başlıqlar

Əgər sorğuya HTTP başlıqları əlavə etmək istəyirsinizsə, sadəcə olaraq -H parametrindən istifadə edin (müxtəlif başlıqlar üçün təkrarlayın):

$ wfuzz -z file,wordlist/general/common.txt -H "myheader: headervalue" -H "myheader2: headervalue2" http://testphp.vulnweb.com/FUZZ

Yuxarıdakı əmr aşağıdakı kimi HTTP sorğuları yaradacaq:

GET /agent HTTP/1.1
Host: testphp.vulnweb.com
Accept: */*
Myheader2:  headervalue2
Myheader:  headervalue
Content-Type:  application/x-www-form-urlencoded
User-Agent:  Wfuzz/2.2
Connection: close

Mövcud başlıqları dəyişdirə bilərsiniz, məsələn, fərdi istifadəçi agentini təyin etmək üçün aşağıdakıları yerinə yetirin:

$ wfuzz -z file,wordlist/general/common.txt -H "myheader: headervalue" -H "User-Agent: Googlebot-News" http://testphp.vulnweb.com/FUZZ

Yuxarıdakı əmr aşağıdakı kimi HTTP sorğuları yaradacaq:

GET /asp HTTP/1.1
Host: testphp.vulnweb.com
Accept: */*
Myheader:  headervalue
Content-Type:  application/x-www-form-urlencoded
User-Agent:  Googlebot-News
Connection: close

Başlıqlar qarışıq ola bilər:

$ wfuzz -z file,wordlist/general/common.txt -H "User-Agent: FUZZ" http://testphp.vulnweb.com/

Qarışıq HTTP felləri

HTTP felləri -X keçidindən istifadə etməklə müəyyən edilə bilər:

$ wfuzz -z list,GET-HEAD-POST-TRACE-OPTIONS -X FUZZ http://testphp.vulnweb.com/
********************************************************
* Wfuzz 2.2 - The Web Fuzzer                           *
********************************************************

Target: http://testphp.vulnweb.com/
Total requests: 5

==================================================================
ID      Response   Lines      Word         Chars          Request
==================================================================

00002:  C=200      0 L         0 W            0 Ch        "HEAD"
00004:  C=405      7 L        12 W          172 Ch        "TRACE"
00005:  C=405      7 L        12 W          172 Ch        "OPTIONS"
00001:  C=200    104 L       296 W         4096 Ch        "GET"
00003:  C=200    104 L       296 W         4096 Ch        "POST"

Total time: 1.030354
Processed Requests: 5
Filtered Requests: 0
Requests/sec.: 4.852696

Müəyyən bir feldən istifadə edərək sorğuları yerinə yetirmək istəyirsinizsə, "-X HEAD" də istifadə edə bilərsiniz.

Proksilər

Proksi istifadə etmək lazımdırsa, sadəcə olaraq -p parametrindən istifadə edin:

$ wfuzz -z file,wordlist/general/common.txt -p localhost:8080 http://testphp.vulnweb.com/FUZZ

Əsas HTTP proksilərinə əlavə olaraq, Wfuzz həmçinin SOCKS4 və SOCKS5 protokolundan istifadə edən proksiləri dəstəkləyir:

$ wfuzz -z file,wordlist/general/common.txt -p localhost:2222:SOCKS5 http://testphp.vulnweb.com/FUZZ

Müxtəlif -p parametrlərini təmin etməklə birdən çox proksi eyni vaxtda istifadə edilə bilər:

$ wfuzz -z file,wordlist/general/common.txt -p localhost:8080 -p localhost:9090 http://testphp.vulnweb.com/FUZZ

Hər sorğu hər dəfə fərqli bir proxy istifadə edərək yerinə yetiriləcək.

İdentifikasiyası

Wfuzz –basic/ntlm/digest komanda xətti açarlarından istifadə edərək identifikasiya başlıqlarını təyin edə bilər.

Məsələn, Əsas autentifikasiyadan istifadə edən qorunan resurs aşağıdakı əmrdən istifadə edərək tündləşdirilə bilər:

$ wfuzz -z list,nonvalid-httpwatch --basic FUZZ:FUZZ https://www.httpwatch.com/httpgallery/authentication/authenticatedimage/default.aspx
********************************************************
* Wfuzz 2.2 - The Web Fuzzer                           *
********************************************************

Target: https://www.httpwatch.com/httpgallery/authentication/authenticatedimage/default.aspx
Total requests: 2

==================================================================
ID      Response   Lines      Word         Chars          Request
==================================================================

00001:  C=401      0 L        11 W           58 Ch        "nonvalid"
00002:  C=200     20 L        91 W         5294 Ch        "httpwatch"

Total time: 0.820029
Processed Requests: 2
Filtered Requests: 0
Requests/sec.: 2.438938

Qorunan veb-saytdan resursu gizlətmək istəyirsinizsə, “–basic user: pass” istifadə edə bilərsiniz.

Rekursiya

-R açarı faydalı yükün rekursiyasının dərinliyini təyin etmək üçün istifadə edilə bilər. Məsələn, əgər siz mövcud qovluqları axtarmaq və sonra eyni faydalı yükdən istifadə edərək yenidən bu qovluqların içərisində qeyri-müəyyənlik etmək istəyirsinizsə, aşağıdakı əmrdən istifadə edə bilərsiniz:

$ wfuzz -z list,"admin-CVS-cgi\-bin"  -R1 http://testphp.vulnweb.com/FUZZ
********************************************************
* Wfuzz 2.2 - The Web Fuzzer                           *
********************************************************

Target: http://testphp.vulnweb.com/FUZZ
Total requests: 3

==================================================================
ID      Response   Lines      Word         Chars          Request
==================================================================

00003:  C=403     10 L        29 W          263 Ch        "cgi-bin"
00002:  C=301      7 L        12 W          184 Ch        "CVS"
|_ Enqueued response for recursion (level=1)
00001:  C=301      7 L        12 W          184 Ch        "admin"
|_ Enqueued response for recursion (level=1)
00008:  C=404      7 L        12 W          168 Ch        "admin - CVS"
00007:  C=404      7 L        12 W          168 Ch        "admin - admin"
00005:  C=404      7 L        12 W          168 Ch        "CVS - CVS"
00006:  C=404      7 L        12 W          168 Ch        "CVS - cgi-bin"
00009:  C=404      7 L        12 W          168 Ch        "admin - cgi-bin"
00004:  C=404      7 L        12 W          168 Ch        "CVS - admin"

Performans

Bir neçə seçim proqrama performans təsirindən, öz emal gücünüzdən və bant genişliyinizdən asılı olaraq HTTP sorğu mühərrikini dəqiq tənzimləməyə imkan verir.

-t keçidindən istifadə edərək hücumunuzun daha sürətli və ya daha yavaş davam etməsi üçün eyni vaxtda sorğuların sayını artıra və ya azalda bilərsiniz.

Siz Wfuzz-a -s parametrindən istifadə edərək başqa sorğunu yerinə yetirməzdən əvvəl verilmiş bir neçə saniyəni dayandırmağı söyləyə bilərsiniz.

Fayla yazmaq

Wfuzz nəticələrin fərqli formatda fayla yazılmasını dəstəkləyir. Bu, "printerlər" adlanan plaginlər tərəfindən həyata keçirilir. Mövcud printerləri icra edən siyahıya almaq olar:

$ wfuzz -e printers

Məsələn, nəticələri JSON formatında bir çıxış faylına yazmaq üçün aşağıdakı əmrdən istifadə edin:

$ wfuzz -f /tmp/outfile,json -w wordlist/general/common.txt http://testphp.vulnweb.com/FUZZ

Fərqli çıxış

Wfuzz nəticələri müxtəlif formatlarda göstərməyi dəstəkləyir. Bu, "printerlər" adlanan plaginlər tərəfindən həyata keçirilir. Mövcud printerləri icra edən siyahıya almaq olar:

$ wfuzz -e printers

Məsələn, nəticələri JSON formatında göstərmək üçün aşağıdakı əmrdən istifadə edin:

$ wfuzz -o json -w wordlist/general/common.txt http://testphp.vulnweb.com/FUZZ

Defolt və ya xam çıxışdan istifadə edərkən, faydalı yük təsviri ilə birlikdə –efield istifadə edərək göstərmək üçün əlavə FuzzResult sahələrini də seçə bilərsiniz:

$ wfuzz -z range --zD 0-1 -u http://testphp.vulnweb.com/artists.php?artist=FUZZ --efield r
...
000000001:   200        99 L     272 W    3868 Ch   0 | GET /artists.php?artist=0 HTTP/1.1
                                                    Content-Type: application/x-www-form-urlencoded
                                                    User-Agent: Wfuzz/2.4
                                                    Host: testphp.vulnweb.com
...

Yuxarıdakı əmr, məsələn, Wfuzz-un uzaq Web serverə göndərdiyi dəqiq HTTP sorğusunu aradan qaldırmaq üçün faydalıdır.

Defolt yük çıxışını tamamilə əvəz etmək üçün əvəzinə –field istifadə edə bilərsiniz:

$ wfuzz -z range --zD 0-1 -u http://testphp.vulnweb.com/artists.php?artist=FUZZ --field url
...
000000001:   200        104 L    364 W    4735 Ch     "http://testphp.vulnweb.com/artists.php?artist=0"
...

–efield və –field bir neçə sahəni göstərmək üçün təkrarlana bilər:

$ wfuzz -z range --zD 0-1 -u http://testphp.vulnweb.com/artists.php?artist=FUZZ --efield url --efield h
...
000000001:   200        104 L    364 W    4735 Ch     "0 | http://testphp.vulnweb.com/artists.php?artist=0 | 4735"
...

Sahə printeri başlıq və ya altbilgi olmadan yalnız müəyyən edilmiş filtr ifadələrini siyahıya almaq üçün –efield və ya –field ifadəsi ilə istifadə edilə bilər:

$ wfuzz -z list --zD https://www.airbnb.com/ --script=links --script-args=links.regex=.*js$,links.enqueue=False -u FUZZ -o field --field plugins.links.link | head -n3
https://a0.muscache.com/airbnb/static/packages/4e8d-d5c346ee.js
https://a0.muscache.com/airbnb/static/packages/7afc-ac814a17.js
https://a0.muscache.com/airbnb/static/packages/7642-dcf4f8dc.js

Yuxarıdakı əmr, məsələn, wfuzz-u digər alətlərə köçürmək və ya konsol skriptlərini yerinə yetirmək üçün faydalıdır.

–efield və –field əslində filtr ifadələridir. Mövcud sahələr və operatorlar üçün əvvəlcədən istifadə sənədində filtr dili bölməsini yoxlayın.

fuzzdb
təriqətçilər