IMMORTAL

Pages

Wednesday, July 29, 2015

Contoh Jurnal

Penetration Testing

Tedi Wildani1a
1Teknik Informatika, Fakultas Teknologi Industri, Universitas Gunadarma
Jl. Margonda Raya No. 10, Pondok Cina, Depok, 16424

a10wildanitedddy@student.gunadarma.ac.id
Abstraksi

Pengujian penetrasi adalah serangkaian kegiatan yang dilakukan untuk mengidentifikasi dan mengeksploitasi kerentanan keamanan. Ini akan membantu mengkonfirmasi efektivitas atau ketidakefektifan dari langkah-langkah keamanan yang telah dilaksanakan. Jurnal ini memberikan gambaran tentang pengujian penetrasi. Ini membahas manfaat, strategi dan metodologi melakukan pengujian penetrasi. Metodologi pengujian penetrasi mencakup tiga fase: persiapan ujian, tes dan analisis tes. Tahap uji coba melibatkan langkah-langkah berikut: Informasi pengumpulan, analisis kerentanan, dan kerentanan mengeksploitasi. Tulisan ini lebih menggambarkan bagaimana menerapkan metodologi ini untuk melakukan pengujian penetrasi pada dua aplikasi contoh web.

Kata kunci
 Pengujian keamanan, Penilaian Kerentanan, Penetrasi Pengujian




Pendahuluan


Keamanan adalah salah satu isu utama dalam sistem informasi. Konektivitas komputer tumbuh melalui internet, yang diperpanjang peningkatan sistem, dan ukuran pertumbuhan tak terkendali dan kompleksitas sistem telah membuat masalah keamanan perangkat lunak sekarang yang lebih besar daripada di masa lalu. Selain itu, bisnis penting untuk cukup melindungi aset informasi organisasi dengan mengikuti pendekatan yang komprehensif, dan terstruktur untuk memberikan perlindungan dari risiko organisasi yang mungkin dihadapi. Dalam upaya untuk memecahkan masalah keamanan dan mematuhi peraturan keamanan diamanatkan, pakar keamanan harus berbagai metode jaminan keamanan maju termasuk bukti kebenaran, desain berlapis, software lingkungan teknik dan pengujian penetrasi.
Pengujian penetrasi adalah metode komprehensif untuk menguji lengkap, terpadu, operasional, dan dasar komputasi dunia yang terdiri dari perangkat keras, perangkat lunak dan  manusia. Proses melibatkan analisis aktif sistem untuk setiap kerentanan potensial, termasuk kekurangan atau konfigurasi yang tidak benar sistem, hardware dan software kekurangan, dan kelemahan operasional dalam proses atau penanggulangan teknis.
Pengujian penetrasi berbeda dari pengujian fungsional keamanan. Yang terakhir menunjukkan perilaku yang benar dari kontrol keamanan sistem sementara pengujian penetrasi menentukan kesulitan bagi seseorang untuk menembus kontrol keamanan organisasi terhadap hak akses ke informasi dan sistem informasi tersebut. Hal ini dilakukan dengan mensimulasikan pengguna yang tidak hak menyerang sistem baik menggunakan alat otomatis atau metode manual atau kombinasi keduanya.
Jurnal ini memberikan gambaran tentang pengujian penetrasi. Membahas manfaat dari pengujian penetrasi, strategi pengujian penetrasi dan jenis, serta metodologi untuk pengujian penetrasi.



Tujuan
Tujuan utama dari penilaian kerentanan adalah untuk mengidentifikasi kerentanan keamanan di bawah dikendalikan keadaan sehingga mereka dapat dihilangkan sebelum pengguna yang tidak sah mengeksploitasi mereka. Komputasi sistem profesional menggunakan pengujian penetrasi untuk mengatasi masalah yang melekat dalam kerentanan penilaian, fokus pada kerentanan tinggi tingkat keparahan. Pengujian penetrasi adalah jaminan senilai alat penilaian yang menguntungkan bisnis dan operasinya.

