zoukankan      html  css  js  c++  java
  • 20189207《网络攻防实践》第四周作业

    教材内容总结

    网络嗅探

    SNIFFER要捕获的东西必须是要物理信号能收到的报文信息。显然只要通知网卡接收其收到的所有包,在集线器下就能接收到这个网段的所有包,但是交换机下就只能是自己的包加上广播包。

    要想在交换机下接收别人的包,那就要让其发往你的机器所在口。交换机记住一个口的MAC是通过接收来自这个口的数据后并记住其源MAC,就像一个机器的IP与MAC对应的ARP列表,交换机维护一个物理口与MAC的表,所以可以欺骗交换机的。可以发一个包设置源MAC是你想接收的机器的MAC,那么交换机就把你机器的网线插的物理口与那个MAC对应起来了,以后发给那个MAC的包就发往你的网线插口了也就是你的网卡可以Sniffer到了。注意这物理口与MAC的表与机器的ARP表一样是动态刷新的,那机器发包后交换HUB就又记住他的口了,所以实际上是两个在争,这只能应用在只要收听少量包就可以的场合。 内部网基于IP的通信可以用ARP欺骗别人机器让其发送给你的机器,如果要想不影响原来两方的通信,可以欺骗两方,让其都发给你的机器再由你的机器转发,相当于做中间人,这用ARP加上编程很容易实现。并且现在很多设备支持远程管理,有很多交换机可以设置一个口监听别的口,不过这就要管理权限了。

    利用这一点,可以将一台计算机的网络连接设置为接受所有以太网总线上的数据,从而实现Sniffer。Sniffer就是一种能将本地网卡状态设成‘混杂’状态的软件,当网卡处于这种“混杂”方式时,该网卡具备“广播地址”,它对遇到的每一个帧都产生一个硬件中断以便提醒操作系统处理流经该物理媒体上的每一个报文包。(绝大多数的网卡具备置成混杂模式的能力) 可见,Sniffer工作在网络环境中的底层,它会拦截所有的正在网络上传送的数据,并且通过相应的软件处理,可以实时分析这些数据的内容,进而分析所处的网络状态和整体布局。值得注意的是:Sniffer是极其安静的,它是一种消极的安全攻击。 嗅探器在功能和设计方面有很多不同。有些只能分析一种协议,而另一些可能能够分析几百种协议。一般情况下,大多数的嗅探器至少能够分析下面的协议:标准以太网、TCP/IP、IPX。

    网络协议分析

    由于TCP/IP协议是Internet的基础协议,所以对TCP/IP协议的完善和改进是非常必要的。TCP/IP协议从开始设计时候并没有考虑到 现在网络上如此多的威胁,由此导致了许多形形色色的攻击方法,一般针对协议原理的攻击(尤其是DDOS)我们无能为力。

    现将TCP/IP攻击的常用原理介 绍如下:

      (1) 源地址欺骗(Source Address Spoofing)、IP欺骗(IP Spoofing)和DNS欺骗(DNS Spoofing).其基本原理:是利用IP地址并不是出厂的时候与MAC固定在一起的,攻击者通过自封包和修改网络节点的IP地址,冒充某个可信节点的 IP地址,进行攻击。主要有三种手法:

      1. 瘫痪真正拥有IP的可信主机,伪装可信主机攻击服务器;

      2. 中间人攻击;

      3. DNS欺骗(DNS Spoofing)和“会话劫持”(Session Hijack);

      (2) 源路由选择欺骗(Source Routing Spoofing)。原理:利用IP数据包中的一个选项-IP Source Routing来指定路由,利用可信用户对服务器进行攻击,特别是基于UDP协议的由于其是面向非连接的,更容易被利用来攻击;

      (3) 路由选择信息协议攻击(RIP Attacks)。原理:攻击者在网上发布假的路由信息,再通过ICMP重定向来欺骗服务器路由器和主机,将正常的路由器标志为失效,从而达到攻击的目的。

      (4) TCP序列号欺骗和攻击(TCP Sequence Number Spoofing and Attack),基本有三种:

      1. 伪造TCP序列号,构造一个伪装的TCP封包,对网络上可信主机进行攻击;

      2. SYN攻击(SYN Attack)。这类攻击手法花样很多,蔚为大观。但是其原理基本一致,让TCP协议无法完成三次握手协议;

      3. Teardrop攻击(Teardrop Attack)和Land攻击(Land Attack)。原理:利用系统接收IP数据包,对数据包长度和偏移不严格的漏洞进行的。

    kali视频总结

    1、kali下openvas使用

    openvas有扫描管理、配置管理、漏洞信息、配置等。
    创建目标target,作为要扫描的目标。
    扫描结果如下图,有一个高危的漏洞,一个中级的漏洞。

    2、kali下漏洞分析扫描工具的使用

    (1)web扫描工具Golismero
    Golismero是一款开源的web扫描器,自带不少的安全工具,而且还可以导入别的扫描工具的结果,如openvas等,并自动分析。Golismero由纯Python编写,可以在任何系统上运行,几乎没有系统依赖性。
    Golismero采用了插件式的框架结构,提供了一系列的接口,用户只要继承并且实现这些接口,就可以自己定义自己的插件。插件按功能可分为四类,每个类别的插件的接口都不同,在编写自定义插件的时候,注意选择好相应的插件类型。
    四类插件有:
    a:ImportPlugin,导入插件,主要用来加载其他安全工具的扫描结果。
    b:TestingPlugin,测试插件,主要用来测试或者渗透入侵的插件。
    c:ReportPlugin,报表插件,主要是对测试结果生成报表。
    d:UIPlugin,界面插件,主要是用于和用户交互的,显示当前系统的运行情况。
    简单使用命令:
    golismero plugins 查看插件列表
    golismero scan 目标IP地址 扫描目标
    缺点是:此扫描器扫描过于杂乱,对扫描报告的生成不够规范与友好。
    (2)漏洞扫描器Nikto.pl
    古老的,一款开源的(GPL)网页服务扫描器,它可以对网页服务进行全面的多种扫描,包含超过3300种有潜在风险的文件CGIs,超过625种服务版本,超过230种特定服务器问题。
    简单扫描命令:
    nikto -h 目标IP地址
    扫描到osvdb漏洞库中的漏洞。
    nikto -h 目标IP地址 -p 端口1,端口2... 自己指定扫描的端口
    (3)系统信息收集整理工具lynis
    对Linux操作系统详细配置等信息进行枚举收集,生成易懂的报告文件。
    lynis --chenk-all
    本机操作系统的信息枚举。
    unix-privesc-check工具也是信息收集工具。
    简单输出显示,unix-privesc-check standard

    3、kali漏洞分析工具中WEB爬行工具的使用

    web爬行工具,用于对网站路径、页面、账户的枚举。kali下将所有字典文件存放在目录/usr/share/wordlists/下
    (1)apache users工具使用
    apache-users -h 目标IP地址 -l 字典的名字 -p 端口号 -s 是否有SSL支持,1是有true0是false -e 403(返回的) -t 线程数(数字)
    apache-users是一个脚本。
    (2)CutyCapt网站截图工具
    cutycapt --url=目标网站 --out=文件名.png

    存放在了当前目录下。
    (3)dirb 强大的目录扫描工具
    dirb 目标IP地址 直接简单扫描
    (4)dirbuster kali下的图形化目录扫描器,拥有直观的扫描结果

    (5)其它
    VEGA
    webslayer web应用安全测试,爆破攻击

    4、kali下web漏洞扫描

    与web路径爬行相关,爬行为漏洞发现提供参考。
    (1)cadaver 客户端命令行格式
    cadaver是一个用来浏览和修改webdav共享的Unix命令行程序,就像subversion客户端,它使用了neon的http库,neon和cadaver的作者是一个人。
    使用cadaver就像使用命令行的ftp程序,因此它很适合基本的webdav调试。它可以以压缩方式长传和下载文件,也会检验属性、拷贝、移动、锁定和解锁文件。
    webDAV如果设置不当会有漏洞。
    首先看靶机有没有DAV目录。如存在cadaver 主机地址
    (2)DAVtest
    测试对支持webDAV的服务器上传文件等。
    davtest -url 主机地址
    (3)deblaze
    针对flash远程调用枚举
    (4)fimap
    本地和远程的扫描器,文件包含漏洞利用工具。
    fimap -u '目标'
    (5)grabber
    web应用漏洞扫描器,可以指定扫描漏洞类型结合爬虫对网站进行安全扫描。

    5、kali下web漏洞扫描

    (1)Joomla Scanner
    类似于wpscan的扫描器,针对特定CMS
    ./joomscan.pl -u 网站地址
    (2)skipfish
    有Google出品的一款自动化的网络安全扫描工具,skipfish通过http协议处理且占用较低的CPU资源,且运行速度较快。
    skipfish -o 存储目录 扫描网址
    扫描过程图

    (3)uniscan-gui
    有图形界面的工具,简单易用。信息收集和web扫描结合的工具。
    (4)w3af
    是一个web应用程序攻击和检查框架,该项目已超过130个插件,其中包括检查网站爬虫,SQL注入(SQL Injection),跨站(XSS),本地文件包含(LFI),远程文件包含(RFI)等。该项目的目标是建立一个框架,以寻找和开发web应用安全漏洞,所以很容易使用和扩展。
    可以使用默认的插件,也可以自己选择插件。直接在命令行下输入w3af即可打开。
    (5)wapiti
    wapiti的工作方式与nikto类似,也采用黑盒的方式主动的对被测web应用进行扫描,寻找其中潜在的安全缺陷,但不像nikto提供测试用例库,而是实现了内置的匹配算法,包括Windows、MAC OS/X和类Unix系统。支持的协议有http/https 1.0/1.1,HTTPS要求安装SSL库。支持生成多种格式的安全测试验证报告。
    使用时需注意脚本里固化了第三个是web站点参数。
    功能和特点:

    -文件处理错误(本地和远程打开文件,readfile)
    -数据库注入(PHP/JSP/ASP,SQL和XPath注入)
    -XSS(跨站点脚本)注入
    -LDAP注入
    -命令执行检测(eval(),system(),passtru()...)
    -CRLF注射入(HTTP响应,session固定...)
    wapiti 目标IP地址 -v 2
    (6)webshag
    集成调用框架,调用nmap,uscan,信息收集、爬虫等功能,使扫描过程更易。
    (7)websploit
    一个开源项目,主要用于远程扫描和分析系统漏洞。使用它可以非常容易和快速发现系统中存在的问题,并用于深入分析。

  • 相关阅读:
    Fedora kde桌面安装拼音输入法
    人大金仓数据库添加外键,删除外键
    东方通 TongWeb 远程调试相关脚本
    IDEA快捷键提示插件
    使用 url.openConnection、IOUtils.write 从网站下载文件与本地文件对比
    CAS服务端返回用户ID等扩展信息
    libvirt 启用TCP远程连接,windows平台java调用示例
    virsh创建虚拟机
    etcd_dbsize 只能使用2G限制修改
    通过备份 Etcd 来完美恢复 Kubernetes 中的误删数据
  • 原文地址:https://www.cnblogs.com/johnhenry/p/10584095.html
Copyright © 2011-2022 走看看