Review Sertifikasi OSCP

Review Sertifikasi OSCP. Saya lulus ujian sertifikasi OSCP pada Februari 2023, dan berikut adalah ulasan mengenai ujian tersebut.

Pendahuluan

Saat artikel ini ditulis, saya sudah mengambil ujian sertifikasi lain seperti CRTO, CRTP, PNPT, dll. Namun saya akan mencoba untuk menulis pengalaman bedasarkan apa yang saya rasakan dan saya alami sebelum dan sesudah ujian OSCP ini agar lebih relevan.

OSCP merupakan sertifikasi pertama saya di bidang cyber security, dan saya pun sebenarnya mengambil sertifikasi ini lebih ke karena tuntutan dari perusahaan. Saat saya mengambil ujian OSCP pada Februari 2023, format exam sudah berubah dimana implementasi satu set Active Directory sudah diberlakukan dalam exam. Dan jujur saya waktu itu hal tersebut memang membuat "takut" karena saya tidak memiliki pengalaman samasekali dalam hal eksploitasi Active Directory.

Yep, saya (bisa dibilang) memiliki pengalaman untuk melakukan kegiatan pentesting pada infrastruktur dengan mesin Linux, mobile apps, ataupun web apps. Namun untuk environment Windows, jangankan melakukan eksploitasi, sekedar mengecek lokasi direktori temp di Windows saja saya harus googling dulu waktu itu.

Persiapan

Seperti yang saya ceritakan diatas, memang agak mengerikan awalnya ketika akhirnya tiba giliran saya untuk mengambil sertifikasi ini. Di tempat bekerja saya (PT. Mitra Integrasi Informatika), memang diadakan program sertifikasi OSCP bagi siapapun yang belum memilikinya. Dan ini sifatnya wajib. Yang membuat takut adalah karena ketidaktahuan saja di eksploitasi AD, serta beberapa review mengatakan ujiannya sulit, dll.

Oke, setelah membeli course PEN-200 (materi untuk exam OSCP), saya memang melewati beberapa materi awal seperti bash scripting hingga PE pada mesin Linux. Saya langsung lompat ke topik enumerasi hingga eksploitasi Active Directory.

Untuk course sendiri sebenarnya waktunya 90 hari (opsi course PEN-200 30 hari sudah tidak ada ketika saya mengambil ujian ini). Waktunya seharusnya lebih dari cukup untuk menamatkan semua materi di PEN-200, namun karena waktu pengambilan course saya yang bisa dibilang "kurang tepat", sehingga saya melewati banyak waktu untuk mempelajari materinya. Kebetulan saya membeli PEN-200 di akhir tahun, dan kebetulan load kerjaan di akhir tahun juga lumayan menguras tenaga. Sehingga diluar jam kerja saya pakai untuk tidur. Itulah alasan saya melakukan skip pada beberapa materi, agar seluruh materi tentang Active Directory (yang saya takuti) bisa tercover sebelum waktu ujian tiba.

Passing Scenario

Ujiannya sendiri full hands-on, dengan 6 mesin yang harus di-compromised. 1 set Active Directory (3 mesin) dengan jumlah poin 40, dan 3 mesin standalone dengan masing-masing 20 poin. Jika kalian tidak berhasil mendapatkan akses root atau administrator namun berhasil mendapatkan low user di mesin standalone, maka tetap mendapatkan 10 poin. Namun khusus untuk set AD, kalian wajib mendapatkan flag di 3 mesin untuk mendapatkan 40 poin. Katakanlah kalian hanya dapat menyelesaikan dua mesin di set AD, maka nilai atau poin yang didapat adalah 0. Dan untuk lulus OSCP, kalian harus mendapatkan minimum 70 poin.

Berikut adalah gambaran skenario bagaimana kalian bisa lulus ujian OSCP.

  • 40 pt AD + 3 local.txt flags
  • 40 pt AD + 2 local.txt flags + 1 proof.txt flag
  • 40 pt AD + 2 local.txt flags + bonus points
  • 40 pt AD + 1 proof.txt + 1 local.txt + bonus points
  • 3 fully completed non-AD machines + bonus points
