Nuclei panduan lengkap

Panduan Lengkap Nuclei: Scan Semua CVE di ~/nuclei-templates (Termux) — Tutorial Praktis

Panduan Lengkap: Cara Scan Semua CVE dari ~/nuclei-templates di Termux (Nuclei)

Dipublikasikan: • Durasi baca: ±8 menit • Penulis: Aang Saputra
Ringkasan isi
  1. Persiapan & keamanan
  2. Validasi & perbaikan templates
  3. Menghitung & memilih template CVE
  4. Perintah scan (aman & full)
  5. Debugging & interpretasi hasil
  6. FAQ & praktik terbaik

Kenapa artikel ini penting?

Jika kamu menggunakan nuclei untuk scanning kerentanan, folder ~/nuclei-templates berisi ribuan template. Tidak semua template sama: beberapa menggunakan protocol: code (dapat mengeksekusi kode), ada pula template HTTP biasa. Artikel ini menunjukkan cara:

  • Menemukan semua template CVE (berbasis tag & nama file)
  • Menjalankan scan aman (tanpa mengeksekusi code) dan scan lengkap (dengan risiko)
  • Memperbaiki error validasi templates dan debugging

1. Persiapan & catatan penting (Baca dulu!)

Etika & legal: Lakukan scanning hanya terhadap target yang kamu miliki izin eksplisit (lab/VM sendiri, scope bug bounty, atau aset perusahaan yang kamu kelola). Scanning tanpa izin bisa melanggar hukum.

Perhatian teknis: Template bertipe protocol: code dapat mengeksekusi perintah di mesin lokal. Nuclei tidak menjalankannya kecuali kamu memberi flag -code. Gunakan flag -code hanya jika kamu percaya sumber templates.

2. Validasi & perbaikan templates

Sebelum scan, selalu update & validasi templates. Jalankan:

nuclei -update-templates
nuclei -validate -t ~/nuclei-templates -vv

Jika validasi gagal dengan error mirip:

[ERR] Could not load template ... helpers/payloads/swagger.json ... mandatory 'name' field is missing

Maka kemungkinan ada file non-template (mis. file JSON payload) di folder yang membuat validator error. Cara cepat memperbaiki:

rm ~/nuclei-templates/helpers/payloads/swagger.json
# lalu ulangi validasi
nuclei -validate -t ~/nuclei-templates -vv

3. Menghitung & menemukan semua template CVE

Ada dua pendekatan populer untuk “menemukan” template CVE di repo:

  • Search berdasarkan tag (template yang memiliki tag cve)
  • Search berdasarkan nama file (file bernama CVE-*.yaml)

Contoh perintah hitung:

# jumlah template yang punya tag "cve"
grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates | cut -d: -f1 | sort -u | wc -l

# jumlah file dengan nama CVE-*.yaml
find ~/nuclei-templates -type f -iname '*CVE-*.yaml' | wc -l

# union (gabungan unik)
(
  find ~/nuclei-templates -type f -iname '*CVE-*.yaml'
  grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates | cut -d: -f1
) | sort -u | wc -l

Contoh hasil yang mungkin kamu lihat (dari environment Termux):

3392  # templates bertag 'cve'
3343  # file bernama 'CVE-*.yaml'

4. Menjalankan scan — opsi aman & full

A. Aman (recommended) — jalankan semua CVE kecuali template code:

nuclei -u https://www.kalteng.go.id/ \
  -t <( \
    ( find ~/nuclei-templates -type f -iname '*CVE-*.yaml' ; \
      grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates | cut -d: -f1 ) \
    | sort -u | grep -v '/code/' \
  ) \
  -vv -json -o ~/hasil_cve_noncode.json -c 30 -rl 150

Penjelasan singkat:

  • Process substitution <(...) membuat daftar template on-the-fly tanpa file permanen
  • grep -v '/code/' memastikan kita tidak menjalankan template ber-protocol code
  • -c dan -rl atur concurrency dan rate-limit

B. Full (termasuk code templates)berisiko:

nuclei -u https://www.kalteng.go.id/ \
  -t <( \
    ( find ~/nuclei-templates -type f -iname '*CVE-*.yaml' ; \
      grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates | cut -d: -f1 ) \
    | sort -u \
  ) \
  -code -vv -json -o ~/hasil_cve_all.json -c 20 -rl 100

