Benarkah???

Kamu pengunjung yang ke-

Look at This!

Senin, 25 Mei 2009

Ambigram

1. Earth (Bumi)
2. Air (Udara)
3. Fire (Api)
4. Water (Air)

Gambar di samping disebut juga ambigram. Keempat elemen yang disebutkan juga digambarkan dalam film berjudul "Avatar, The Legend Of Aang. Sungguh hebat orang yang membuatnya.






Ambigram mempunyai seni yang sangat tinggi. Untuk membuat sebuah kata dengan menggunakan teknik ambigram diperlukan kreasi yang tinggi. Bagi pemula seperti saya, ambigram adalah sesuatu yang sulit untuk dibuat, misalnya dalam membuat nama saya:


Apabila gambar diatas kita putar 180 derajat, maka akan menghasilkan bentuk tulisan yang sama, seperti:

Selain itu, kita juga bisa membuat 2 kata berbeda yang sama jumlah hurufnya ke dalam bentuk Ambigram, seperti misalnya saya menuliskan kata: "Wahyu-Keren" dan hasilnya menjadi:

Apabila gambar diatas kita putar 180 derajat, maka akan menghasilkan bentuk tulisan berbeda, seperti:

Menarik bukan? Walaupun ambigram saya belum dihias, tetapi sudah menghasilkan hasil yang cukup memuaskan. Pada posting berikutnya, saya akan mencoba untuk menghias ambigram saya agar tampak lebih menarik.

True or False?

Selasa, 19 Mei 2009

Indonesia Defacer Team



Tampaknya hacker indonesia sedang gencar perang cyber dengan .my ada tim yang mengatas namakan IDT (Indonesia Defacer team) hal ini sudah sering terjadi untuk ke yang sekian kalinya. tidak kepalang tanggung sudah banyak site .my yang jadi sasaran para defacer ini, berikut dapat melihat langsung list site yang di deface di

http://malingsial.serverisdown.org/

Hacker Or Cracker = Script Kiddies



Setiap hari exploit demi exploit terus di publikasi di situs² underground para hacker.

Setiap hari selalu aja gw liat satu persatu situs mulai berjatuhan dan halaman index mereka telah berubah secara frontal dengan background rata² berwarna hitam dengan tulisan "Hacked by".

Mereka yg mulai kenal dengan istilah Hacker mulai mencari berpuluh puluh tutorial di internet tentang cara mendeface situs, mencoba bertanya di milis, forum, hingga bertanya langsung pada sang defacer via chating, dan mereka hanya mendapatkan jawaban "saya bukan hacker kaka", "Hacker apaan sey omz", "saya cupu om, ga bisa apa², salah orang situ klo nanya sama saya" yapz... sebuah statement merendahkan diri menaikan mutu dari seorang defacer kacangan yg mengaku hacker

2 tahun lebih gw terjun di dunia perhackingan, dan melihat scene hacking khusus'a di indonesia, apa yg gw liat tentang hacking situs selama ini di lakukan bukan oleh seorang hacker, bahkan seorang cracker, mereka hanya seorang script kiddies yg hanya menyombongkan diri dari hasil deface mereka, dan mereka berbangga dalam hati mereka dan menyebut diri mereka "I am Hacker".

kenapa mereka gw sebut rata² script kiddies, bukan... bukan gw meng-claim semua defacer itu seorang script kiddies, ada beberapa dari mereka yg mempunyai skill yg ga main², tapi rata² para cracker baru yg gw liat selama ini hanyalah seorang yg mengaku hacker tapi buta akan programming, ga bisa membuat program, ga ngerti gimana cara mencari exploit itu sendiri, mereka hanya singgah di situs hacker, melihat news bug terbaru, mencari korban melalui search engine, menginjeksi exploit pada url korban, mendapatkan password sang admin web yg masih terenkripsi, lalu meng'cracking password itu pada sebuah situs password cracking tanpa tau cara kerja'a, setelah password asli telah di dekripsi, mereka masuk ke dalam situs korban yg di tuju serta melakukan pengrusakan besar²an dan menyebut diri mereka dengan bangga dalam hati "I am Hacker".