Untuk poin bonus sendiri bisa didapatkan dengan menyelesaikan minimal 80% dari tiap modul di PEN-200, dan 30 flag atau proof.txt dari 30 chall labs dari OffSec Learning Platform.
Referensi:
Pada case yang saya hadapi, saya tidak mengerjakan minimum 80% dari setiap modul PEN-200, sehingga tidak mendapatkan poin bonus. Artinya skenario untuk lulus dengan poin minimum tetap harus menyelesaikan mesin AD saat exam.

Skenario awal yang saya persiapkan adalah mengerjakan satu mesin standalone dan mendapatkan flag root/administrator, kemudian mendapatkan low user dari satu mesin standalone lagi. Artinya di titik ini saya mendapatkan 30 poin. Selanjutnya mengerjakan set AD untuk mendapatkan 40 poin. Total minimum poin tersebut untuk memastikan kelulusan OSCP.

Ujian

Oke saat ujian telah tiba. Saya saat itu mengambil start di jam 5 pagi. Karena saya berpikir memulai exam di jam itu dengan otak yang masih fresh, maka ujian akan lebih mudah dilaksanakan. Untuk mesin standalone mungkin karena lagi hoki, saya mendapatkan 2 mesin Linux dan 1 mesin Windows. Tentu saja yang saya targetkan adalah dua mesin Linux terlebih dahulu. Solusi dari soal atau mesin yang saya kerjakan cukup straight forward, tidak banyak rabbit hole. Sehingga di satu jam pertama, saya sudah berhasil mendapatkan akses root dari dua mesin standalone, yang artinya 40 poin sudah di tangan.

Mungkin dikarenakan ketakutan saya terhadap eksploitasi Active Directory, saya membuang banyak waktu di AD sets. Berfikir terlalu jauh yang padahal solusinya didepan mata, dll. Singkat cerita, saya baru berhasil menyelesaikan AD sets di jam 4 sore. Di titik itu sebenarnya sudah ada niatan untuk menyudahi saja examnya, karena berdasarkan flag yang didapat poin yang terkumpul sudah 80. Namun karena waktu masih sangat panjang, saya akan coba untuk menyelesaikan mesin terakhir. Tapi sebelum itu saya coba cek lagi seluruh screenshot yang saya kumpulkan pada mesin yang berhasil di compromised, memastikan tidak ada bukti atau proof untuk keperluan reporting yang tertinggal.

Saya baru mulai start lagi di jam 7 malam, dan berhasil mendapatkan flag low user 30 menit kemudian. Sempat mencoba untuk mendapatkan akses Administrator, namun tidak berhasil. Mungkin karena sudah dirasa aman dengan 90 poin, saya sendiri tidak berusaha lebih keras lagi untuk mesin terakhir ini, dan akhirnya memilih untuk beristirahat sebelum melakukan reporting di hari berikutnya.

Oh iya, sebagai catatan tambahan, waktu exam adalah 24 jam, dan waktu reporting juga 24 jam setelah waktu exam habis. Namun jika kalian berhasil menyelesaikan exam kurang dari 24 jam, katakanlah dalam waktu 10 jam kalian merasa sudah cukup untuk mengumpulkan poin kelulusan, jangan klik end exam pada portal ujian OSCP. Karena perhitungan waktu 24 reporting akan dihitung mulai sejak kalian melakukan klik end exam. 

Reporting

Untuk format atau template reporting sebenarnya bebas, dan banyak bertebaran di internet. Toh dari pihak OffSec sendiri tidak mengharuskan report harus dengan kualitas company-graded. Namun pastikan setiap temuan dilengkapi dengan penjelasan dan juga screenshot.

Singkat cerita, setelah menunggu sekitar satu hari setelah submit report, saya mendapatkan notifikasi bahwa saya lulus ujian OSCP.


Tips Ujian OSCP

Jika kalian berniat mengambil ujian OSCP, berikut tips dari saya.

  • Focus on Your PEN-200

Banyak orang menyarankan untuk membeli resource tambahan seperti HackTheBox Pro Labs dll untuk mempersiapkan OSCP. Namun menurut saya itu tidak perlu. Cukup fokus aja pada materi di PEN-200, kerjakan latihan disana, dan kalian akan siap untuk melaksanakan ujian OSCP. Saya pastikan seluruh challenge yang kalian temui di exam nanti pasti sudah dibahas di course PEN-200.

  • Prepare Your Good Notes

