PHP Programming
Membuat Password Joomla 1.5 Sendiri untuk Reset Password

Membuat Password Joomla 1.5 Sendiri untuk Reset Password

Rabu, 04 Juni 2008 08:57 WIB | 22.570 Views | Comments 2008-06-04 08:57:43

Walaupun saya sudah bilang sebelumnya kalau saya bukan murni pengembang Joomla 1.5, namun ada pekerjaan yang memaksa saya untuk mendalami lebih jauh tentang OpenSource CMS yang satu ini. Ada sekitar lima belas modul yang saya buat dan 3 buah komponen besar yang dikembangkan sendiri untuk memenuhi kebutuhan pekerjaan ini, ada komponen untuk manajemen komik, komponen untuk ringtone dan MP3 dan ada juga untuk Astrology, semuanya lengkap dengan administratornya, walaupun agak susah namun ternyata berhasil juga, selain itu dilengkapi dengan beberapa modul tambahan untuk kelengkapnya. Salasatu yang paling menyita waktu yaitu mencari model Hash (decode) password dari joomla 1.5 itu sendiri,
karena secara default password di joomla terbaru ini tidak murni menggunakan md5 hashses.

Seharian bisa pusing mencari di forum-forum akhirnya kutemukan juga, jujur untuk yang satu ini sangat susah dibuatnya karena harus membongkar class joomla core yang ada. setelah ditemukan ternyata sangat berguna hases di joomla ini. Ada beberapa manfaat yaitu ketika kita lupa password admin atau user joomla maka kita bisa injek langsung ke phpmyadmin hasil hashes yang telah dibuat.

Model decode yang dilakukan joomla memang sedikit aneh. Ambil saja contohnya. saya input password dengan kata "1234" pada jam 10 pagi dan akan menghasilkan hasil decode berupa karaker 65 yang jika dilihat ada pemisah : (titik dua titengahnya) dan hasil dari decode 1234 pada jam 10 pagi akan menghasilkan string xxxxx:yyyyy misalkan, tapi ketika saya lakukan pada pukul 11 maka akan menghasilkan zzzzzz:yyyyyx misalkan. Ketika saya login, dua-duanya bisa digunakan. Kenapa bisa demikian? bila kita lihat ada unsur time-nya ketika melakukan hashing.

Script dibawah ini bisa anda gunakan untuk membuat password baru di Joomla 1.5, script ini saya dapat dari Forum Anak-anak Joomla Jepang

dengan beberapa modifikasi sesuai kebutuhan saya.

//Fungsi untuk membuat password di Joomla 1.5
function mosMakePassword($length=16) {
    $salt         = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    $makepass    = '';
    mt_srand(10000000*(double)microtime());
    for ($i = 0; $i < $length; $i++)
        $makepass .= $salt[mt_rand(0,61)];
    return $makepass;
}

function josHashPassword($password)
{
    // Salt and hash the password
    $salt    = mosMakePassword(16);
    $crypt    = md5($password.$salt);
    $hash    = $crypt.':'.$salt;

    return $hash;
}
$password = josHashPassword($passwd);


Script diatas saya gunakan untuk singkronisasi database dan tambahan juga untuk modul Single Sign On dengan beberapa situs lain, sehingga SSO buatan sendiri bisa berjalan dengan baik.


Baca atau Download PDF Adi Sumaryadi - Bicara IT dan Internet

#






Mungkin anda tertarik menonton video tentang Mau Jadi Orang IT? Inilah Peta Jalan atau Roadmap yang Harus Ditempuh


PHP Programming Lainnya