Rampok | Blog Rama Mamuaya

July 19, 2007

Fungsi md5() untuk proteksi password pada PHP

Filed under: Etcetera - Administrator @ 12:20 pm

Saya kemarin dimintai tolong oleh beberapa kolega saya untuk me-review / meng-audit program skripsi mereka sebelum disidangkan 2 minggu kemudian. 5 orang yang membuat web ecommerce, dan 2 orang membuat sistem informasi berbasis web ( semua menggunakan PHP ). Dari 7 buah skripsi teman saya tersebut ternyata tak satupun yang menggunakan pengamanan / enkripsi dalam database khususnya untuk username dan password yang plaintext gitu aja. Padahal fungsi md5() sudah capek2 ditulis untuk membantu.. hehe. Yah begini contoh penggunaan beserta penjelasannya :

MD5 sendiri merupakan algoritma enkripsi satu arah ( hampir tidak mungkin untuk brute force decryption ). Caranya adalah dengan mengacak string yang akan dienkripsi menjadi md5 hash ( hasil enkripsi ). Nah untuk mecocokkannya cukup mudah yaitu dengan mengenkripsi password yang diinput saat login  kembali menjadi hash untuk kemudian dicocokkan dengan hash password pada database sesuai dengan login username tersebut.

Code

 Tabel user: user_id INT(5) PK, login VARCHAR(10), pass VARCHAR(8).

 skrip untuk insert record user baru ke db :

$hash_pass = md5($password); 

$kueri = mysql_query("INSERT INTO user VALUES(23425,’userbaru’,'$hash_pass’)"); 

skrip untuk login 

 $hash_pass = md5($password);

$kueri = mysql_query("SELECT * FROM user WHERE login=’$username’ AND pass=’$hash_pass’");

if(!$kueri){

die("login gagal");

dengan begini password yang disimpan dalam database tidak dalam bentuk plain text which is so dangerous. Peace. 

July 11, 2007

Notepad2

Filed under: Etcetera - Administrator @ 2:20 am

Nama Software : Notepad2 versi 1.0.12

Ukuran : 540 Kb

Programmer : Florian Balmer

Homepage : http://www.flos-freeware.ch

 

Notepad?? Program editor  teks paling sederhana bawaan windows itu kah?? Apa istimewanya?? Yup, memang program freeware yang bernama Notepad2 ini sama sekali tidak ada hubungan darah dengan Notepad bawaan windows, namun jangan salah Notepad2 ini jauh lebih kaya fitur daripada Notepad biasa. Keunggulannya dibandingkan dengan Notepad bawaan windows sangat banyak!

Fitur yang paling mencolok dan membantu dari freeware ini adalah dengan adanya syntax highlighting atau mewarnai sintax – sintax khusus dalam bahasa pemrogramman tertentu. 22 bahasa pemrogramman sudah dikenali dalam syntax highlighting antara lain untuk Web ( PHP, ASP, HTML, Javascript ,dll ),VBScript, Visual Basic, C, C++,C#, Pascal, Batch file, Unix Shell Executable, dan masih banyak yang lainnya. Notepad2 mengenali syntax yang akan di-highlight berdasarkan ekstension file yang dibuka ( .c untuk bahasa C, .cpp untuk C++, .pas untuk Pascal, dll ).

Salah satu fitur yang cukup telak mengalahkan notepad buatan windows adalah fitur Rectangular Block / Selection. Dengan fitur ini anda dapat mengeblok teks kearah bawah dengan menggunakan tombol ALT+Mouse. Jadi sambil menekan tombol ALT lalu mengeblok teks ke bawah maka teks disamping tidak akan ikut terseleksi melainkan hanya teks ke bawah. Fitur ini bahkan belum bisa ditandingi windows pada Notepad bawaan pada Windows Vista. Dan by the way, Notepad2 ini berjalan dengan mulus di Windows Vista 32-bit Home Basic Edition, bahkan dengan lancar mengenali karakter CRLF versi UNIX yang terlihat kotak – kotak pada Notepad bawaan windows.

Dan yang lebih baik lagi, freeware ini adalah Open Source!! Di situs download anda juga dapat mendownload source code yang memang dirilis bebas oleh programmernya. Dengan Notepad2 anda tidak perlu lagi banyak program seperti Frontpage ( publisher ) ,Dreamweaver, dan program untuk programming lainnya selain compiler. RAM

KRRS Online Tarumanagara

Filed under: Etcetera - Administrator @ 2:19 am

Nama Software : Sistem Informasi KRRSOnline Univ. Tarumanagara

Homepage : http://akad.tarumanagara.ac.id/intra

Programmer : Tim Puskom Tarumanagara

Saya kebetulan, tidak lain dan tidak bukan adalah mahasiswa, civitas akademika dari Universitas Tarumanagara Jakarta =). Saya sebagai mahasiswa jurusan SI – FTI Untar merasa perlu mereview sebuah aplikasi sistem informasi yang saya gunakan tiap pergantian semester. Pertama, saya tidak bermaksud menjatuhkan kredibilitas apalagi nama baik kampus saya sendiri namun saya sudah berulang kali mengusulkan perbaikan pada sistem informasi tersebut namun sepertinya email saya tidak digubris.Jadi jangan salahkan saya ya bapak dan ibu puskom =p

