Pengalaman sertifikasi OSEP

OSEP adalah sertifikasi dari Offsec untuk pentester berpengalaman (Offsec Experienced Penetration Tester). Tidak seperti ketika saya mengambil OSCP dan OSWE yang langsung sukses, saya gagal dua kali ujian, dan baru berhasil hari ini.

lulus

Meskipun kecewa pada diri sendiri karena tidak langsung sukses, menurut saya pengalamannya tetap perlu dituliskan. Dari pencarian singkat saya, sepertinya belum ada tulisan sertifikasi OSEP dalam bahasa Indonesia yang saya temukan di internet. Semoga tips yang saya tuliskan bisa berguna supaya yang membaca ini tidak perlu mengambil 3 kali seperti saya.

Tentang OSEP

Fokus sertifikasi OSEP adalah menyerang Active Directory (AD) di Windows. Secara awam: di berbagai perusahaan besar, AD dipakai untuk mengatur semua komputer di perusahaan. Nama kelas untuk mendapatkan sertifikasi OSEP ini adalah: PEN-300.

Tentunya untuk bisa masuk sampai domain controller, tidak bisa sekedar memakai exploit saja, kebanyakan sistem akan dilindung oleh antivirus dan EDR (Endpoint Detection and Response). Jadi di materinya ada bagaimana cara membuat malware, dan bagaimana agar lolos dari antivirus (dengan berbagai teknik, seperti process injection, obfuscation, dsb).

Saya sendiri tidak pernah melakukan pentest AD, karena semua klien sejauh ini minta testingnya on site, sedangkan saya hanya melakukan pentest remote. Secara praktis, sebenarnya sertifikasi ini tidak terlalu berguna untuk saya, tapi saya penasaran dengan ilmu active directory.

Dua puluh tahun yang lalu saya pernah jadi admin di Informatika ITB dan sedikit menyentuh AD, tapi itu masih jaman Windows 2000 yang bahkan belum memakai PowerShell. Setelah itu saya masih memakai Windows tapi tidak pernah menjadi admin lagi.

Supaya lebih jelas ceritanya, saya jelaskan kebijakan ujian OSEP:

  • Setelah membeli course dan materi, maka diberi waktu lab (60 hari). Dari titik selesai waktu lab, ada jarak maksimum 120 hari untuk ujian. Jadi tidak bisa menggeser ujian lebih dari itu
  • Jika sudah mengeset waktu ujian, kita bisa minta geser, maksimum 3x gesernya, dan tetap harus di batas 120 hari awal itu. Jadi kalau sudah set tanggal mentok, ya tidak bisa digeser lagi.
  • Tidak bisa sembarangan memilih jadwal ujian, tergantung ketersediaan slot
  • Jika gagal ujian pertama, maka boleh mengulang setelah masa cool off 6 minggu, jika masih gagal lagi, cool off jadi 8 minggu, dan kalau masih gagal terus, jaraknya adalah 12 minggu

Format ujiannya seperti dituliskan di sini :

The exam consists of one large network with multiple machines that must be compromised. As the exam network simulates a corporate network, you will have to first obtain a foothold and then perform additional internal attacks. There are multiple attack paths through the network that will result in the same level of compromise.

Meskipun ada multiple path, tapi kenyataannya ada titik di mana kalau kita mentok maka tidak bisa terus. Ini berbeda dengan OSCP, kita diberi N mesin terpisah, dan tiap mesin bisa diserang terpisah, tidak berhubungan.

Untuk lolos ujian, minimal mendapatkan 100 poin, atau cukup mendapatkan target utama.

Percobaan pertama (Mei 2021)

Saya tidak terlalu sedih gagal di ujian pertama, karena saya memang tidak siap sama sekali. Tidak lama setelah mendaftarkan OSEP (biaya 1299 USD atau sekitar 20 juta rupiah) kantor saya terancam tutup di puncak krisis COVID di Thailand. Karena krisis ini, mengerjakan lab untuk latihan bukan prioritas buat saya. Krisisnya sempat berlalu, dan saya agak santai lagi, tapi sudah tidak bisa mengerjakan lab lagi (lewat 60 hari).

Saya terpikir untuk setup lab sendiri, lalu menggeser ujiannya sampai batas waktu terakhir. Tapi ternyata krisisnya kembali, dan tidak sempat mensetup lab. Saya tidak sempat terlalu kecewa karena sekitar 10 hari sejak ujian itu, kantor lama saya tutup.

