小白客带你走进黑客世界3之黑客漏洞检测技术(上)
一开始的时候,漏洞的发现并不容易,基本上只有有经验的黑客才能后准确的定位出系统存在的漏洞,这就经常导致了漏洞被雪藏,系统应用脆弱,容易遭受不法黑客的攻击,造成个人或企业的经济损失。
漏洞检测技术孕育而生。漏洞检测技术的目的就是研究专门的技术手段和方法,建立多角度的漏洞检测能能力,帮助企业或个人快速定位漏洞。漏洞的发现由经验向理论化演变。形成自动化、规模化的能力。
在小白看来,漏洞检查的方式分为两种。一种是静态分析,也就是对应用系统的源代码层面上进行分析,寻找代码中出现的不合理点。另一种是动态分析,也可以说是漏洞扫描。使用专门的漏洞扫描器尽心扫描。扫描又可以分为本地扫描和远程扫描。
一般我们常说的系统扫描器的工作流程就如下图所示:

存货判断:
通过ping命令等判断要扫描的计算机有没有在网络上运行着。如果扫描器没有检查到计算机存活的话,接下去的步骤都没有办法进行下去。
端口扫描:
判断计算机存活后,扫描器会通过发送tcp数据包等方式去判断计算机上面开放了多少端口。比如说如果计算机开放了80端口,表示这台计算机上面可能有一个网站在运行着,如果计算机开放了21、22端口,表示这台计算机可能是一台专门用来存储文件的文件服务器。
服务识别:
检测完开放端口之后,扫描器会针对开放的端口,利用指纹识别技术去识别端口的背后到底运行着何种服务,服务的版本是多少。比如说对80端口进行服务识别,它既然运行着一个网站,那么这个网站是采用哪一种解析软件进行解析的,版本是多少通过指纹识别技术就可以轻易的检测出来。
系统识别:
扫描器会去识别要在扫描的这台计算机使用的是什么操作系统?比如说扫描系扫出计算机使用的是windows 2003系统。我们都知道2003其实是很早的操作系统了,微软早已取消了该系统的更新,这就可能存在了很多已知的漏洞。黑客们想要拿下这台计算机就显得不会那么的困难了。
弱口令、登陆扫描:
基本上扫描器都会有附带一个轻量型的字典文件,里面存放了常见的弱密码,比如据统计,2016年世界上把123456当作密码的人相当的多,甩了排行第二的几条街。弱口令、登陆扫描就是尝试通过这些大规模使用的密码去尝试登陆你的系统,如果成功登陆进去,就表示你的密码该更新了。
漏洞映射:
最后的最后,当这些流程都走完了之后。扫描器就会将扫描的结果以报告的形式输出,可以让人很直观的看出计算机的危险程度,是否应该进行补丁修复了。
接下来,小白就开始介绍两款黑客最常用的扫描器
NMAP在安全界可谓是一枚神器,被誉为扫描之王。它支持多种协议的扫描如UDP,TCP connect(),TCP SYN (half open), ftp proxy (bounce attack),Reverse-ident, ICMP (ping sweep), FIN, ACK sweep,X。mas Tree, SYN sweep, 和Null扫描。nmap还提供一些实用功能如通过tcp/ip来甄别操作系统类型、秘密扫描、动态延迟和重发、平行扫描、通过并行的PING侦测下属的主机、欺骗扫描、端口过滤探测、直接的RPC扫描、分布扫描、灵活的目标选择以及端口的描述。基本上涵盖了所有的扫描方式。
这款神器的下载地址:
https://nmap.org/dist/nmap-7.40-setup.exe (windows版)
安装过程如下:(其实就是无脑的下一步)








![]Paste_Image.png](http:https://img.haomeiwen.com/i3885162/aa88efd16b6460b7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)



nmap扫描器的使用方式有两种,一种是直接通过cmd命令行使用,另一种是通过双击桌面上的zenmap打开使用。小白在这里推荐新手都使用第二种方式啦,通过第二种图形化界面操作比较简单,结果也相对比较直观。
在这里,小白就介绍第一种使用方式(喜欢用第二种的童鞋可以直接问万能的度娘~),基础的命令如下
基础信息扫描:nmap -T4 -A -v ip地址
基础漏洞扫描:nmap –script=vuln ip地址
我们来举一个简单的例子。例子中的计算机下载地址:
http://www.freebuf.com/articles/system/34571.html (地址在文章的最后)
在例子里面我要扫描的是一台充满了各种漏洞的linux计算机,这台计算机的ip地址为:192.168.31.131。
首先,我们尝试对这台计算机进行基本信息扫描。
第一步,开始-运行-输入cmd 打开命令提示符窗口

第二步,输入基础信息扫描命令 nmap -T4 -A -v 192.168.31.131

第三步,等待扫描完成,可以看到扫描结果

接上图

接上图

接上图

接着我们来对这台计算机进行基础漏洞扫描
第一步,开始-运行-输入cmd 打开命令提示符窗口

第二步,输入基础信息扫描命令 nmap –script=vuln 192.168.31.131

第三步,分析漏洞扫描结果

接上图

接上图

接上图

接上图

Nmap神器的扫描使用就先介绍到这里~
最后,给大家一些nmap常见参数的参考
命令格式:nmap [参数] IP段/IP/主机名
TCP扫描选项
-sT: 使用TCP连接扫描,对目标主机所有端口进行完整的三次握手,如果成功建立连接则端口是开放的
-sS: 使用半开连接(SYN stealth)扫描,使用SYN标记位的数据包进行端口探测,收到SYN/ACK包则 端口是开放的,收到RST/ACK包则端口是关闭的。
-sN: TCP NULL扫描不设置控制位。
-sF: TCP FIN扫描设置FIN标志位。
-sX: TCP XMAS扫描设置FIN、PSH、URG标志位,若返回RST数据包则端口是关闭的,否则端口是打 开|过滤状态。
-sM: TCP Maimon扫描使用FIN/ACK标识的数据包,端口开放就丢弃数据包,端口关闭则回复RST。
-sA: TCP ACK扫描使用ACK标志位数据包,若目标主机回复RST数据包,则目标主机没有被过滤。
-sW: TCP窗口扫描,检测目标返回的RST数据包的TCP窗口字段,字段值是正值说明端口是开放状态, 否则字段值为0
-sI: TCP Idle扫描,使用这种技术,将通过僵尸主机发送数据包与目标主机通信。
UDP扫描选项
-sU :使用UDP数据包经行扫描。
目标端口选项
-p: 扫描指定的端口
-F: 快速扫描100个常用的端口
-r: 顺序扫描,按从小到大的顺序进行端口扫描
--top-port: 扫描nmap-services里排名前N的端口
输出选项
-oN: 不显示runtime信息和警告信息
-oX: 生成XML格式文件可以转换成HTML
其他常用选项
-sV: 检测服务端软件版本信息
-O: 检测操作系统信息
-Pn: 禁用nmap的主机检测功能
-A: 探测服务版本、对操作系统进行识别、经行
脚本扫描、经行路由探测
-6: 扫描IPv6主机
-sC: 启用默认类NSE脚本扫描
Ps:喜欢的留个赞b( ̄▽ ̄)d ~也可以关注专题:黑客师。

下一篇文章:小白客带你走进黑客世界之黑客漏洞检测技术(下)