Tiap pergantian semester para mahasiswa Untar diharuskan mendftarkan mata kuliah yang akan diambil semester depan via internet ( web ). Tiap – tiap angkatan dari tiap jurusan dibedakan waktu pendftaran untuk mengindari deadlock akibat over-accessed resource ( Denial Of Service ). Mahasiswa diharuskan login menggunakan nim dan password, lalu mengisi form demi form pendaftaran mata kuliah hingga kelas yang harus dipilih. Namun, semua proses pendaftaran ini harus kurang dari 10 menit, karena jika lewat maka sistem akan menyuruh anda untuk login kembali. Memang bagus untuk mencegah mahasiswa berlama – lama di dalam sistem, mungkin agar celahnya tidak ketahuan hehehe. Namun, dengan kondisi bandwith yang terbatas / pas – pasan dan ketika ratusan orang mengakses resource yang sama pada server AS-400 ( Atau HP-Proliant ya?? ) maka akses sedikit terhambat dan tidak sedikit pula yang harus mengulang terus sampai akhirnya mereka terlalu lama dan kehabisan kelas ( it happened to me in my first year ). Tentu saja sangat menyebalkan, dan akhirnya saya memutuskan untuk menganalisa sistem ini lebih lanjut tapi tentu saja hal ini tidak mudah karena saya hanya punya waktu beberapa menit di dalam sistem  sampai akhirnya menunggu semester depan. Namun, akhirnya saya berhasil mempelajari sistem tersebut.

PROTECTED CODE

Jadi ketika berada di dalam sistem web based yang saya akses melalui browser ternyata terdapat fungsi Javascript yang memblok klik kanan untuk melakukan View Source. Namun hal ini saya lewati dengan menekan tombol kiri ( klik kiri ) sambil kemudian klik kanan., setelah itu lepas klik kiri baru kemudian lepas klik kanan. Atau cukup menekan tombol CTRL+N pada browser IE untuk membuka window baru yang dapat dilihat source melalui klik kanan.

HTTP- REFFERER FLAW

Form – form yang ditampilkan satu persatu ternyata hanya membuat waktu akses semakin lama. Sebenarnya semua informasi yang didapat dari form 1 – 4 dikumpulkan pada satu form terakhir kemudian lakukan konfirmasi password baru kemudian KSS selesai dibuat. Form – form yang ada antara lain : disp_subject.asp, disp_subject2.asp ,disp_class.asp, disp_form1.asp, dan disp_confirm.asp. Informasi – informasi tersebut berupa query untuk database Informix yang transparan dan dapat dilihat pada value tiap – tiap variable pada form confirm. Untungnya tidak ada HTTP REFFERER PROTECTION pada sistem ini, jadi anda tidak harus mengisi form – form satu persatu melainkan hanya membuat form sendiri yang memuat informasi – informasi keseluruhan untuk kemudian dikirimkan ke form disp_confirm.asp. Caranya bagaimana?? Cukup saya ,Tuhan ,dan mungkin beberapa anak untar lain yang tahu ;p

Dengan cara ini anda pun dapat membypass pengecekan waktu pendaftaran sehingga anda dapat mendaftar lebih cepat daripada anak – anak lainnya sehingga tidak perlu takut kehabisan kursi kelas.

Lagipula, jika anda tidak mengerti apa yang saya maksud dalam artikel ini ,mungkin memang anda sebaiknya tidak usah macam – macam dengan KRRS Online, daripada…. =)

 

 

Get free blog up and running in minutes with Blogsome
Theme designed by Alex King