Selama mempelajari course PEN-200, catat tips, tools, ataupun command yang kalian rasa perlu dicatat. Notes itu akan berguna selama exam nanti (dan kalian diijinkan untuk membuka notes, karena ujian ini bersifat open book). Untuk notes sendiri kalian bisa manfaatkan CherryTree, Obsidian, Notion, dll.

  • Comfortable with Your Tools

Selama ujian kalian akan menggunakan tools tools enumerasi dan eksploitasi seperti Crackmapexec, Nmap, PowerView, PowerUp, WinPEAS, LinPEAS, dll. Pastikan kalian sudah nyaman menggunakan tools tersebut. Jika merasa ada command yang perlu dicatatat, siapkan pada notes kalian.

  • Stick with The Rules

Pastikan kalian membaca peraturan exam yang ditulis disini: OSCP Exam Guide.

Ada beberapa tools autopwn dan autoscan seperti SQLmap yang dilarang dalam ujian. Tools enterprise seperti Burp Professional, Nessus, dll juga dilarang.


Saya membaca di forum Reddit bagaimana beberapa orang gagal ujian karena tidak membaca rules. Misalnya melakukan ekstrak flag menggunakan CrackMapExec. Hal ini jelas tidak memenuhi kriteria bahwa flag harus diambil dari "interactive shell". 

Sangat disayangkan jika kalian gagal ujian gara-gara hal sepele seperti ini.

Atau gagal gara-gara menggunakan metasploit pada dua mesin standalone berbeda. Padahal di rulesnya jelas bahwa Metasploit Framework hanya diijinkan pada satu mesin saja.

Intinya, pastikan kalian membaca dan mematuhi rules yang ada. Jika ada yang belum jelas, bisa langsung ditanyakan melalui email support OffSec.

  • Take Enough Rest

Ketika ujian, dan kalian mengalami kebuntuan, cobalah untuk beristirahat. Tenangkan pikiran. Banyak orang yang gagal ujian karena panik, sehingga tidak dapat berpikir jernih untuk mendapatkan solusi. Atau karena panik, malah tidak bisa tidur sehari sebelum exam. Hal ini tentu malah akan menganggu ketika hari exam tiba.

  • Keep in Mind: OSCP is Entry Level Certification

Saran ini bukan ditujukan untuk meremehkan exam OSCP. Namun agar kalian tidak berpikir terlalu jauh ketika waktu ujian tiba. Jika kalian merasa exploit kalian tidak bekerja, atau service yang terdeteksi di nmap tidak kalian temukan public exploitnya entah di Exploit-DB atau di Github, tinggalkan. Berarti bukan disitu initial accessnya. Sejauh ini seluruh exploit untuk initial access di exam bisa kalian temukan berdasarkan CVE-ID, kalian tidak perlu sampai harus melakukan crafting exploit dll. Ya mungkin ada custom scripting satu atau dua baris di python, tapi tidak sampai sekompleks membuat exploit sendiri dari awal.

Glorifikasi OSCP

Saya adalah korban glorifikasi dari orang-orang yang menulis review exam OSCP di Medium (dan ini juga alasan saya menulis review ini). Mereka menulis review seolah-olah harus berdarah-darah untuk lulus OSCP, menyebabkan pembaca review berpikir ujiannya bakal sulit.

Jika kalian membaca tulisan ini, buang jauh-jauh pikiran itu. OSCP tidak sesulit itu, karena pada kenyataannya OSCP adalah sertifikasi entry-level. Payload yang kalian buat dari perintah msfvenom dapat langsung dieksekusi di mesin target. Kalian tidak harus melakukan bypass Windows Defender dll.

Solusi dari setiap tantangan juga cukup straight forward. Tidak ada rabbit hole. Jika kalian pernah mengerjakan mesin di HackTheBox, mungkin level dari tantangan di exam sendiri hanya berkisar di level easy-medium saja.

Lalu kenapa banyak yang gagal? Menurut saya banyak yang gagal di exam ini justru karena menjadi korban glorifikasi orang-orang yang sudah lulus terlebih dahulu. Mereka menjadi takut karena menganggap ujian ini sulit, dan ketakutan itu terbawa hingga waktu ujian. 

