Skip to content

cakgup/pentest-djpb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ Pentest DJPB

Internal Penetration Testing Guidance

Command Library • Lab Control • Evidence-Oriented Testing • Authorized Security Assessment

Static Site License Security Made For

Panduan internal penetration testing berbasis static web application untuk membantu proses pembelajaran, simulasi, asesmen baseline, dokumentasi evidence, dan penguatan budaya keamanan informasi secara terarah, legal, dan bertanggung jawab.

🌐 Demo / GitHub Pages: https://cakgup.github.io/pentest-djpb/
📦 Repository: https://github.com/cakgup/pentest-djpb


✨ Tentang Aplikasi

Pentest DJPB adalah aplikasi web statis yang berisi kumpulan referensi command dan alur kerja penetration testing internal. Aplikasi ini dirancang sebagai command library yang membantu tim keamanan, peserta pelatihan, maupun auditor teknis dalam memahami tahapan pengujian keamanan secara sistematis.

Aplikasi ini tidak membutuhkan backend, database, ataupun proses instalasi kompleks. Seluruh halaman berjalan langsung di browser melalui HTML, CSS, dan JavaScript, sehingga cocok digunakan sebagai portal referensi ringan pada GitHub Pages.

Repositori ini ditujukan untuk:

  • 🔍 pembelajaran penetration testing internal;
  • 🧪 simulasi pada lingkungan lab yang terkendali;
  • 📋 penyusunan evidence teknis pengujian keamanan;
  • 🛡️ peningkatan awareness keamanan informasi;
  • 🧭 penyelarasan tahapan pengujian dengan metodologi yang terstruktur;
  • 🤝 dokumentasi pengetahuan keamanan yang dapat dipelajari dan diduplikasi secara bertanggung jawab.

🎯 Tujuan Utama

Aplikasi ini dibuat bukan untuk aktivitas ofensif tanpa izin, melainkan untuk membantu penguatan keamanan melalui proses yang sah dan terdokumentasi.

Tujuan pengembangannya adalah:

  1. menyediakan katalog command penetration testing yang mudah dicari;
  2. membantu tim memahami fase pengujian dari reconnaissance sampai pelaporan;
  3. membedakan tingkat risiko penggunaan command melalui label risiko;
  4. memudahkan penggantian variabel target dan domain pada lingkungan lab;
  5. mendukung dokumentasi evidence hasil asesmen;
  6. menjadi sarana belajar bersama untuk memperkuat keamanan sistem informasi.

🧩 Fitur Utama

Fitur Keterangan
🗂️ Command Library Kumpulan command yang dikurasi untuk kebutuhan pembelajaran, lab internal, dan asesmen berizin.
🔎 Pencarian Cepat Memudahkan pencarian command berdasarkan kata kunci, judul, fase, atau deskripsi.
🧭 Filter Fase Pengujian Command dikelompokkan berdasarkan fase seperti reconnaissance, baseline assessment, exploitation lab, C2 concept, dan pelaporan.
🧪 Lab Control Variabel seperti {{TARGET}} dan {{DOMAIN}} dapat disesuaikan agar command lebih mudah digunakan di lingkungan lab.
📋 Copy Command Tombol salin untuk mempercepat penggunaan command tanpa mengetik ulang.
🏷️ Risk Label Label seperti safe, lab, restricted, dan concept membantu pengguna memahami batas aman penggunaan command.
🌙 Toggle Tema Tampilan dapat disesuaikan agar nyaman digunakan.
🕌 Jadwal Shalat Header Header menampilkan jadwal shalat untuk wilayah DKI Jakarta dan sekitarnya dengan fallback lokal.
⬆️ Floating Back to Top Tombol kembali ke atas untuk navigasi halaman yang panjang.
📱 Responsive Design Tampilan disesuaikan untuk desktop maupun perangkat mobile.

🏗️ Struktur Repository

pentest-djpb/
├── index.html      # Struktur utama halaman aplikasi
├── styles.css      # Desain visual, layout, tema, dan responsivitas
├── script.js       # Data command, filter, pencarian, lab control, dan interaksi UI
├── README.md       # Dokumentasi repository
└── LICENSE         # Lisensi MIT

🚀 Cara Menggunakan Aplikasi

1. Buka aplikasi

Gunakan halaman GitHub Pages:

https://cakgup.github.io/pentest-djpb/

2. Tentukan target lab

Pada panel Lab Control, isi target dan domain sesuai ruang lingkup pengujian yang sah, misalnya:

TARGET = 192.168.56.10
DOMAIN = lab.local

Setelah itu, placeholder seperti {{TARGET}} dan {{DOMAIN}} pada command akan otomatis disesuaikan.

3. Pilih fase pengujian

Gunakan filter fase untuk mencari command berdasarkan tahapan, misalnya:

  • Reconnaissance;
  • Baseline Assessment;
  • Weaponization Lab;
  • Delivery Simulation;
  • Exploitation Validation;
  • Installation / Persistence Audit;
  • Command & Control Concept;
  • Actions on Objectives & Reporting.

4. Baca label risiko

Sebelum menggunakan command, perhatikan label risiko:

