Update 09 April 2011: Terima kasih telah berkunjung ke blog saya,maaf untuk ketidak nyamanannya karena blog dalam masa pembangunan. mohon dukungan dan motivasinya ya.... ^_^, salam: aziz imammudin rhamadhan.
Adsense Indonesia ads Internet Marketing - Online ads ads
Bookmark and Share
posting kali ini saya akan membahas mengenai cara patch bugs token reset password pada Joomla / mencegah user memanfaatkan celah bugs token reset password untuk tidak melakukan penetrasi dan memasuki website joomla kalian tanpa izin. jika kemarin saya membahas cara menemukan bugs celah untuk memasuki website seseorang melalui token reset password joomla, jika belum mengerti silahkan baca artikel sebelumnya tentang memanfaatkan bugs token reset password joomla untuk memasuki website seseorang tanpa sepengetahuan pemilik website. jika telah mengerti maka kali ini saya akan memberi tahukan kepada kalian penawar bugs tersebut (emang racun,hha). cara mengatasi token reset password pada joomla tersebut agar tidak menjadi hal yang berdampak buruk bagi website berbasis CMS Joomls kalian adalah dengan langkah-langkah berikut ini :

kalian cari code dibawah ini yang terdapat pada file reset.php :
lebih tepatnya : http://situsjoomla.com/components/com_user/models/reset.php
file tersebut bisa kalian temukan pada database website kalian menggunakan file manager.
code yang harus kalian temukan :

function confirmReset($token)
{
global $mainframe;

$db = &JFactory::getDBO();
$db->setQuery('SELECT id FROM #__users WHERE block = 0 AND activation = '.$db->Quote($token));

// Verify the token
if (!($id = $db->loadResult()))
{
$this->setError(JText::_('INVALID_TOKEN'));
return false;
}

// Push the token and user id into the session
$mainframe->setUserState($this->_namespace.'token', $token);
$mainframe->setUserState($this->_namespace.'id', $id);

return true;
}

yang bermasalah pada kode diatas adalah pada bagian ini :

$db->setQuery('SELECT id FROM #__users WHERE block = 0 AND activation = '.$db->Quote($token));

jika user memasukkan Single Quote (karakter ‘ ) pada Token box maka query yang terlihat jadi seperti ini :

SELECT id FROM jos_users WHERE block = 0 AND activation = ''

lihat setelah tanda sama dengan yang terakhir. Tanda petik yang dimasukkan membuatnya menjadi empty quote (kutipan kosong)
yang akan “diluluskan” begitu saja untuk menjalankan fungsi password reset.

PATCHING
untuk mencegah user melakukan penetrasi dengan memasukkan Single Quote pada kotak Token maka Achev cukup menambahkan kode penambal.
code dibawah ini akan membuat apabila ada user yang memasukkan karakter ' akan menampilkan pesan Error. code-nya seperti ini :

if(strlen($token) != 32) {
$this->setError(JText::_('silahkan tulis pesan anda disini'));
return false;
}

pesan yang bercetak miring tebal dan berwarna hitam tersebut akan tampil pada saat ada seseorang yang mencoba menggunakan token reset password pada website joomla kalian, jadi kan asik tuh bisa memberi pelajaran kepada orang yang iseng yang ingin menjebol website kita. ohya tulisan silahkan tulis pesan anda disini bisa diganti sesuai keinginan kalian.

code tersebut diletakkan tepat dibawah potongan kode :

function confirmReset($token)
{
global $mainframe;


jika sudah kalian lakukan langkah-langkah diatas, cobalah untuk test pada web berbasis joomla anda, dan lihat perubahannya.




silahkan klik tulisan "Poskan komentar" untuk berkomentar. saya menggunakan menu komentar dengan form pop-up agar tidak mengganggu aktifitas membaca kalian. terima kasih

3 comments:

askingg mengatakan...

kyknya udah ga bisa ngisi ' untuk reset pasword

Anonim mengatakan...

sorry gan bner tuch kayaknya udah gga kpake yang kayak gtuan mah, ada yang barunya gga?_
joom versi trbarunya!

aziz imammudin rhamadhan mengatakan...

update:


kalau untuk versi yang terbaru mungkin sudah tidak bisa lagi, karena patch ini hanya digunakan untuk CMS Joomla versi 1.5.5 (mungkin versi dibawahnya masih bisa),saya membuat artikel ini karena saya sudah mencobanya dan berhasil untuk menembus salah satu website yang memakai CMS Joomla ver 1.5.5 tapi untuk versi terbaru rasanya saya belum pernah mencobanya karena tidak tertarik untuk memakai Joomla lagi.
mungkin kalian bisa menginjectkan shell file untuk membuat backdoor, tapi itu sesuai dengan kreatifitas kalian. tidak ada sistem yang tidak mempunyai celah. ^_^

jika mempunyai tambahan silahkan diberikan, terima kasih telah berkunjung.

Selamat Datang Disitus Aziz

Selamat datang di situs saya, semoga saja kalian bisa mendapatkan apa yang kalian butuhkan diblog saya yang sangat sederhana ini. mohon maaf jika informasi yang disediakan sangat minim, dikarenakan kemampuan saya yang masih kurang, mari saling berbagi. semoga blogger indonesia bisa bersaing dengan blogger internasional lainnya. sukses slalu untuk semua.

Sekilas tentang penulis

Nama saya Aziz Imammudin Rhamadhan, saya seorang mahasiswa yang masih menuntut ilmu di salah satu perguruan tinggi di Bandung, salam kenal.

Aziz