Atau, kepanikan yang terjadi saat ujian berlangsung. Diatas saya menceritakan bagaimana saya menghabiskan waktu hampir setengah hari untuk menyelesaikan AD sets. Saat saya yakin bahwa initial accessnya berasal dari CMS yang seharusnya bisa di RCE, saya mulai panik ketika exploit yang saya jalankan tidak bekerja. Menghabiskan waktu berjam-jam untuk melakukan encoding backdoor karena berpikir mungkin exploitnya tidak bekerja karena backdoornya terdeteksi antivirus. Setelah berjam-jam tidak ada hasil, saya ijin ke proctor untuk istirahat. Menyalakan rokok, ngopi, lalu terlintas di kepala bahwa mungkin masalahnya bukan di backdoor tapi di listener. Dan benar saja, ketika saya kembali ke meja untuk melanjutkan ujian, mengubah port listener dari 31337 ke 80, netcat di Kali Linux saya mendapatkan koneksi dari target. Dan hal ini sebenarnya bukan hal baru, di PEN-200 pun dibahas.

Intinya, jangan takut dan panik. Ujian ini mudah. Namun jangan meremehkan juga. Pelajari semua yang ada di PEN-200. Dengan mengikuti saran ini, seharusnya kalian bisa mendapatkan kelulusan exam OSCP.

Is OSCP Worth It?

Bisa iya, bisa tidak. Bagi saya pribadi, satu-satunya keunggulan OSCP saat ini adalah reputasinya. Memegang sertifikasi OSCP seperti memegang golden ticket di cyber security. Tawaran pekerjaan lebih banyak, nego gaji lebih mudah, dll. Sebagai gambaran, ketika saya mengumumkan sertifikasi OSCP saya di LinkedIn, langsung banyak tawaran pekerjaan masuk. Sertifikasi ini seperti primadona bagi HR.

Jadi jawabannya, iya. Untuk menunjang karir OSCP worth it untuk diambil.

Namun, jika kalian merasa karir kalian sudah cukup stabil, sepertinya tidak perlu untuk mengambil OSCP. Untuk harga USD 1600 (atau mungkin sekarang sudah naik), materi PEN-200 terbilang busuk. Mendengarkan penjelasan video di PEN-200 seperti mendengarkan penjelasan dari text-to-audio. Materinya juga terlalu loncat-locat, apalagi challenge nya. Kadang kredensial atau akses dari chall ke-1 dari sebuah modul, baru muncul lagi di chall ke-5. Saya kurang tau apakah ada update dari PEN-200 menjadi lebih baik, namun itu yang saya rasakan ketika mengambil course ini.

Sebagai catatan, materi PEN-200 sendiri hanya valid selama 90 hari jika kalian membeli akses yang 90 hari. Setelah itu, materi ini tidak akan lagi bisa diakses. Kalian harus membayar lagi untuk extend materinya. Mungkin OffSec harus menambah lagi motto setelah "Try Harder", yaitu "Pay Harder".

Jika melihat fakta diatas, maka jawabannya tidak. Dengan harga 1600 USD, sertifikasi ini terlalu overpriced. Dari penyedia course lain pun dengan harga yang lebih murah bisa mendapatkan materi yang jauh lebih bagus, dan environment exam yang tidak kalah dari OSCP. (Tapi kalau dibayarin sih hayuk aja...)

OSCP vs The Competitors

Di Reddit atau Quora, orang banyak membandingkan OSCP dengan PNPT, sertifikasi dari TCM Security. Alasannya karena kedua sertifikasi ini dianggap setara dari segi kesulitan. Namun untuk materi, Practical Ethical Hacking (PEH) dari TCM Security jauh lebih baik jika dibanding PEN-200. Penyampaian materinya lebih terarah. Dan juga, akses ke coursenya life-time. Harganya pun jauh lebih murah kisaran USD 300, untuk akses course, 1x exam PNPT, dan free 1x retake (jika gagal ujian).

Atau dengan harga yang tidak sampai setengah dari harga OSCP, kalian bisa ambil course dan exam PNPT dan CRTP. Materi CRTP dari Altered Security mengulas eksploitasi Active Directory lebih dalam, serta, materinya lifetime, sehingga kalian akan mendapatkan source baru ketika ada update modul. Harganya sama, kisaran di USD 300.

Jadi, setelah membaca ulasan ini, masih takutkah kalian untuk mengambil sertifikasi OSCP? Atau, masihkan ingin mengambil OSCP?

Posting Komentar untuk "Review Sertifikasi OSCP"