Label Makna
safe Relatif aman untuk observasi/pemetaan dasar pada aset berizin.
lab Hanya digunakan pada lingkungan lab atau aset resmi dalam scope.
restricted Berisiko tinggi; hanya untuk instruktur, lab tertutup, atau skenario resmi yang disetujui.
concept Untuk pembahasan konsep, awareness, atau observasi defensif.

5. Salin command

Klik tombol copy pada command yang diperlukan, lalu jalankan hanya pada sistem yang berada dalam ruang lingkup pengujian resmi.


🔐 Prinsip Penggunaan Aman

Aplikasi ini wajib digunakan dengan prinsip berikut:

  • ✅ hanya pada aset yang menjadi scope pengujian;
  • ✅ memiliki izin resmi atau mandat tertulis;
  • ✅ tidak digunakan untuk menyerang pihak lain;
  • ✅ tidak digunakan untuk mengambil data di luar kebutuhan evidence;
  • ✅ setiap aktivitas harus terdokumentasi;
  • ✅ setiap temuan harus diarahkan untuk perbaikan keamanan;
  • ✅ command berisiko tinggi hanya digunakan pada lab tertutup atau demonstrasi defensif.

Authorized testing only.
Setiap bentuk penggunaan di luar izin, ruang lingkup, atau tujuan pembelajaran defensif menjadi tanggung jawab masing-masing pengguna.


📋 Alur Kerja yang Disarankan

flowchart TD
    A[Menentukan Scope Pengujian] --> B[Menyiapkan Lab / Target Berizin]
    B --> C[Reconnaissance]
    C --> D[Baseline Assessment]
    D --> E[Validasi Temuan di Lab / Scope Resmi]
    E --> F[Pengumpulan Evidence]
    F --> G[Analisis Risiko]
    G --> H[Rekomendasi Perbaikan]
    H --> I[Laporan dan Tindak Lanjut]
Loading

Apabila platform README tidak merender Mermaid, diagram di atas tetap dapat dibaca sebagai alur teks.


🛠️ Instalasi Lokal

Karena aplikasi ini bersifat static site, Anda cukup membuka file index.html di browser.

Opsi A — Download ZIP

  1. Buka repository:
https://github.com/cakgup/pentest-djpb
  1. Klik CodeDownload ZIP.
  2. Ekstrak file.
  3. Buka index.html di browser.

Opsi B — Clone Repository

git clone https://github.com/cakgup/pentest-djpb.git
cd pentest-djpb

Lalu buka:

index.html

Opsi C — Jalankan dengan Local Server

Disarankan menggunakan local server agar perilaku file statis lebih mendekati GitHub Pages.

python3 -m http.server 8080

Buka browser:

http://localhost:8080

🌐 Deploy ke GitHub Pages

Untuk menduplikasi aplikasi ini ke GitHub Pages pribadi/instansi:

  1. Fork atau clone repository.
  2. Push ke repository GitHub Anda.
  3. Masuk ke SettingsPages.
  4. Pada bagian Build and deployment, pilih:
Source  : Deploy from a branch
Branch  : main
Folder  : /root
  1. Klik Save.
  2. Tunggu proses deployment selesai.
  3. Buka URL GitHub Pages yang diberikan GitHub.

🔁 Cara Duplikasi dan Modifikasi

Repository ini dapat diduplikasi untuk kebutuhan pembelajaran internal, selama tetap memperhatikan lisensi dan etika penggunaan.

1. Fork repository

Klik tombol Fork pada GitHub, lalu sesuaikan nama repository jika diperlukan.

2. Ubah identitas aplikasi

Edit bagian judul dan deskripsi pada:

index.html

Sesuaikan dengan nama unit, tim, atau kegiatan pelatihan.

3. Ubah tema visual

Edit warna, layout, dan elemen visual pada:

styles.css

Contoh bagian yang dapat disesuaikan:

:root {
  --primary: #1A3A6B;
  --accent: #FFCA1A;
}

4. Ubah command library

Edit daftar command pada:

script.js

Gunakan format objek yang konsisten:

{
  id: "cmd-xxx",
  phase: "baseline",
  title: "Nama Pemeriksaan",
  risk: "safe",
  desc: "Deskripsi singkat penggunaan command.",
  command: "COMMAND_DI_SINI"
}

Pastikan command baru:

  • relevan dengan tujuan defensif;
  • memiliki label risiko yang sesuai;
  • tidak mengandung secret, token, atau kredensial;
  • tidak diarahkan ke target publik tanpa izin;
  • disertai deskripsi penggunaan yang jelas.

5. Tambah fase baru bila diperlukan

Fase pengujian dapat ditambahkan pada array phases di script.js.

Contoh:

{
  id: "reporting",
  label: "Reporting",
  short: "Laporan teknis",
  desc: "Penyusunan evidence, analisis risiko, dan rekomendasi perbaikan."
}

📁 Rekomendasi Struktur Evidence

Saat melakukan pengujian resmi, simpan evidence secara rapi agar mudah diaudit.

