4
Deteksi Kerentanan
Katalog deteksi kerentanan di repository ini berupa kumpulan blok bash yang berdiri sendiri: satu blok untuk satu kelas bug, satu penanda keluaran, dan satu echo yang hanya berbunyi ketika penanda itu ditemukan. Tidak ada pipeline tunggal yang menjalankan semuanya, sehingga tiap entri harus dipanggil manual dengan inputnya sendiri. Halaman ini memetakan kelompoknya dan pola yang mereka pakai bersama; perintah lengkap per kelas ada di XSS dan Local File Inclusion, Open Redirect dan CORS Misconfiguration, dan CVE, RCE, dan Prototype Pollution.
Peta kelas bug
Entri deteksi tidak tersebar merata di README.md. Kelompok injection, CVE, dan prototype pollution berderet di bagian atas berkas, sedangkan CORS Misconfiguration dan varian XSS tanpa gf diletakkan jauh di bawah karena ditambahkan belakangan. Diagram berikut memisahkan keempat kelompok dari entri konkretnya.
graph TD
KAT["Katalog one-liner deteksi"] --> INJ["Injection"]
KAT --> RDR["Redirect dan CORS"]
KAT --> CVE["CVE dan RCE"]
KAT --> PP["Prototype Pollution"]
INJ --> LFI["gf lfi dan /etc/passwd"]
INJ --> XSS["dalfox pipe dan httpx --match-regex"]
INJ --> XSS2["qsreplace dan alert(1)"]
RDR --> OR["gf redirect dan LHOST"]
RDR --> COR["Origin https://evil.com"]
CVE --> C5902["CVE-2020-5902"]
CVE --> C3452["CVE-2020-3452"]
CVE --> C0378["CVE-2022-0378"]
CVE --> VBRCE["widget_tabbedcontainer_tab_panel"]
PP --> PROTO["page-fetch dan testparam=exploit"]
style KAT fill:#336791,color:#fff
style INJ fill:#f59e0b,color:#000
style RDR fill:#f59e0b,color:#000
style CVE fill:#f59e0b,color:#000
style PP fill:#f59e0b,color:#000
style LFI fill:#8b5cf6,color:#fff
style XSS fill:#8b5cf6,color:#fff
style XSS2 fill:#8b5cf6,color:#fff
style OR fill:#8b5cf6,color:#fff
style COR fill:#8b5cf6,color:#fff
style C5902 fill:#8b5cf6,color:#fff
style C3452 fill:#8b5cf6,color:#fff
style C0378 fill:#8b5cf6,color:#fff
style VBRCE fill:#8b5cf6,color:#fff
style PROTO fill:#8b5cf6,color:#fff
%% fig: Katalog deteksi kerentanan per kelas bug
%% desc: Empat kelompok one-liner di README.md, masing-masing dengan entri konkret dan tool yang dipakainya.Kelompok injection memuat tiga entri. Local File Inclusion menyaring URL dengan gf lfi dan menanam /etc/passwd lewat qsreplace (README.md:19-241). Entri XSS memakai dalfox pipe untuk sebagian target dan httpx --match-regex dengan pola addEventListener untuk berkas JavaScript (README.md:38-552). Varian tanpa gf melewati penyaring sepenuhnya dan langsung memasang payload alert(1) pada setiap URL yang memuat = (README.md:379-3843).
Kelompok redirect berisi dua entri. Open-redirect memakai variabel LHOST sebagai tujuan pembelokan dan mencocokkan header Location pada response (README.md:26-364). Entri kedua di blok yang sama hanya memilih URL dengan gf url dan mengirimkannya lewat proxy lokal. CORS Misconfiguration mengirim header Origin: https://evil.com lalu mencari origin yang sama di response (README.md:351-3565).
Kelompok CVE dan RCE memakai shodan search dengan favicon hash sebagai penentu target, kecuali CVE-2022-0378 yang membaca URLS.txt. CVE-2020-5902 menyasar tmui/locallb/workspace/fileRead.jsp pada port 3992 (README.md:64-696), CVE-2020-3452 menyasar /+CSCOT+/translation-table dan menandai balasan yang memuat Cisco (README.md:71-767), CVE-2022-0378 menandai onmouse pada halaman modul (README.md:78-838), dan entri vBulletin mengirim subWidgets[0][config][code]=phpinfo(); ke ajax/render/widget_tabbedcontainer_tab_panel (README.md:85-909).
Prototype pollution adalah kelompok terkecil: satu entri menambahkan __proto__[testparam]=exploit ke setiap host, membuka halaman dengan page-fetch, dan mengeksekusi ekspresi window.testparam == "exploit" di dalam halaman (README.md:57-6210).
Satu pola untuk semua kelas
Terlepas dari kelasnya, hampir semua entri memakai urutan yang sama: kumpulkan URL, saring, ganti nilai parameter, kirim request, lalu cocokkan response dengan grep -q. Bentuk paling ringkasnya ada di baris LFI: setiap URL dikirim oleh 25 proses xargs paralel, dan echo "VULN! %" hanya tercetak bila grep -q "root:x" berhasil (README.md:19-241). Entri XSS tanpa gf memakai urutan yang sama tanpa penyaring, dengan payload alert(1) dan grep -qs atas payload yang dipantulkan (README.md:379-3843).
graph LR
IN["gau HOST atau URLS.txt"] --> FLT["gf lfi"]
FLT --> PAY["qsreplace /etc/passwd"]
PAY --> REQ["xargs -P 25 curl"]
REQ --> CHK["grep -q root:x"]
CHK -->|cocok| HIT["echo VULN"]
CHK -->|tidak cocok| MISS["tanpa keluaran"]
style IN fill:#336791,color:#fff
style FLT fill:#f59e0b,color:#000
style PAY fill:#f59e0b,color:#000
style REQ fill:#8b5cf6,color:#fff
style CHK fill:#f59e0b,color:#000
style HIT fill:#dc2626,color:#fff
style MISS fill:#2d7d46,color:#fff
%% fig: Alur verifikasi satu URL
%% desc: URL dari hasil recon disaring, disisipi payload, dikirim paralel, lalu penanda dicocokkan untuk memutuskan apakah URL dicetak.Karena verifikasinya bergantung pada pencocokan string, entri ini hanya membuktikan refleksi atau pembacaan berkas, bukan dampak penuh. Yang tercetak adalah URL, bukan bukti eksploitasi.
Katalog per kelas
Tabel berikut memuat seluruh entri deteksi beserta penanda yang dicari dan sumber inputnya.
| Kelas | Entri | Penanda pada response | Input | Rujukan |
|---|---|---|---|---|
| injection | Local File Inclusion | grep -q "root:x" | gau HOST | README.md:19-241 |
| injection | XSS | dalfox pipe, httpx --match-regex | URLS.txt, HOSTS.txt | README.md:38-552 |
| injection | XSS tanpa gf | grep -qs atas payload alert(1) | waybackurls HOST | README.md:379-3843 |
| redirect | Open-redirect | grep -q "Location: $LHOST" | gau $1, URLS.txt | README.md:26-364 |
| redirect | CORS Misconfiguration | grep 'https://evil.com' | gau "$site" | README.md:351-3565 |
| CVE | CVE-2020-5902 | grep -q root | shodan favicon hash -335242539 | README.md:64-696 |
| CVE | CVE-2020-3452 | grep -q "Cisco" | HOSTS.txt | README.md:71-767 |
| CVE | CVE-2022-0378 | grep -qs "onmouse" | URLS.txt | README.md:78-838 |
| RCE | widget_tabbedcontainer_tab_panel | grep -q phpinfo | shodan favicon hash -601665621 | README.md:85-909 |
| prototype pollution | Prototype Pollution | grep "VULNERABLE" | FILE.txt hasil anew | README.md:57-6210 |
Hanya sebagian entri memakai placeholder HOST atau URLS.txt. Entri Open-redirect pertama mengambil argumen $1 dan mendeklarasikan LHOST sendiri, sedangkan entri CORS menyimpan daftar URL di variabel site (README.md:26-364, README.md:351-3565).
Batas dan risiko
⚠️ Beberapa entri mengirim
requestparalel tanpa pembatas scope:-P 25pada Local File Inclusion dan Open-redirect,-threads 300pada Prototype Pollution. Pada daftar URL besar, ini cukup untuk membanjiri target.
⚠️ Opsi
-k,--insecure, dan-skmematikan verifikasi sertifikat TLS di hampir semua entri, dan--path-as-ismengirim path tanpa normalisasi.
⚠️ Dua entri CVE menentukan target dari
shodan search, bukan dari hasil recon sendiri. Menjalankannya berarti memilih host di luar aset yang sudah dikumpulkan di Aset In-scope, Bruteforce, dan Wordlist.
⚠️ Entri Prototype Pollution mengeksekusi JavaScript halaman target di dalam
page-fetch, dan entri CORS memalsukan headerOrigin. Keduanya menyentuh aplikasi secara langsung.
Rincian per kelas
- XSS dan Local File Inclusion membahas rangkaian
gf-qsreplace-dalfoxdan pembacaan berkas lewat parameter. - Open Redirect dan CORS Misconfiguration membahas pencocokan header
Locationdan pemantulan origin. - CVE, RCE, dan Prototype Pollution membahas pemilihan target lewat Shodan dan eksekusi kode di sisi klien.
Urutan pemakaian seluruh kelas ini di dalam satu alur kerja ada di Alur Pipeline dan Toolchain.