网络攻防第四次作业
教材学习内容
网络嗅探
1)网络嗅探,是一种黑客常用的窃听技术,与传统的电话窃听在电话线路上对特定号码的通话内容进行监听类似,网络嗅探利用计算机的网络接口截获目的地为其他计算机的数据报文,以监听数据流中所包含的用户账户密码或私密信息。用集线器hub组建的网络是基于共享的原理的, 局域网内所有的计算机都接收相同的数据包,而网卡构造了硬件的“过滤器“ 通过识别MAC地址过滤掉和自己无关的信息,嗅探程序只需关闭这个过滤器,将网卡设置为“混杂模式“就可以进行嗅探,用交换机switch组建的网络是基于“交换“原理的 ,交换机不是把数据包发到所有的端口上,而是发到目的网卡所在的端口。
2)网络嗅探器软件。常用的嗅探器软件有libpcap抓包开发库、tcpdump以及wireshark嗅探器软件。其功能特点如下:(1)支持WINPCAP的各个版本,不再挑食。(2)支持所有操作系统(WIN9X/WIN2K/WINXP),适应能力加强(3)增加支持无线网卡的嗅探能力,软件适用面更广泛(4)软件用Delphi 7编写,杜绝了类 似VB特有的错误,如"运行时错误",软件更加稳定(5)不再使用PACKETB.DLL连接文件,软件“绿色环保”(6)使用多线程编程技术,内存和CPU占用大幅度减少(7)集成超强HTTP下载软件,突破HTTP下载难题
3)网络嗅探的防范措施。1.采用安全的网络拓扑,尽量将共享式网络升级为交换式网络,并通过在交换机上设置VLAN等技术手段,对网络进行合理的分段。2.用静态ARP或者MAC端口映射表代替动态机制,该措施主要是对渗透嗅探进行防范。3.重视网络数据传输的几种位置点的安全防范,如网关、路由器和交换机。4.避免使用明文传输口令或敏感信息的网络协议。
网络协议分析
通过对教材的学习,网络协议分析的典型过程包括:
1)嗅探得到在链路层传输的二进制数据包
2)对以太网数据帧进行结构分析,定位出帧头各字段结构,根据帧头的Type字段确定网络层协议类型
3)对IP数据包进行分析,确定传输层协议类型
4)根据TCP或UDP的目标端口确定具体的应用层协议,对数据包进行拼接重组,得到应用层特定协议的应用交互内容
5)依据相应的应用层协议对数目进行整合修复,得到实际传输的数据
视频学习内容
1)使用openvas进行漏洞分析:
在使用命令“openvas-start”启动openvas时出现了下图的情况
通过百度搜索这一问题之后发现可以使用下图的命令解决
根据视频中的介绍,使用命令“openvassd”添加用户失败,显示未找到命令,由于版本问题,故采用openvasmd命令重新添加用户成功
使用openassd扫描IP为192.168.119.128的虚拟机结果
2) kali漏洞分析WEB爬行
kali的字典目录位于/usr/share/wordlists
(1) apache-users 命令参数如下
(2) cutycapt 用于网站截图
(3) dirb 用于扫描目录
3) kali漏洞分析WEB漏洞扫描
(1) cadaver cadaver是一个用来浏览和修改webdav共享的Unix命令行程序。
(2) davtest 用于测试上传文件。
(3) grabber web应用漏洞扫描器。
(4) skipfish 通过HTTP协议处理且占用较低的CPU资源。
(5) websploit 是一个开源项目,主要用于远程扫描和分析系统漏洞。
遇到的问题
在课上的实验中,攻击机始终不能ping通靶机,靶机的设置并没有出问题,在课后回到实验室,通过连接实验室的网络,这时靶机的ip地址发生了变化,但是显示攻击机和靶机都已经属于同一个网络之下了,这时可以ping通了。
- 简析Linux主要应用领域及范围
- ASP.NET MVC Controller激活系统详解:默认实现
- 机器之心年度盘点:2017年人工智能领域度备受关注的科研成果
- 为什么GAC和VS引用的程序集不一致?
- GraphQL 浅谈,从理解 Graph 开始
- 分布式系统CAP理论
- 美媒盘点2018年将改变世界的四大技术趋势
- 如果你想深刻理解ASP.NET Core请求处理管道,可以试着写一个自定义的Server
- 路面能发电,智慧交通不遥远
- 小程序:企鹅帝国身后,微信帝国正悄悄露出冰山一角!
- ASP.NET MVC路由扩展:路由映射
- 如何改善遗留的代码库
- ASP.NET的路由系统:根据路由规则生成URL
- ASP.NET Core 1.0中实现文件上传的两种方式(提交表单和采用AJAX)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- XtraBackup工具详解 Part 10 使用innobackupex对数据库进行部分备份(指定表或数据库)
- Python 基础(十九):数学相关模块
- XtraBackup工具详解 Part 11 使用innobackupex对部分备份进行恢复
- XtraBackup工具详解 Part 12 流式和压缩备份
- 基于STM32+RT-Thread的新冠肺炎疫情监控平台
- Python 基础(二十):sys 模块
- [Oracle 故障处理]记一次Windows监听启动失败
- Python 基础(二十一):argparse 模块
- LeetCode 4 题解
- 操作系统与 CPU 是怎么执行线程的?
- LeetCode 5 题解
- 详细齐全!Docker常用基本命令
- angular浏览器兼容性问题解决方案
- Python 基础(二十二):正则表达式
- Python 进阶(一):多线程