Me n My Homework !!!

Jumat, 06 Mei 2011

Deface Situs




Deface adalah kegiatan mengubah halaman website orang lain tanpa sepengetahuan orang tersebut, pastinya ini adalah kejahatan dunia cyber. Deface terkenal juga dengan sebutan cybergrafitti yaitu corat-coret website tertentu. Deface dilakukan dengan memanfaatkan kelemahan dari website tersebut.
Biasanya hacker men-deface suatu halaman web dengan maksud supaya eksistensinya diketahui oleh khalayak ramai.





Memanfaatkan Kelemahan Scripting maupun HTML Form


JavaSript yaitu suatu scripting language di sisi client sehingga suatu transaksi yang menggunakan JavaScipt dapat dipastikan sangat rawan terhadap manipulasi dari sisi pemakai.
Contoh scripting language yang bekerja disisi client :
• JavaScript
• Client side VB Script

Adapun scripting language di sisi server :
• Active Server Pages
• Java Server Pages
• Personal Home Pages

Kelemahan dasar pada HTML Form yaitu :
• Formulir dalam format HTML
• Setiap HTML form harus menggunakan salah satu metode pengisian formulir
• Melalui kedua metode HTTP ini (GET atau POST)


Sql Injection



Tehnik hacking sql injection mulai mencuat kepermukaan semenjak dijebolnya situs KPU pada pemilu putaran pertama kemarin oleh Dani Firmansyah atau Xnuxer , dengan teknik ini beliau dapat masuk sebagai web administrator tanpa susah payah scan port-port yang terbuka , tanpa terdeteksi oleh firewall dan tanpa tool .ke situs tersebut yang konon system yang seharga 152 milyar itu keamanannya berlapis lapis Apa yang saya bahas ini adalah basic atau dasar dasar dari teknik hacking yang dinamakan sql injection , teknik ini memungkinkan kita masuk ke suatu system yang terproteksi sebagai siapa saja dengan hanya mengetahui username tanpa harus mengetahui passwordnya bahkan kita juga bisa login tanpa perlu mengetahui username dan password sama sekali


Diilustrasikan BSI  mempunyai situs dengan nama www.bsi.ac.id , untuk mengelola situs ini administrator membuat halaman web untuk atifitas update semua halaman web sehingga bisa dikelola darimanapun dan kapanpun , halaman web tersebut tersimpan di www.bsi.ac.id/admin.asp , untuk mengamankan halaman” yang dikhususkan untuk web administrator ini , web admin membuat halaman web yang terproteksi yang berfungsi sebagai pintu masuk ke halama2 berikutnya ,sehingga setiap user yang akan masuk ke halaman halaman yang terproteksi harus memasukan username dan password mereka , daftar password dan user tersebut tersimpan dalam sql server dengan nama table admin dengan field field diantaranya username dan password. Statement sql bukanlah bahasa pemrograman seperti pascal,Delphi atau visual basic , statemen sql biasanya digunakan bersama sama dengan bahasa pemrograman lain pada saat mengakses database , pada ilustrasi diatas , untuk mencocokan user yang login ,maka digunakan statemen sql yang kurang lebih sebagai berikut

Select * from admin where username = input_username
And password = input_password

Sebagai contoh apabila penulis sebagai administrator dengan username = administrator
dan password = admin bermaksud login maka sql statemennya sebagai berikut

Select * from admin where username = ‘administrator’ and
Password = ‘admin’

Dapat dipastikan bahwa apabila field username terdapat record administrator dengan filed password terdapat admin penulis dapat melewati proteksi dan masuk kehalaman berikutnya ,akan tetapi apabila sebaliknya ,maka akan keluar pesan kesalahan yang kurang lebih isinya kita tidak bisa masuk ke halaman berikutnya , lalu bagaimana kalau penulis memasukan input ‘ or ‘’=’ pada username dan password , perhatikan perubahan
statemen sql berikut ini

Select * from admin where username = ‘’ or ‘’ = ‘’ and
Password = ‘’ or ‘’=’’

Logika OR menyebabkan statement membalikan nilai false jadi true sehingga kita bisa masuk sebagai user yang terdapat pada record pertama dalam table admin ( record pertama biasanya administrator) , dan bagaimana kalo kita hanya mengetahui username saja tapi passwordnya tidak , misalkan username = administrator , caranya cukup sederhana , pada text box tempat menginput username isi dengan “administrator’—“ sedangkan pada textbox password boleh diisi sembarang misalkan ‘ or ‘’=’ maka statement sql akan berubah menjadi

Select * from admin where username = ‘ administrator ‘—“
And password = ‘’ or ‘’=’’

Tanda “—“ (dua tanda minus) di sql server berarti akhir dari statement sql sehingga
perintah dibelakannya tidak dieksekusi lagi.

Untuk web admin , bagaimana cara mencegahnya , jangan izinkan user menginput selain karakter a - z atau A - Z atau 0 – 9 , selain dari pada itu ditolak pada saat pengecekan.