PERINGATAN: Gunakan -code hanya jika kamu percaya templates dan paham konsekuensinya. Nuclei hanya mengeksekusi signed code templates — unsigned akan tetap di-skip walaupun pakai -code.

5. Memilih folder “biru” (http, network, javascript, dll) tanpa menyertakan code

Jika ingin hanya template CVE dari folder-folder utama (yang sering berisi checks web/tech), gunakan pendekatan ini (tanpa menyimpan file):

nuclei -u https://www.kalteng.go.id/ \
  -t <( \
    grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates \
    | cut -d: -f1 \
    | grep -E '/(http|network|javascript|headless|dast|passive|cloud)/' \
    | grep -v '/code/' \
    | sort -u \
  ) \
  -vv -json -o ~/hasil_cve_noncode.json -c 30 -rl 150

6. Debugging & kenapa hasilnya "No results found"

Jika scan selesai tapi tidak ada hasil, penyebab umum:

  • Target tidak rentan terhadap CVE yang dicek.
  • Target berada di balik CDN / WAF (Cloudflare, Akamai) → banyak request diblokir atau dimodifikasi.
  • Template tidak cocok karena fingerprint mismatch (mis. template untuk Apache sementara target pake Nginx).
  • Beberapa template code ter-skip jika kamu tidak menambahkan -code.

Langkah debug (jalankan di Termux):

# 1) Jalankan scan dengan debug (panjang)
nuclei -u https://www.kalteng.go.id/ -t ~/cve_templates_http.txt -vv -debug -o ~/debug_nuclei.txt

# 2) Cek header/teknologi target
curl -I -k https://www.kalteng.go.id/

# 3) Jalankan fingerprint/tech tags (alternatif)
nuclei -u https://www.kalteng.go.id/ -tags tech,misconfig -vv

7. Tips praktis & checklist

  • Selalu nuclei -update-templates sebelum scan.
  • Validasi templates dengan nuclei -validate setelah update.
  • Gunakan -tags cve untuk pemanggilan cepat, tetapi ingat: tidak semua CVE punya tag cve.
  • Jika ingin output yang mudah di-parse, gunakan -json -o file.json.
  • Jangan jalankan -code di production atau mesin sensitif tanpa audit.

8. Perintah singkat (ringkasan)

# Update + validate
nuclei -update-templates
nuclei -validate -t ~/nuclei-templates -vv

# Scan otomatis (all-in-one)
nuclei -u https://www.kalteng.go.id/ -as -vv

# Scan semua CVE (aman: exclude code)
nuclei -u https://www.kalteng.go.id/ -t <( (find ~/nuclei-templates -type f -iname '*CVE-*.yaml'; grep -R --include="*.yaml" -n "tags:.*[cC][vV][eE]" ~/nuclei-templates | cut -d: -f1) | sort -u | grep -v '/code/' ) -vv -json -o ~/hasil_cve_noncode.json

9. FAQ (Pertanyaan yang sering muncul)

Apa bedanya -tags cve dengan pakai daftar file?

-tags cve memanggil semua template yang bertag cve. Namun ada template CVE yang namanya mengandung CVE- tapi belum ditag — maka pendekatan union (tag + nama file) memberikan coverage lebih lengkap.

Kenapa banyak pesan "-code flag not found"?

Itu normal—menandakan ada template yang butuh engine code. Nuclei skip template tersebut kecuali kamu menambahkan -code. Ini fitur keamanan agar template tidak sembarangan mengeksekusi kode.

Bagaimana kalau target pake Cloudflare / WAF?

Menyulitkan deteksi berbasis HTTP. Solusinya: scan dari host yang berada di jaringan internal target (jika kamu punya akses), gunakan teknik fingerprinting non-invasive, atau fokus ke endpoint yang tidak dilindungi.

Penutup

Dengan kombinasi update, validasi, dan pemilihan template (exclude/ include code), kamu dapat menjalankan scan CVE yang komprehensif menggunakan Nuclei di Termux. Selalu utamakan etika dan keamanan — jalankan hanya pada target yang kamu izin.

Jika kamu mau, saya bisa: membuat skrip siap-pakai (scan HTTP-only / scan FULL) yang tinggal kamu unduh ke Termux, atau menganalisis output debug jika kamu pastekan hasil -debug. Tulis respon kalau mau salah satu.

— Tutorial oleh Aang Saputra

Previous Post
No Comment
Add Comment
comment url