首页 > 技术文章 > 2018-2019-2 20189215 《网络攻防技术》第四周作业

jsjliyang 原文

《Python 黑帽子》第三章


代码托管:[https://github.com/jsjliyang/python3-Black.Hat/tree/master/chapter3)
sniffer_ip_header_decode.py和sniffer_with_icmp.py出现取数据过少的问题,需要把20改为32,读取缓冲区前32位。
改掉之后报错:struct.error: 'L' format requires 0 <= number <= 4294967295,这里需要将代码中的L替换为f,也就是把usigned类型替换为float类型。
修改为:self.src_address = socket.inet_ntoa(struct.pack("<f",self.src))

  • sniff.py运行结果:
  • sniffer_ip_header_decode.py运行结果
  • sniffer_with_icmp.py运行结果
  • scanner.py运行结果

    开始出现这个错误,需要转换为byte类型。代码改为:
 try:
            sender.sendto(bytes (magic_message,encoding="utf-8"),(str(ip),65212))
 except:
            print("error")

结果正确:

教材《网络攻防技术》第三章学习


网络嗅探技术通常会和网络协议分析技术配合使用,网络嗅探是网络协议分析的基础。

网络嗅探

网络嗅探作为攻击者经常使用的内网绳头技术,通常在攻击者获得内部网络中一台主机的访问权后实施,能够被动地、静默地嗅探网络上传输的数据,并从中窃取机密的信息,包括各类用户名和口令、电子邮件正文及附件、网络打印的文档等。
网络管理员可以利用网络嗅探来捕获与分析网络的流量信息,以便找出所关心网络中潜在的问题。
网络嗅探可以按照所监听的链路层网络进行分类,也可以按照实现形式分为软件嗅探器与硬件嗅探器两种。
以太网络在实际部署中可以分为共享式网络与交换式网络两种,其中交换式网络可以有效地避免网络广播风暴,减少网络数据被嗅探的风险。但即使在春交换的网络中,还是可以采用如下技术手段使得本不应到达的数据包到达本地:

  • MAC地址泛洪攻击
  • MAC欺骗
  • ARP欺骗

网络协议分析

  • 网络协议分析的典型过程包括以下几个步骤:
  1. 首先网络嗅探得到链路层传输的二进制数据包,大多数情况下是以太网数据帧。
  2. 对以太网数据帧进行结构分析,定位出帧头各字段结构,根据帧头的TYPE字段确定网络层协议类型,大多数情况下是IP协议(0800),并提取数据帧中包含的网络层数据内容。
  3. 进一步对IP数据包进行分析,如果设置了分片位,则进行IP分片重组,根据IP协议头中的Protocol字段,确定传输层协议类型,通常情况下是TCP(6)或者UDP(17),并提取IP
    数据包中的传输层数据内容。
  4. 继续根据TCP或UDP的目标端口确定具体的应用层协议,如:http、ftp、telnet等协议数据包,并对TCP或UDP数据包进行拼接重组,得到应用层特定协议的应用交互内容。
  5. 依据相应的应用层协议对数据进行整合恢复,得到实际传输的数据。
  • 数据包解析过程如下:
  1. 解析以太网数据帧。
  2. 解析IP数据包。
  3. 解析TCP、UDP数据包。
  4. 以上每个过程都包含预处理、拆包和解析三步。

kali视频学习


11.KaliSecruity-漏洞分析之OpenVAS使用

  • OpenVAS的WEB管理界面:https://localhost:9392/。
  • 在configuration-targets中创建扫描的目标。
  • 在scan-tasks中可以创建扫描任务。



    扫描报告:

12.KaliSecruity-漏洞分析之扫描工具

WEB漏洞扫描器Golismero与Nikto,系统信息扫描工具Lynis与unix-privesc-check。

1.WEB扫描工具Golismero

golismero工具需要使用python2.7的环境,因此修改过软链接的同学可以使用ln -s -b python2.7 /usr/bin/python修改python所指的环境版本,并且使用ls -l /usr/bin/python查看修改是否成功。

  • 插件分为四类:
    • 导入插件ImprotPlugin:用来加载其他安全工具的扫描结果。
    • 测试插件TestingPlugin:用来测试或者渗透入侵的插件。
    • 报表插件ReportPlugin:对测试结果生成报表。
    • 界面插件UIPlugin:用于和用户交互,显示当前系统的运行情况。
  • 基本使用:golismero scan example.com,可以看到过程中使用了第三方工具,比如Nmao、Nikto等等。

2.漏洞扫描器Nikto

  • 开源的网页服务器扫描器,可以对网页服务进行全面的多种扫描,包含超过300种有潜在危险的文件CGIs;超过625中服务器版本;超过230种特定服务器问题。
  • 简单扫描:nkito -h [target-IP]
  • 对多个端口进行扫描:nikto -h [target-IP] -p80,84,443
    -更新插件和数据库:nikto -update

3.系统信息收集整理工具Lynis

  • 对Linux操作系统详细配置等信息进行枚举收集,生成易懂的报告文件。
  • lynis --check-all -Q进行当前操作系统的信息收集与枚举。
  • 使用-Q参数避免交互

4.信息收集工具unix-privesc-check

  • 有两个模式:standard和detailed
  • 使用命令为unix-privesc-check standardunix-privesc-check detailed

13.KaliSecruity-漏洞分析之WEB爬行

  • 字典存放路径/usr/share/wordlists
  • apache-user用户枚举脚本,-h 目标用户主机IP -l 加一个用户名的字典 -p 端口号 -s 是否有ssl支持(0表示没有) -e 指定返回的状态码403 -t 指定线程数
  • CutyCapt网站截图工具。cutycapt --url=http://example.com --out=xxx.png
  • DIRB强大的目录扫描工具。dirb http://example
  • Dirbuster:kali下的图形化目录扫描器,拥有直观的扫描结果

  • vega:kali下的WVS,使用简单易懂
  • webslayer:web安全应用测试,爆破攻击。

14.KaliSecruity-漏洞分析之WEB扫描(一)

  • Cadaver是一个用来浏览和修改WebDAV共享的Unix命令行程序。
  • DAVTest通过上载测试可执行文件来测试启用WebDAV的服务器,然后上载允许命令执行或直接在目标上执行其他操作的文件,旨在让渗透测试人员快速地确定启用的DAV服务是否可利用。
  • deblaze,允许用户对闪存远程终点执行方法枚举和询问。
  • Fimap是一个小python工具,可以自动查找,准备,审计,利用甚至谷歌搜索webapps中的本地和远程文件包含错误。
  • Grabber是一个Web应用程序扫描程序,会检测到网站中的某些漏洞。 Grabber很轻量级并且迅速,而且适应性强。

15.KaliSecruity-漏洞分析之WEB扫描(二)

  • Joomla Scanner是一个perl编程语言的开源项目,用于检测Joomla CMS漏洞并对其进行分析。
  • Skipfish是一种Web应用程序安全侦察工具。它通过执行递归爬网和基于字典的探针为目标站点准备交互式站点地图。然后使用来自许多活动(但希望无中断)安全检查的输出来注释生成的映射。该工具生成的最终报告旨在作为专业Web应用程序安全评估的基础。
  • Uniscan-gui是一个简单的远程文件包含,本地文件包含和远程命令执行漏洞扫描程序。

  • w3af是一个Web应用程序攻击和审计框架,旨在识别和利用所有Web应用程序漏洞。
  • wapiti的工作方式与nikto类似,也采用黑盒的方式扫描(直接对网页进行扫描,而不需要扫描Web应用程序的源代码),寻找其中潜在的安全缺陷,但不像nikto提供测试用例库,而是实现了内置的匹配算法。
  • Webshag是一个多线程,多平台的Web服务器审计工具。它是用Python编写的,它为Web服务器审计收集了常用的功能,如网站抓取,URL扫描或文件模糊测试。Webshag可用于通过HTTP或HTTPS,通过代理和使用HTTP身份验证(基本和摘要)扫描Web服务器。 除此之外,它还提出了创新的IDS规避功能,旨在使请求之间的关联更复杂(例如,每个请求使用不同的随机HTTP代理服务器)。
  • Websploit是一个可用于以下工作的开源项目:社会工程学、扫描,抓取和分析Web、自动漏洞利用、支持网络攻击、Autopwn - 从Metasploit用于扫描和利用目标服务、wmap - 从Metasploit wmap插件中使用的扫描,爬虫目标、format infector - 注入反向并将有效负载绑定到文件格式、phpmyadmin扫描仪、CloudFlare解析器、LFI Bypasser、Apache用户扫描程序、迪尔布鲁特、管理员查找器、MLITM攻击 - 中间人,XSS网络钓鱼攻击、MITM - 中间人攻击、Java Applet攻击、MFOD攻击矢量、USB感染攻击、ARP Dos攻击、网络杀手攻击、假更新攻击、假接入点攻击、无线蜜罐、Wifi Jammer、Wifi Dos、蓝牙POD攻击。

推荐阅读