《网络攻防实践与技术》第四周学习
视频学习与收获
一、漏洞分析之OpenVas使用
跟着视频主要学习了OpenVas扫描器,以Metasploitable的Linux靶机为扫描对象进行扫描,介绍了OpenVas漏洞扫描器在实际中的应用与具体操作。 视频中的OpenVas版本与我安装的版本不太一致,不过通过英文提示还是很容易操作的。
ping通Linux靶机Metasploitable:
1.首先登录openvas的web管理界面:
2.创建扫描目标Target,作为要扫描的目标
3.创建一个扫描,New Target
4.开始扫描:
5.查看扫描状态细节,下图是扫描完成的状态:
6.查看扫描结果,包含漏洞详细信息,亦可导出PDF文件:
二、漏洞分析之扫描工具
1.WEB扫描工具Golismero
开源的web扫描器,自带安全测试工具,可导入分析市面流行的扫描工具的结果,并自动分析,如Openvas;Golismero由纯Python编写,可以在任何系统上运行,几乎没有系统依赖性;
Golismero采用了插件式的框架结构,提供了一系列的接口,用户只要继承并且实现这些接口,就可以自己定义自己的插件。插件按功能可分为四类,每个类别的插件的接口都不同,在编写自定义插件的时候,注意选择好相应的插件类型。
四类插件有:<br>
a:ImportPlugin,导入插件,主要用来加载其他安全工具的扫描结果。<br>
b:TestingPlugin,测试插件,主要用来测试或者渗透入侵的插件。<br>
c:ReportPlugin,报表插件,主要是对测试结果生成报表。<br>
d:UIPlugin,界面插件,主要是用于和用户交互的,显示当前系统的运行情况。<br>
简单使用命令:
golismero plugins 查看插件列表
golismero scan 目标IP地址 扫描目标
使用命令可以参考Examples:
查看插件列表命令:
扫描器进行的扫描过程截图:
缺点是:此扫描器扫描过于杂乱,对扫描报告的生成不够规范与友好。
2.漏洞扫描器Nikto.pl
Nikto是开源的(GPL)网页服务扫描器,它可以对网页服务进行全面的多种扫描,包含超过3300种有潜在风险的文件CGIs,超过625种服务版本,超过230种特定服务器问题。
nikto -h 目标IP地址
nikto -h 目标IP地址 -p 端口1,端口2... 自己指定扫描的端口
nikto -h 目标IP地址 -update //nikto.pl -update
可扫描到osvdb漏洞库中的漏洞
对多个端口进行扫描命令
Perl nikto.pl -h 目标IP地址 -p 端口
更新插件和数据库
Perl nikto.pl -update
3.lynis系统信息收集整理工具
对Linux操作系统详细配置等信息进行枚举收集,生成易懂的报告文件。
lynis --chenk-all //使用-Q避免交互,枚举的是当前使用系统的信息
枚举当前操作系统信息
标准模式:unix-privesc-check standard(unix-privesc-check信息搜集工具)
4. unix-privesc-check 信息收集工具
与Lynis类似,使用命令查看标准模式:
unix-privesc-check standard
收集到很多信息,比如可以查看到IP信息,检测到etc/shadow是否可读,是否可以读取哈希进行密码破解;是否可以通过sudo的方式获取root权限。
三、kali漏洞分析之WEB爬行
针对web网站的扫描,往往需要对网站路径&页面&账户进行枚举,这涉及到WEB安全中的爬行工具。kali下将所有字典均存放在目录/usr/share/wordlists/下。
1.apache-users(用户枚举脚本)
也是对某些WEB网站进行枚举,不是所有网站都适用的。
apache-users -h 目标主机IP地址 -l 用户名字典 -p 端口号 -s 是否有SSL支持,1是有0是没有 -e 403(返回的状态码) -t 线程数(数字)
2.CutyCapt网站截图工具
cutycapt --url=目标网站 --out=名.png(截图存放在了当前目录下)
3.dirb 强大的目录扫描工具
dirb 目标IP地址 //还可以支持指定后缀名扫描
扫描了一下自己的主机:
4.dirbuster:kali下的图形化目录扫描器,拥有直观的扫描结果
在终端输入dirbuster,会弹出一个界面,输入信息,点击start进行扫描:
查看扫描结果:
5.其它 VEGA
webslayer web应用安全测试,爆破工具
开始扫描:
查看结果,发现高危漏洞:
6.WebSlayer: 由WFuzz发展出来的WEB爆破工具
弹出界面:
四、kali漏洞分析之WEB漏洞扫描
与web路径爬行相关,爬行为漏洞发现提供参考
1.cadaver 客户端命令行格式
cadaver是一个用来浏览和修改webdav共享的Unix命令行程序,就像subversion客户端,它使用了neon的http库,neon和cadaver的作者是一个人。使用cadaver就像使用命令行的ftp程序,因此它很适合基本的webdav调试。它可以以压缩方式长传和下载文件,也会检验属性、拷贝、移动、锁定和解锁文件。
2.DAVtest测试对支持WebDAV的服务器上传文件等
davtest -url 主机地址
测试对支持webDAV的服务器上传文件
3.deblaze 针对flash远程调用枚举
4.fimap
本地和远程的扫描器,文件包含漏洞利用工具。
fimap -u 'xx'
5.grabber
web应用漏洞扫描器,可以指定扫描漏洞类型结合爬虫对网站进行安全扫描。
比如进行sql注入时,如果使用爬虫,可以加入命令-spider,加数字,比如 -spider 2
表示使用爬虫,爬两层。
支持以下的漏洞扫描:
6.Joomla Scanner 类似于wpscan的扫描器,针对特定CMS
./joomscan.pl -u 网站地址
7.skipfish
有Google出品的一款自动化的网络安全扫描工具,skipfish通过http协议处理且占用较低的CPU资源,且运行速度较快。
skipfish -o 存储目录 扫描网址
这里我们以163网站扫描为例,将扫描结果保存在主文件夹下新建的文件夹中:
我们打开主文件夹看一下,此时扫描的信息保存在了以学号命名的文件夹中:
生成报告文件,打开index.html,查看一下扫描结果:
8.uniscan-gui 有图形界面的工具,简单易用,信息收集和web扫描结合的工具。
点击open Log file,查看扫描结果:
9.W3AF
是一个web应用程序攻击和检查框架,该项目已超过130个插件,其中包括检查网站爬虫,SQL注入(SQL Injection),跨站(XSS),本地文件包含(LFI),远程文件包含(RFI)等。该项目的目标是建立一个框架,以寻找和开发web应用安全漏洞,所以很容易使用和扩展。
直接在命令行下输入w3af即可打开,选择自己想要扫描的插件,可以使用默认的插件,也可以自己选择插件。
10.wapiti
wapiti的工作方式与nikto类似,也采用黑盒的方式主动的对被测web应用进行扫描,寻找其中潜在的安全缺陷,但不像nikto提供测试用例库,而是实现了内置的匹配算法,包括Windows、MAC OS/X和类Unix系统。支持的协议有http/https 1.0/1.1,HTTPS要求安装SSL库。支持生成多种格式的安全测试验证报告。
使用时需注意脚本里固化了第三个是web站点参数。
wapiti 目标IP地址 -v 2
11.webshag
集成调用框架,调用nmap,uscan,信息收集、爬虫等功能,使扫描过程更易。
扫描界面如下:
12.websploit
一个开源项目,主要用于远程扫描和分析系统漏洞。使用它可以非常容易和快速发现系统中存在的问题,并用于深入分析。
教材第四章学习内容总结
网络嗅探
网络嗅探是一种黑客常用的窃听技术,与传统的电话窃听在电话线路上对特定号码的通话内容进行监听类似,网络嗅探利用计算机的网络接口截获目的地为其他计算机的数据报文,以监听数据流中所包含的用户账户密码或私密信息。网络嗅探器软件。常用的嗅探器软件有libpcap抓包开发库、tcpdump以及wireshark嗅探器软件。
网络嗅探的防范措施:
1.采用安全的网络拓扑,尽量将共享式网络升级为交换式网络,并通过在交换机上设置VLAN等技术手段,对网络进行合理的分段。
2.用静态ARP或者MAC端口映射表代替动态机制,该措施主要是对渗透嗅探进行防范。
3.重视网络数据传输的几种位置点的安全防范,如网关、路由器和交换机。
4.避免使用明文传输口令或敏感信息的网络协议。
网络协议分析
网络协议分析的典型过程包括:
- 嗅探得到在链路层传输的二进制数据包。
- 对以太网数据帧进行结构分析,定位出帧头各字段结构,根据帧头的Type字段确定网络层协议类型。
- 对IP数据包进行分析,确定传输层协议类型。
- 根据TCP或UDP的目标端口确定具体的应用层协议,对数据包进行拼接重组,得到应用层特定协议的应用交互内容。
- 依据相应的应用层协议对数目进行整合回复,得到实际传输的数据。