Manfaat
Manfaat Penetrasi Pengujian dari Perspektif Bisnis
Dari perspektif bisnis, pengujian penetrasi membantu menjaga organisasi terhadap kegagalan melalui pencegahan kerugian finansial; membuktikan due diligence dan kepatuhan terhadap regulator industri,
pelanggan dan pemegang saham; menjaga citra perusahaan; dan merasionalisasi keamanan informasi Investasi.
Organisasi menghabiskan jutaan dolar untuk pulih dari pelanggaran keamanan karena pemberitahuan biaya, upaya perbaikan, penurunan produktivitas dan pendapatan yang hilang. Perkiraan studi CSI upaya pemulihan saja menjadi $ 167,713.00 per insiden.
Pengujian penetrasi dapat mengidentifikasi dan mengatasi risiko sebelum terjadi pelanggaran keamanan, sehingga mencegah kerugian finansial yang disebabkan oleh keamanan pelanggaran.
Industri telah mengamanatkan persyaratan peraturan untuk sistem komputasi. Ketidakpatuhan dapat hasil dalam organisasi yang menerima denda berat, penjara, atau kegagalan utama.
Pengujian penetrasi, sebagai layanan proaktif, memberikan informasi tak tergoyahkan yang membantu organisasi untuk memenuhi aspek audit kepatuhan atau peraturan.
Sebuah insiden data klien dikompromikan dapat menghancurkan. Hilangnya kepercayaan konsumen dan reputasi bisnis dapat menempatkan seluruh organisasi beresiko. Pengujian penetrasi menciptakan meningkatkan kesadaran pentingnya keamanan di semua tingkatan organisasi. Ini membantu insiden keamanan organisasi menghindari yang mengancam citra perusahaan, menempatkan reputasinya beresiko dan loyalitas dampak pelanggan.
Pengujian penetrasi mengevaluasi efektivitas produk keamanan yang ada dan memberikan
mendukung argumen untuk investasi masa depan atau upgrade teknologi keamanan. Ini menyediakan "Bukti masalah" dan kasus yang kuat untuk usulan investasi untuk manajemen senior.


Manfaat Penetrasi Pengujian dari Perspektif Operasional
Dari segi operasional, pengujian penetrasi membantu bentuk strategi keamanan informasi
melalui identifikasi cepat dan akurat dari kerentanan; penghapusan proaktif diidentifikasi risiko; pelaksanaan tindakan korektif; dan peningkatan pengetahuan IT.
Pengujian penetrasi memberikan informasi rinci tentang yang sebenarnya, ancaman keamanan dieksploitasi jika mencakup ke doktrin keamanan organisasi dan proses. Hal ini akan membantu organisasi untuk mengidentifikasi secara cepat dan akurat kerentanan nyata dan potensial.
Dengan memberikan informasi yang diperlukan untuk secara efektif dan efisien mengisolasi dan memprioritaskan kerentanan, pengujian penetrasi dapat membantu organisasi menyempurnakan dan konfigurasi uji perubahan atau patch untuk secara proaktif menghilangkan risiko diidentifikasi.

Cara Melakukan Penetrasi Pengujian
Pengujian penetrasi bukan hanya eksekusi serial alat otomatis dan generasi teknis laporan seperti yang sering dilihat. Ini harus memberikan arah yang jelas dan ringkas tentang bagaimana mengamankan informasi dan sistem informasi organisasi dari serangan dunia nyata. Salah satu faktor penting dalam keberhasilan pengujian penetrasi adalah metodologi yang mendasarinya. Sebuah pendekatan sistematis dan ilmiah harus digunakan untuk berhasil mendokumentasikan tes dan menciptakan laporan yang ditujukan pada tingkat yang berbeda dari manajemen dalam suatu organisasi. Seharusnya tidak membatasi untuk memungkinkan tester untuk sepenuhnya mengeksplorasi intuisinya. Umumnya, pengujian penetrasi memiliki tiga tahap: persiapan ujian, tes, dan analisis uji seperti yang ditunjukkan pada Gambar 1.


Semua dokumen yang diperlukan untuk tes diselenggarakan dan diselesaikan selama persiapan tes fase. Penguji dan organisasi bertemu untuk menentukan ruang lingkup, tujuan, waktu, dan waktu pengujian. Isu-isu seperti kebocoran informasi dan downtime diselesaikan dan dimasukkan ke dalam dokumen perjanjian hukum. Perjanjian hukum yang dianggap perlu disimpulkan dan ditandatangani selama fase ini. Sebagian besar proses pengujian penetrasi dilakukan selama fase pengujian. Berbagai alat otomatis dapat digunakan pada fase ini. Tabel 1 berisi beberapa alat ini. Fase ini melibatkan langkah-langkah berikut: pengumpulan informasi, analisis kerentanan, dan eksploitasi kerentanan.











