Pada kesempatan kali ini, kita akan lebih mengenal security testing dari pengertian, jenis, alat, dan bagaimana praktiknya yang beretika. Hal-hal yang berkaitan dengan keamanan (security) sebenarnya lebih merujuk pada white hat hacker (tester).
Tester menjajal sistem keamanan baik dengan cara membobol atau metode lainnya. Lantas mengabarkan celah yang mungkin saja ada di server untuk diperbaiki administrator utama. Namun kenyataannya, security testing merupakan hal wajib yang harus perusahaan lakukan.
Kebocoran data adalah salah satu dampak dari keamanan lemah. Bagi perusahaan besar seperti marketplace, tentu kebocoran data membawa dampak yang luar biasa buruk. Seperti kepercayaan pengguna anjlok, kerugian materi, sampai bangkrut.
Mengenal Security Testing secara Umum
Untuk mengenal security testing, lebih mudah dengan definisinya lebih dulu. Mendengar namanya kalian pasti sudah bisa mengira, bahwa security testing adalah sebuah metode menggunakan software tertentu untuk mengetes keamanan.
Cara tes dengan mencoba dan mengidentifikasi kerentanan, masalah, dan bug (celah) dalam suatu sistem. Kemudian dari identifikasi tersebut, kalian akan menentukan tindakan guna meningkatkan keamanan sampai maksimal.
Proses security testing sebaiknya Anda lakukan secara berkala. Mengingat keamanan dalam dunia digital bersifat dinamis, terdapat perubahan, serta mengalami perkembangan. Kita tidak bisa menggunakan sistem keamanan tahun 1990 untuk sistem keamanan 2022.
Contoh paling nyata adalah sistem operasi komputer. Yang mana Windows 7 lebih rentan dari sisi keamanan daripada Windows 11. Faktor keamanan itu pula yang membuat Windows XP kini berada di bawah nisan kuburan.
Terlebih saat ada perubahan dalam konfigurasi suatu sistem perusahaan. Maka perusahaan harus melakukan security testing untuk memastikan keamanan data. Dalam website dan aplikasi, setidaknya terdapat 4 bagian yang harus dilakukan security testing.
Bagian tersebut antara lain: network security, system software, client side application, serta server side application.
Dengan memastikan keempat bagian di atas aman, maka Anda memperoleh benefit keamanan lebih sempurna. Infrastruktur jaringan yang dipakai aman, basis data aman, sisi klien tidak bisa dimanipulasi, dan server punya keamanan serta pertahanan.
Mengenal Security Testing dari Jenisnya
Secara lebih rinci, mengenal security testing terdapat beberapa jenis yang kompleks. Berikut ini setidaknya 7 jenis security testing yang sebaiknya Anda pahami.
1. Vulnerability Scanning
Vulnerability scanning merupakan tindakan dalam rangka pemindaian terhadap website maupun aplikasi menggunakan software. Karena menggunakan software, Anda dapat menjalankan proses pemindaian ini secara otomatis.
Dalam proses pemindaian ini software vulnerability scanning akan berusaha menemukan masalah dan kerentanan sistem. Baik kerentanan dalam sisi internal maupun eksternal. Jadi perlu melakukan pemindaian pada kedua sisi tersebut.
2. Security Scanning
Lebih mendalam daripada vulnerability scanning, jenis security scanning ini akan memberi Anda insight detail. Insight yang berdasarkan hasil pemindaian, memberi rekomendasi solusi, dengan tujuan memperbaiki masalah di sana.
Bagi tester, tidak lanjut setelah security scanning tidak perlu Anda lakukan sekarang. Insight detail itulah bagian paling penting.
3. Penetration Testing
Merupakan proses pengujian dengan cara simulasi. Misalnya sebuah sistem dilakukan simulasi terkena serangan siber, apakah mampu bertahan atau tertembus. Untuk alatnya adalah pentest yang nanti kita bahas di bawah.
Jika tertembus, maka administrator yang melakukan penetration test akan menambal dan memperbaiki celah tersebut. Lebih jauh lagi, tes ini bisa Anda lakukan dengan menyewa orang yang paham tentang keamanan untuk mengetes sistem website atau aplikasi Anda.
4. Risk Assessment
Berbeda halnya dengan penetration test, jenis risk assessment yang melakukannya adalah orang internal perusahaan. Orang atau tim yang bertugas harus paham bagaimana sistem kerja serta proses yang ada di dalam jaringan. Risk assessment meliputi pengecekan risiko keamanan perangkat lunak, aplikasi/website, dan jaringan.
5. Security Auditing
Jenis berikutnya adalah security auditing yang mempunyai tugas sebagai berikut:
a) Mengidentifikasi titik lemah infrastruktur perusahaan secara rutin dan berkala;
b) Melakukan pengontrolan keamanan secara menyeluruh;
c) Memastikan semua infrastruktur berjalan sesuai dengan tugasnya masing-masing;
d) Membantu perusahaan untuk patuh pada Undang-Undang Keamanan Siber;
e) Sistem informasi memenuhi standar keamanan.
Perbedaan antara security auditing dengan risk assessment terletak pada cara kerjanya. Di mana risk assessment bersifat lebih formal dan dilakukan oleh pihak eksternal perusahaan (lembaga independen).
6. Ethical hacking
Hampir sama dengan penetration testing oleh hacker sewaan Anda. Hanya saja ethical hacking cangkupannya jauh lebih luas. Ia bebas menggunakan metode teknik hacking apa saja untuk menjelajahi semua sistem keamanan perusahaan. Tipe ini sama-sama Anda pekerjakan untuk melakukan security testing.
7. Posture Assessment
Posture assessment berkaitan dengan bagaimana sikap pihak IT perusahaan jika terjadi masalah keamanan. Penilaian sikap pihak IT berpengaruh dalam pengambilan keputusan nantinya. Apakah sudah efektif atau sebaliknya, masih kacau.
Mengenal security testing hanya dari jenisnya di atas tampaknya masih kurang. Selanjutnya Anda akan mengetahui apa saja alat (tools) yang perusahaan gunakan untuk melakukan security testing serta praktiknya.
Alat Security Testing
Dalam menjalankan tugasnya melakukan security testing, terutama jenis ethical hacker, mereka menggunakan tools yang beragam. Pasalnya, mengecek sistem keamanan bebas menggunakan cara hacking bagaimana pun.
Simulasi serangan ini sangat penting, agar perusahaan atau pihak yang melakukan security test dapat menilai tindakan yang tepat. Berikut adalah beberapa tools atau software yang mendukung penyerangan pada sistem.
1. Kali Linux, lebih sering oleh ethical hacker jalankan melalui virtual machine OS X dan Windows.
2. Nmap, network mapping adalah tools yang populer di kalangan hacker untuk menggambarkan secara jelas sistem jaringan.
3. Metasploit, biasanya untuk melakukan pengujian sisi lemah sistem, mendefinisikan sharingan yang bergerak, anonim (menghindari deteksi keamanan), hingga melancarkan serangan.
4. Wireshark, untuk mendapatkan semua informasi yang berkaitan dengan jaringan. Termasuk protokol jaringan, detail jaringan perangkat yang terhubung, dan sebagainya.
5. John the Ripper, singkatnya tools open source ini berguna untuk memecah enkripsi sistem kata sandi.
6. Acunetix, scanning keamanan yang mampu mendefinisikan, mendeteksi, dan melaporkan lebih dari 4.500 jenis kerentanan website. Termasuk kerentanan pada semua format injeksi.
7. Core Impact, framework yang berjalan secara otomatis untuk melakukan proses audit lengkap, termasuk PowerShell.
Selain tujuh tools security testing di atas, masih ada puluhan, bahkan ratusan jenis tools lainnya tergantung kebutuhannya. Misalnya Netsparker, Probely, Intrunder, Spyse, w3af, Nessus, Burpsuite, Cain & Abel, Zed Attack Proxy (ZAP), Retina, Sqlmap, Sqlninja, BeEF, Dradis, dan sebagainya.
Praktik dalam Security Testing
Mengenal security testing dengan praktik langsung, namun artikel ini hanya sebatas informasi saja. bahwa dalam praktik mengetes keamanan sistem, terdapat 4 fase besar yang harus Anda lalui. Antara satu fase dengan fase berikutnya bersifat berkesinambungan.
1. Foot Printing, mencari segala informasi terhadap sistem yang akan diserang.
2. Scanning, pemindaian terhadap pintu masuk yang mungkin saja terbuka.
3. Enumeration, pemecahan enkripsi sistem yang berkaitan dengan informasi penting sistem.
4. Exploitation, membobol sistem untuk masuk lebih dalam ke sistem lainnya.
Itulah informasi tentang pengetesan keamanan sebuah sistem yang ternyata punya maksud positif dalam mengetahui kekurangan sekaligus memperbaiki kekurangan itu. Dengan begitu, setidaknya Anda sudah mengenal security testing, jenis, alat, dan proses praktiknya secara garis besar.
Baca Juga: Jenis-jenis Unit Testing Aplikasi