Lucene search
K

phpTrafficA 2.3 SQL Injection

🗓️ 09 Dec 2014 00:00:00Reported by Daniel GeertsType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 41 Views

phpTrafficA 2.3 SQL Injection in log_function.ph

Related
Code
ReporterTitlePublishedViews
Family
0day.today
phpTrafficA 2.3 SQL Injection Vulnerability
10 Dec 201400:00
zdt
CVE
CVE-2014-8340
16 Dec 201418:00
cve
Cvelist
CVE-2014-8340
16 Dec 201418:00
cvelist
EUVD
EUVD-2014-8178
7 Oct 202500:30
euvd
NVD
CVE-2014-8340
16 Dec 201418:59
nvd
Prion
Sql injection
16 Dec 201418:59
prion
securityvulns
[CVE-2014-8340] phpTrafficA SQL injection
22 Dec 201400:00
securityvulns
securityvulns
Web applications security vulnerabilities summary (PHP, ASP, JSP, CGI, Perl)
22 Dec 201400:00
securityvulns
`  
-----BEGIN PGP SIGNED MESSAGE-----  
Hash: SHA1  
  
Product: phpTrafficA  
Product page: http://soft.zoneo.net/phpTrafficA/  
Affected versions: Up to and including 2.3 (latest as of writing).  
  
Description:  
An SQL injection exists in Php/Functions/log_function.php, line 933:  
$sql3 ="INSERT INTO `${table}_host` SET date='$date', host='',  
hostname='', page='$page', ref='$cleanref', agent='$agent',  
longIP='$iplong'";  
  
The $agent variable comes directly from $_SERVER['HTTP_USER_AGENT'],  
without any escaping. This makes SQL injection possible. Even if  
multiple statements in one query has been turned off, the contents of  
the database can still be read by manipulating the last parameter of the  
query (the IPv4-address stored as an integer). For example, the  
following spoofed user agent will store the ASCII-value of the second  
character of the admin hash as its IP:  
Firefox', longIP=(SELECT ASCII(SUBSTRING(value,2,1)) FROM  
phpTrafficA_conf WHERE variable='adminpassword') #  
This will be displayed in the "Latest visitors > Details" section, and  
by repeating this procedure multiple times, the entire admin hash (or  
any other database content) can be retrieved.  
  
Partial mitigations:  
- - Turn off "multiple statements in one query".  
- - Hide "Latest visitors > Details" section from view. This prevents  
the attacker from obtaining the output of the manipulated query.  
- - Apply this quick fix to line 933:  
$sql3 ="INSERT INTO `${table}_host` SET date='$date', host='',  
hostname='', page='$page', ref='$cleanref',  
agent='".mysql_real_escape_string($agent)."', longIP='$iplong'";  
  
The code-fix does not resolve the SQL injection for all server  
configurations, but should be sufficient for most. A proper fix would be  
a version of phpTrafficA that uses PDO with prepared statements.  
  
  
Best regards,  
Daniel Geerts  
-----BEGIN PGP SIGNATURE-----  
Version: GnuPG v2.0.14 (GNU/Linux)  
  
iQIcBAEBAgAGBQJUhwA8AAoJEHn1bVIKHk5NxhYQAMiEbr06K7UQxXEZv0+3KTr6  
LTA+65vVdmu0mTPQrTEjNeW46bv5tpnOuZc0q8Nprwbko2V/ANVXnD2NC4nBdYE8  
J+7XonQq7CnsM//C504D2Vms3ylQhkthycCBc1OXaaEEIF2lmFrLPFsLLNkjaEAr  
A5hDZJE7tSjDoq4/a3Psl1DLC+oblYbAA/JJxcSx5Abdnt47i9HMs9xWxN5Jn9oj  
OwXoF31YrMxbMoqrENQqnc5lVvfxM+ki/t5sCZV4jk1kRX7Ivf7sEMbhiN0sKqnM  
UeNwVSgi5308rAYdyg5zpUurvwIlKYtU9kA4N1sIVJCIGzeZXYCIOVAJZNglZ/NB  
bX9EoLoxeU1R7RS2SWHLEneriiyj0nCyS1X+HSkov9p1gYemxqivgmBKsV3A4LxG  
Crz7kHpcpYSn15u7vploGOki/G0sqpMVL9UwkK/F5vxRkMWxBjqvCzXudDXBvYVJ  
gnSJGw0QB6roJqHx3yf3x91YE8m69axiFTE8dAUz1IfTsbEgc2oUfnO+crWPyWh7  
IHx8gIfN/3Uck/6gLPse63rtKB+jI7/i4xJbm0FIbOnodzkJP1GDy9U3UsEbleSW  
kKV884YFogi1iyfuOhrqCGWatQybpHlM/VyycH3NvzpsDFwVCYrnaQ/jpfKS1rlz  
dWvSYp6b43Nui30hm+kv  
=PZkK  
-----END PGP SIGNATURE-----  
`

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