evidence/
├── screenshots/       # Bukti visual halaman, response, atau hasil validasi
├── raw/               # Output mentah dari tools
├── reports/           # Ringkasan hasil analisis
├── notes/             # Catatan manual tester
└── timeline/          # Kronologi aktivitas pengujian

Contoh penamaan file:

YYYYMMDD_nama-aplikasi_jenis-pengujian_tool.txt
YYYYMMDD_nama-aplikasi_screenshot-temuan-01.png
YYYYMMDD_nama-aplikasi_ringkasan-temuan.md

🧾 Format Ringkas Pelaporan Temuan

Gunakan format berikut agar hasil pengujian mudah ditindaklanjuti:

Nama Kerentanan     :
Kategori            :
Aset / Path          :
Severity             :
CVSS Vector          :
Deskripsi            :
Bukti / Evidence     :
Dampak               :
Rekomendasi          :
Status Tindak Lanjut :

Format ini dapat disesuaikan dengan standar internal organisasi, OWASP, CVSS, atau kebijakan manajemen risiko yang berlaku.


👥 Sasaran Pengguna

Aplikasi ini dapat digunakan oleh:

  • tim keamanan informasi;
  • pengelola infrastruktur dan aplikasi;
  • peserta pelatihan penetration testing internal;
  • auditor teknis;
  • tim incident response;
  • pengembang aplikasi yang ingin memahami sudut pandang security testing;
  • pihak yang memiliki mandat resmi untuk melakukan pengujian keamanan.

📌 Catatan Etika

Ilmu keamanan siber adalah amanah. Semakin besar kemampuan teknis seseorang, semakin besar pula tanggung jawab moralnya.

Gunakan aplikasi ini untuk:

  • memperbaiki sistem;
  • melindungi data;
  • meningkatkan kesiapan organisasi;
  • mendidik pengguna;
  • menutup celah sebelum disalahgunakan pihak lain.

Jangan gunakan aplikasi ini untuk:

  • menyerang sistem tanpa izin;
  • menyebarkan payload berbahaya;
  • mengambil data yang bukan haknya;
  • mengganggu layanan publik;
  • melakukan pembuktian teknis di luar scope.

🤲 Dedikasi

Didedikasikan untuk ummat.

Semoga aplikasi kecil ini menjadi bagian dari ikhtiar kebaikan:
menjaga amanah digital, memperkuat keamanan informasi,
dan membantu lebih banyak orang belajar teknologi secara benar, aman, dan bermanfaat.

Sebaik-baik ilmu adalah ilmu yang membawa manfaat, menjaga amanah, dan digunakan untuk kebaikan.


🤝 Kontribusi

Kontribusi sangat terbuka selama tetap berada pada koridor pembelajaran defensif dan penggunaan berizin.

Bentuk kontribusi yang disarankan:

  • menambahkan command defensif yang aman;
  • memperbaiki deskripsi command;
  • menambahkan referensi mitigasi;
  • memperbaiki tampilan responsive;
  • menambahkan template pelaporan;
  • memperbaiki typo atau dokumentasi;
  • menambahkan panduan hardening dan secure configuration.

Sebelum mengirim pull request, pastikan:

  1. command tidak mengandung kredensial atau informasi sensitif;
  2. command tidak mengarah ke target publik tertentu;
  3. deskripsi menjelaskan konteks legal dan batas penggunaan;
  4. label risiko sudah sesuai;
  5. perubahan telah diuji secara lokal.

🧯 Troubleshooting

Jadwal shalat hanya muncul Memuat --:--

Kemungkinan penyebab:

  • cache browser/CDN belum memperbarui file terbaru;
  • file script.js atau styles.css belum ikut ter-push;
  • API jadwal shalat sedang tidak dapat diakses.

Solusi:

git status
git add index.html styles.css script.js README.md
git commit -m "Update Pentest DJPB static site"
git push origin main

Setelah deploy selesai, lakukan hard refresh:

Ctrl + F5

Atau buka melalui mode incognito.

Tampilan mobile terpotong

Pastikan file styles.css terbaru sudah ter-deploy dan tidak tertahan cache.

Command tidak berubah setelah target diganti

Periksa kembali input pada panel Lab Control. Pastikan placeholder yang dipakai pada command adalah:

{{TARGET}}
{{DOMAIN}}

📜 Lisensi

Repository ini menggunakan lisensi MIT.
Silakan gunakan, pelajari, modifikasi, dan distribusikan kembali sesuai ketentuan lisensi.

Tetap gunakan dengan etika, izin, dan tanggung jawab.


🙏 Penutup

Pentest DJPB adalah alat bantu belajar dan dokumentasi, bukan pengganti kebijakan, izin resmi, atau metodologi pengujian keamanan yang lengkap.

Gunakan sebagai sarana untuk memperkuat keamanan, memperjelas proses kerja, dan membangun budaya digital yang aman, amanah, dan bermanfaat bagi ummat.

Made with care for security, learning, and public benefit.
🛡️📚🤲

About

Internal Penetration Testing Guidance - Subdirektorat Pengelolaan Jaringan dan Keamanan Informasi, Direktorat Sistem Informasi dan Teknologi Perbendaharaan, Direktorat Jenderal Perbendaharaan

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors