如何自动化检测海康威视设备弱口令?

2016-05-17 816089人围观 ,发现 19 个不明物体 终端安全

本文作者:DMZLab,本文提供的方法仅供安全学习和教学用途,禁止非法使用

黑客如果想要入侵每一台互联网设备,知道IP是非常必要的。攻击者可以通过和客服打电话和自己在网上搜索等手段获取,有3种方法可取。

1.用专业的海康威视设备搜索工具。比如:iVMS-4200 客户端。

2.也是通过安装海康威视设备搜索工具如:iVMS-4200 客户端。然后设备和安装搜索工具的电脑连接。

3.客服说:所有海康威视的默认连接端口都是8000.利用nmap 扫内网。

给客服打电话收集信息是一个非常不错的选择,以上3个方法我一一尝试

第一种方法:失败。(因为我要入侵的设备和我不在一个局域网)

第二种方法:需要和设备0距离接触失败。

第三种方法:成功。

自动化检测方法

接下来就演示我如何自动化检测海康威视设备的。

nmap 扫整个内网开8000的机器,然后逐一试探。因为8000端口是每个海康设备都会开启的。默认情况下,开启了8000端口,80端口也会开。

1.然后我就用nmap扫了整个内网的8000端口.

nmap -sS -T5 -p8000 -v -open -sV -oN c:\scan.txt 172.16.0.0/16

nmap1.png

这么多开8000端口的机器,我一个一个的在网页上试:

nmap2.png

试的我好费劲.

2.powershell  过滤IP.

我就想先把开放8000端口的机器都过滤出来,我就拿powershell 写了一下。

[cmdletbinding()]
param
(
	[parameter(Mandatory = $true)]
	[Alias('f', 'file')]
	[string]$filename,
	[parameter(Mandatory = $true)]
	[Alias('o', 'output')]
	[string]$outputname
	
)
 
 
 
 
 
switch -regex (Get-Content $filename)
{
	"(^Nmap scan report for )\b(.*)"	 { $matches[2] | Out-File -FilePath $outputname -Append}	
}

保存为: grepnmap.ps1.

然后过滤ip.这个脚本不仅适合这个项目,其他关于nmap过滤ip都可以用 。

注意:此时过滤出来的数据不能直接-iL 这样使用.需要把IP重新复制到另一个txt中,nmap才能使用-iL参数。

3.写一个nse脚本,批量检测以上IP是否存在http://IP/doc/page/login.asp 页面。

把该脚本保存为test_jiankong.nse.放到nmap目录下的scripts目录下。

采用命令:

-- The Head Section --  
description = [[Sample script to detect a fictional vulnerability in a fictional ArcticFission 1.0 web server 
@usage  
nmap --script http-vuln-check <target>  
@output  
PORT    STATE  SERVICE  
80/tcp  open   http  
|_http-vuln-check_packaging: Vulnerable  
 |   VULNERABLE  
 |   ArcticFission 1.0 Vulnerability  
 |     State: VULNERABLE  
 |     IDs: CVE:CVE-XXXX-XX  
 |     References:  
 |_      http://dmzlab.com  
author = "iphelix" 
license = "Same as Nmap -- See http://nmap.org/book/man-legal.html" 
categories = {"default", "safe"}  
]]
 
 
 
 
 
-- The Rule Section --  
local shortport = require "shortport"   local http = require "http" 
local vulns = require "vulns" 
portrule = shortport.http 
 
-- The Action Section -- 
action = function(host, port) 
-- 漏洞定义部分 --  
    local vuln = {  
        title = "<<<<HIKVISION VULNERABLE>>>>", 
		state = vulns.STATE.NOT_VULN, 
        IDS = { CVE = 'CVE-2016-521' }  
    }
	local report = vulns.Report:new(SCRIPT_NAME, host, port)  
	local uri = "/doc/page/login.asp" 
	local options = {header={}}  
    options['header']['User-Agent'] = "Mozilla/5.0 (compatible; ArcticFission)" 
	local response = http.get(host, port, uri, options)  
	if(response.status==200 or response.status==500) then
		vuln.state=vulns.STATE.VULN
	else 
		vuln.state=vulns.STATE.NOT_VULN
	end
	return report:make_output(vuln) 
	end

扫描刚刚过滤出来开8000端口的机器,是否有http://IP/doc/page/login.asp 页面。如果有提示如下:

nmap4.png

4.再次利用上诉powershell脚本。

过滤出有http://IP/doc/page/login.asp 页面的机器.

powershell.png

5.然后拿浏览器访问该IP。利用弱口令用户名:admin    密码:12345尝试登陆 。

nmap5.png

nmap6.png

*本文作者:DMZLab实验室,首发于http://dmzlab.com/77261.html ,转载请注明作者

相关推荐

这些评论亮了

  • Jumbo (6级) 论坛https://www.chinabaiker.com 回复
    就你这也叫自动化?教你怎么自动化:
    python直接get你所谓的8000或者80端口,(端口多for下),然后加上你的后台“doc/page/login.asp ”,然后post{user:user,pass:pass}
    你这算啥?还手试密码。。
    )18( 亮了
  • Kalier (1级) 回复
    居然能在172段的地址做测试,什么环境下啊
    )11( 亮了
  • nmap -sS -T5 -p8000 -v -open -sV -oN c:\scan.txt 172.16.0.0/16 | awk '/report/{print $5}' 。使用awk直接过滤出ip。awk大法好~
    )10( 亮了
  • 我是傻B我怕谁 回复
    实在看不下去了,不知道nmap 有个-oG参数吗!!!!!!哎。。。。。。。
    )10( 亮了
  • Hikvision 有C++的SDK,接口很简单,可以用来扫的。
    )8( 亮了
发表评论

已有 19 条评论

取消
Loading...

这家伙太懒,还未填写个人描述!

3 文章数 3 评论数 0 关注者

特别推荐

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php