Serah terima akses pengujian keamanan: cakupan, akun, dan pencabutan
Penguji yang meminta kredensial VPN butuh serah terima dengan cakupan jelas, bukan login cadangan. Gerbang otorisasinya, sebut targetnya, terbitkan akun, lalu cabut.
Seorang penguji meminta alamat gateway, rincian DNS internal, dan kredensial VPN, lalu permintaan itu diteruskan kepada Anda dengan subjek «perlu akses». Permintaan itu sendiri tidak memberi tahu Anda apakah ini penilaian internal, pengujian aplikasi terautentikasi, atau pekerjaan situs web publik yang cakupannya disalahpahami. Jalankan serah terima sebagai rangkaian dengan gerbang di setiap langkah, dan berhenti pada gerbang pertama yang tidak terbuka. Itu mengubah permintaan yang kabur menjadi sesuatu yang bisa Anda otorisasi, serahkan, dan cabut kemudian.
Mulai dari otorisasi, bukan dari kredensial
Sebelum alamat apa pun keluar dari kotak masuk Anda, tetapkan siapa pemilik target dan siapa yang boleh menyetujui pengujian pada target itu. Verifikasi penguji melalui kontak penugasan yang sudah dipakai organisasi Anda, bukan melalui orang yang meneruskan email. Hubungan pelanggan bukan izin untuk menguji setiap sistem yang dapat dijangkau dari sebuah akun, dan pesanan pembelian bukan dokumen cakupan.
Tulis tujuan yang disetujui dalam satu kalimat dan simpan di samping serah terima. «Nilai autentikasi portal pelanggan» dan «nilai jaringan internal» mengarah ke paket yang sangat berbeda, dan perbedaannya harus diselesaikan sebelum penyediaan, bukan setelah temuan masuk. Kalimat itu juga memberi Anda sesuatu untuk ditunjuk ketika permintaan membesar di tengah penugasan.
Jika ada penyedia hosting atau pihak ketiga lain di jalur ini, persyaratan mereka mendahului kenyamanan Anda. Menguji infrastruktur orang lain tanpa izinnya adalah masalah yang berbeda dari menguji aplikasi yang berjalan di atasnya.
Sebut sudut pandang dan targetnya
Sudut pandang adalah pertanyaan yang ingin dijawab penilaian, dan itu menentukan paket akses lebih daripada alat apa pun yang direncanakan penguji. Pengujian publik tanpa autentikasi memerlukan URL dan jendela waktu. Pengujian terautentikasi memerlukan akun khusus untuk peran tertentu dalam cakupan, dan penilaian internal memerlukan titik masuk yang ditetapkan dengan rentang target yang eksplisit.
| Viewpoint | What you hand over | What it does not authorize |
|---|---|---|
| Public website | Approved URL, TLS hostname, testing window | Internal network entry, adjacent hosts |
| Authenticated app | URL plus per-role test accounts | Other tenants, admin consoles outside scope |
| Private staging | Named private path and test accounts | Production systems behind the same gateway |
| Internal network | Entry point and written target ranges | Anything outside those ranges, including the gateway itself |
Tempat terowongan masuk bukan fakta yang sama dengan aplikasi apa yang berada di belakangnya, dan itu sama sekali tidak mengizinkan penyelidikan titik masuk. Katakan itu secara eksplisit dalam serah terima, karena kalimat «kamu memberiku akses ke subnet itu» datang cepat begitu temuan diperdebatkan. Daftar target tertulis adalah satu-satunya hal yang menyelesaikannya setelah itu.
Berikan nama host TLS bersama URL. Alamat IP telanjang memaksa penguji menebak nama, dan nama yang ditebak menghasilkan galat sertifikat yang dilaporkan sebagai temuan, bukan sebagai kesalahan serah terima.
Terbitkan identitas khusus dengan masa berlaku
Sediakan akun yang hanya ada untuk penugasan ini; jangan meminjamkan login harian seorang staf. Tetapkan keterjangkauan jaringan dan izin aplikasi sesuai tugas yang disepakati, atur pendaftaran autentikasi lewat jalur yang didukung, dan lampirkan tanggal kedaluwarsa dengan orang yang disebut namanya sebagai penanggung jawab pencabutan. Serahkan kredensial melalui kanal aman yang disepakati, terpisah dari dokumen cakupan yang diteruskan ke mana-mana.
sudo useradd -m -e 2026-12-31 tester01 sudo passwd -S tester01 id tester01 lastlog -u tester01
Catat siapa menerima apa, dan kapan. Catatan itu adalah perbedaan antara serah terima yang terkendali dan kata sandi bersama yang tidak dapat dilacak siapa pun, dan itu hal pertama yang diminta semua orang setelah insiden. Simpan bersama dokumen cakupan, bukan di utas obrolan, dan catat kanal penyerahan di samping penerima. Satu baris bertanda waktu selalu mengalahkan ingatan.
Bidang kedaluwarsa adalah jaring pengaman, bukan rencananya. Seseorang tetap harus mencabut jalur jaringan dan peran aplikasi di akhir, karena login kedaluwarsa pada jaringan yang masih terjangkau bukanlah akses yang dicabut.
Buktikan serah terima bekerja sebelum jendela dibuka
Jalankan lompatan pertama penguji sendiri, dari posisi sedekat mungkin dengan posisinya. Selesaikan namanya, periksa identitas sertifikat, dan pastikan jalur mencapai alamat yang dimaksud, bukan alamat tetangga.
dig +short app.example.com openssl s_client -connect app.example.com:443 -servername app.example.com </dev/null> 2>/dev/null | openssl x509 -noout -subject -dates ip route get 10.60.0.25
Jika jalur tidak dapat mencapai sebuah target, berhenti dan selaraskan serah terimanya, bukan membiarkan penguji menemukan rute alternatif. Keterjangkauan dadakan adalah cara sebuah penilaian diam-diam melebar di luar cakupannya, dan hampir tidak pernah didokumentasikan sesudahnya.
Kirim kontak operasional, jam yang diizinkan, tindakan yang dikecualikan, dan syarat penghentian bersama kredensial. Penguji yang tidak dapat menghubungi siapa pun pada 02:00 akan mengambil keputusan yang tidak Anda otorisasi, dan keputusan itu akan diuraikan dalam laporan seolah-olah berada dalam cakupan.
NIST SP 800-115 membingkai penilaian teknis sebagai pengujian terencana yang diikuti analisis dan mitigasi, dan itulah bentuk yang diikuti serah terima ini. Gerbang di atas adalah pilihan desain editorial untuk engineer dukungan, bukan daftar periksa yang dikutip dari publikasi itu.
Tutup penugasan dengan mencabut akses
Cabut dengan urutan kebalikan dari penyediaan: peran aplikasi, lalu akses jaringan, lalu identitasnya sendiri. Pastikan setiap langkah alih-alih menganggap konsol melakukan apa yang dijanjikan tombol. Kunci akun sebelum mematikan sesinya, atau sesi itu akan mengautentikasi ulang lewat jalur lama. Lalu periksa koneksi yang sudah terbentuk sekali lagi sebelum Anda menyatakannya tertutup.
sudo passwd -l tester01 sudo pkill -u tester01 ss -tn state established '( sport = :443 )'
Selesaikan data pengujian yang disimpan, lalu lacak perbaikan melalui proses pelaporan yang disepakati di awal. Laporan harus menyebutkan lingkungan, tingkat akses, cakupan, dan batasannya, karena laporan mencatat temuan satu penilaian dan bukan pernyataan permanen bahwa situs aman.
Simpan catatan pencabutan bersama catatan serah terima. Saat penugasan berikutnya dibuka, Anda ingin tahu persis apa yang dicabut terakhir kali dan siapa yang menyetujuinya, bukan menyusun ulang gambarnya dari ingatan.