zoukankan      html  css  js  c++  java
  • 2017-2018-2 20179216 《网络攻防与实践》第三周总结

    教材内容总结


    当攻击者入侵一个系统时,会利用目标系统中存在的安全缺陷和漏洞进行侵犯。安全缺陷和漏洞会存在于构成目标信息系统的三大核心元素——人、网络与主机系统之间。那么在实施入侵的过程,攻击者需要进一步掌握的信息还包括目标网络的内部拓扑结构等。一旦攻击者完全掌握了这些信息,目标网络就彻底暴露在攻击者面前了。那么对于网络信息收集的方法主要有三种常用的技术手段,第三章详细介绍了网络信息收集技术的三种技术手段:网络踩点、网络扫描、网络查点。

    • 网络踩点。网络踩点的目标是在不实际进行入侵的前提下,从目前掌握的少量目标的信息,利用网络踩点工具,了解攻击目标的网络环境和信息安全状况。网络踩点技术手段分为三种:
      (1)利用搜索引擎如Google、百度的web信息收集与挖掘

    (2)DNS与IP查询:DNS和IP是互联网赖以运转的两套基础设施环境,是网络世界中联络特定组织和个人所必需的关键信息。无论是攻击者、防御者还是安全研究人员,都可以充分地利用这些公开的信息资源,来对所感兴趣的目标进行查询。
    使用WHOIS查询baidu.com的注册信息。

    (3)网路拓扑侦查。

    • 网络扫描。网络扫描的目标是探测目标网络,尽可能多的找到目标,进一步探查目标存在的安全弱点。网络扫描可分为四个步骤:主机扫描,端口扫描,系统类型侦查,漏洞扫描。四步逐渐深入,每一步都可根据情况选取适合的工具,其中nmap是一款强大的工具,支持所有这四步操作。

    • 网络查点。网络差点的目标是利用前面两步获得的信息,进行更有针对性的探查,寻找攻入口。有通用的技术方法,也有针对不同操作系统的查点技术。常用方法包括:旗标抓取和网络服务查点。

    kali视频(6-10)学习


    1. 信息收集之主机探测
    主机探测指识别目标机器是否可用(简单来说是否在线),在探测过程中,需要得到目标是否online等信息。

    • netenum是ip段生成工具,用来测试主机是否在线。

    netenum 192.168.200.6/24 //ip段生成
    netenum 192.168.200.6/24 >test //方便生成列表,重定向到文件中
    cat test //将test作为另一个扫描器的输入文件
    netenum 192.168.200.0/24 //测试靶机网段有哪些主机在线
    netenum 192.168.200.0/24 5 //5表示延时5s,扫描哪个在线,对方有防火墙绕过不了

    • fping:用于显示可达不可达

    fping -h //查看一下帮助
    fping -g //生成一个网段
    fping -g 192.168.200.0/24 //测试哪些主机在线

    • nbtscan:用于内网扫描,借助NetBIOS服务获取一定信息

    ifconfig //查看自己所在网段
    nbtscan -r 192.168.200.0/24 //返回该网段所在主机名


    • arping:借助ARP协议,用于探测目标mac地址

    • netdiscover:用于探测内网信息,包括MAC地址、IP、MAC Vendor

    • dmitry :用于获取目标0详细信息,能收集关于主机的信息,包括whois、tcp port等

    • WAF探测

    wafw00f域名
    原理是故意提交肯定在黑名单的字符或请求,探查返回的结果和正常返回的结果是否一样,如果不一样,肯定存在WAF。

    • LBD(load balancing detector,负载平衡检测器):对目标是否存在负载均衡检测。其检测机制基于DNS解析、HTTP头(服务器和日期),从中找到服务器应答之间的差异。可以帮助发现多个IP地址映射到单个域名,并由此确定针对性的测试范围。

    2. 信息收集之主机扫描
    通过主机探测,确定测试目标地址后,往往需要对主机信息做更完整的扫描,这个过程需要过目标主机开放的端口、服务以及主机名、主机操作系统等信息。在Kali中就存在着这么一个强大的扫描器——Nmap,它可以完成以下任务:

    • 主机探测:探测网络上的主机,例如列出相应TCP、icmp请求、开放特别端口的主机。
    • 端口扫描:探测目标主机所开放的端口。
    • 版本检测:探测目标主机的网络服务,判断其服务名称及版本号。
    • 系统检测:探测目标主机的操作系统及网络设备的硬件特性。
    • 支持探测脚本的编写:使用Nmap的脚本引擎(NSE)和Lua编程语言。

    端口扫描是主机扫描的重要部分,可以了解所扫描IP提供的计算机网络服务类型,从而发现攻击弱点。常见服务对应端口:

    HTTP服务——80
    HTTPS服务器——443
    Telent(不安全的文本传送)——23
    SSH(安全登录)、SCP(文件传输)、端口重定向——22
    FTP——21
    SMTP——25

    不同的主机扫描方式有不同的效果原理也不同

    • TCP connect():最基本扫描方式,端口侦听状态,成功;否则,不可用。不需任何权限,易被发觉被过滤。

    • TCP SYN 半开放扫描,不打开完整TCP连接。返回SYN|ACK侦听状态,返回RST,没有处于侦听状态。不会在目标主机上留下记录,但必须本地有root权限才能建立SYN数据包, 现在的防火墙也有针对SYN的过滤。

    • TCP FIN,关闭的端口会用适当的RST来回复FIN数据包,打开的忽略对FIN的回复。

    • nmap的使用

      • 扫描单一主机:nmap 192.168.200.6

      • 显示过程:nmap -vv 192.168.200.6

      • 扫描1-998之内的端口:nmap -p1-998 192.200.6.160

      • 扫描指定端口:nmap -p80,443 192.168.200.6

      • 测试是否在线:nmap -sP 192.168.200.160

      • 路由跟踪:nmap -traceroute 192.168.200.6

      • 扫描一个c段的主机在线情况,查看哪些主机在线:nmap -sP 192.168.200.6/24

      • 操作系统探测:nmap -O 192.168.200.6

      • 万能开关扫描:nmap -A 192.168.200.6

      • 扫描网络服务:nmap -sV 192.168.200.6

    3. 信息搜集之指纹识别
    识别目标主机的操作系统与应用版本,可以帮助我们进一步探测操作系统与应用级别的漏洞,从这些级别进行渗透测试。

    • Banner抓取
      banner抓取是最基础,最简单的指纹识别,不需专门的工具就可以做。操作简单,通常获取的信息也相对准确,banner抓取是应用程序指纹识别而不是操作系统指纹识别。

    • Nmap

    • xprobe2
      xprobe2类似于nmap

    • p0f:被动指纹识别工具

      打开浏览器输入网页,即可对截获的流量、数据包加以分析:

    • whatweb:web指纹识别工具,可用于探测应用版本等信息

    4. 信息搜集之协议分析
    协议分析工具用于在完成主机探测与扫描之后,并对主机指纹进行探测分析后,对具体服务具体分析。

    • SMB分析
      acccheck、nbtscan等,使用用户名密码字典枚举尝试与目标IP/IP列表进行IPC与Admin的连接尝试。

    • SMTP协议分析

      • smtp-user-enum 可以枚举用户名判断服务器有哪些邮箱。
      • swaks 一般用于发送标准邮件给测试目标。
    • SSL协议分析

      • sslscan 可用来扫描服务器SSL接受的加密方式、公钥等信息。
      • sslscan 目标域名 列举目标使用的加密方式和公钥信息等。
      • sslstrip 结合内网进行ARP嗅探,进行ARP欺骗。
    • wireshark 数据包分析

      • wireshark是一个网络封包分析软件,它的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。
      • wireshark使用winpcap作为接口,直接与网卡进行数据报文交换。
      • wireshark只会反映出目前流通的封包资讯,不会对网络封包的内容进行修改。

    5. openvas的安装
    openvas综合漏洞分析器,可以检测远程系统和应用程序中的安全问题。包括一个中央服务器和一个图形化前端。如下是视频中涉及到的安装过程。由于版本不同,所以安装过程没有按照视频来,安装也出现了很多问题。
    下面是视频中以及在网上搜索到的一些代码

    openvas-check-setup //没有CA证书
    openvas-mkcert //后面默认
    openvas-check-setup
    openvas-nvt-sync //更新
    openvas-mkcert-client -n om -i //为客户端创建一个证书
    openvasad -c add_user -n root -r Admin //为openvas添加root用户,Admin为角色(也可openvas-adduser)
    openvassd //加载插件,加载之前下载好的插件信息
    openvasmd-check-setup
    openvasmd --rebuild //更新漏洞信息库的信息
    openvas-scapdata-sync //从地址同步漏洞信息
    openvas-start //启动

    openvas的初始安装

    经过修改密码以及多次尝试以后,安装成功

    openvas启动

  • 相关阅读:
    JS面向(基于)对象编程--构造方法(函数)
    一个超简单的马里奥游戏
    JavaScript基于对象编程
    JavaScript基础之函数与数组
    Learn CSS
    The first day of HTML
    mysql cmd 无法登录
    datagrid 扩展 页脚 合计功能
    this高级应用
    (xxx.55).toFixed(1) 无法正确进位处理
  • 原文地址:https://www.cnblogs.com/jmjm/p/8643351.html
Copyright © 2011-2022 走看看