Table 1. Penetration Testing Tools


Pengumpulan informasi langkah mengharuskan tester memindai area fisik dan logis dari uji target dan mengidentifikasi semua informasi terkait yang diperlukan dalam tahap analisis kerentanan.
Tergantung pada informasi yang dikumpulkan atau disediakan oleh organisasi, tester kemudian menganalisa kerentanan yang ada dalam target jaringan, host dan aplikasi.
Tester dapat memilih untuk menggunakan metode manual untuk melakukan langkah ini, tetapi alat otomatis juga ada untuk membantu tester.
Langkah terakhir memungkinkan tester untuk menemukan eksploitasi untuk kerentanan yang ditemukan di langkah sebelumnya.
Ketika eksploitasi tidak menyebabkan apa yang dimaksudkan, misalnya, akses root, analisis lebih lanjut harus dilakukan. Ini diwakili oleh lingkaran antara analisis kerentanan dan kerentanan mengeksploitasi fase.
Hasil tes yang diselidiki secara menyeluruh selama fase analisis uji. Hasil ini
disediakan untuk organisasi sehingga harus lengkap dan sistematis. Persiapan rencana mitigasi penting dalam penetrasi pengujian. Oleh karena itu wajib untuk menyertakan bagian rencana mitigasi dalam laporan analisis.

Pengujian Penetrasi Aplikasi Web
Pengujian penetrasi adalah sistematis menyelidiki suatu sistem yang dapat berupa kombinasi dari aplikasi, host, atau jaringan. Metodologi umum pengujian penetrasi adalah proses yang berguna untuk mengungkap dan menyelesaikan kelemahan keamanan aplikasi, terutama aplikasi web.
Bagian ini menggambarkan proses pengujian penetrasi menggunakan dua aplikasi contoh web, TuneStore dan BOG. Perlu dicatat bahwa wilayah diuji di sini terdiri dari hanya sebagian kecil dari daerah yang harus diuji. Oleh karena itu, proses pengujian penetrasi mungkin lebih komprehensif dan dapat mengambil lebih banyak waktu dan usaha ketika dilakukan pada aplikasi web lebih rumit.
Hal ini diasumsikan bahwa tahap persiapan ujian telah selesai sebelum tahap uji coba. Di sana tiga langkah yang terlibat dalam tahap uji: pengumpulan informasi, analisis kerentanan, dan kerentanan mengeksploitasi. Fase ini disebut fase penemuan, fase kerentanan dan serangan fase simulasi di tahap uji coba diikuti oleh tes tahap analisis.
1.      Informasi Pengumpulan-Langkah
Pada langkah ini, penguji mengumpulkan sebanyak mungkin informasi tentang aplikasi web mungkin dan memperoleh pemahaman tentang logika. Semakin penguji memahami target uji, pengujian penetrasi akan lebih sukses. Informasi yang dikumpulkan akan digunakan untuk membuat basis pengetahuan untuk bertindak atas dalam langkah-langkah selanjutnya. Penguji harus mengumpulkan semua informasi bahkan jika itu tampaknya tidak berguna dan tidak berhubungan karena tidak ada yang tahu di awal apa bit informasi yang diperlukan.
Langkah ini dapat dilakukan dalam berbagai cara: dengan menggunakan alat-alat umum seperti pencarian mesin; menggunakan scanner; mengirimkan permintaan HTTP sederhana atau permintaan khusus dibuat atau berjalan melalui aplikasi. Penguji dapat mengidentifikasi keperluan aplikasi dengan menjelajah mereka. Mereka dapat sidik jari server web, tempat aplikasi pada kedua klien
dan sisi server, dan menentukan isi dan fungsi secara manual atau menggunakan otomatis
alat. Tabel 2 daftar beberapa alat umum yang dapat digunakan dalam aplikasi web pengujian penetrasi. Di yang berikutnya, kami akan menjelaskan bagaimana melakukan pengumpulan informasi pada dua contoh aplikasi, BOG dan TuneStore.






Tabel 2. Alat Pengujian Penetrasi Aplikasi Web



