2017-2018-2 20179204《网络攻防实践》第三周学习总结

第1节 教材学习内容总结

本周学习了教材第三章的内容。教材第三章讲了“网络信息收集技术”,重点须要搞清楚两个问题:1.收集什么?简单来讲就是安全缺陷和漏洞;2.怎么收集?这是本章主要内容——网络踩点、网络扫描、网络查点。教材p115提供了许多工具和网站。php

1.网络踩点

踩点的对象是网络环境和信息安全情况。本节介绍了三种技术手段及防范技巧:html

  • web信息搜索与挖掘——Google hacking

基本技巧是搜索html、asp、php源码注释中的信息;高级技巧是使用google的高级/advanced search,经过语法搜索;其余方法好比编程实现google搜索、元搜索引擎(集成多个)。前端

  • DNS与IP查询

DNS注册信息whois查询: 经过网站http://www.internic.net/whois.html,此外whois有客户端程序、GUI工具。mysql

DNS服务:从DNS到IP的映射。好比命令行语句nslookup www.baidu.comlinux

IP whois查询:经过whois web查询服务器或whois客户端得到详细的注册信息。web

从DNS/IP到真实世界中的地理位置(映射IP2Location):利用一些数据库,如国内“纯真ip”库。sql

  • 网络拓扑侦察数据库

    类unix:traceroute   
        windows:tracert(软件visual route)

本章还介绍了一个精彩的利用踩点技术追踪黑客的案例。编程

2.网络扫描

寻找活跃主机(找到目标房间)——>主机上开放的网络服务(该房间的门窗)——>主机操做系统与开放网络服务类型(房间规格、门窗材质)——>主机与服务上的漏洞(有漏洞的门锁装置)windows

对应着四种类型:

  • 主机扫描:ping扫描、使用TCP协议的主机扫描——ack ping、syn ping、使用udp协议的主机扫描。介绍了工具nmap及其命令行语句p8八、p9三、p95.
  • 端口扫描:扫描开放了哪些TCP/UDP接口,原理见p91。TCP端口扫描有两种,TCP connect()和TCP SYN扫描(与SYN洪水攻击原理相似),两者利用TCP三次握手,也称为全开、半开链接扫描。UDP端口扫描一种。
  • 操做系统/网络服务辨识:介绍了nmap的几个语句。
  • 漏洞扫描:利用vulnerability(脆弱性),说起漏洞扫描器nessus、xscan。

3.网络查点

网络查点能够获取更充分、更有针对性、可攻击的入口和关键数据。介绍了网络服务旗标抓取,telnet、netcat工具。可是对于这一部份内容的理解并非很清晰。

第2节 教材学习中的问题和解决过程

1.P85实践任务一

这个实践与“网络踩点”部分对应,好比选择baidu.com域名,经过http://www.internic.net/whois.html、站长之家、纯真ip等网站或工具能够完成,这里再也不赘述。

2.p98动手实践

获取靶机和攻击机ip地址:

winxpattacker攻击机192.168.199.221
  Win  靶机192.168.199.243
 SEED 靶机192.168.199.217
  Linux靶机192.168.199.214
  • 靶机IP地址是否活跃?nmap -sP <target IP>
  • 靶机开放了哪些TCP和UDP端口?nmap -sS <target IP>``nmap -sU <target IP>


    tcp端口
  • 靶机安装了什么操做系统?版本是多少?nmap -O <target IP>
  • 靶机上安装了哪些网络服务?nmap -sV <target IP>

3.p115实践做业——用nessus扫描特定靶机,并给出靶机环境上的网络服务及安全漏洞状况。

这里使用的是winxpattacker攻击机中的nessus。

  • 新建用户
  • 点击nessus client进入登录页面,输入新建的用户名和密码,进入客户端主页面。
  • 有四个主菜单:

    (1)reports(扫描结果报告),能够浏览报告(browse),比较两个报告(compare),upload(导入报告),download(导出报告),delete(删除报告)等。
        (2)scans(扫描),能够增长一个扫描(add),浏览一个扫描(browse),暂停一个扫描(pause),重启一个扫描(resume),中止一个扫描(stop)。
        (3)policies(扫描策略),增长一个策略(add),导入一个策略(import),复制策略(copy),编辑策略(edit),删除策略(delete)。
        (4)users(用户管理),增长一个用户(add),编辑现有用户(edit),删除一个用户(delete)。
  • 这里选择win靶机进行扫描,获取扫描报告。

  • 网络服务状况获取SVC name
  • 安全漏洞状况