Pikiran saya waktu itu ketika mengambil ujian: ya sudah diambil aja walau tidak siap, kalau tidak lolos minimal dapat gambaran waktu mengambil ujian ini lagi.

Waktu saya mengambil ujian percobaan pertama ini, OSEP masih relatif baru, belum banyak materi tambahan di internet, belum ada berbagai repo github yang bisa dipelajari.

Saya hanya berhasil mendapat 50 poin. Setelah itu saya sibuk pindah ke tempat kerja baru (masih di Chiang Mai Thailand). Dan sejak itu saya melupakan dulu OSEP.

Percobaan kedua (Januari 2023)

Penyesalan utama ketika mengambil percobaan kedua adalah: saya menunggu terlalu lama. Percobaan pertama Mei 2021, dan percobaan kedua: Januari 2023, jaraknya mendekati 2 tahun. saya sudah lupa sebagian besar pengalaman dari ujian pertama.

Di tahun 2022, ketika sudah lewat setahun dari ujian pertama, saya sudah memiliki tekat untuk segera mengambil ujian OSEP lagi. Kalau ditunda terus tidak akan jadi, cara saya memaksa diri: saya membayar biaya exam retake (200 USD) dan mengeset jadwal 3 bulan dari waktu saya membayar. Saya tidak mengambil extensi lab, karena biayanya 359 USD (5.5 juta rupiah) untuk 30 hari. Terlalu mahal, mending saya setup lab sendiri.

Ternyata strategi memilih tanggal mendekati batas ini tidak bagus: ternyata jadwalnya bentrok dengan acara penting, jadi terpaksa saya geser. Dan setelah digeser akhirnya di jadwal itu tetap bentrok dengan cara lain lagi, dan tidak ada slot tanggal lain tersedia (ternyata slot ujian OSEP ini laris). Untungnya bentrok terakhir ini hanya beberapa jam (5-6 jam), tidak sepanjang hari, jadi ya sudah dijalani saja.

Meski ada bentrok dengan acara lain, kali ini saya merasa persiapan saya sudah lebih matang dari sebelumnya. Saya sudah mempersiapkan lab pribadi dengan ESXi (itu sebabnya kenapa saya menulis tentang installasi ESXi).

Tapi ternyata bagian awal ujiannya jauh lebih sulit dari sebelumnya (soalnya sudah berubah lumayan lebih sulit). Perubahan kesulitan soal ini sebenarnya wajar untuk semua level sertifikasi Offsec. Contohnya untuk yang OSCP sekarang juga lebih sulit, dulu tidak ada soal AD dan sekarang ada.

Di percobaan kedua ini saya merasa sudah sangat paham berbagai konsepnya, dan tahu apa yang tepatnya harus dilakukan di setiap langkah. Ternyata setelah masuk ke ujian, masih ada teknologi yang kurang saya pahami. Ilmu saya di teknologi teknologi Microsoft (.NET dan teknologi sekitarnya) juga masih kurang.

Saya juga merasa cukup lambat mengerjakan ujiannya, meskipun saya tahu apa yang harus dilakukan, jika ketemu error di Windows, masih tetap kurang bisa mengatasi dengan cepat. Beberapa error kecil membuang waktu saya berjam-jam. Waktu bereksprimen di ESXi saya tidak menemukan error karena saya sendiri yang mensetup semuanya.

Saya cukup kecewa dengan kegagalan kedua ini, mentok nilainya 70 poin, tapi sudah punya strategi untuk pecobaan ketiga. Ini strateginya:

  • Mengambil ujian lagi (retake) sesegera mungkin, supaya kalau ingin geser, ada banyak opsi jadwal. Jika terlalu jauh ke depan, tidak bisa diprediksi hal penting apa yang akan muncul. Selain itu saya berharap tingkat kesulitan masih sama, dan saya belum lupa pengalamannya.
  • Mensetup lab saja masih terasa kurang immersif, karena hanya dipakai ketika latihan. Saya menginstall domain controller di jaringan lokal saya, dan PC saya digabung ke domain AD supaya beneran merasakan memakai lingkungan Windows seperti di perusahaan. Bahkan server Linux juga saya join domain.
  • Mempelajari dasar teknologi Microsoft (.NET, berbagai framework .NET, dsb).

