Advanced Electron Forum Security Issue and Two Vulnerabilities


Description   A security issue and two vulnerabilities have been discovered in Advanced Electron Forum (AEF), which can be exploited by malicious users to disclose certain system information and conduct SQL injection attacks and by malicious people to conduct cross-site request forgery attacks.
1) Input passed via the filename when uploading attachments is not properly sanitised before being used in an SQL query. This can be exploited to manipulate SQL queries by injecting arbitrary SQL code.
Successful exploitation requires that "magic_quotes_gpc" is disabled.
2) Input passed via the "avatargalfile" parameter when changing the avatar image is not properly verified before an error message is returned. This can be exploited to determine the existence of files on the system via directory traversal attacks.
3) The application's web interface allows users to perform certain actions via HTTP requests without performing any validity checks to verify the requests. This can be exploited to e.g. edit administrator's profile settings by tricking a logged in administrator into visiting a malicious web site.
The security issue and the vulnerabilities are confirmed in version 1.0.9. Other versions may also be affected.
     
Vulnerable Products   Vulnerable Software:
Advanced Electron Forum (AEF) 1.x
     
Solution   Edit the source code to ensure that input is properly sanitised and verified. Do not browse untrusted websites or follow untrusted links while logged in to the application.
     
CVE   CVE-2009-2546
CVE-2009-2545
     
References   Aung Khant:
http://yehg.net/lab/pr0js/advisories/%5Baef-1.x%5D_cross_site_request_forgery
     
Vulnerability Manager Detection   No
     
IPS Protection  
ASQ Engine alarm Available Since
Misc : Directory traversal - parameter starting with ../
3.2.0
SQL injection Prevention - POST : suspicious SELECT statement in data
3.2.0
SQL injection Prevention - POST : possible version probing in data
3.2.0
SQL injection Prevention - GET : suspicious CAST statement in URL
3.2.0
SQL injection Prevention - GET : suspicious DECLARE statement in URL
3.2.0
SQL injection Prevention - POST : suspicious OPENQUERY statement in data
3.2.0
SQL injection Prevention - POST : suspicious CREATE statement in data
3.2.0
Directory traversal using ..\..
3.2.0
SQL injection Prevention - POST : suspicious UPDATE statement in data
3.2.0
SQL injection Prevention - POST : suspicious UNION statement in data
3.2.0
Directory traversal
3.2.0
SQL injection Prevention - POST : suspicious DROP statement in data
3.2.0
SQL injection Prevention - POST : suspicious INSERT statement in data
3.2.0
SQL injection Prevention - POST : suspicious OR statement in data
3.2.0
SQL injection Prevention - POST : suspicious EXEC statement in data
3.2.0
SQL injection Prevention - POST : suspicious OPENROWSET statement in data
3.2.0
Directory traversal backward root folder
3.2.0
SQL injection Prevention - POST : suspicious DECLARE statement in data
3.2.0
SQL injection Prevention - POST : suspicious HAVING statement in data
3.2.0
SQL injection Prevention - POST : suspicious CAST statement in data
3.2.0
SQL injection Prevention - POST : suspicious UPDATE statement in data
5.0.0
SQL injection Prevention - POST : suspicious SELECT statement in data
5.0.0
SQL injection Prevention - POST : suspicious DECLARE statement in data
5.0.0
SQL injection Prevention - POST : suspicious OPENROWSET statement in data
5.0.0
SQL injection Prevention - POST : suspicious OPENQUERY statement in data
5.0.0
SQL injection Prevention - POST : suspicious CAST statement in data
5.0.0
SQL injection Prevention - POST : suspicious EXEC statement in data
5.0.0
SQL injection Prevention - POST : suspicious CREATE statement in data
5.0.0
SQL injection Prevention - POST : suspicious INSERT statement in data
5.0.0
SQL injection Prevention - POST : suspicious DROP statement in data
5.0.0
SQL injection Prevention - POST : suspicious HAVING statement in data
5.0.0
SQL injection Prevention - POST : suspicious UNION statement in data
5.0.0
SQL injection Prevention - POST : suspicious OR statement in data
5.0.0
SQL injection Prevention - POST : possible version probing in data
5.0.0
     


 
 
 
 
 Risk level 
Low 

 Vulnerability First Public Report Date 
2009-07-16 

 Target Type 
Server 

 Possible exploit 
Remote