漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2016-0183074
漏洞标题:NQSky 某设备命令注入可直接获取系统 root 权限(绕过shell沙箱环境)
相关厂商:北京国信灵通网络科技有限公司
漏洞作者: 唐朝实验室
提交时间:2016-03-10 20:50
修复时间:2016-06-12 17:20
公开时间:2016-06-12 17:20
漏洞类型:设计不当
危害等级:高
自评Rank:20
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2016-03-10: 细节已通知厂商并且等待厂商处理中
2016-03-14: 厂商已经确认,细节仅向厂商公开
2016-03-17: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2016-05-08: 细节向核心白帽子及相关领域专家公开
2016-05-18: 细节向普通白帽子公开
2016-05-28: 细节向实习白帽子公开
2016-06-12: 细节向公众公开
简要描述:
该型号设备存在漏洞可以直接获取系统 root 权限
详细说明:
唐朝实验室研究员在使用唐朝巡航产品的时候,相关插件发现某 IP 存在 SSH 弱口令,深入研究之下真是别有洞天。
该 IP 使用的设备为 NQSky 旗下某通用设备,在互联网上可找到大量使用该设备的 IP,摘取部分如下
ssh admin@**.**.**.**
ssh admin@**.**.**.**
ssh admin@**.**.**.**
……
大部分设备使用默认管理密码:admin,登陆到设备后得到一个定制化的 shell,如下图:
该 shell 下无法直接执行系统命令。
测试执行 hostname 命令爆出如下错误提示:
通过上面的错误调试,可知道 id 字符串被带入到一条命令中,如果程序对输入的字符串没有进行过滤等处理,我们理论上可以对该命令进行注入,从而执行任意系统命令。
通过看上面提示我们有两个关键点:
1. 由于 id 被放在单引号之间,所以无法直接通过反引号来执行命令,所以我们需要先闭合单引号;
2. 又由于 id 是放到 sed 处理逻辑里面,所以我们还要符合 sed 的语法;
我们构造下面的命令
成功跳出当前的 shell,获取到一个正常的 bash shell,但是没有回显。仔细研究一下发现是因为我们的 /bin/bash 是放在 `` 符号中执行的,在这个符号内的命令会把标准错误信息输出到控制台,我们把 /bin/bash 的标准输出重定向到标准错误里面应该就可以得到回显内容
通过 >&2 把 bash 的 stdout 输出到 stderr 中之后,能够获取到一个有回显的 bash shell.
其实下面两种方式也可以得到一个有回显的 bash shell
whatever, we got a real shell.
测试该帐号拥有 sudo 免密码权限,可直接提升到 root 权限。
漏洞证明:
修复方案:
1. 修复弱口令漏洞;
2. 修复命令注入漏洞;
版权声明:转载请注明来源 唐朝实验室@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:14
确认时间:2016-03-14 17:18
厂商回复:
CNVD确认所述情况,已由CNVD通过软件生产厂商公开联系渠道向其邮件通报,由其后续提供解决方案并协调相关用户单位处置。
最新状态:
暂无