Aplikasi web mengijinkan pengguna untuk mengakses sumber dayanya melalui sisi client seperti web browser. Beberapa aplikasi web tentu saja memiliki vulnerability yang mengijinkan penjahat siber untuk meluncurkan aplikasi spesifik seperti SQL injection dan cross site scripting. Karena adanya potensi serangan siber maka kegiatan investigasi forensik diperlukan untuk membuktikan terjadikan kejahatan siber di pengadilan. Pertama perlu diketahui apa itu aplikasi web. Yang dimaksud aplikasi web adalah program yang ada di atas server terpusat yang mengijinkan adanya pengguna dimana mengunjungi web melalui internet untuk memasukkan atau mendapatkan data ke dan dari sebuah database. Investigator perlu untuk mengumpulkan data seperti:
- Date and time at which the request was sent
- IP address from which the request has initiated
- HTTP method used (GET/POST)
- Uniform Resource Identifier (URI)
- Query sent via HTTP
- HTTP headers
- HTTP request body
- Event logs (non-volatile data)
- File listings and timestamps (non-volatile data)
- Cookies Poisoning : penyerang melewati proses otentikasi dengan mengubah informasi saat ini yang ada di cookie
- SQL Injection : saat web melakukan query ke database penyerang menggunakan seperti ' " ; /* */ dan sebagainya, jika muncul pesan error sql atau blank maka itu mungkin menjadi vulnerability
- Injection Flaws : penyerang dapat mengeksekusi command atau query melalui celah inputan sehingga dapat mengekstraksi informasi sensitif
- Cross-Site Request Forgery : penyerang melakukan pengiriman link melalui email atau chat untuk mendapatkan otentikasi pengguna
- Directory Traversal : penyerang mendapatkan akes tidak terotorisasi kedirektori seperti root melalui input seperti ../../../../etc/passwd
- Unvalidated Input : penyerang melakukan perusakan dengan URL, HTTP requests, headers, hidden fields, form fields, query string dan sebagainya
- Cross-Site Scripting (XSS) : membuat script berbahaya yang bisa dieksekusi melalui kolom search dari web atau kolom form
- Sensitive Data Exposure : penyerang mengeksploitasi data sensitif yang tidak dienkripsi oleh developer di URL misalnya
- Parameter/Form Tampering : penyerang biasanya menggunakan webscarab atau paros proxy untuk mengoleksi informasi
- Denial of Service (DoS) : serangan yang denial dengan tujuan agar sumber daya komputasi tidak tersedia untuk pelanggan lain
- Broken Access Control : penyerang melakukan eksploitasi pada kebijakan kendali akses atau access-control policies
- Security Misconfiguration : konfigurasi yang kurang tepat untuk system hardening dan network hardening
- Information Leakage : aplikasi tanpa sengaja mengungkapkan informasi sensitif
- Improper Error Handling : aplikasi tidak berhasil menangani erorr internal sehingga malah mengembalikan informasi yang bersifat sensitif
- Buffer Overflow : aplikasi menulis melebihi dari buffer yang ditetapkan sehingga dapat membuat aplikasi corrupt
- Insufficient Logging and Monitoring : penempatan file log di lokasi yang tidak aman dapat memberikan potensi hilangnya jejak
- Broken Authentication : otentikasi yang rusak dieksploitasi oleh penyerang untuk diperoleh hak istimewa administratif melalui timeouts, pertanyaan rahasia, hingga pengelolaan password
- Log Tampering : perusakan log dilakukan oleh penyerang tentunya dengan tujuan menghilangkan jejak dan identitas
- Insecure Direct Object References : terjadi karena developer mengekspos implementasi internal seperti file dan direktori
- Insufficient Transport Layer Protection
- Failure to Restrict URL Access
- Insecure or Improper Cryptographic Storage
- Insecure Deserialization
- Cookie Snooping
- XML External Entities
- Security Management Exploits
- Authentication Hijacking
- Unvalidated Redirects and Forwards
- Session Fixation Attack
- CAPTCHA Attack
Dalam melakukan investigasi atas adanya serangan web maka diperlukan pengetahuan tentang web server. Di dunia saat ini ada 2 web server yang populer, yaitu IIS dan Apache. The Internet Information Services atau IIS merupakan aplikasi yang dikembangkan oleh Microsoft dengan bahasa Visual Basic. IIS mendukung HTTP, HTTPS, FTP, FTPS, SMTP, dan NNTP. Cara kerja dari IIS, saat HTTP request datang dari client browser maka akan diintersep melalui HTTP.sys, lalu HTTPS.sys berkomunikai dengan WAS untuk mengkoleksi data dari ApplicationHost.config, WAS akan menaikkan request untuk informasi konfigurasi seperti site dan aplikasi ke ApplicationHost.config yang selanjutnya akan melewati layanan WWW. Kemudian layanan WWW menggunakan informasi konfigurasi untuk memperoleh konfigurasi HTTP.sys. Sebuah proses bekerja melalui WAS untuk application tool. Setelah worker process menyelesaikan request makan akan mengembalikan response dalam bentuk HTTP.sys kembali dan selanjutnya client akan menerima response di browser.
![]() |
sumber: https://pixabay.com/photos/macbook-apple-imac-computer-screen-606763/ |
Sedangkan cara kerja dari Apache Web melalui pendekatan modular. Elemen inti dari Apache adalah http_protocol (menangani semua perubahan data dan koneksi socket antara client dan server), http_main (menangani startups dan timeouts), http_request (menyelesaikan request dari client dan menangani error), http_core (mengandung header file yang tidak dibutuhkan modul aplikasi), Alloc.c (menangani alokasi pool sumber daya), dan http_config (membaca dan menangani konfigurasi files). Evidence yang memungkinkan dari Apache Web Server adalah logs. Ada 2 jenis log di Apache, yaitu Access log dan Error log. Investigasi Web Attacks pada basis Windows dapat dilakukan melalui Event Viewer melalui command C:\>eventvwr.msc, sedangkan serangan yang dilakukan secara bervariasi dapat menggunakan regular expression untuk mencari XSS. Lebih lanjut pemeriksaan SIEM perlu dilakukan misalnya untuk memeriksa XSS attack.
ref:
Komentar