第3节 kali视频(6-10)学习

6.信息搜集之主机探测

判断目标机器是否在线

  • netenum

    netenum ip(先ping)
        ping 163.com;netenum 123.58.180.0/24
        netenum 123.58.180.0/24 3(延时),哪些主机在线。实际上是使用ping测试,但对方若是有防火墙则无效。

  • fping

    fping -h能够查看帮助
    fping -g 网段(ping先获取目的ip),列出是否可达。

  • nbtscan扫描内网

    nbtscan -r 网段

  • arping探测目标的mac地址

    arping ip

  • netdiscover探测内网信息

    discover被动截获,ip/mac/mac厂商,开启窗口就持续运行。

  • dmitry扫描目标详细信息,使用简单,等待便可。

    dmitry 163.com得到hostip,whois信息,注册人,子域名信息。


  • wafw00f

    wafw00f http://www.baidu.com,故意提交一个黑名单请求,探查与正常访问是否同样,不同则有防火墙。

  • lbd负载均衡检测,多个ip地址映射到同一个域名。

    lbd 163.com 发现多个ip,经过判断时间戳进行比对。

7.信息搜集之主机扫描(nmap使用)

nmap获取目标主机开放的端口、服务以及主机名、主机操做系统等信息。图形化界面是zenmap,分布式框架dnmap。

zenmap是map的图形化界面。在终端敲zenmap就能够打开。
  dnmap使用客户端/服务器架构,服务器接受命令并发送至客户端进行nmap安全扫描,扫描完毕后,客户端返回扫描结果。

应用场合:

核心功能及原理:

  • 主机探测

  • 端口扫描(ip所提供网络服务类型,根据服务对应端口号来判断),经常使用端口应该记住~

    http:80
        https:443
        telnet:23
        ftp:21
        ssh、scp、端口重定向:22
        smtp:25
        pop3:110
        weblogic:7001
        tomcat:8080
        win2003远程登陆:3389
        oracle数据库:1521
        mysql*server:1433
        mysql server:3306

tcp connect()扫描。若是端口处于侦听状态,则connect成功。优势:不须要权限,速度快;缺点:易被过滤。这里应用了tcp三次握手的知识。

cndn中一篇博客 nmap扫描类型之TCP全链接、半链接、FIN扫描实例 对于几种方式进行了图解,能够参考。

a.tcp syn“半开放扫描”

若是返回syn|ack表示端口处于侦听状态,且扫描程序必须发送一个rst信号来关闭这个链接;
  返回rst表示端口没有处于侦听。
  优势:通常不会留下记录;
  缺点:必须本地有root权限才能创建本身的syn数据包。

b.tcp fin扫描

  • 版本探测
  • 系统探测
  • 探测脚本编写

实践操做

  • 靶机:metasploit-linux,ip:
  • 扫描命令(由于课本实践中涉及到nmap扫描,已经练习过,这里再也不截图)

    nmap ip,默认发送arp的ping数据包,探测目标主机在1-10000内的开放端口、服务。结果并不全面,端口1-65535。
        nmap -vv ip,包含扫描过程和结果。
        nmap -p1-998 ip/nmap -p80,443,22,21,8080,25,52 ip,自定义扫描目标端口号,1-998是自定义的指定的端口范围。
        nmap -sP ip,目标是否在线测试,利用了ping扫描方式。
        nmap --traceroute ip,路由跟踪。
        nmap -sP c段,扫描c段主机在线状况,如nmap -sP 172.16.215.0/24。
        nmap -O ip,操做系统探测。
        nmap -A ip,A-all是万能开关,包含端口、操做系统、脚本、路由跟踪、服务探测等扫描,详细但漫长。
  • 其余扫描命令

    nmap -sS -T4 IP,syn扫描探测端口开放状态。
        nmap -sF -T4 IP,fin扫描探测防火墙状态,用于识别端口是否关闭,收到rst说明关闭,不然说明是open或filtered状态。
        nmap -sA -T4 IP,ack扫描判断端口是否被过滤,未被过滤的端口(打开/关闭)会回复rst包。
        nmap -Pn IP,扫描前不进行ping操做。
        nmap -iL target.txt,导入txt,扫描txt文档中保存的ip地址列表的全部主机。
        nmap -sV IP,扫描目标主机和端口上运行软件的版本。

