20159313《网络攻击与防范》第四周学习总结
课本第四章知识点总结
1网络嗅探技术概述:
网络嗅探:网络嗅探利用计算机的网络接口截获目的地为其他计算机的数据报文,以监听数据流中所包含的用户账户密码或私密信息等。
2网络嗅探技术与工具分类:
网络嗅探技术可以按照所监听的链路层网络进行分类:以太网与Wi-Fi是有线局域网与无线局域网最流行的链路层协议,也是网络嗅探器主要监听对象。
网络嗅探器可以按照实现形式分为软件嗅探器和硬件嗅探器。3网络嗅探的原理与实现:
以太网工作原理:以太网是共享通信信道的,然后采用了载波侦听/冲突检测技术避免共享链路上的通信冲突。数据传播以“帧”为单位进行。为了嗅探以太网上的流量,就需要将网卡设置为混杂模式。
4共享式网络与交换式网络中的嗅探:
利用以太网在实际部署有线局域网时,根据其部署方式不同分为共享式网络与交换式网络两种。共享式网络主要使用集线器连接,交互式网络主要使用交换机组建。
5即使在纯交换的网络中,也可以采用如下技术手段使得本不应到达的数据包到达本地,就能实现嗅探:
(1)MAC地址洪泛攻击(2)MAC欺骗(3)ARP欺骗
6类UNIX平台的网络嗅探技术实现:
通过内核态的BPF和用户态的libpcap抓包工具库实现。类UNIX平台的BPF与libpcap所嗅探捕获的数据包将保存在pcap记录文件中,而pcap记录文件也成为了类UNIX平台上存储网络数据包的标准格式。
7Windows平台的网络嗅探实现技术:
Windows操作系统需要通过增加一个驱动程序或网络组件来访问内核网卡驱动中捕获的数据包,目前最常用的是与类UNIX平台上的BPF模块兼容的NPF。
8类UNIX平台上的网络嗅探器软件一般都是基于标准接口BPF与libpcap:
(1)libpcap抓包开发库(2)tcpdump嗅探器软件(3)wireshark嗅探器软件
9网络嗅探的检测:
在同一主机上,可以通过检查网卡是否运行在混杂模式下,来发现正在进行监听的嗅探器。此外,也可以基于混杂模式下操作系统和协议栈的不同特性,来检测出网络中其他主机上的嗅探器。在Windows平台下,在混杂模式下,检查一个包是否为以太网广播包时,只要看MAC地址前八位是否为0xff,基于该项特性也可以实现针对Windows平台上网络嗅探的检测。
10网络嗅探的防范措施:
(1)采用安全的网络拓扑(2)用静态ARP或者MAC-端口映射表代替动态机制(3)重视网络数据传输的集中位置点的安全防范(4)避免使用明文传输口令或敏感信息的网络协议,而使用加密及安全增强的网络协议进行替代。
11网络协议分析:
网络协议分析是指对网络上传输的二进制格式数据包进行解析,以恢复出各层网络协议信息以及传输内容的技术方法,是网络嗅探器进一步解析与理解捕获数据包必需的技术手段。
12Snort源码包
Snort源码包中实现网络协议分析的主要文件是decode.c和decode.h。Snort中关于网络协议分析最重要的数据结构是Packet,定义了Snort的处理对象——数据包,其包含内容大致可以分为三类:指示原始数据的字段pkth,pkt;用于存放当前数据包进行协议解析后信息的字段;标识字段。Snort中decode.c的DecodeEthPkt例程的解包过程:(1)预处理(2)
拆包(3)解析上层协议。解析IP数据包的DecodeIP例程与解析以太网类似。13Wireshark:
主要作用是捕获网络数据包,对于数据包进行协议分析以尽可能地显示详细的情况,并以更容易理解的格式呈现给用户。主窗口包含菜单栏、快速工具栏、过滤器栏、总览窗口、协议树窗口、数据查看窗口、状态栏。以下为一些最基本的设置,若需要构造复杂的表达式可以参考tcpdump相关的命令:(1)[srcldst]host监听指定主机为源地址(2)lesslgreater选择长度符合要求的包(3)[tcpludp] [srcldst] port 过滤tcp,udp及端口号(4)Is Present用于表示某个特定字段是否存在(5)Contains用来搜索数据中的字串符(6)Matchs使用正则表达式提供更强大的功能。需注意的是过滤器是对大小写敏感的。
kali视频学习总结
一. Kali视频11集KaliSecurity - 漏洞分析之OpenVAS使用总结
1.首先访问本地https://localhost:9392/登录OpenVAS的WEB管理界面
2.创建扫描目标Target,作为要扫描的目标 3.创建扫描任务Task 4.开始任务Start 5.查看扫描状态的细节 6.查看扫描结果,包含漏洞详细信息,亦可导出PDF文件 7.导出扫描结果报告文件 8.为快速扫描亦可使用Quick Start进行扫描二.Kali视频12集KaliSecurity - 漏洞分析之扫描工具总结
1.Golismero采用插件形式的框架结构,由纯python编写,根据插件的功能,分为四类:
a.ImporPlugin(导入插件)导入插件主要是用来加载其他安全工具的扫描结果 b.TestingPlugin(测试插件)测试插件主要是用来测试或者渗透入侵的插件c. ReportPlugin(报表插件)报表插件主要是对测试结果生成报表
d.UIPlugin(界面插件)界面插件主要是用于和用户交互的,显示当前系统的运行情况2.漏洞扫描器Nikto.pl:
Nikto是一款开源的网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3300种有潜在危险的文件GGIs;超过625种服务器版本;超过230种特定服务器问题。 对多个端口进行扫描命令:Perl nikto.pl –h 192.168.0.1 -p80,88,443 更新插件和数据库:Perl nikto.pl -update3.Lynis系统信息收集整理工具
对Linux操作系统详细配置等信息进行枚举收集,生成易懂的报告文件。4.Unix-privesc-check信息收集工具
与lynis类似三.Kali视频13集KaliSecurity - 漏洞分析之WEB爬行总结
Web爬行工具如下
1.Apache-users 用户枚举脚本
2.CutCapt网站截图工具 3.Dirb强大的目录扫描工具4.Dirbuster:Kali下的图形化目录扫描器,拥有直观的扫描结果
5.Vega:Kali下的WVS,使用简单易懂
6.WebSlayer:由WFuzz发展出来的WEB爆破工具四.Kali视频14集KaliSecurity - 漏洞分析之WEB漏洞扫描(一)总结
WEB漏洞扫描工具:
1.Cadaver一个用来浏览和修改WebDAV共享的Unix命令行程序,使用了neon的HTTP库,可以以压缩方式上传和下载文件,也会校验属性、拷贝、移动、锁定和解锁文件。2.DAVTest测试对支持WebDAV的服务器上传文件等。
3.Deblaze 针对FLASH远程调用等的枚举 4.Fimap 文件包含漏洞利用工具 5.Grabber 一个WEB应用漏洞扫描器,可以指定扫描漏洞类型结合爬虫对网站进行安全扫描,其支持以下漏洞扫描:-Cross-Site Scripting -SQL Injection -File Inclusion -Backup files check -Simple AJAX check -Hybird analysis/Crystal ball testing for PHP application using PHP-SAT -JavaScript source code analyzer:Evaluation of the quality/correctness of the JavaScript with JavaScript Lint -Generation of a file for next stats analysis五.Kali视频15集KaliSecurity - 漏洞分析之WEB漏洞扫描(二)总结
1.Joomla Scanner 类似于Wpscan的扫描器,针对CMS(Joomla)
2.SkipFish 由google出品的一款自动化的网络安全扫描工具,通过HTTP协议处理且占用较低的CPU资源,因此运行速度比较快。扫描方式:Skipfish –o /tmp1.report 3.Uniscan WVS:简单易用的WEB漏洞扫描器4.W3AF 一个Web应用程序攻击和检查框架,目标是建立一个框架以寻找和开发Web应用安全漏洞。
5.Wapiti 采用黑盒的方式主动的对被测Web应用进行扫描,寻找其中潜在的安全缺陷,实现了内置的匹配算法,其由python语言开发。使用时注意脚本里固化了第三个是web站点参数python wapiti.py –v 2。功能和特点:文件处理错误 数据库注入 XSS注入 LDAP注入 命令执行检测(eval(),system(),passtru()…) CRLF注射入(HTTP响应) 统计漏洞数量 成功袭击的细节 漏洞详细信息 提供解决漏洞的方法 HTML报告格式 XML报告格式
6.webshag 集成调用框架 7.WebSploit 一个开源项目,主要用于远程扫描和分析系统漏洞。学习过程中存在的问题及解决方案
1存在的问题
openvas一直安装失败。解决方案:换了个kali版本重新安装,可以成功安装openvas
2学习中的不足
目前很多工具的使用还是得按照视频才能顺利完成。许多指令还是记不牢,尤其是指令中间加个“-”,什么时候加空格,什么时候不加,在哪加还是有点迷惑?得看着视频中的是否存在空格才能搞下来。