Exp5 信息搜集与漏洞扫描

Exp5 信息搜集与漏洞扫描

1 实践目标

掌握信息搜集的最基础技能与常用工具的使用方法。

2 实践过程记录

2.1 各种搜索技巧的应用 1分

2.1.1搜索网址目录结构

可以使用metasploit的brute_dirs,dir_listing,dir_scanner等辅助模块,主要的手段是暴力猜测。

  • brute_dirs
msfconsole
use auxiliary/scanner/http/brute_dirs
set THREADS 50
set RHOSTS www.baidu.com
exploit

image-20210417095154077

  • dir_scanner
msfconsole
use auxiliary/scanner/http/dir_scanner
set THREADS 50
set RHOSTS www.baidu.com
exploit

image-20210415094433705

通过两种方式查询,可以看到百度的隐藏目录,得到的结果大致相同。

根据https://www.cnblogs.com/cjwxf/p/6186287.html可知http响应码含义如下:

1开头的http状态码
表示临时响应并需要请求者继续执行操作的状态代码。

100   (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。  
101   (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。

2开头的http状态码
表示请求成功

200     成功处理了请求,一般情况下都是返回此状态码; 
201     请求成功并且服务器创建了新的资源。 
202     接受请求但没创建资源; 
203     返回另一资源的请求; 
204     服务器成功处理了请求,但没有返回任何内容;
205     服务器成功处理了请求,但没有返回任何内容;
206     处理部分请求;

3xx (重定向) 
重定向代码,也是常见的代码

300   (多种选择)  针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作,或提供操作列表供请求者选择。 
301   (永久移动)  请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。 
302   (临时移动)  服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。 
303   (查看其他位置) 请求者应当对不同的位置使用单独的 GET 请求来检索响应时,服务器返回此代码。 
304   (未修改) 自从上次请求后,请求的网页未修改过。 服务器返回此响应时,不会返回网页内容。 
305   (使用代理) 请求者只能使用代理访问请求的网页。 如果服务器返回此响应,还表示请求者应使用代理。 
307   (临时重定向)  服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。


4开头的http状态码表示请求出错
 
400    服务器不理解请求的语法。 
401   请求要求身份验证。 对于需要登录的网页,服务器可能返回此响应。 
403   服务器拒绝请求。 
404   服务器找不到请求的网页。 
405   禁用请求中指定的方法。 
406   无法使用请求的内容特性响应请求的网页。 
407   此状态代码与 401类似,但指定请求者应当授权使用代理。 
408   服务器等候请求时发生超时。 
409   服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息。 
410   如果请求的资源已永久删除,服务器就会返回此响应。 
411   服务器不接受不含有效内容长度标头字段的请求。 
412   服务器未满足请求者在请求中设置的其中一个前提条件。 
413   服务器无法处理请求,因为请求实体过大,超出服务器的处理能力。 
414   请求的 URI(通常为网址)过长,服务器无法处理。 
415   请求的格式不受请求页面的支持。 
416   如果页面无法提供请求的范围,则服务器会返回此状态代码。 
417   服务器未满足”期望”请求标头字段的要求。


5开头状态码并不常见,但是我们应该知道

500   (服务器内部错误)  服务器遇到错误,无法完成请求。 
501   (尚未实施) 服务器不具备完成请求的功能。 例如,服务器无法识别请求方法时可能会返回此代码。 
502   (错误网关) 服务器作为网关或代理,从上游服务器收到无效响应。 
503   (服务不可用) 服务器目前无法使用(由于超载或停机维护)。 通常,这只是暂时状态。 
504   (网关超时)  服务器作为网关或代理,但是没有及时从上游服务器收到请求。 
505   (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

2.1.2利用搜索引擎的技巧

点击百度的高级搜索设置就可以看到我们能怎样精确搜索到我们想要的内容

image-20210417103729447

常用字段设置如下:

+:强制包含关键词
-:消除无关性
|:并行搜索
“”:精确匹配
《》:精确匹配/电影或小说
『』:查找论坛版块
intitle:把搜索范围限定在网页标题中
inurl:把搜索范围限定在url链接中
site:把搜索范围限定在特定站点中
filetype:专业文档搜索

例如我想搜索某部剧(忘了是哪部)中的瑞克但要避免关联到《瑞克与莫蒂》中的瑞克

图为单独搜索瑞克的结果,结果只有一条相关

image-20210417105251600

图为加了检索后的结果image-20210417105448671

2.1.3路由侦察

使用tracert www.baidu.com命令对www.baidu.com经过的路由进行探测

image-20210415110638532

2.2 DNS IP注册信息的查询 1分

2.2.1whois查询

whois可进行域名注册信息查询,能够查询到3R注册信息:注册者姓名、组织和城市等,输入whois baidu.com

image-20210415101153607

可得到网站名称Domain Name:baidu.com,注册机构ID Registry Domain ID:11181110_DOMAIN_COM-VRSN,注册服务器Registrar WHOIS Server:whois.markmonitor.com等信息

2.2.2nslookup查询

nslookup可得到DNS解析服务器保存的Cache的结果,结果不一定准确输入nslookup baidu.com

image-20210415100715578

2.2.3dig域名查询

dig 可从官方DNS服务器上查询精确的结果,输入dig baidu.com

image-20210415102056244

可以看到得到的结果与nslookup的结果基本相同,另外还可提供带关键字的查询选项

  • +[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

  • +[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。

  • +[no]short:当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。

  • +[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。

2.2.4IP2Location地理位置查询

在https://www.ip-adress.com/上能查到公网ip,不加www的话查询的是顶级域名,查询加过是不同的

image-20210417113622998

再在https://www.maxmind.com中查询此ip地址

image-20210417120355651

也可以查查自己的公网ip,百度输入:ip就行了,别傻乎乎地查ipconfig嗷

image-20210417111150805

在https://www.maxmind.com中查询此ip地址

image-20210417112539081

地址在西城区爱民街,离中国联通大厦也就隔个3公里左右吧233

不过ip不太一样,但地址结果是相同的

2.2.5IP2反域名查询

在https://www.shodan.io/中输入百度的ip地址

image-20210417120501562

2.3 基本的扫描技术 1分

2.3.1主机发现

  1. ping

    主机下ping同网段主机ip172.16.228.216

    image-20210415104419652

  2. metasploit中的arp_sweep模块

使用ARP请求枚举本地局域网络中的所有活跃主机

msfconsole
use auxiliary/scanner/discovery/arp_sweep 
set RHOSTS 192.168.31.60/24 
set THREADS 100
run

image-20210417135410786

  1. metasploit中udp_sweep模块

    使用UDP数据包探测本地局域网络中的所有活跃主机

    msfconsole
    use auxiliary/scanner/discovery/udp_sweep 
    set RHOSTS 192.168.31.60/24 
    set THREADS 100
    run
    

    image-20210417140054930

  2. nmap -sP

    使用nmap -sP 192.168.31.0/24扫描本地局域网络中的所有活跃主机

    image-20210417135947123

2.3.2端口扫描

  1. nmap指令

    • 扫描类型:
      • -sT:TCP connect扫描
      • -sS:TCP syn扫描
      • -sF/-sX/-sN:通过发送一些标志位以避开设备或软件的检测
      • -sP:ICMP扫描
      • -sU:探测目标主机开放了哪些UDP端口
      • -sA:TCP ACk扫描
    • 扫描选项:
      • -Pn:在扫描之前,不发送ICMP echo请求测试目标是否活跃
      • -O:辨识操作系统等信息
      • -F:快速扫描模式
      • -p<端口范围>:指定端口扫描范围

    使用nmap -PU 192.168.31.0命令,扫描UDP端口

    image-20210417141601899

    使用nmap -sT -p 1-1024 192.168.31.0/24使用TCP connect扫描1-1024端口

    image-20210417142315865

  2. msf 中的 portscan 模块

    对TCP端口进行探测

    msfconsole
    use auxiliary/scanner/portscan/tcp 
    set RHOSTS 192.168.31.0/24 
    set THREADS 100 
    set PORTS 1-1024 
    run
    

    image-20210417141814161

2.3.3OS及服务版本探测

  1. nmap -O

    可以通过Nmap -o ip对操作系统进行识别

    image-20210417142638295

    查询到主机系统为win10 1709-1909版本(实为1904版本)

  2. nmap -sV

    可以通过nmap -sV ip查看操作系统详细信息

    image-20210417144624082

2.3.4具体服务的查点

  1. Telnet服务扫描

    利用scanner进行Telent服务扫描

    use auxiliary/scanner/telnet/telnet_version
    set RHOSTS 192.168.31.0/24 
    set THREADS 100
    run
    

    image-20210417143152633

  2. SSH服务

    use auxiliary/scanner/ssh/ssh_version 
    set RHOSTS 192.168.31.0/24 
    set THREADS 100
    run
    

    image-20210417144122582

  3. Oracle数据库服务查点

    use auxiliary/scanner/oracle/tnslsnr_version
    set RHOSTS 192.168.31.0/24
    set THREADS 100
    run
    

    image-20210417144518796

2.4漏洞扫描 1分

2.4.1openvas安装

由于openvas软件过大.在原虚拟机中安装不完,所以另开一台虚拟机,存储空间设为60G,我这里就直接用组长的镜像了,bogebogeboge的blog在这:《网络对抗技术》Exp5 信息搜集与漏洞扫描

sudo gvm-check-setup检验完整性有问题后sudo gvm-setup

末尾会出现用户名和密码,密码比较复杂可以通过sudo runuser -u _gvm -- gvmd --user=admin --new-password=123456进行修改

再次检验完整性看到It seems like your GVM-20.8.0 installation is OK.就是胜利

image-20210417152925091

2.4.2运行登录

输入gvm-start开始运行

image-20210417160512451

运行结束后应该会浏览器弹窗如下窗口,没有的话就打开浏览器输入上面最后一行的网址

image-20210417160409884

输入用户名admin密码123456后登录

image-20210417163121888

2.4.3漏洞扫描

从标头上的Scans进入Task,点击Task Wizard

image-20210417203556732

输入主机的ip号开始检查

image-20210417203628007

在经过极漫长的时间后,任务列表会从0加载到百分百

image-20210417203750907

2.4.4查看报告

点击report可以查看报告

image-20210417205201184

面向不同方面提供了报告,点开会提供解决方法

image-20210417205236986

2.4.5漏洞修补

查看开放的端口

image-20210417211518573

关闭端口即可降低威胁

3 实践中的问题

  1. metasploit扫描不到局域网中的主机

    将NAT网卡的控制芯片设为服务器

    image-20210417134021714

    桥接网卡配置如下

    image-20210417134201706

  2. Greenbone扫描报告为空,显示Vts list is empty

    image-20210417201734944

    使用命令sudo runuser -u _gvm -- greenbone-nvt-sync同步VT库,以根用户身份授予var / lib / gvm中的gvm 777权限,最终在重新安装增强功能后正常.如果遇到相同错误,请上谷歌或官方论坛上搜索相关错误

4 问题回答

1.哪些组织负责DNS,IP的管理。

答:全球根服务器均由美国政府授权的ICANN统一管理,负责DNS和IP地址管理。全球根域名服务器绝大多数在欧洲和北美(全球13台,用A~M编号),中国仅拥有镜像服务器(备份)

全球共有5个地区性注册机构:ARIN(北美地区),RIPE(欧洲地区),APNIC(亚太地区),LACNIC(拉丁美洲美洲),AfriNIC(非洲地区)

2.什么是3R信息。

答:注册人(Registrant) →注册商(Registrar) →官方注册局(Registry)

3.评价下扫描结果的准确性。

答:扫描结果基本准确,不过有些端口还是扫不出来

5 实验总结与体会

这次实验中,虽然使用了组长的gvm环境,但还是在虚拟机网络方面出了几个错,试错的时候还是很痛苦的,来回配置环境确实太折磨了。在实验期间参与了学校的信息搜集比赛,也感受到信息搜集含义的多样性233

posted @ 2021-04-17 21:18  一个李长兴  阅读(778)  评论(2编辑  收藏  举报