Saya merasa kecewa dengan kegagalan kedua, tapi ya tidak bisa saya ubah. Ada sedikit penyesalan “andaikan kemarin nggak bentrok waktunya” dan “andaikan kemarin belajar juga teknologi ekstra di luar diktat”. Tapi hidup ini tidak selalu mulus.

Percobaan Ketiga (Maret 2023)

Sekarang saya lebih siap, dan bisa lebih lancar. Di hari pertama 110 poin langsung sudah saya dapatkan dalam kurang dari 12 jam. Saya segera mulai menyusun laporan, karena sudah mendapatkan nilai minimum untuk lulus. Tapi penyusunan laporan terinterupsi karena kemudian terpikir lagi cara lain dan terus sampai dapat 160 poin.

PC di bawah untuk ESXi, mini PC jadi domain controller di rumah

Ujiannya tidak seratus persen mulus. Saya sempat yakin ada masalah dengan mesin exam-nya, dan sampai bertanya ke Offsec. Mereka segera mengecek dan menyatakan semua normal. Setelah itu saya baru berhasil masuk. Dari hasil membaca reddit.com/r/osep kesimpulan saya: kadang exam lab perlu direset agar attacknya berhasil.

Mendekati akhir exam, saya baru terpikir menyerang beberapa server terakhir, tapi waktunya tidak cukup. Padahal niatnya di percobaan ketiga ini ingin bisa sempurna menyelesaikan semua, walaupun 100 poin saja sudah cukup.

Saya menyelesaikan laporan 132 halaman sampai jam 2 pagi. Dua hari kemudian saya mendapatkan informasi bahwa saya lulus. Setelah lulus dan merenungkan kembali kegagalan kedua: saya hanya kurang waktu di ujian kedua, andaikan ada beberapa jam lagi, saya bisa setidaknya 30 poin lagi.

Tips

Beberapa tips dari pengalaman dan dari membaca di Internet:

  • Pelajari isi diktat menyeluruh
  • Coba isi diktatnya, karena teori dan praktik bisa berbeda
  • Kerjakan labnya, jangan seperti saya yang melewatkan ini
  • Jadwalkan exam sesegera mungkin sebelum lupa dengan materinya, dan jika ingin retake, lakukan sesegera mungkin juga
  • buat lab sendiri, belajar setup dan konfigurasi sendiri (walau ada tool otomatis untuk setup lab, tapi dengan konfigurasi sendiri secara manual akan lebih paham berbagai setting Windows). Membeli PC untuk ESXi lebih murah daripada membayar lab extension di Offsec (dan bisa dijual lagi).
  • paksakan diri memakai PowerShell di Windows (atau Linux) sehari-hari
  • Pelajari juga teknologi Microsoft lain yang sering dipakai di server, selain yang tercantum di diktat
  • Kalau ilmu Linux masih kurang, perlu diperdalam juga karena ada soal Linux (saya tidak ada masalah dengan yang Linux karena saya pakai sehari-hari).
  • Kadang ada masalah di lab examnya, jika memang yakin ada salah di exam, boleh tanya dan mereka akan mengecek

Jika kita punya mindset yang benar, sebenarnya ujiannya relatif mudah. Untuk OSCP, mindsetnya adalah: pakai tool standard dan exploit standard pasti akan selesai (tidak perlu membuat tool baru, atau memodifikasi tool yang ada). Untuk OSWE: diberikan source code web app, buat exploitnya. Untuk OSEP: lab ini dibuat mirip dunia nyata, jadi berpikirlah mendekati pikiran administrator yang mensetup AD di dunia nyata.

Penutup

Kegagalan di bulan Januari sempat jadi beban pikiran saya selama 2 bulan ini, tapi saya bersyukur akhirnya bisa lulus. Saran saya untuk yang masih takut mengambil berbagai sertifikasi: dicoba saja, kadang karena banyak faktor kita bisa gagal, tapi begitulah hidup, tidak bisa selalu mulus. Tiap kali gagal, coba buat rencana baru supaya berhasil.

Saya sangat bersyukur punya istri yang sabar dan sangat mendukung ujian saya. Tiap kali ujian saya menghabiskan waktu 48 jam, dan selama itu Risna harus mengurus berbagai macam hal, bahkan terakhir perlu membawa mobil ke bengkel karena ada masalah dengan mobil.

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.