类型: 输入确认错误
目标文件: mainfile2.php
影响系统: Francisco Burzi PostNuke 0.62
- Apache Group Apache 1.3.20
- Apache Group Apache 1.3.20win32
Francisco Burzi PostNuke 0.63
- Apache Group Apache 1.3.20
- Apache Group Apache 1.3.20win32
Francisco Burzi PostNuke 0.64
- Apache Group Apache 1.3.20
- Apache Group Apache 1.3.20win32
描述: PostNuke 是一款用 PHP 写的内容管理系统,但是发现它的输入验证机制存在问题。远程攻击者只需知道用户名和用户 ID 就可绕过该用户验证机制登陆系统。
当变量 \"save=1\" (有正确的用户名和ID) 在 URL 中被指定时,组件 \"article.php\" 会调用 \"mainfile2.php\" 更新用户信息。getusrinfo() 函数进行 mysql 查询来完成该项功能。 该函数会接受不安全的输入,再将用户输入传递给 \"article.php\"。 这允许远程攻击者绕过条件\"where user=$user3[1] and pass=$user3[2]\" 限制,例如附加 \"or user=USERNAME\" 到查询串中。
测试方法:
http://targethost/article.php?save=1&sid=20&cookieusrtime=
160000&user=USERID:encodedstring
解决方法: 补丁程序下载地址
Francisco Burzi PostNuke 0.62:
Francisco Burzi PostNuke 0.63:
Francisco Burzi PostNuke 0.64:
SourceForge Upgrade 64Mutant_Fix_article
http://prdownloads.sourceforge.net/post-nuke/64Mutant_Fix_article.zip
This is a replacement for the article.php component of PostNuke 0.64.