一、kali视频学习
1、Kali漏洞分析之扫描工具
除了综合漏洞扫描器OpenVAS,Kali下还有其他一些漏洞分析扫描工具,包括WEB漏洞扫描器Golismero与Nikto,以及系统信息扫描收集工具Lynis与unix-privesc-check。
(1)WEB扫描工具Golismero
这是一款开源的Web扫描器,自带一些安全测试工具,还可导入一些扫描工具的结果,如OpenVAS,Wfuzz,SQLmap,DNS recon等,并自动分析。它采用插件式的框架结构,有纯python编写,可运行在Windows,Linux,BSD,OS X等系统上,几乎没有系统依赖性。提供了一系列的接口,用户可以定义自己的插件。
根据插件的功能,可分为四类:ImportPlugin(导入插件,用来加载其他安全工具的扫描结果)、TestingPlugin(测试插件,测试或者渗透入侵的插件)、ReportPlugin(报表插件,对测试结果生成报表)、UIPlugin(界面插件,泳衣和用户交互显示当前系统的运行情况)。在编写自定义插件时,注意选择好相应的插件类型。
查看插件列表命令:
扫描当前虚拟机:
扫描结果如下所示:
此扫描器存在的问题:是扫描过于杂乱,对扫描报告的生成也不够规范与友好。但为编写扫描器提供了一个很好的思路,亦可由其代码进行改写。
(2)漏洞扫描器Nikto.pl
Nikto是一款开源的(GPL)网页服务器扫描器,可以对网页服务器进行全面的多种扫描。
扫描参数如:简单扫描:目标基本WEB基本配置信息,服务器,PHP解析器等版本信息。
扫描虚拟机:
(3)Lynis系统信息收集整理工具
对Linux操作系统详细配置等信息进行枚举收集,生成易懂的报告文件。测试者可根据报告文件信息找到漏洞利用的exp。
一般使用
避免交互,自动枚举一些信息,默认枚举当前系统的信息。
(4)unix-privesc-check信息收集工具
unix-privesc-check是一个Shell文件,可以检测所在系统的错误配置,以发现可以用于提权的漏洞。unix-privesc-check并不会检测所有提权漏洞的潜在情况。它只是快速进行检测,并以简洁的方式给出提权漏洞相关的建议,大大减少用户在文件权限检测方面的枯燥工作的量。它有两种模式:
①standard标准模式:速度优化检查大量的安全设置。命令为
②detailed详细模式:与标准模式相同,但也检查打开文件的perms句柄和被调用的文件。速度很慢,容易出错,但可能会帮助你找到更微妙的缺陷
2、漏洞分析之WEB爬行
针对web网站的扫描,往往盅要对网站路径&页而&账户进行枚举,这涉及到WEB安全中的爬行工具.Kali下将WEB爬行工具目录如下整理对网站路径、页面的扫描需要用到字典的帮助。kali下将所有字典均存放在目录/usr/share/wordlists/下。
①apache users 用户枚举脚本
apache-users -h 目标IP -l 用户名字典 -p 端口 -s 0/1(0表示没有ssl支持)-e 返回状态码 -t 线程数
②CutyCapt:网站截图工具
③DIRB 目录扫描工具
dirb 扫描过程为首先说明扫描地址和使用的字典,然后开始扫描,扫描判断根目录的文件,确定目录后进入子目录进行递归扫描。命令如
dirb http://192.xxx.xxx.xxx/
④Dirbuster 图形化目录扫描器
dirbuster 终端输入dirbuster,输入目标地址http://xxx.xxx.xxx.xxx,设置字典、线程(视频选择了directory-list-2.3-small.txt),点击start运行,可以看到扫描信息、扫描结果、以树形式列出的扫描结果(很直观)、错误信息。
3、漏洞分析之WEB漏洞扫描
1、Cadaver
Cadaver 是一个用来浏览和修改WebDAV共享的Unix命令行程序,它可以以压缩方式上传和下载文件,也会检验属性、拷贝、移动、锁定和解锁文件。
Metasploitable提供了一个WebDAV环境,web目录为/var/www/dva。WebDAV是基于Web服务的扩展服务,它允许用户像操作本地文件一样,操作服务器上的文件。借助该功能,用户很方便的在网络上存储自己的文件。
2.DAVTest
该工具利用WebDAV漏洞,会自动检测权限,寻找可执行文件的权限。一旦发现,用户就可以上传内置的后门工具,对服务器进行控制。同时,该工具可以上传用户指定的文件,便于后期利用。
可以看到创建了哪个目录,上传了哪些文件,上传的文件可以作为webshell(以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。)进行使用。靶机上查看到/var/www/dav/路径下多了一个目录,目录下也增加了一些文件。
3.deblaze
主要针对flash等远程调用枚举
4.Fimap
Fimap是一款本地及远程的文件包含漏洞检测工具,并能对检测到的漏洞进行利用,带了一个google的语法搜索功能。
fimap -u 网址 --force-run 查看url、漏洞信息、配置、路径、系统、apache日志等。
5.grabber
grabber是一款web漏洞应用扫描器,可以指定扫描漏洞类型结合爬虫对网站进行安全扫描,可以针对性地对漏洞进行测试。
6.Joomla Scanner
类似于wpscan的扫描器,针对特定CMS。
7.skipfish
SkipFish是由google出品的一款自动化的网络安全扫描工具,它与Nikto和Nessus等其他开源扫描工具具有相似的功能,但SkipFish是通过HTTP协议处理且占用较低的CPU资源,因此运行速度比较快,每秒钟可以轻松处理2000个请求。
命令为:skipfish -o ~/report(存储目录) baidu.com(扫描网址)
8、Uniscan-gui
是一个有图形界面的扫描工具。勾选扫描options——输入url——start即可扫描。
9.w3af
w3af是一个web应用程序攻击和检查框架,插件包括检查网站爬虫,SQL注入,跨站,本地文件包含,远程文件包含等。该项目的目标是建立一个框架,以寻找和开发web应用安全漏洞,所以很容易使用和扩展。直接在命令行下输入w3af即可打开。
10.wapiti
wapiti的工作方式与nikto类似,也采用黑盒的方式扫描(直接对网页进行扫描,而不需要扫描Web应用程序的源代码),寻找其中潜在的安全缺陷,但不像nikto提供测试用例库,而是实现了内置的匹配算法。支持生成多种格式的安全测试验证报告。使用时需注意脚本里固化了第三个是web站点参数。
终端wapiti打开
输入wapiti.py http://www.xxx.com -v 211.webshag
集成调用框架,调用nmap,uscan,信息收集、爬虫等功能,使扫描过程更易。
12.websploit
websploit是一个开源项目,主要用于远程扫描和分析系统漏洞。使用它可以非常容易和快速发现系统中存在的问题,并用于深入分析。
二、教材学习
1.1 网络嗅探
1.网络嗅探概述
网络嗅探利用计算机的网络接口截获目的地为其他计算机的数据报文,以监听数据流中所包含的用户账户密码或私密信息等。实现网络嗅探技术的工具称为网络嗅探器(Sniffer),嗅 探器捕获的数据报文是经过封包处理之后的二进制数据,因此通常会结合网络数据协议分析技术来解析嗅探到的网络数据,这样才能恢复出TCP/IP协议栈上各层网络协议的内容以及实际发送的应用层信息。
网络嗅探作为攻击者经常用的内网渗透技术,通常在攻击者获得内部网络中一台主机的访问权后实施,能够被动地、静默地嗅探网络上传输的数据,并从中窃取机密信息(各类用户名和口令、电子邮件正文及附件、网络打印的文档),和底层的网络协议信息(使用的DNS服务器IP地址、网关IP地址、TCP连接序号),通过网络嗅探获得的数据还可以为攻击者进行中间人攻击提供帮助。网络嗅探具有被动性与非干扰性,很强大的隐蔽性,往往难以被人发觉。
以太网与wifi是目前有线局域网与无线局域网最流行的链路层协议。也是目前嗅探器主要监听对象。
网络嗅探技术可以按所监听的链路层网络进行分类。分为无限嗅探器和有限嗅探器。无限嗅探器可以读取和分析符合如IEEE 802.11等无线传输协议的数据包。
网络嗅探技术可以按实现形式进行分类。分为软件嗅探器和硬件嗅探器。硬件嗅探器通过专用硬件对网络数据进行捕获和分析,通常也成为协议分析仪。速度快,往往被放置在网络的关键位置。但是成本高。软件嗅探器一般实现为不同类型操作系统上的应用软件,通过对网卡编程实现,价格相对便宜。易于使用,但是速度慢,效果不佳。
2.嗅探技术原理与实现
处于混杂模式下的网卡能够接受一切通过它连接共享通信媒介的数据帧。为了嗅探以太网上的流量,需要将网卡设置为混杂模式。
利用以太网在实际部署有限局域网时根据部署方式不同分为共享式网络和交换式网络两种。共享式网络主要使用集线器连接,其网络拓扑结构是基于总线,同一集线器上连接的所有主机在发送数据包时,都会发往每一台主机,任一主机都能嗅探整个集线器上的全部网络流量;而交互式网络则主要使用交换机,所以数据帧都通过交换机转发,交换机通过映射表与数据包的目标MAC地址进行转发,可以有效的避免网络广播风暴,减少网络数据被嗅探的风险。
网络嗅探的技术手段:
(1)MAC地址洪泛攻击:向交换机发送大量含有虚构MAC地址和IP地址的数据包。致使交换机的“MAC地址-端口映射表”溢出无法处理,使得交换机进入“打开失效”模式,此模式类似于集线器的工作方式(2)MAC欺骗:假冒要监听的主机网卡,攻击者通过源MAC地址伪造成目标地址的源MAC地址,并将这样的数据包通过交换机发送出去。使得交换机不断地更新他的映射表,从而让交换机相信攻击者主机的MAC地址就是目标主机的MAC地址。
(3)ARP欺骗:利用IP地址与MAC地址之间进行转换时的协议漏洞,达到MAC地址欺骗。(最常用的一种嗅探技术手段)类unix平台的网络嗅探技术主要通过内核态的BPF和用户态的libpcap抓包工具库实现。其嗅探捕获的数据包将保存在pcap记录文件中。
windows平台不提供标准的网络嗅探和抓包接口,因此需要增加一个驱动程序或网络组件来访问内核网卡驱动中捕获的数据包,常用于类UNIX平台上的BPF兼容的NPF,和与libpcap兼容的标准抓包接口WinPcap(主要包含packet.dll和wpcap.dll两个模块)。
3.网络嗅探器软件
(1)类UNIX平台网络嗅探器软件
a.libpcap抓包开发库
b.tcpdump:最老、最通用,维护最好http://www.tcpdump.org/ c.wireshark:以前名叫ethereal。基于图形界面的嗅探器软件。http://www.wireshark.org/ (2)Windows平台网络嗅探器软件 对应UNIX里的BPF/libpcap/tcpdump Windows里有NPF/winpcap/windump,还有wireshark的Windows版本,还有商业的具有友好界面及很强统计分析能力的SniffPro软件,还有Buttsniffer、NetMon、Network Associates Sniff等。1.2 网络协议分析
网络嗅探截获在通过封包过程组装的二进制格式原始报文内容,为了获取其中包含的信息,需要根据TCP/IP协议站的协议规范,重新还原处数据包在各个协议层上的协议格式及其内容,以及在应用层传输的实际数据。
1.2.1 网络协议分析技术
原理
对网络传输的二进制格式数据包进行解析,以恢复出各层网络协议信息(包括网络层、传输层、链路层撒协议类型及所有包头字段信息)以及传输的内容。
技术实践
Snort 开源网络入侵检测系统,基于网络嗅探开发库libpcap,Snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网络入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。
snort工作过程
解析以太网数据帧http://blog.sina.com.cn/s/blog_65db99840100kpph.html
解析IP数据
解析TCP数据包
1.2.2 网络协议分析工具Wireshark
之前称为ethereal,开源的网络协议分析工具,可以用来解决网络故障,进行系统管理和安全管理,学习网络协议。a 可用于网络嗅探方面,支持对多种类型网络接口,包括以太网、802.11无线网络,并支持从网络中截获数据包及从离线的记录文件中读取网络数据包。b 在网络协议分析方面,通过网络协议解析框架支持开源社区提交网络协议的解析插件。
Wireshark 是当今世界上被应用最广泛的网络协议分析工具。用户通常使用Wireshark来学习网络协议,分析网络问题,检测攻击和木马等。
为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容。处理HTTP,HTTPS用Fiddler,其他协议比如TCP,UDP就用wireshark。