8.信息搜集之指纹识别

  • banner抓取介绍,不须要专门的工具。curl -I www.baidu.com
  • telnet命令链接端口进行探测,Telnet ip port
  • xprobe2 www.baidu.com,默认参数准确率低。
  • p0f 在终端输入p0f,浏览网页,查看数据包分析信息。
  • web指纹识别工具,whatweb www.baidu.com,能够探测应用版本等信息。
  • wpscan -u www.baidu.com。wpscan是一款优秀的wordpress安全检测工具。它的功能包括:用户、插件枚举,列目录,插件漏洞检测和wordpress主题检查、文件发现等。

9.信息搜集之协议分析

  • acccheck
  • smtp
  • swaks
  • snmp
  • sslscan www.baidu.com,可扫描服务器SSL接受的加密方式,公钥等其余信息。
  • wireshark网络封包分析软件,使用winpcap做为接口,直接与网卡进行数据报文交换。

10.漏洞分析之OpenVAS安装

  • openvas综合漏洞分析器,能够检测远程系统和应用程序中的安全问题。包括一个中央服务器和一个图形化前端。以下是视频中涉及到的安装过程,因为源有问题,我几乎不是按照这个过程安装的,但其中openvas-check-setup语句很是有助于完成安装。

    openvas-check-setup(no CA)
        openvas-mkcert
        默认
        openvas-check-setup
        openvas-nvt-sync
        执行openvas-mkcert-client -n om -i为客户端建立证书(/openvas-check-setup)
        添加用户openvasad -c add_user -n admin -r Admin/openvas-adduser
        加载插件openvassd
        openvasmd --rebuild(/openvas-check-setup)
        更新漏洞信息库openvas-scapdata-sync和openvas-certdata-sync
        结束openvassd进程,从新启动服务,使用openvas-check-setup检查无误。
        访问本地https://localhost:9392/登录

我在安装openvas的过程当中很是曲折,个人kali中没有自带openvas,须要本身进行安装和配置。接下来就本身遇到的问题和解决过程进行一详细分析:

  • apt-get install, E:没法定位软件包问题,经过查找资料,肯定是源须要更新的问题。

  • 这时候有博客是经过直接apt-get update语句更新后就能够install安装的,可是我并无成功,因而决定更新源,语句以下:

    leafpad /etc/apt/sources.list
        apt-get update
        apt-get upgrade
        apt-get dist-upgrade
        apt-get clean
  • 过程当中试了多个源都很是慢或者有错误失败了,最后从同窗的source.list文件中复制了一个源,亲测可用。整个过程的快慢与网速有很大关系 :(

    deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib       
        deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib 
        deb http://mirrors.ustc.edu.cn/kali-security kali-rolling/updates main non-free contrib
  • 更新过程结束后就能够开始安装openvas了。

    安装 apt-get install openvas
        配置 openvas-setup
        添加root用户,角色 admin openvasmd --create-user gege --role Admin
        设置密码 openvasmd --user=gege --new-password=root


  • 安装中

  • 若是安装过程不彻底成功,那么在添加用户设置密码时也一样会不成功。所以我使用openvas-check-setup语句进行检查,看到fix一行有一句提示,并根据提示输入相应语句:

  • 再次检查安装状态,显示成功。在此基础上添加用户名、密码也成功。

  • 启动openvas,能够从程序菜单栏中02漏洞分析--openvas start中启动,也能够命令行输入openvas-start
  • 自动弹出登录界面,输入用户名-密码登录。
  • 登录成功。

相关文章
相关标签/搜索