2.      Langkah Analisis Kerentanan
Menggunakan pengetahuan yang dikumpulkan dari pengumpulan informasi langkah, penguji kemudian memindai kerentanan yang ada dalam aplikasi web. Penguji dapat melakukan pengujian pada konfigurasi manajemen, logika bisnis, otentikasi, manajemen sesi, otorisasi, validasi data, penolakan layanan, dan layanan web. Pada langkah ini, kerentanan server web, otentikasi kerentanan mekanisme, kerentanan berbasis input dan kerentanan fungsi-spesifik diperiksa.
3.      Langkah Kerentanan Eksploitasi
Setelah langkah analisis kerentanan, penguji harus memiliki ide yang baik dari daerah yang akan ditargetkan untuk eksploitasi. Dengan daftar kerentanan di tangan, dua aplikasi yang kemudian dieksploitasi.
Pemanfaatan Kerentanan di BOG Aplikasi. Hal ini ditemukan bahwa aplikasi memiliki kerentanan dalam mekanisme otentikasi, dan rentan terhadap SQL injection dan XSS. Tidak adanya mekanisme validasi yang ketat memungkinkan setiap pengguna untuk mendapatkan masuk ke dalam sistem. Mengeksploitasi kerentanan ini membanjiri situs dengan konten yang mengganggu keamanan sistem seperti menambahkan blog yang merusak reputasi pengguna lain ', link ke situs scammer, atau situs yang berpotensi berbahaya. Mengetahui bahwa aplikasi ini rentan terhadap SQL injection didukung dengan informasi dikumpulkan dari pesan kesalahan, fungsi yang berbeda dari aplikasi yang dieksplorasi lebih lanjut dengan tujuan mendapatkan lebih banyak ide untuk memanfaatkan sistem. Skenario ini menggambarkan loop antara analisis kerentanan dan kerentanan mengeksploitasi langkah. Dengan terus-menerus memanipulasi URL menggunakan Operasi UNION, beberapa halaman yang berisi informasi penting yang muncul. Informasi ini tampaknya menjadi username dan password dari pengguna yang sah. Ini username dan password dapat digunakan untuk mendapatkan akses ke sistem.
Selama tes untuk kerentanan XSS, aplikasi ini dimanfaatkan oleh pesan berbahaya diposting di situs sebelum menampilkan blog. Kerentanan ini dapat dimanfaatkan lebih lanjut dengan menggunakan link daripada pesan peringatan. Lain mengeksploitasi kerentanan ini untuk mencuri data berharga. Hal ini dilakukan oleh menempa situs dan konten embedding yang memikat pengguna untuk memasukkan informasi sensitif.
4.      Tes Tahap Analisis
Fase ini adalah antarmuka dari hasil, penguji dan target entitas. Adalah penting bahwa entitas target menyadari khas penyerang modus operandi, teknik dan alat – alat penyerang bergantung pada eksploitasi yang mereka gunakan, dan setiap eksposur perlu data target menderita. Langkah – langkah reaktif dan korektif yang perlu diambil untuk mengatasi masalah harus termasuk dalam fase ini. Mengingat temuan untuk BOG dan TuneStore, salah satu perbaikan strategi yang bisa untuk membersihkan input data pengguna sebelum menempatkannya dalam query SQL. oleh membutuhkan bahwa username dan password yang dikirimkan ke database tidak mengandung bad karakter, sistem dapat dilindungi terhadap serangan injeksi SQL.

