◈ CyberKitLEARNING LAB / ID

DUKUNG PENGEMBANGAN CYBERKIT

Bantu CyberKit tetap gratis.

Bantu kami menyempurnakan materi, mengembangkan lab localhost, dan menyiapkan panduan visual. Dukungan Anda melalui QRIS membantu pengembangan website ini. Donasi sukarela; seluruh materi tetap gratis, termasuk jika Anda belum berdonasi.

Lanjut ke materi gratis ↓

Penerima: BackToYouStore
NMID: ID1026497825467

Lihat QRIS donasi
QRIS donasi pengembangan CyberKit, penerima BackToYouStore, NMID ID1026497825467

Scan dengan aplikasi pembayaran yang mendukung QRIS, atau simpan gambar untuk digunakan di aplikasi Anda. Periksa nama penerima BackToYouStore sebelum mengonfirmasi.

Simpan gambar QRIS ↓Buka gambar ukuran asli ↗

Website ini tidak memproses atau mencatat transaksi dan tidak menampilkan status pembayaran.

WEB32 / LATIHAN MEMAHAMI RANCANGAN

Upload dan path traversal: review aman

30–50 menit · Prasyarat: WEB31

Masih dalam pengembangan. Belajar pelan-pelan. Gunakan komputer sendiri dan data contoh.

Isi pelajaran ini

Kita belajar apa?

File yang diunggah perlu diperiksa jenis, ukuran, nama, dan tempat menyimpannya. Path traversal berarti masukan nama lokasi dapat keluar dari folder yang diizinkan. Latihan ini hanya menyusun aturan di kertas.

Bayangkan seperti ini

Petugas penitipan perlu memeriksa barang dan menyimpannya di loker yang tepat, bukan mengikuti sembarang alamat dari pengunjung.

Arti kata yang mungkin baru

server
program yang menerima permintaan lalu memberi jawaban
path
alamat lokasi file atau halaman
Penjelasan tambahan jika kamu ingin tahu lebih jauh

Upload menambah risiko format, ukuran, lokasi simpan, dan eksekusi file. Path traversal muncul ketika path pengguna dapat keluar direktori yang diizinkan. Latihan ini memakai model path dan tidak membaca file sistem atau membuat endpoint upload rentan.

Persiapan

Siapkan catatan dan baca panduan perangkat. Pakai data buatan, bukan data pribadi. Baca satu langkah, kerjakan, lalu periksa hasilnya sebelum melanjutkan.

Pelajaran ini tidak meminta kamu menjalankan server lab. Siapkan aplikasi atau file yang disebut pada langkah latihan di bawah.

Langkah latihan

  1. Buat daftar foto.png, ../rahasia.txt, besar.bin, dan script.html sebagai nama fiktif.
  2. Tentukan jenis dan ukuran file yang boleh diterima.
  3. Tulis bahwa server memberi nama simpan sendiri.
  4. Rancang agar file tidak dapat dijalankan sebagai program web.
  5. Tuliskan keputusan untuk setiap nama tanpa membaca file sistem.

Hasil yang diharapkan

Kamu memiliki aturan unggah dan penyimpanan yang jelas, bukan hanya melihat ekstensi file.

Bandingkan dengan hasilmu sendiri. Jika berbeda, tulis apa yang terlihat lalu baca bagian bantuan di bawah. Jangan mengaku berhasil jika langkahnya belum kamu coba.

Jika terhambat

Berhenti sebentar dan baca pesan yang muncul. Periksa nama file, folder, alamat, dan apakah program latihan masih berjalan. Ulangi satu langkah saja. Jika tetap bingung, minta bantuan guru atau pendamping; jangan mematikan keamanan perangkat.

Petunjuk khusus untuk pelajaran ini

Ekstensi dan Content-Type dari klien dapat dipalsukan. Pemeriksaan path perlu memperhatikan symlink dan perilaku OS.

Apa yang perlu kamu catat?

Tulis langkah yang kamu lakukan dan hasil yang benar-benar terlihat. Tambahkan satu kalimat: “Saya belajar bahwa …”. Untuk latihan menggambar, simpan gambar dan jawabanmu.

Cek pemahamanmu

Apakah mengganti nama file atau mengecek ekstensi saja cukup untuk upload aman?

Buka pembahasan

Tidak. Perlu kebijakan format, ukuran, lokasi, nama milik server, otorisasi dan pencegahan eksekusi, sesuai kebutuhan.

Tantangan mandiri

Mengapa mengganti ../ saja tidak menjamin path aman?

Pedoman penilaian tantangan

Jawaban harus sesuai hasil aktual, menyebut batas kesimpulan, dan tidak keluar scope. Gunakan langkah serta hasil harapan pelajaran sebagai pembanding; nilai 0 bila belum ada, 1 bila sebagian, 2 bila jelas dan dapat ditinjau.

Perbaikan & retest

Gunakan API penyimpanan dan library terawat, allowlist format dan batas ukuran.

Referensi

↑ Kembali ke awal pelajaran