“Stress”
Duh judulnya jadi kaya curhatan abg abg labil :(
Stress disini maksudnya adalah Stress Testing. Banyak ya testnya buat menghasilkan apps hehe. Dan sekarang kita bakal lebih lanjut mengerti tentang Stress dan Penetration Testing. (yay!)
Stress Testing
Stress testing ini sebenernya termasuk dari bagian performance testing. Yhaa apalagi tuh performance testing. Performance Testing adalah salah satu bentuk testing untuk meriksa seperti apasih performa dari aplikasi kita ketika dijalankan. Nah si performance testing ini terdiri dari beberapa tipe seperti stress testing, load testing, spike testing, dll, dll, dll.
Stress testing dilakukan untuk memeriksa performa aplikasi kalau-kalau aplikasi kita melewati kapasitas requests dan jobs, yaa gampangnya gimana aplikasi kita bakal behave dalam keadaan traffic yang tinggi.
UI Testing with Monkey
Android SDK sebenernya sudah mempunyai tools untuk melakukan stress test dengan menggunakan The Monkey. Monkey ini runs on your emulator, kerjanya clicks-touches-gestures apps kita. Monkey ini seperti mensimulasikan seorang user yang sedang menggunakan aplikasi yang bari mereka download. Pasti mereka bakal ngeclick semuanya kan tuh hehe
Cara stress testing dengan Monkey:
- Masuk ke Android folder, lalu pilih sdk dan masuk ke platform-tools
2. Lalu masukkan command ini
adb -e shell monkey --ignore-crashes -p <package> 500
penjelasannya:
- -e : itu melakukan testnya dengan emulator, dapat diubah dengan -d
- -d : menjalakan device android
- — ignore-crashes : si Monkey ini akan terus mengirimkan events, sampai semua events selesai dijalankan
- -p : memberitahu package mana yang bakal dijalanin
lebih lengkapnya bisa cek disini
Ini bentukannya kalau sudah run command tadi, Monkey langsung melakukan stress testing
Penetration testing
Penetration testing (pentest) adalah simulated cyberattack yang bisa dilakukan terhadap aplikasi yang dibuat. Biasanya orang-orang jahat ini melakukan kejahatannya lewat endpoint API nya.
Contoh di sumbang.in, si orang jahat itu bisa merubah isi dari transaksi yang dibuat oleh user
Kenapa harus Pentest??
Pentest penting karena dapat menemukan celah-celah keamanan supaya bisa diperbaiki secepatnya
Ada 5 tahapan untuk melakukan pentest:
- Perencanaan dan Pengintaian: Tahap pendefinisian scope dan goal dari test yang akan dilakukan, seperti target dan metode yang digunakan.
- Scanning: Tahap untuk memahami respon dari aplikasi target terhadap berbagai percobaan attack. Dapat dilakukan dengan memeriksa code dan lain sebagainya.
- Gaining Access: Melakukan berbagai attack seperti cross site scripting, SQL injection, dll. Selanjutnya tester akan mencoba melakukan eksploitasi kelemahan tersebut dengan menambah privilege, mencuri data, dan cara lainnya.
- Maintaining Access: Tahap untuk melihat apakah kelemahan tersebut dapat digunakan untuk mengakses tetap dalam sistem
- Analysis: Tahap ini menganalisa kelemahan yang di eksploitasi, data sensitif yang di akses, dan berapa lama waktu pen tester dapat berada di dalam sistem tanpa terdeteksi.