Pembahasan
Pengujian penetrasi dapat menjadi strategi yang efisien dan hemat biaya untuk melindungi organisasi sistem terhadap serangan. Jika dilakukan dengan benar, hal ini membantu organisasi mengidentifikasi praktek-praktek internal yang menimbulkan kerentanan dan sumber kerentanan. Sumber yang diidentifikasi memungkinkan organisasi untuk menghapus kerentanan, baik upaya langsung keamanan sistem vendor tekanan untuk meningkatkan produk mereka, meningkatkan keamanan bisnis internal praktek dan membuktikan kepada pelanggan, pemegang saham dan badan pengatur bahwa itu membuat baik sebuah upaya iman untuk benar melindungi data bisnis penting.
Memilih tim penetrasi merupakan faktor relevan terhadap keberhasilan pengujian penetrasi proses. Dalam mengevaluasi tim, pertimbangan harus diberikan untuk kualifikasi mereka, pengalaman dan pengetahuan, reputasi di komunitas e-bisnis, akses ke, dan penggunaan, state of- alat seni. Sebuah aturan praktis untuk menghilangkan tim yang menyediakan sistem yang akan diuji. Pengujian penetrasi tidak bisa diharapkan untuk mengidentifikasi semua kerentanan keamanan yang mungkin karena hanya satu aspek dari pengujian. Organisasi harus mengembangkan pengujian keamanan secara keseluruhan strategi yang disesuaikan dengan model ancaman dan kebijakan keamanan.
Akhirnya, pengujian penetrasi tidak boleh dianggap sebagai satu-off-layanan. Hal ini dilakukan pada titik waktu. Perubahan sistem, ancaman muncul, bisnis strategi muka, dan alat – alat hacker berevolusi. Memperbaiki atau menambal kerentanan terdeteksi bukan berarti mengakhiri keamanan, kekhawatiran, dan mimpi buruk Anda, itu hanya awal dari sebuah siklus yang tidak pernah berakhir. Selain itu, uji penetrasi tidak menawarkan jaminan keamanan mutlak, itu hanya pengukuran keamanan postur.

Kesimpulan
Pengujian penetrasi adalah metode komprehensif untuk mengidentifikasi kerentanan dalam sistem. Ini menawarkan manfaat seperti pencegahan kerugian finansial; kepatuhan terhadap regulator industri, pelanggan dan pemegang saham; menjaga citra perusahaan; penghapusan proaktif dari risiko yang teridentifikasi.
Penguji dapat memilih dari kotak hitam, kotak putih, dan pengujian kotak abu-abu tergantung pada jumlah informasi yang tersedia untuk pengguna. Penguji juga dapat memilih dari internal dan pengujian eksternal, tergantung pada tujuan tertentu yang ingin dicapai. Ada tiga jenis penetrasi pengujian: jaringan, aplikasi dan rekayasa sosial.
Jurnal ini menjelaskan metodologi tiga fase yang terdiri dari persiapan ujian, tes, dan uji tahap analisis. Tahap uji coba dilakukan dalam tiga langkah: pengumpulan informasi, kerentanan analisis, dan kerentanan mengeksploitasi. Fase ini dapat dilakukan secara manual atau menggunakan alat otomatis. Proses pengujian penetrasi ini digambarkan pada aplikasi web, BOG dan TuneStore. Penguji harus mengikuti format yang komprehensif untuk menyajikan hasil tes. Salah satu bagian yang paling penting dari tahap analisis uji persiapan remediasi yang mencakup semua langkah – langkah perbaikan yang diperlukan untuk kerentanan diidentifikasi. Laporan akhir harus memiliki cukup detail dan substansi untuk memungkinkan mereka melakukan remediasi untuk mensimulasikan dan ikuti pola serangan dan hasil yang bersangkutan.


Daftar Pustaka
1.      Aileen G. Bacudio, Xiaohong Yuan, Bei-Tseng Bill Chu, Monique Jones, “An Overview Of Penetration Testing”, International Journal of Network Security & Its Applications (IJNSA), Vol.3, No.6, November 2011
2.      Farkhod Alisherov A, and Feruza Sattarova Y, “Methodology for Penetration Testing”, International Journal of of Grid and Distributed Computing Vol.2, No.2, June 2009
3.      McGraw, G. (2006). Software Security: Building Security In, Adison Wesley Professional.
4.      Andreu, A. (2006). Professional Pen Testing for Web Applications. Wrox publisher, 1st edition
5.      Stuttard, D. and Pinto, M. (2008) The Web Application Hacker's Handbook: Discovering and Exploiting Security Flaws,, Wiley. 1st edition
6.      Neumann, P. (1977) “Computer System Security Evaluation,” Proceedings of AFIPS 1977 Natl.Computer Conf., Vol. 46, pp. 1087-1095
7.      Bishop, M. (2007) “About Penetration Testing,” IEEE Security & Privacy, November/December 2007, pp. 84-87

8.      Pfleeger, C. P., Pfleeger, S. L., and Theofanos, M. F. (1989) “A Methodology for Penetration Testing,” Computers &Security, 8(1989) pp. 613-620