Pada umumnya, sebuah web atau aplikasi perusahaan akan memiliki beragam data penting. Tugas Anda sebagai pemilik sistem adalah untuk melindungi data-data penting di dalamnya agar tidak terakses oleh pihak yang tidak sah. Penting untuk mengamankan sebuah aplikasi web dengan melakukan security testing (pengetesan keamanan).
Pengertian Security Testing
Security testing adalah jenis pengujian perangkat lunak yang dilakukan untuk mengidentifikasi kerentanan serta memastikan bahwa data dan sumber daya sistem di dalamnya sudah terlindungi dengan baik dari para penyusup. Pengujian ini dilakukan dengan tujuan untuk menemukan semua celah dan kelemahan sistem yang dapat mengakibatkan hilangnya informasi atau reputasi perusahaan.
Pada umumnya, security testing akan dilakukan setiap kali Anda melakukan perubahan pada sistem yang Anda kembangkan. Meskipun demikian, perusahan-perusahaan perlu menyadari bahwa security testing perlu dilakukan secara berkala karena peretas akan selalu mencari cara untuk menyusup ke dalam sistem. Dengan rutin melakukan security testing, Anda dapat menjamin bahwa sistem yang digunakan selalu memiliki tingkat keamanan yang baik.
Dalam security testing khususnya yang dilakukan pada situs website dan aplikasi, akan ada empat area utama yang akan diperhatikan. Keempat area tersebut adalah:
Tipe atau Jenis-jenis Security Testing
1. Vulnerability Scanning
Vulnerability Scanning (vuln scan) adalah pengujian keamanan yang dilakukan melalui software otomatis untuk memindah aplikasi web. Software ini akan mencari kerentanan keamanan yang ada di dalam sistem seperti pembuatan Cross site scripting, SQL Injection, Command Injection, Path Traversal, serta konfigurasi server yang tidak aman. Tool ini sering disebut sebagai bagian dari Dynamic Application Security Testing (DAST).
Perlu diketahui, Vulnerability Scanning sering menjadi praktik umum yang dipergunakan di seluruh jaringan perusahaan. Vulnerability scanning juga berada di bawah pengawasan standar industri serta peraturan pemerintah dalam meningkatkan struktur keamanan sistem pada sebuah organisasi.
2. Security scanning
Security scanning merupakan pemindaian yang digunakan untuk menemukan kerentanan atau modifikasi file yang tidak diinginkan dalam aplikasi berbasis web, situs web, jaringan, atau sistem file. Pemindaian ini dapat dilakukan secara otomatis ataupun manual. Pemindaian ini akan memberikan Anda insight yang mendalam serta menyediakan rekomendasi solusi untuk memperbaiki masalah yang ditemukan.
Security scanning dapat dilakukan sebagai one-time check atau pemeriksaan satu kali. Meskipun demikian, sebagian besar perusahaan pengembang perangkat lunak lebih memilih untuk melakukan pemindaian keamanan secara teratur untuk memastikan sistem yang dikembangkan benar-benar aman.
3. Penetration Testing
Penetration testing adalah proses pengujian dengan melakukan simulasi serangan cyber terhadap sistem yang akan diuji. Pengujian ini akan dilakukan secara manual oleh pentester profesional dan bersertifikat menggunakan beragam pentest tools dan teknik.
Ketika pengujian penetration testing dilakukan, Anda akan menemukan beragam kerentanan yang dapat dieksploitasi oleh para penjahat cyber. Dengan demikian, maka proses penambalan atau perbaikan dapat segera dilakukan sebelum pihak peretas menemukannya.
Proses pengujian ini dilakukan seperti ketika Anda mempekerjakan seseorang untuk membobol sistem keamanan aplikasi atau web Anda. Jika orang tersebut berhasil masuk dan melewati sistem keamanan yang ada, maka Anda akan mengetahui dimana letak celah atau kerentanan keamanan pada sistem. Dengan informasi tersebut, Anda dapat terus meningkatkan sistem keamanan pada software, website, atau aplikasi yang Anda kembangkan.
Karena hacker akan terus mencari cara untuk membobol sistem korban, maka penetration testing ini perlu dilakukan secara rutin.
4. Risk Assessment
Melalui risk assessment, risiko keamanan yang dihadapi oleh aplikasi, software, dan jaringan akan diidentifikasi dan dianalisis. Risiko keamanan tersebut kemudian akan diklasifikasikan ke dalam beberapa kategori yaitu tinggi, sedang, dan rendah. Salah satu jenis security testing ini dapat membantu Anda memastikan bahwa kontrol keamanan cyber yang Anda lakukan sebelumnya sudah sesuai dengan risiko keamanan yang dihadapi organisasi/perusahaan Anda.
Pada umumnya, risk assessment akan dilakukan oleh tim IT internal perusahaan. Oleh karena itu, tim IT yang Anda percaya untuk melakukan penilaian risiko harus benar-benar memahami bagaimana infrastruktur digital dan jaringan Anda bekerja.
5. Security Auditing
Security Auditing adalah metode terstruktur untuk mengevaluasi langkah-langkah keamanan di dalam perusahaan. Dengan melakukan audit secara rutin, Anda akan terbantu dalam mengidentifikasi titik lemah dan kerentanan dalam infrastruktur IT perusahaan, memverifikasi kontrol keamanan, memastikan kepatuhan terhadap peraturan keamanan, dan masih banyak lagi.
Selain itu, security auditing juga akan membantu perusahaan Anda untuk tetap mematuhi undang-undang keamanan. Saat ini, ada banyak peraturan nasional ataupun internasional seperti GDPR dan HIPAA yang membutuhkan audit keamanan IT untuk memastikan bahwa sistem informasi Anda tetap memenuhi standar yang mereka buat.
Meskipun secara sekilas, security auditing terlihat sama dengan risk assessment, namun kedua tipe security testing tersebut tetap berbeda. Audit merupakan proses pengujian yang lebih formal daripada Risk Assessment. Selain itu, audit harus dilakukan oleh organisasi pihak ketiga yang independen dan pihak ketiga tersebut biasanya harus memiliki semacam sertifikasi. Sebuah organisasi atau perusahaan boleh saja memiliki tim audit internal, tetapi tim tersebut harus bertindak sebagai lembaga independen.
6. Ethical hacking
Ethical hacking sangat erat kaitannya dengan penetration testing. Meskipun demikian, Anda harus memahami bahwa cakupan ethical hacking lebih luas daripada penetration testing.
Ethical hacking merupakan pengujian keamanan yang dilakukan menggunakan semua teknik peretasan dan teknik serangan komputer terkait lainnya. Proses pengujian ini dilakukan oleh ethical hacker yang sudah memperoleh izin untuk menjelajahi infrastruktur IT perusahaan secara lebih luas.
Ethical hacker tersebut akan menguji seberapa baik tingkat keamanan dengan mengganggu sistem menggunakan berbagai vektor dan jenis serangan. Dengan pengujian ini, Anda akan terbantu untuk mengungkap kerentanan dan kelemahan keamanan secara pada infrastruktur IT yang lebih luas.
7. Posture Assessment
Posture Assessment mengacu pada metodologi yang dilakukan untuk meningkatkan kemampuan manajemen risiko di perusahaan. Sebagian besar orang menganggap bahwa posture Assessment merupakan gabungan dari beberapa jenis security testing yaitu Ethical Hacking, Security Scanning, dan Risk Assessment.
Penilaian ini dapat menjadi langkah berharga untuk mengetahui bagaimana kondisi keamanan perusahaan. Dengan melakukan Posture Assessment, sebuah Anda akan memiliki pandangan yang jelas tentang status keamanan perusahaan serta mampu mengidentifikasikan ancaman keamanan yang mungkin terjadi.