转载请注明作者和出处:
本章将讲述如何获取目标系统信息、端口信息等详细信息
上一章我们讲到了获取目标真实IP及子域名信息的几种典型方法,但是单靠真实IP和子域名还无法让我们顺利的完成一项渗透测试任务,本章将为大家讲述得到目标IP及子域名后,如何获取目标更详细的信息
一. 使用Nmap获取目标信息
提到信息收集工具,那就不得不说一下Nmap了,它在渗透测试领域的知名度可谓是人尽皆知,它不光可以进行信息收集,还可以进行一些简单的漏洞扫描以及绕过(目前它的绕过并不好用),今天我们就来讲解一下Nmap的信息收集功能
1. 获取目标端口信息
扫描目标开放了哪些端口、端口的开放状态,以及各端口对应的服务,我们可以用”nmap+ip”常规扫描命令对目标进行扫描,也可以使用-p选项指定端口范围对目标进行扫描(指定端口范围后,扫描结果仅显示指定范围内的端口信息)
常规扫描命令:nmap 192.168.101.17
指定端口范围扫描:nmap -p 20-200 192.168.101
2. 获取目标版本信息
众所周知,我们日常生活中使用的APP以及PC端软件都是在不断更新和完善的,软件的每一次更新都会增加一些新功能或者修复一些漏洞,甚至是增加一些漏洞(漏洞是基于功能之上的)
那么我们就可以通过获取目标版本信息来判断,目标当前系统、服务版本存在什么漏洞,如果不是最新版本,我们可以查看目标当前版本的下一版本有哪些漏洞修复(通常来讲下一版本修复什么漏洞,当前版本就存在哪些漏洞)
如果目标的系统以及服务都是最新版本,那我们可以查看一下它的现版本对应前版本更新了哪些内容,增加了哪些功能,从而得知目标可能存在哪些漏洞(比如新增了文件上传功能,我们可以探测目标是否存在文件上传漏洞)
2.1 获取目标服务版本信息
获取目标服务信息命令:Nmap -sV 192.168.101.17
利用获取目标服务信息命令,我们可以看到目标开放的端口、各端口的状态、各端口对应的服务、各服务的版本信息,以及当前登录用户名
2.2 获取目标操作系统信息
获取目标操作系统信息命令:Nmap -O 192.168.101.17
利用获取目标操作系统信息命令,我们可以得知目标正在运行的操作系统,以及操作系统的版本号(相对准确的版本号,靶机是Windows7)
2.3获取目标全面信息
获取目标全面信息命令:Nmap -A 192.168.101.17
利用此命令我们可以获取目标相对全面的信息,比如目标的端口、正在运行的操作系统等,由于此命令显示的信息内容太全面了,全面到把终端拉到最长都无法全部显示,所以这里就不放截图了,小伙伴们可以自己去试验一下哦
二. Wireshark数据包分析
本节开头先问大家一个问题:
大家日常生活中是否听说过抓包、丢包等关于数据包的词汇呢
没错,Wireshark就是一个专注于抓取数据包并分析的工具,它在”抓包界”的名声十分响亮,可谓是无人不知无人不晓
Wireshark在sectools排行榜中更是稳居第一,是一个不折不扣的”狠人”
它的功能包括但不限于:数据包协议类型筛选、实时捕获、离线分析等
1. 抓取数据包
如图,首先我们开启Wireshark实时抓包模式,然后在筛选器设置好源 ip(本机ip),然后在终端输入命令“ping www.baidu.com -c 1”并回车,最终抓取到了4个数据包
2. 数据包分析
如图我们选中协议类型为ICMP的数据包,下方即刻显示出大量的数据
首先第一层(链路层)
开头的Frame后面有个数字1465,这个数字是指这是我们抓取的第1465个包,1465后面的98表示捕获了98个字节,每个字节由8位二进制数组成,所以后方括号内显示为784位
接着看下面一行,id:后面的eth0表示我们是用的网卡是eth0
再下面一行表示数据包封装类型,Ethernet表示以太网
第4行表示数据包获取时间,这里我们是2022年5月9号9:33:38获取的,由于西方人计时方式采用月日年的顺序,所以图中显示为May 9 2022
倒数第二行为数据包协议类型,这里数据包的协议类型为ICMP
然后第二层(数据链路层)
如图
Src:后面显示的是源MAC地址,由于我们使用的是VMware虚拟机所以MAC地址显示为00:0c:29开头
Dst:后面显示的是目标MAC地址
接下来第三层(网络层)
如图
Src:后表示源 ip 地址,Dst:后表示目标ip地址
0100 ….= Version:4表示我们使用的是IPV4
…. 0101 = Header Length:20 bytes (5)表示头部的长度
该包最后一层,如图
Type:8(Echo(ping)request)表示这是个请求包
而下面的蓝色字体表示,该请求包的响应包为1466号包
三. 识别目标WAF
WAF作为服务器防御系统的重要组成部分,是我们渗透测试路上的一大障碍,为了能够顺利的绕过各品牌的WAF,我们首先要对目标WAF进行信息收集,知己知彼百战不殆
这里向大家介绍一下我最常用的WAF识别工具,wafw00f
wafw00f使用方法简单,很容易上手,它的常用命令有:
常规扫描:wafw00f 域名
详细信息扫描:wafw00f -v 域名
不遵从重定向:wafw00f -r 域名
对指定WAF进行扫描:wafw00f -t 指定的WAF 域名
列出可以检测的WAF:wafw00f -l
四. 社工信息收集
社会工程学作为渗透测试必学科目,它的分量是十分重要的
有句话说是这么说的:社工学的好,lao饭吃到饱
事实确实像上面那句话说的一样,学好社工,它能做到的事有时候超乎我们想象,有时候甚至比我们直接渗透的效率还要高,而且社工不光可以用来做渗透测试,日常生活中也可以发挥它的强大威力
之前看过一本社会工程学的书籍,上面有句话让我印象深刻:“在你们绞尽脑汁去渗透目标防御的时候,我已经在和目标管理员的谈笑中获取了目标的账号密码”
所以社工层面的信息收集也是非常重要的
比如招聘信息、客服信息、QQ号、微信号、手机号、身份证号、邮箱、家庭住址、家庭情况、出勤状态、甚至是目标员工的兴趣爱好和常去的地点,这些都可能为我们所用
有些同学可能会问,我们收集目标公司的邮箱信息就算了,为什么要收集人家的招聘信息呢
这里我给大家举个例子,假如你现在有一个对A公司的渗透测试任务,要求21-29号这8天内对其完成渗透测试
而A公司的网络安全部门日常只有一名专业人员把守,刚好在22号的时候A公司发出一条急聘信息“由于唯一一名负责网络安全的专业人员在23号辞职,所以紧急招聘一名网安人员,要求2天内到岗”
那么在23号A公司的专业人员辞职之后,他们的防御在短时间内是不是就会相对薄弱一些呢,我们也就可以趁着这个机会趁虚而入
以上给大家举了个简单的例子,让大家对社会工程学有一些简单的理解,用好社会工程学真的可以用“恐怖”两个字来形容,甚至不亚于我们直接用主机去做渗透
但是学好社会工程学并非一日之功,大家一起努力加油吧!