Perlu lo ketahui, 1000 website yg lo deface dalam satu hari ga akan menjadikan lo seorang hacker, sebuah statement bodoh klo ada seseorang mengklaim diri mereka seorang hacker tapi buta akan programming dan ga bisa membuat program sendiri, sebuah statement bodoh apabila ada seseorang mengklaim diri mereka hacker dan mendeface sebuah situs melalui shell inject tapi mereka ga bisa lepas dari windows dan ga pernah mau apabila di suruh menginstall linux pada hardisk mereka dengan alasan linux/unix itu susah !! what d fuck !! and you claiming yourself a hacker ??

friend... open your eyes, you're not a hacker, you just script dumb kiddies, take a look around, seorang hacker tingkat tinggi melakukan deface untuk memberi tau sang admin bahwa ada kelemahan pada situs'a dan mereka berani bertanggung jawab atas perbuatan'a.

seorang cracker berbahaya mendeface sebuah situs karena mereka mencari keuntungan materi dari itu semua, dan seorang script kiddies mendeface sebuah situs hanya untuk pamer dan menjadi terkenal tanpa berani bertanggung jawab pada perbuatan mereka.

cukup buat lo tau aja, seorang hacker dan cracker mampu membuat dan memodifikasi sebuah program, lain hal dengan script kiddies, gada yg bisa di banggain dari mereka, mereka hanya merusak dan merusak tanpa tau gimana cara memperbaiki apa yg mereka rusak, jadi masuk ke dalam kategori yg manakah lo??

ga adakah rasa malu lo ketika lo bisa membuat sebuah situs hancur dalam sekejap tapi lo ga ngerti ketika seorang bertanya apa itu TCP/IP, bagaimana mengkonfigurasi Firewall, bagiamana cara melihat port yg terbuka, apa perbedaan methode post dan get

ga adakah rasa malu lo ketika lo mampu membuat situs itu jadi bermasalah dalam waktu yg lama tapi lo ga ngerti cara memfilter syntax SQL yg memungkinkan seorang attacker masuk melalui sql injection, cara patching situs yg terkena masalah remote file inclusion

ga adakah rasa malu lo ketika lo di sebut hacker oleh orang lain tapi ketika lo di test untuk kerja oleh sebuah perusahaan dan di suruh membuat program dari bahasa pemrograman yg lo kuasai ternyata gada satupun bahasa program yg lo kuasain, dan lo menyebut diri lo hacker? lo salah besar kawan, lo cuma nol besar.

untuk menjadi seorang defacer sangatlah mudah, ga perlu banyak pengetahuan lebih, tapi untuk menjadi the real hacker bukanlah sebuah hal yg gampang, ketekunan, rasa ingin tau yg sangat besar, membuat, menghadapi dan menyelesaikan masalah bakal membuat lo menjadi seorang hacker yg cukup handal untuk menghadapi hari esok.

so... jadikanlah hidup lo ini lebih berharga, mulai dari sekarang yakinin di hati lo bahwa jangan ada lagi kata main², jangan pernah lagi ngelakuin hal² yg ga jelas dan sia² tanpa ada suatu alasan yg jelas, jangan tunggu besok lagi untuk berubah, karena hari esok belom tentu berpihak buat kita

dan walaupun gw sering melakukan deface terhadap situs² dan mampu membuat program sederhana, tapi gw masih blom pantes untuk menyandang gelar seorang Hacker, masih ada orang yg lebih pantes untuk menyandang gelar itu, dan hingga saat ini gw masih tetap berjuang untuk terus belajar, belajar untuk menemukan sebuah titik cerah dalam hidup, karena gw mengerti bahwa 1 detik dalam hidup sangat berharga dan ga akan pernah bisa terulang lagi.

Hacker di Berbagai Negara Rusak 10.000 Situs Israel



Disaat Israel terus melakukan bombardir di Jalur Gaza, para hacker juga melakukan “perang” di dunia maya dengan cara menginfiltrasi situs-situs Israel dengan memposting video, foto-foto dan slogan-slogan yang isinya mengutuk agresi Israel.

Surat kabar Asharq al-Awsat yang terbit di London dalam laporannya menyebutkan, para hacker yang merusak situs-situs Israel itu diduga beroperasi dari Libanon, Maroko, Iran dan Turki. Sementara laporan radio Israel menyebutkan,target para hackers itu adalah situs-situs perusahaan dan lembaga pemerintahan Israel termasuk situs Departemen Pertahanan Israel dan situs Israel Discount Bank.

