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: | [EXPL] phpSlash Account Hijacking (Exploit) |
|---|---|
| Date: | 20 Jul 2005 14:30:37 +0200 |
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com - - promotion The SecuriTeam alerts list - Free, Accurate, Independent. Get your security news from a reliable source. http://www.securiteam.com/mailinglist.html - - - - - - - - - phpSlash Account Hijacking (Exploit) ------------------------------------------------------------------------ SUMMARY " <http://www.php-slash.org> phpSlash is a powerful CMS written in PHP that provides easy and flexible means to publish community-based websites. It currently boasts full HTML templates, an OO design, the ability to operate in a hosted environment." An input validation flaw discovered in phpSlash can be used to gain elevated privileges by hijacking the administrator's account. DETAILS Vulnerable Systems: * phpSlash versions 0.7.1, 0.7.2, and 0.8.X There is an input validation flaw in Author.class::saveProfile which can lead to gain root privileges by hijacking user account. In function saveProfile, author_id value is retrieved from the wrong source : user info in $ary is not compared to the author_id associated to the running session ... Vulnerable Code: <? /* Code extracted from Author.class */ function saveProfile($ary) { global $HTTP_COOKIE_VARS; // ( ... snip ... ) /********************************** * This sql query is using data from an untrusted source ( $ary ) * **********************************/ $this->db->query("SELECT author_id FROM psl_author WHERE author_id = '".$ary['author_id']."'"); /********************************** * This condition is not relevant in that context, it is the current * * author_id (from $this->auth) that should eventually be compared * **********************************/ if ($this->db->next_record()) { if ($ary['password'] == "") { $q = "UPDATE psl_author SET author_name = '$ary[author_name]', author_realname = '$ary[author_realname]', url = '$ary[url]', email = '$ary[email]', quote = '$ary[quote]', author_options = '$serial_opts' WHERE author_id = '$ary[author_id]'"; // use $this->auth->auth['uid'] instead of untrusted $ary } else { $q = "UPDATE psl_author SET author_name = '$ary[author_name]', author_realname = '$ary[author_realname]', url = '$ary[url]', email = '$ary[email]', quote = '$ary[quote]', password = MD5('$ary[author_name]:$ary[password]'), author_options = '$serial_opts' WHERE author_id = '$ary[author_id]'"; /******************************/ // use $this->auth->auth['uid'] and $this->auth->auth['uname'] // instead of untrusted $ary /******************************/ } } // ( ... snip ... ) } ?> A malicious registered user can forge a http request that will overwrite preferences of other author(s) (including author real name, email address, URL, and password). A malicious developer can easily code an automated attack with the help of the self-registration capacity offered by phpSlash and build CMS-based zombie network. In fact any registered user with AuthorSaveProfile perm can overwrite other account's preferences. Vulnerable site's recognition may vary depending on configuration and version of the package, the ability to match them will depend principally on version identification, this should be subject for a second bulletin uncovering the more generic HTML fingerprinting problem found in the common footer templates. The point to focus on to identify if your version is vulnerable or not are the default perms assigned to a self-registered user (AuthorProfileSave, id 50). Note: Some upgrades (7 to 8) seem not to have this perm set, and therefore are not vulnerable. Some versions with configuration value 'authmode' set to 'log' are less vulnerable to manual or automated attacks. Fix: Download the latest package (0.8.1) from the phpSlash project page : <http://sourceforge.net/project/showfiles.php?group_id=10566> http://sourceforge.net/project/showfiles.php?group_id=10566 ADDITIONAL INFORMATION The information has been provided by <mailto:tobozo@madchat.org> tobozo. ======================================== This bulletin is sent to members of the SecuriTeam mailing list. To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com ==================== ==================== DISCLAIMER: The information in this bulletin is provided "AS IS" without warranty of any kind. In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [EXPL] OpenBB CID SQL Injection (Exploit), SecuriTeam |
|---|---|
| Next by Date: | [NEWS] Dedicated Mobile Services Carry Out Anonymous Web Attacks, SecuriTeam |
| Previous by Thread: | [EXPL] OpenBB CID SQL Injection (Exploit), SecuriTeam |
| Next by Thread: | [NEWS] Dedicated Mobile Services Carry Out Anonymous Web Attacks, SecuriTeam |
| Indexes: | [Date] [Thread] [Top] [All Lists] |