Bagaimana Anda menanggapi proposal seperti itu? Ada topik yang dilewati oleh sebagian besar spesialis keamanan siber, yang disebut "eksploitasi biner". Pertama, Anda perlu menyelesaikan tugas uji: cukup membalikkan kode assembly dan menghasilkan kunci. Maka perlu untuk menyelesaikan 8 modul pekerjaan laboratorium di stand tahun 2000-an dalam 60 hari. Kemudian Anda dapat mempersiapkan dengan menggunakan buku, tetapi itu akan membantu Anda memahami topik dengan hanya 20 persen. Kemudian akan ada ujian yang melelahkan dari empat tugas selama 48 jam, dan segera setelah itu Anda akan diberikan waktu 24 jam untuk menyiapkan laporan dalam bahasa Inggris. Dan semua kesenangan ini berharga $ 1.800.
Saya berkata, "Beri aku dua!"
Jadi, selanjutnya saya akan memberi tahu Anda bagaimana saya mempersiapkan dan lulus ujian menarik untuk sertifikat internasional di bidang pengujian penetrasi Pakar Bersertifikat Keamanan Ofensif, atau singkatnya OSCE, dari Keamanan Serangan .
Organisasi ini memiliki beberapa sertifikasi lain, tetapi Ahli mengasumsikan konfirmasi pengetahuan ahli di beberapa area sekaligus: serangan pada aplikasi web, serangan di tingkat jaringan, fuzzing dan pengembangan eksploitasi untuk Windows x86. Terlepas dari kenyataan bahwa kursus tersebut sering dikritik karena ketinggalan zaman, dasar-dasar pengoperasiannya tidak berubah, dan sebagai hasilnya, banyak hal yang dapat dipelajari:
- menemukan dan mengeksploitasi kerentanan web, misalnya, XSS atau Path Traversal, dengan pengembangan hingga kompromi lengkap dari sistem operasi;
- melakukan serangan jaringan GRE Sniffing, SNMP, melewati Daftar Akses menggunakan Permintaan SNMP Spoofed;
- menemukan buffer overflows menggunakan fuzzing dan menggunakannya untuk masuk ke program, melewati mekanisme perlindungan (stack overflow, melewati ASLR, egghunter, karakter buruk, dll.), dan juga melewati mekanisme perlindungan statis antivirus.
Binatang macam apa OSCE itu: sebuah contoh
Agar artikel tidak membebani dengan istilah teknis dan singkatan, saya akan memberikan contoh yang khas. Bayangkan Anda memiliki perangkat lunak (perangkat lunak) yang menerima data melalui TCP, dan Anda perlu beroperasi pada server jarak jauh tempat perangkat lunak ini digunakan agar dapat menjalankan perintah di tingkat sistem operasi.
Keputusan
- : , . , .
- () stack overflow, .
- payload ( ) , , EIP. , SEH.
- EIP . , . , , — ( ), .
Tampaknya yang tersisa hanyalah menandai shellcode, dan semuanya sangat sederhana. Tetapi kebetulan pertama-tama Anda harus melewati mekanisme ASLR, jika alamat statis tidak dapat ditemukan di memori, atau ternyata buffer di memori dibatasi oleh alfabet (karakter yang diizinkan), maka perlu untuk mengumpulkan semua karakter yang diizinkan dan membangun rantai perintah alternatif darinya. Dan jika buffer dibatasi panjangnya, maka Anda perlu mencari tempat lain dalam memori program, di mana Anda dapat menempatkan data tambahan, menemukannya di memori dan membuat transisi ke sana (teknik egghunter), atau bahkan menulis kode shell Anda sendiri yang akan melakukan apa yang Anda inginkan, dalam kendala yang disajikan.
Kebetulan juga data yang ditempatkan tambahan ini rusak sebagian, jadi Anda harus mengevaluasi kerusakannya dan mencari cara untuk mengatasi batasan ini. Misalnya, hapus badchar, rantai kode shell Anda, dan rantai panggilan Anda. Untuk memperumit masalah, debugger (alat utama Anda) mungkin tidak mengalokasikan memori dengan benar dan menampilkan data dalam memori secara tidak benar saat debugging - Bingo!
Faktanya, eksploitasi biner, dan pentesting secara umum, adalah permainan melewati banyak batasan, menggunakan berbagai teknik dan menerapkan kecerdikan. Solusi untuk tugas semacam itu dapat memakan waktu dari 6 jam hingga tak terbatas, jadi 48 jam untuk 4 tugas tampaknya tidak berlebihan bagi saya.
Bagaimana saya lulus ujian
Saya berhasil lulus OSCE pada percobaan kedua. Pertama kali - ini pada bulan Juni - saya tidak dapat mempersiapkan ujian dengan baik karena beban kerja pada proyek, tetapi sebagai "pentester sejati" saya memutuskan untuk melakukan semuanya "dengan cepat". Akibatnya, dalam 48 jam, 10 di antaranya dihabiskan untuk tidur, saya hanya menyelesaikan 1,5 masalah.
Pada bulan September, saya membuat keputusan berkemauan keras untuk menangani segala sesuatu secara kualitatif: untuk mempelajari lebih banyak topik, termasuk yang terkait dengan operasi (dan ini ternyata menjadi lubang tanpa akhir), untuk melakukan semua laboratorium, untuk berkomunikasi dengan ahli lain, untuk memikirkan tugas pada upaya pertama untuk lulus ujian, untuk mempersiapkan berbagai skrip untuk otomatisasi.
Hasilnya, percobaan kedua dilakukan pada bulan November: selama 12 jam ujian, saya minum 7 gelas teh, beberapa pil untuk sakit kepala, makan malam yang enak, berjalan-jalan di halaman - dan keempat tugas diselesaikan. Untungnya, mereka mirip dengan yang saya temui pada percobaan pertama. Setelah tidur nyenyak, butuh 5 jam lagi untuk membuat laporan, dan sehari kemudian saya diberitahu bahwa ujian telah berhasil lulus dan saya bisa meminta kenaikan gaji dari manajemen.
Memperbarui aturan sertifikasi
Pada bulan Oktober 2020, Keamanan Serangan mengumumkan bahwa mereka berencana untuk memperbarui kursus OSCE. Sertifikasi ini sudah tidak dapat dibayar, dan status OSCE berdasarkan aturan baru hanya dapat diperoleh dengan lulus tiga ujian:
- Serangan dan Eksploitasi Web Lanjutan (AWAE)
- Teknik Penghindaran dan Pelanggaran Pertahanan (PEN-300)
- Pengembangan Eksploitasi Mode Pengguna Windows (WUMED) - akan diumumkan pada tahun 2021
Ternyata saya mencoba dengan sia-sia dan sekarang saya memiliki sertifikat yang sudah ketinggalan zaman? Tetapi tidak, perusahaan menganut posisi “Siapapun yang telah mendapatkan OSCE akan selalu mempertahankannya”, yang berarti “Siapapun yang telah menerima OSCE akan menyimpannya selamanya”. Mungkin, banyak orang memilih Keamanan Serangan untuk ini. Ya, itu mahal, ya, manual pelatihannya lemah, ya, ujiannya melelahkan dan mengandung banyak jebakan, tetapi setelah lulus setidaknya satu kali, Anda membawa gelar ini ke akhir hari Anda! Tidak seperti sekumpulan sertifikasi lain, di mana setiap 2-3 tahun Anda harus terus membayar uang untuk perpanjangan dan ujian baru.
FAQ
Apa yang diberikan sertifikasi kepada saya pada akhirnya?
- — . OSCP , .
- «-» .
- , , 2010- , .
« , ?»
?
- : , .
- .
- .
- «».
?
Perusahaan kami sangat memperhatikan pengembangan hard skill dan soft skill tim, jadi saya berhasil mendapatkan sertifikasi atas biaya pemberi kerja. Kalau tidak, mungkin, saya akan memutuskan tantangan seperti itu hanya demi sertifikat itu sendiri. Untuk mendapatkan pengetahuan saja (dan menghemat keuangan pribadi), alangkah lebih bijaknya jika mempelajari materi dan blog yang bocor dari pentester lain di medium.com, membuat ulang dan masuk ke stan, serta memperhatikan kursus lain, misalnya SLAE .
Apakah saya akan terus mengikuti ujian Keamanan Ofensif?
Tentu saja, saya umumnya puas dengan pendekatan mencoba lebih keras, dan kursus baru mereka menarik, dan semua hal lain dapat dijalani.
PS Terima kasih untuk kolega saya dan pacar saya yang mendukung saya!