Pekerjaan Penetration Tester adalah profesional keamanan dunia maya yang melakukan serangan dunia maya pra-otorisasi pada komputer atau lingkungan jaringan untuk menilai ketahanan sistem ini dalam kondisi ancaman dunia nyata. Artikel ini membahas pekerjaan untuk jurusan IT yang berfokus pada deskripsi pekerjaan tipikal untuk peran penetration tester, keterampilan yang dibutuhkan dalam karir ini.
Deskripsi Pekerjaan Penetration Tester
Penguji penetrasi adalah profesional keamanan dunia maya yang melakukan serangan dunia maya pra-otorisasi pada komputer atau lingkungan jaringan untuk menilai ketahanan sistem ini dalam kondisi ancaman dunia nyata. Penguji pena atau penguji penetrasi ditugaskan untuk mensimulasikan serangan dunia maya pada sistem dan jaringan titik akhir perusahaan. Tes pra-otorisasi ini membantu mendeteksi kerentanan dan kelemahan keamanan sebelum aktor jahat dapat mengeksploitasinya.
Sistem komputer dapat bertukar data melalui jaringan komunikasi sejak tahun 1960-an. Profesional keamanan segera menemukan bahwa pertukaran data ini terkena ancaman luar. Perlindungan yang memadai harus dikembangkan karena semakin pentingnya komputer dalam industri dan pemerintahan.
Pada Konferensi Komputer Bersama pada tahun 1967, lebih dari 15.000 profesional komputer dan perwakilan dari sektor publik dan bisnis hadir. Mereka berbicara tentang masalah intrusi jaringan, yang ditangani hari ini terutama melalui pengujian penetrasi. Inisiatif awal oleh RAND Corporation berkontribusi dalam mengembangkan metodologi pengujian penetrasi yang sistematis.
Kemudian, sistem keamanan komputer yang canggih seperti Multics muncul, dan hingga sekitar tahun 2000, Multics menjadi standar industri. Penguji penetrasi menggunakan temuan pengujian ini untuk memberikan saran dan mempraktikkan solusi yang akan meningkatkan ketahanan infrastruktur teknologi informasi (TI) organisasi.
Sebagai penguji penetrasi, seseorang akan menyerang sistem digital perusahaan yang ada untuk memainkan peran aktif menyerang dalam keamanan siber. Tes ini dapat menggunakan berbagai metode dan teknik peretasan untuk mengungkap kerentanan yang mungkin dieksploitasi oleh peretas. Anda akan menyimpan catatan terperinci tentang tindakan Anda dan menyusun laporan tentang apa yang Anda lakukan dan seberapa efektif Anda melanggar standar keamanan. Pengujian pena dapat digunakan oleh bisnis untuk memastikan bahwa mereka mematuhi standar kepatuhan.
Sering dikaitkan dengan penguji penetrasi, peretas etis adalah spesialis TI yang menggunakan teknik peretasan untuk membantu perusahaan dalam mengidentifikasi titik masuk potensial ke dalam sistem mereka. Perusahaan dapat meniru serangan dunia maya untuk menilai kekuatan dan kerentanan sistem keamanan mereka saat ini dengan menggunakan berbagai metodologi, alat, dan teknik. Sejauh mana aktor hipotetis, atau peretas, dapat melanggar perlindungan dan proses keamanan dunia maya organisasi disebut sebagai penetrasi dalam situasi ini.
Ada tiga pengaturan yang biasanya dioperasikan oleh penguji penetrasi:
- In-house: Ini biasanya memungkinkan Anda membiasakan diri dengan prosedur keamanan organisasi. Selain itu, Anda dapat memiliki suara yang lebih signifikan dalam pembaruan dan tambalan keamanan berikutnya.
- Perusahaan keamanan: Tes yang dapat Anda buat dan jalankan saat bekerja untuk bisnis keamanan lebih bervariasi.
- Freelance: Beberapa penguji penetrasi memilih untuk beroperasi sebagai kontraktor independen. Jika Anda mengikuti rute ini, Anda akan memiliki lebih banyak kebebasan penjadwalan, tetapi Anda mungkin harus menghabiskan lebih banyak waktu untuk mencari klien di awal karier.
Bergantung pada tujuan tes pena, penguji diberikan jumlah akses yang bervariasi ke informasi tentang sistem target. Terkadang tim penguji pena memulai dengan satu strategi dan bertahan dengan itu. Terkadang, prosesnya berubah saat tim penguji menjadi lebih akrab dengan sistem selama uji pena.
Akses uji pena hadir dalam tiga tingkatan:
- Kotak buram: Organisasi internal sistem target tidak diketahui oleh tim. Pentester berperilaku seperti seorang hacker, mencari setiap celah yang dapat digunakan dari luar organisasi.
- Kotak semi-buram: Satu set kredensial atau lebih diketahui oleh tim dalam kapasitas tertentu. Struktur, kode, dan algoritme data inti target diketahui. Penguji pena dapat membuat kasus uji berdasarkan makalah desain menyeluruh, termasuk diagram arsitektur sistem target.
- Kotak transparan: Penguji pena memiliki akses ke sistem dan artefak yang membentuk sistem tersebut, seperti kode sumber, binari, wadah, dan kadang-kadang bahkan server yang menghosting server tersebut. Metode ini menawarkan tingkat kepastian tertinggi dalam waktu singkat.
Ada beberapa teknik pen-testing, yang masing-masing memberikan informasi kepada penyerang sehingga mereka dapat melakukan serangan mereka:
- Pengujian eksternal: Pengujian penetrasi eksternal menargetkan situs, akun email, server nama domain (DNS), dan aplikasi web. Akses ke dan ekstraksi data berharga adalah tujuannya.
- Pengujian internal: Penguji yang mengakses aplikasi di bawah firewallnya mensimulasikan serangan orang dalam yang bermusuhan selama pengujian internal. Ini tidak selalu merupakan simulasi karyawan nakal. Titik awal tipikal adalah pekerja yang kredensialnya diperoleh karena upaya phishing.
- Pengujian buta: Satu-satunya informasi yang ditawarkan kepada penguji yang terlibat dalam pengujian buta adalah judul bisnis yang dievaluasi. Petugas keamanan dapat melihat secara instan bagaimana seluruh serangan aplikasi dapat terjadi.
- Pengujian double-blind: Dalam tes double-blind, personel keamanan tidak diberi tahu tentang simulasi serangan sebelumnya. Mereka tidak akan memiliki kesempatan untuk memperkuat pertahanan mereka sebelum upaya penerobosan, seperti di dunia nyata.
- Pengujian yang ditargetkan: Dalam skenario ini, petugas keamanan dan penguji bekerja sama dan saling memberi tahu keberadaan mereka. Latihan praktis ini memungkinkan tim keamanan mendapatkan umpan balik cepat dari sudut pandang peretas.
Peran dan Tanggung Jawab Pekerjaan Penetration Tester
Bergantung pada organisasinya, tanggung jawab sehari-hari seorang penguji penetrasi akan bervariasi. Semua posisi penguji penetrasi berbagi lima tanggung jawab mendasar:
1. Melakukan pengujian pada aplikasi dan jaringan
Penguji penetrasi harus membuat pengujian yang membobol sistem komputer, jaringan, dan aplikasi berbasis web yang dilindungi keamanan untuk menemukan kerentanan.
2. Menilai keamanan fisik
Anda harus mengevaluasi keamanan perangkat keras jaringan dan sistem server secara fisik. Selama evaluasi fisik ini, Anda harus mencari kelemahan dan memberikan solusi untuk masalah keamanan, termasuk suhu, vandalisme, kelembapan, dan bencana alam.
3. Melakukan audit keamanan
Anda akan melakukan audit keamanan dan jaringan untuk menilai seberapa efektif suatu sistem mematuhi standar yang telah ditentukan. Ini akan memungkinkan Anda mengidentifikasi vektor serangan potensial untuk kelemahan sistem keamanan.
4. Menganalisis kebijakan keamanan
Kebijakan keamanan yang menyediakan protokol dan pedoman untuk mendapatkan akses ke dan menggunakan sumber daya TI diberlakukan oleh organisasi. Ini akan menjadi tanggung jawab Anda untuk mengevaluasi keberhasilan kebijakan ini, merekomendasikan perubahan, dan mencoba memperbaiki materi metodologi.
5. Menulis laporan penilaian keamanan
Setelah melakukan penelitian dan pengujian, Anda perlu mencatat penemuan Anda, menyusun laporan keamanan, dan berbicara dengan manajemen dan tim TI tentang perbaikan.
Persyaratan Keterampilan Utama Penetration Tester
Untuk menjadi penguji penetrasi, seseorang membutuhkan keahlian berikut:
1. Pengetahuan tentang jaringan komputer
Model Open System Interconnection (OSI) dan arsitektur jaringan komputer adalah dua bidang keterampilan yang harus diketahui oleh setiap pentester. Ini termasuk pengetahuan tentang:
- Protokol lapisan tautan: 802.3 (Ethernet/ARP), 802.1Q (VLAN), dan 802.11 (Wi-Fi)
- Protokol lapisan jaringan: IP (IPv4, IPv6) dan ICMP
- Protokol lapisan transport: TCP dan UDP
- Protokol lapisan aplikasi: DNS, HTTP, HTTPS, DHCP, LDAP, FTP, SMTP, IMAP, POP, SSH, dan Telnet, antara lain
Orang harus tahu bagaimana protokol ini beroperasi dan untuk apa mereka digunakan. Misalnya seseorang harus dapat menjelaskan sepenuhnya apa yang terjadi ketika seseorang mengunjungi situs web dan menanggapi pertanyaan seperti bagaimana browser kita dan server jarak jauh dapat berkomunikasi? Atau pada setiap lapisan OSI, bagaimana dan protokol jaringan apa yang digunakan? Selain itu seseorang penguji penetrasi harus merasa nyaman menggunakan program penangkap paket seperti Wireshark.
Penguji penetrasi dapat mencegah seseorang mengendus data pribadi dari jaringan komputer dengan membiasakan diri dengan protokol jaringan standar dan mengetahui mana yang aman dan mana yang tidak. Terakhir, memahami peta topologi jaringan diperlukan karena diagram dan skema jaringan secara teratur diangkat dalam percakapan dengan klien pentesting.
2. Memahami berbagai komponen jaringan
Pentester harus mengetahui jenis perangkat lunak jaringan dan komponen perangkat keras apa yang diperlukan, bagaimana perusahaan biasa mengatur jaringannya, tindakan keamanan apa yang biasanya digunakan, dll. Ini termasuk pengetahuan mendalam tentang sakelar jaringan, router/gateway, firewall, dan lokal virtual jaringan area (VLAN).
Sebagai penguji penetrasi juga harus dapat melihat bagaimana kontrol akses jaringan (NAC) disiapkan dan mengetahui cara menyiasatinya seperti melalui kloning Media Access Control (MAC) dan man in the middle (MITM).
Juga penetration tester harus tahu tentang perusahaan teratas yang memproduksi solusi jaringan seperti Brocade, Checkpoint, Cisco, F5 Networks, Fortinet, Juniper, dan Palo Alto. Ini akan membantu memahami sistem unik mereka dengan lebih baik, selain kerentanannya dan bagaimana orang dapat mengeksploitasinya.
3. Keakraban dengan eksploitasi dan kerentanan di luar rangkaian alat
Sering ada pertanyaan untuk mengetahui apakah kandidat tahu lebih banyak tentang kerentanan keamanan di luar apa yang dijelaskan oleh alat otomatis dalam sebuah wawancara. Pertanyaan wawancara bervariasi tergantung pada ukuran dan kebutuhan perusahaan. Penguji pena perlu mengetahui apakah mereka akan tetap efektif jika pelanggan menggunakan alat keamanan yang mengenali eksploit tertentu. Seseorang tidak ingin penguji menjadi tidak berdaya ketika mereka tidak dapat menggunakan alat XYZ.
Selain itu seseorang tidak ingin penguji menduplikasi apa yang dilaporkan oleh pemindai kerentanan kata demi kata. Sering terjadi bahwa kerentanan ditemukan tanpa kode eksploit yang diketahui. Apakah ada kerentanan di sini? Mungkin tetapi seseorang tidak dapat mengeksploitasi kerentanan tanpa mengeksploitasi kode. Meskipun penulis eksploit bukanlah yang dicari oleh perusahaan, penguji penetrasi yang mahir perlu mengetahui cara mengadaptasi eksploit yang ada untuk membuat mereka beroperasi di jaringan tertentu untuk pengujian.
4. Kemauan untuk terus belajar
Penguji penetrasi tidak bisa menjadi ahli dalam setiap topic, jadi dengan demikian mereka harus secara aktif mempelajari hal-hal baru dan mendapatkan pengalaman praktis. Mengapa tidak memulai mesin virtual, membuat perangkat yang rentan, mendapatkan kodenya, dan mengujinya sendiri alih-alih membaca artikel dari perusahaan keamanan siber tentang eksploitasi terbaru dan terhebat? Membangun memori otot adalah manfaat dari pengalaman belajar.
Meskipun pengujian penetrasi mungkin tidak membutuhkan otot tapi membutuhkan kemampuan untuk mengingat kembali pengetahuan dan menyatukan pemahaman kita dengan cara baru. Memposting video pembelajaran adalah salah satu metode yang paling dapat diterima untuk mendemonstrasikan pembelajaran berkelanjutan jika ingin bekerja sebagai penguji penetrasi. Video itu menyenangkan untuk semua orang dan bisa menjadi peluang luar biasa untuk mengilustrasikan pengetahuan.
5. Pengetahuan tentang komunikasi web dan teknologi keamanan
Bagian ini mungkin telah dibagi menjadi dua bagian tetapi lebih masuk akal untuk menggabungkannya karena beberapa alasan. Kemampuan untuk mendaftarkan nama domain web, memetakannya ke alamat cloud-IP, membuat sertifikat aman untuk domain tersebut, dan kemudian menggunakan sertifikat tersebut untuk mengamankan komunikasi web adalah semua keterampilan yang harus dimiliki oleh penguji.
Kita juga harus terbiasa dengan teknologi keamanan aplikasi web. Saat ini aplikasi web adalah komponen standar dari hampir setiap penilaian yang dilakukan seseorang sehingga setiap orang perlu mengetahuinya. Evaluator kami harus memahami desain aplikasi web, cara menemukan kolom input, dan cara mendapatkan data yang dapat digunakan untuk menyalahgunakan fungsionalitas aplikasi web.
6. Kemampuan untuk script atau menulis kode
Kode tidak harus berkualitas produksi, tetapi penguji penetrasi yang juga seorang programmer akan mengurangi waktu saat melakukan evaluasi. Saat ini Python, Perl, PoonerShell, dan Bash adalah bahasa penting di mana harus memahami setidaknya satu kompetensi dasar. Seiring dengan perjalanan dalam bahasa ini, kita harus dan dapat memodifikasi data dalam format apa pun yang diperlukan untuk membuat gambaran operasional tersebut.
7. Soft skill
Setiap anggota tim harus dapat menjelaskan konsep yang rumit dengan cara yang bahkan dapat dipahami oleh individu non-teknis. Menemukan cara untuk melatih berbicara dan menulis adalah ide yang bagus jika itu bukan area terkuat kita. Penguji penetrasi yang sangat berbakat yang diinginkan semua orang di tim mereka tetapi tidak ada yang mau di depan klien adalah hal yang cenderung dihindari.
Bahkan anggota tim penguji penetrasi yang paling senior pun harus mampu menangani proses dasar. Alur kerja akan lebih efisien ketika seseorang yakin bahwa yang satu memikirkan kepentingan terbaik orang lain.