Salah seorang hacker yang menyebut dirinya T@ke Sn!per mengatakan, kelompoknya berhasil meng-hack lebih dari 30 situs Israel, diantaranya situs-situs pemerintah Israel termasuk situs bank-bank dan situs partai politik Israel.

Sedikitnya, ada 10.000 situs milik Israel yang berhasil dilumpuhkan oleh para hacker itu. Setiap hacker bahkan melumpuhkan sekitar 2.485 situs Israel.

Situs milik sejumlah surat kabar Israel, seperti Maariv dan Yediot aharonot, juga tak luput dari serangan para hacker. Para hacker memasang foto-foto warga Palestina yang menjadi korban keganasan Israel dan foto-foto warga Irak yang menjadi korban kekejaman penjara-penjara AS. (Hanin Mazaya/eramuslim

sumber: arrahmah.com

100 Program Jahat Paling Top di Indonesia



Kaspersky, perusahaan piranti lunak antivirus dan keamanan komputer, membeberkan data 100 program jahat yang sedang getol melanda komputer di Indonesia. Dikutip detikINET dari keterangan tertulis yang diterima Rabu (21/1/2009), di puncak daftar itu adalah Worm.Win32.AutoTDSS.hn yang mencapai 16,8 % dari jumlah infeksi.

Meski demikian, ada satu nama yang cukup dominan dalam daftar 100 program yang menyebalkan itu. Dia adalah Kido, sebuah program jahat tipe worm yang menyebar sejak akhir 2008. Tercatat ada 26 varian Kido dalam daftar tersebut.

Worm yang menyebar melalui jaringan lokal dan media penyimpanan semacam USB Flashdisk ini memiliki banyak varian. Program jahat ini bisa mematikan system restore, memblokir akses ke situs keamanan dan mengunduh program jahat lain ke dalam komputer yang terinfeksi.

Berikut adalah daftar 100 program jahat paling top di Indonesia yang terlacak Kaspersky pada periode 1 Januari 2009 - 19 Januari 2009. Angka dalam persen menunjukkan tingkat ditemukannya program itu:

* Worm.Win32.AutoTDSS.hn 16.8469%
* HEUR:Trojan.Win32.Generic 11.9442%
* Heur.Win32.Trojan.Generic 11.3675%
* Trojan-Proxy.Win32.Agent.mf 4.9748%
* Net-Worm.Win32.Kido.s 4.422%
* Net-Worm.Win32.Kido.ih 3.1963%
* Trojan-Downloader.Win32.Small.aacq 2.5955%
* Trojan-Dropper.Win32.Small.axv 2.5715%
* Heur.Win32.Invader 2.5715%
* Worm.Win32.AutoTDSS.bcw 2.4033%
* Trojan-GameThief.Win32.Magania.gen 2.3071%
* Trojan-Dropper.Win32.Agent.bvn 2.2591%
* Net-Worm.Win32.Kido.t 2.0908%
* Trojan-Downloader.Win32.Agent.wxq 1.2497%
* Trojan.Win32.Agent2.w.a 1.1776%
* Worm.Win32.Downloader.yw 1.0815%
* Trojan.Win32.Qhost.kmq 1.0094%
* Trojan-Dropper.Win32.Agent.zje 0.8892%
* Trojan-Dropper.Win32.Small.cdw 0.6729%
* Trojan.Win32.Agent.bhug 0.6489%
* Trojan.Win32.Agent.bdzl 0.6008%
* HEUR:Trojan-Downloader.Win32.Generic 0.6008%
* HEUR:Trojan.Win32.Invader 0.5768%
* Heur.Win32.Downloader 0.5047%
* Trojan.Win32.Agent.bfnz 0.5047%
* Trojan-Downloader.Win32.Agent.arqp 0.4807%
* Trojan.Win32.Obfuscated.gen 0.4326%
* Trojan-Downloader.Win32.Small.izw 0.4086%
* Net-Worm.Win32.Kido.bt 0.4086%
* Trojan.Win32.Monder.gen 0.3845%
* Net-Worm.Win32.Kido.eo 0.3845%
* Trojan-Downloader.Win32.CodecPack.dbn 0.3845%
* Multi.Win32.Packed 0.3605%
* bukan virus:FraudTool.Win32.Antivirus2009.eg 0.3365%
* Trojan-Downloader.Win32.Agent.bbvy 0.3365%
* Net-Worm.Win32.Kido.ed 0.3124%
* Trojan-Downloader.Win32.Small.ailx 0.3124%
* Packed.Win32.PolyCrypt.d 0.2884%
* Trojan-Spy.Win32.FtpSend.b 0.2884%
* Net-Worm.Win32.Koobface.dn 0.2884%
* Trojan-Downloader.Win32.Agent.bcmd 0.2403%
* Net-Worm.Win32.Kido.da 0.2403%
* bukan virus:AdWare.Win32.180Solutions.bj 0.2403%
* Net-Worm.Win32.Kido.bg 0.2163%
* Worm.Win32.Downloader.yv 0.2163%
* Trojan-Spy.Win32.VB.bee 0.2163%
* Net-Worm.Win32.Kido.c 0.2163%
* Net-Worm.Win32.Kido.cu 0.2163%
* Net-Worm.Win32.Kido.bx 0.1923%
* Net-Worm.Win32.Kido.bw 0.1923%
* Virus.Win32.VB.ki 0.1923%
* Suspicious.Win32.Packer 0.1923%
* Trojan.Win32.FraudPack.aie 0.1923%
* Trojan-Downloader.Win32.FraudLoad.cxs 0.1923%
* Trojan-Mailfinder.Win32.Delf.cr 0.1923%
* Trojan.Win32.Agent.bcan 0.1682%
* Net-Worm.Win32.Kido.gx 0.1682%
* Net-Worm.Win32.Kido.dw 0.1682%
* bukan virus:Porn-Dialer.Win32.InstantAccess.e0.1682%
* bukan virus:AdWare.Win32.Thingies 0.1682%
* Net-Worm.Win32.Kido.fa 0.1682%
* Trojan-Downloader.Win32.FraudLoad.vgjq 0.1682%
* Trojan-Spy.Win32.VB.bev 0.1442%
* Trojan.Win32.Agentb.ah 0.1442%
* Backdoor.Win32.VB.hfq 0.1442%
* Trojan-Downloader.Win32.FraudLoad.cxo 0.1442%
* bukan virus:AdWare.Win32.OneStep.z 0.1442%
* Virus.Win32.Alman.b 0.1442%
* Virus.Win32.Sality.aa 0.1442%
* Net-Worm.Win32.Kido.cq 0.1202%
* Backdoor.Win32.VB.hdt 0.1202%
* bukan virus:AdWare.Win32.Relevant.n 0.1202%
* Trojan-Downloader.Win32.Tiny.byt 0.1202%
* Net-Worm.Win32.Kido.dt 0.1202%
* Net-Worm.Win32.Kido.bi 0.1202%
* Trojan-PSW.Win32.IMMultiPass.od 0.1202%
* bukan virus:AdWare.Win32.Shopper.v 0.1202%
* Trojan-Dropper.Win32.Delf.clr 0.1202%
* Net-Worm.Win32.Koobface.dw 0.1202%
* Trojan-Downloader.Win32.CodecPack.deo 0.0961%
* Trojan-Mailfinder.Win32.Delf.cq 0.0961%
* Trojan-Spy.Win32.VB.beq 0.0961%
* bukan virus:AdWare.Win32.Relevant.a 0.0961%
* Net-Worm.Win32.Kido.ci 0.0961%
* Backdoor.Win32.VB.hfr 0.0961%
* Net-Worm.Win32.Kido.fc 0.0961%
* Trojan-Downloader.Win32.BHO.ape 0.0961%
* Net-Worm.Win32.Kido.hs 0.0961%
* Net-Worm.Win32.Kido.ce 0.0961%
* Net-Worm.Win32.Kido.bm 0.0961%
* Hoax.Win32.Renos.vber 0.0961%
* Trojan-Downloader.Win32.Agent.bakk 0.0961%
* Trojan.Win32.Inject.mvu 0.0961%
* Trojan.Win32.Agent.aoxh 0.0961%
* Net-Worm.Win32.Kido.i 0.0961%
* Trojan-Dropper.Win32.Small.ayg 0.0961%
* Trojan-Downloader.Win32.Agent.ahyl 0.0961%
* Net-Worm.Win32.Kido.fl 0.0961%
* Trojan.Win32.Inject.nlj 0.0961%
* Net-Worm.Win32.Kido.fm 0.0961%

sumber detik.com

SQL (Structured Query Language) Injection


Injeksi SQL adalah sebuah teknik yang menyalahgunakan sebuah celah keamanan yang terjadi dalam lapisan basis data sebuah aplikasi. Celah ini terjadi ketika masukan pengguna tidak disaring secara benar dari karakter-karakter pelolos bentukan string yang diimbuhkan dalam pernyataan SQL atau masukan pengguna tidak bertipe kuat dan karenanya dijalankan tidak sesuai harapan. Ini sebenarnya adalah sebuah contoh dari sebuah kategori celah keamanan yang lebih umum yang dapat terjadi setiap kali sebuah bahasa pemrograman atau skrip diimbuhkan di dalam bahasa yang lain.

Bentuk-bentuk celah keamanan injeksi SQL

* Karakter-karakter pelolos yang tidak disaring secara benar

Bentuk injeksi SQL ini terjadi ketika masukan pengguna tidak disaring dari karakter-karakter pelolos dan kemudian diteruskan ke dalam sebuah pernyataan SQL. Ini menimbulkan potensi untuk memanipulasi pernyataan-pernyataan yang dilakukan pada basis data oleh pengguna akhir aplikasi. Baris kode berikut menggambarkan celah keamanan ini:

pernyataan := "SELECT * FROM pengguna WHERE nama = '" + namaPengguna + "';"

Jika variabel "namaPengguna" dirangkai sedemikian rupa oleh pengguna yang bermaksud buruk, pernyataan SQL tersebut bisa melakukan lebih daripada yang pengarangnya maksudkan. Sebagai contoh, mengeset variabel "namaPengguna" sebagai

a' or 't'='t

menjadikan pernyataan SQL ini oleh bahasa yang memuatnya:

SELECT * FROM pengguna WHERE nama = 'a' or 't'='t';

Jika kode ini akan digunakan dalam sebuah prosedur untuk melakukan otentikasi, maka contoh ini dapat dipakai untuk memaksakan pemilihan sebuah nama pengguna yang sah karena evaluasi 't'='t' akan selalu bernilai benar.
Secara teori, perintah SQL sah apapun bisa diinjeksi melalui metode ini, termasuk menjalankan banyak pernyataan. Nilai "namaPengguna" berikut ini pada pernyataan di atas akan menyebabkan dihapusnya tabel "pengguna" dan juga pengambilan semua data dari tabel "data":

a';DROP TABLE pengguna; SELECT * FROM data WHERE nama LIKE '%

Masukan ini menjadikan pernyataan akhir SQL sebagai berikut:

SELECT * FROM pengguna WHERE nama = 'a';DROP TABLE pengguna; SELECT * FROM data WHERE nama LIKE '%';

* Penanganan tipe yang tidak benar

Bentuk injeksi SQL ini terjadi ketika sebuah unsur masukan pengguna tidak bertipe kuat atau tidak diperiksa batasan-batasan tipenya. Ini dapat terjadi ketika sebuah unsur numerik akan digunakan dalam sebuah pernyataan SQL, tetapi pemrogram tidak melakukan pemeriksaan untuk memastikan bahwa masukan pengguna adalah numerik. Sebagai contoh:

pernyataan := "SELECT * FROM data WHERE id = " + variabel_a + ";"

Terlihat jelas dari pernyataan ini pengarang memaksudkan variabel_a menjadi sebuah nomor yang berhubungan dengan unsur "id". Namun begitu, jika pada kenyataannya itu adalah sebuah string, maka pengguna akhir dapat memanipulasi pernyataan tersebut sesukanya, dan karena itu mengabaikan kebutuhan akan karakter-karakter pelolos. Sebagai contoh, mengeset variabel_a sebagai

1;DROP TABLE pengguna

akan menghapus tabel "pengguna" dari basis data karena hasil akhir SQL-nya akan menjadi sebagai berikut:

SELECT * FROM data WHERE id = 1;DROP TABLE pengguna;

* Celah keamanan dalam server basis data

Terkadang celah-celah keamanan dapat berada dalam perangkat lunak server basis data itu sendiri, seperti yang terjadi pada fungsi-fungsi real_escape_chars() di server MySQL.

Mengamankan aplikasi terhadap injeksi SQL

* Perbaikan aplikasi

Injeksi SQL dapat dengan mudah diatasi dalam kebanyakan bahasa pemrograman yang menargetkan aplikasi web atau menawarkan fungsi. Dalam DBI di Perl, metode DBI::quote meloloskan karakter-karakter khusus (anggaplah variabel $sql menyimpan referensi ke sebuah obyek DBI):

$kueri = $sql->prepare
(
"select * from pengguna where nama = "
.
$sql->quote($nama_pengguna)
);

Namun begitu, secara umum ini bukan jalan yang terbaik dalam menghadapi masalah tersebut. DBI mengijinkan penggunaan placeholder, yang memperbolehkan Anda untuk mengikat data ke sebuah pernyataan secara terpisah dari pendefinisian pernyataan SQL tersebut. Untuk sistem basis data yang tidak secara asli mendukung placeholder, DBI menirukannya dengan menggunakan fungsi DBI::quote secara otomatis pada nilai-nilai. Banyak sistem basis data yang mendukung pengikatan nilai secara terpisah melalui API mereka; DBI akan menggunakan dukungan placeholder asli tersebut dalam hal ini. Sebagai contoh:

$kueri = $sql->prepare("select * from pengguna where nama = ?");
$kueri->execute($nama_pengguna);

Keuntungannya adalah Anda tidak perlu mengingat untuk menggunakan DBI::quote kepada setiap nilai. Nilai-nilai akan diikat secara terpisah, atau dikutip secara benar, tergantung pada dukungan yang ditawarkan oleh SMBD tertentu yang Anda gunakan. Anda kemudian terhindari dari masalah dasar injeksi SQL di mana nilai-nilai diinterpretasi sebagai SQL.
Bagi sistem basis data yang mendukung placeholder secara asli, seringkali ada keuntungan kinerja yang nyata untuk menggunakan placeholder, karena basis data dapat menyimpan cache dari sebuah perwakilan pernyataan yang terkompilasi dan menggunakannya secara berulang di antara pelaksanaan-pelaksanaan dengan nilai-nilai ikatan yang berbeda. Placeholder kadang-kadang juga disebut sebagai "variabel pengikat".
Dalam PHP, terdapat beberapa fungsi bawaan yang berbeda untuk digunakan pada SMBD-SMBD yang berbeda untuk meloloskan nilai-nilai yang cocok untuk diimbuhkan dalam pernyataan-pernyataan SQL harafiah. Untuk MySQL, yang serupa dengan ini adalah fungsi bawaan mysql_real_escape_string:

$hasil_kueri = mysql_query
(
"select * from pengguna where nama = '"
.
mysql_real_escape_string($nama_pengguna)
.
"'"
);

Antarmuka asli untuk sebuah SMBD tertentu dapat juga menawarkan sebuah metode untuk melakukan pengikatan placeholder secara terpisah, misalnya mysql_stmt_bind_param atau oci_bind_by_name. Selain itu, sebuah pustaka abstraksi basis data dapat digunakan untuk menirukan placeholder dalam cara yang mirip dengan DBI dari Perl. Sebuah contoh dari beberapa pustaka yang ada ialah ADOdb.
Dalam bahasa pemrograman Java, yang serupa adalah kelas PreparedStatement. Daripada

Connection con = (peroleh koneksi)
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery("SELECT * FROM pengguna WHERE nama = '" + userName + "';");

gunakan yang berikut

Connection con = (peroleh koneksi)
PreparedStatement pstmt = con.prepareStatement("SELECT * FROM pengguna WHERE nama = ?");
pstmt.setString(1, namaPengguna);
ResultSet rset = pstmt.executeQuery();

Dalam bahasa pemrograman "C#" .NET atau Mono, yang serupa adalah obyek-obyek ADO.NET SqlCommand (untuk Microsoft SQL Server) atau OracleCommand (untuk server basis data Oracle). Contoh di bawah ini memperlihatkan bagaimana mencegah serangan injeksi menggunakan obyek SqlCommand. Kode untuk penyedia ADO.NET lainnya sangat mirip, tetapi dapat sedikit berbeda tergantung pada implementasi khusus yang dibuat oleh vendor penyedia tersebut.
Daripada

using( SqlConnection con = (peroleh koneksi) ) {
con.Open();
using( SqlCommand cmd = new SqlCommand("SELECT * FROM pengguna WHERE nama = '" + namaPengguna + "'", con) ) {
using( SqlDataReader rdr = cmd.ExecuteReader() ) {
...
}
}
}

gunakan yang berikut
using( SqlConnection con = (peroleh koneksi) ) {
con.Open();
using( SqlCommand cmd = new SqlCommand("SELECT * FROM users WHERE name = @namaPengguna", con) ) {
cmd.Parameters.AddWithValue("@namaPengguna", namaPengguna);
using( SqlDataReader rdr = cmd.ExecuteReader() ) {
...
}
}
}

* Perbaikan basis data

Mengatur hak-hak keamanan pada basis data ke kebutuhan yang paling minim adalah sebuah perbaikan yanng sederhana. Tidak banyak aplikasi yang memerlukan pengguna untuk memiliki hak menghapus sebuah tabel atau basis data.
Kebanyakan basis data juga menawaran kemampuan untuk menyiapkan pernyataan-pernyataan SQL pada lapisan basis data melalui stored procedure. Daripada menggunakan sebuah lapisan aplikasi untuk merangkai SQL secara dinamis, stored procedure membungkus prosedur-prosedur basis data pakai-ulang yang dipanggil dengan parameter-parameter bertipe. Ini menyediakan beberapa keuntungan keamanan: dengan membuat masukan-masukan menjadi parameter dan mewajibkan tipe pada mereka, masukan pengguna secara efektif tersaring. Sebagai tambahan, kebanyakan basis data mengijinkan stored procedure untuk berjalan di bawah hak-hak keamanan yang berbeda daripada pengguna basis data. Misalnya, sebuah aplikasi akan memiliki akses untuk menjalankan sebuah stored procedure, tetapi tidak memiliki akses ke tabel-tabel dasarnya. Ini membatasi kemampuan aplikasi untuk melakukan sesuatu yang di luar aksi-aksi yang dituliskan di dalam stored procedure.
Yang juga penting untuk dicatat adalah metode kueri standar dari pustaka client C MySQL tidak akan mengijinkan lebih daripada sebuah kueri dalam sebuah masukan, mencegah serangan banyak-pernyataan yang dipaparkan di atas. Namun begitu, masukan pengguna baik-baik yang mengandung karakter-karakter pelolos (misalnya tanda kutip tunggal) tetap dapat menyebabkan aplikasi tidak berjalan karena sintaks SQL yang buruk. Bahkan beberapa serangan juga mungkin terjadi, sebagai contoh misalkan sebuah situs web yang memperlihatkan sebuah daftar barang untuk sebuah nama pengguna yang dikenal. Kueri yang dijalankan adalah:

SELECT * from barang where namapengguna='$namapengguna';

Seorang penyerang dapat memakai nama pengguna yang dirangkai secara khusus untuk mengetahui semua barang milik semua pengguna:

$namapengguna = "' or namapengguna is not null or namapengguna='";

menghasilkan pernyataan SQL sebagai berikut:

SELECT * from barang where namapengguna='' or namapengguna is not null or namapengguna='';

Ingatlah, walaupun begitu, bahwa meloloskan atau menghapus tanda kutip tidak melenyapkan resiko injeksi SQL sepenuhnya. Misalkan kueri Anda tampak seperti ini:

SELECT * from barang where idpengguna=$idpengguna;

Dengan anggapan bahwa $idpengguna merupakan nilai numerik tetapi dibiarkan lolos tanpa diperiksa, idpengguna yang dirangkai khusus ini akan, sekali lagi, memperlihatkan semua barang milik semua pengguna:

$idpengguna = "33 or idpengguna is not null or userid=44";

Yang seperti dapat Anda lihat, tidak mengandung tanda kutip sama sekali dan akan menghasilkan kueri ini:

SELECT * from barang where idpengguna=33 or idpengguna is not null or idpengguna=44;

Pertahanan yang terbaik, daripada membuat daftar hitam masukan buruk yang diketahui, adalah hanya mengijinkan masukan baik yang diketahui, atau, dengan kata lain, membuat daftar putih. Misalnya, jika Anda ingin bertahan terhadap serangan ini, Anda dapat memeriksa variabel idpengguna untuk memastikan bahwa isinya numerik seperti berikut:

if(!ctype_digit($idpengguna)){ die("Karakter-karakter yang tidak sah dalam idpengguna."); }

Hacker (Peretas)

Hacker adalah orang yang mempelajari, menganalisa, dan selanjutnya bila menginginkan, bisa membuat, memodifikasi, atau bahkan mengeksploitasi sistem yang terdapat di sebuah perangkat seperti perangkat lunak komputer dan perangkat keras komputer seperti program komputer, administrasi dan hal-hal lainnya , terutama keamanan.

Sejarah

Terminologi hacker muncul pada awal tahun 1960-an diantara para anggota organisasi mahasiswa Tech Model Railroad Club di Laboratorium Kecerdasan Artifisial Massachusetts Institute of Technology (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 komputer yang lebih baik ketimbang yang telah dirancang bersama.

Kemudian pada tahun 1983, istilah hacker berubah menjadi negatif. Pasalnya, pada tahun tersebut untuk pertama kalinya FBI menangkap kelompok kriminal komputer The 414s yang berbasis di Milwaukee AS. 414 merupakan kode area lokal mereka. Kelompok yang kemudian disebut hacker tersebut dinyatakan bersalah atas pembobolan 60 buah komputer, dari komputer milik Pusat Kanker Memorial Sloan-Kettering hingga komputer milik Laboratorium Nasional Los Alamos. Satu dari pelaku tersebut mendapatkan kekebalan karena testimonialnya, sedangkan 5 pelaku lainnya mendapatkan hukuman masa percobaan.

Kemudian pada perkembangan selanjutnya muncul kelompok lain yang menyebut-nyebut diri hacker, padahal bukan. Mereka ini (terutama para pria dewasa) yang mendapat kepuasan lewat membobol komputer dan mengakali telepon (phreaking). Hacker sejati menyebut orang-orang ini 'cracker' dan tidak suka bergaul dengan mereka. Hacker sejati memandang cracker sebagai orang malas, tidak bertanggung jawab, dan tidak terlalu cerdas. Hacker sejati tidak setuju jika dikatakan bahwa dengan menerobos keamanan seseorang telah menjadi hacker.

Para hacker mengadakan pertemuan setiap setahun sekali yaitu diadakan setiap pertengahan bulan Juli di Las Vegas. Ajang pertemuan hacker terbesar di dunia tersebut dinamakan Def Con. Acara Def Con tersebut lebih kepada ajang pertukaran informasi dan teknologi yang berkaitan dengan aktivitas hacking.

Hacker memiliki konotasi negatif karena kesalahpahaman masyarakat akan perbedaan istilah tentang hacker dan cracker. Banyak orang memahami bahwa hackerlah yang mengakibatkan kerugian pihak tertentu seperti mengubah tampilan suatu situs web (defacing), menyisipkan kode-kode virus dsb. Padahal, mereka adalah cracker. Crackerlah menggunakan celah-celah keamanan yang belum diperbaiki oleh pembuat perangkat lunak (bug) untuk menyusup dan merusak suatu sistem. Atas alasan ini biasanya para hacker dipahami dibagi menjadi 2 golongan White Hat Hackers, yakni hacker yang sebenarnya dan cracker yang sering disebut dengan istilah Black Hat Hackers.

Hacker dalam film

Pada 1983 keluar pula sebuah film berjudul War Games yang salah satu perannya dimainkan oleh Matthew Broderick sebagai David Lightman. Film tersebut menceritakan seorang remaja penggemar komputer yang secara tidak sengaja terkoneksi dengan super komputer rahasia yang mengkontrol persenjataan nuklir AS.

Kemudian pada tahun 1995 keluarlah film berjudul Hackers, yang menceritakan pertarungan antara anak muda jago komputer bawah tanah dengan sebuah perusahaan high-tech dalam menerobos sebuah sistem komputer. Dalam film tersebut digambarkan bagaimana akhirnya anak-anak muda tersebut mampu menembus dan melumpuhkan keamanan sistem komputer perusahaan tersebut. Salah satu pemainnya adalah Angelina Jolie berperan sebagai Kate Libby alias Acid Burn.

Pada tahun yang sama keluar pula film berjudul The Net yang dimainkan oleh Sandra Bullock sebagai Angela Bennet. Film tersebut mengisahkan bagaimana perjuangan seorang pakar komputer wanita yang identitas dan informasi jati dirinya di dunia nyata telah diubah oleh seseorang. Dengan keluarnya dua film tersebut, maka eksistensi terminologi hacker semakin jauh dari yang pertama kali muncul di tahun 1960-an di MIT.
W@hj0e's PeRs0nAl Bl0g © 2008 Template by:
SkinCorner