Seorang hacker yang ingin melakukan serangan ke sebuah situs, mereka mempunyai tahap-tahap dalam melakukan hacking, modus operandi mereka selalu hampir sama. sebagian besar adalah :
Mengumpulkan Informasi
ini adalah tahap awal untuk melakukan hacking, Hacker biasanya mengumpulkan informasi-informasi terhadap target terlebih dahulu, misalnya mencari informasi terhadap Operating System terhadap server target tersebut, apakah target memakai server berbasikan linux, atau window. Juga melakukan Port scanning pada website tersebut, untuk mengetahui port tersebut di gunakan untuk apa saja, dan port apa saja yang terbuka. lalu memeriksa aplikasi dari server tersebut.
misalnya apakah menggunakan PHP, atau CGI, atau ASP sebagai bahasa program untuk aplikasi situsnya.
Melakukan Survey
Jika sudah mendapatkan informasi-informasi tersebut di atas, hacker akan melakukan survey untuk mencari kelemahan terhadap informasi yang dia dapat tadi, apakah memiliki kelemahan atau tidak.
Memeriksa Input Validation
Bila sudah di tahap ini, hacker akan melakukan uji coba atas input validation yang di gunakan website tersebut. dan mencari tahu, Input apa yang di butuhkan oleh server tersebut agar bisa melakukan perubahan.
Memulai Serangan
Setelah mengumpulkan informasi terhadap situs target, maka hacker akan memulai serangannya.
Metode serangan favorit yang sering di lakukan oleh hacker
SQL Injection
Penyerang akan menjalankan perintah SQL melalui website tersebut, ini bisa di lakukan dengan dua cara, yakni melalui pengeditan Form , atau pun melalui pengeditan link url.
Cross site scripting ( CSS attack )
Dengan serangan ini, Input yang di masukan pengguna lainnya dalam website tersebut akan di transfer ke website nya si penyerang.
Directory traversal Attack
Juga di kenal dengan ../ ( dot dot slash ) attack. Dengan serangan ini, directory yang tadinya tidak bisa di lihat ( forbiden ) akan bisa di akses. Dengan cara melakukan penambahan ../ di link target.
Parameter manipulation
Melakukan manipulasi terhadap data yang di transfer antara browser dengan aplikasi website tersebut. hal ini bisa di lakukan dengan beberapa cara :
Cookie manipulation
Cookie yang menyimpan data login dalam suatu sesi, dengan adanya cookie, seorang user tidak perlu lagi melakukan login ke website tersebut, selama dia belum melakukan logout. karena cookie ini di simpan di dalam komputer klient, penyerang dengan mudah memanipulasi data cookie tersebut.
HTTP Header Manipulation
HTTP headers yang mengontrol informasi dari jaringan klien ke server situs, di karenakan HTTP header ini berasal dari komputer client ( pelanggan ) . Penyerang dengan mudah mengubah dan memanipulasi data tersebut.
HTLM Form Field manipulation
Sebuah form login, form pendaftaran, Form transfer, yang biasanya ada di suatu situs bisa di modifikasi dengan mudah, dan melancarkan serangan dengan memakai form yang sudah di ubah tersebut.
URL manipulation
Sebuah situs yang menampilkan parameter perintah di bagian link situs tersebut di browser, akan dengan mudah di baca oleh penyerang tersebut untuk melakukan perubahan.
Directory enumeration
Menganalisa directori dan struktur dari website tersebut, dan mencari directory tersembunyi, maupun mencari direktori yang memiliki write akses.
Dan masih banyak lagi metode serangan lainnya seperti :
File Inclusion, Script Source Code Disclosure, CRLF Injection Cross Frame Scripting (XFS), PHP Code Injection, XPath Injection, LDAP Injection, Blind SQL/XPath Injection, Authentication attacks, Buffer overflows.