一、渗透总流程
1.确定目标:
在本靶场中,确定目标就是使用各种扫描工具进行ip扫描,确定目标ip。
2.信息收集:
比如平常挖洞使用fofa,天眼查,ip域名等进行查,在我们这个靶场中比如使用Wappalyzer插件、nmap工具等。
3.发现漏洞:
那些理论比如sql注入,文件上传等,或者找到相关的系统信息,去网上找相关的exp这些都是为了拿到webshell。
4.漏洞利用:
漏洞利用就是使用漏洞拿到webshell。
5.权限提升:
权限提升,就是所谓的提权,因为一般进入拿到webshell后进入到服务器了都是低权限,在接下来的靶中我们的目标都是拿到root权限,所以拿到webshell后是低权限用户,这个时候我们需要一系列的方式进行提权,最后拿到root权限,即为结束。
6.权限维持:
在渗透测试过程中,权限维持是指利用已获取的权限、漏洞或凭证,保持长期对目标系统的访问权限,并持续地潜伏在系统内部以获得更多信息或执行更高级别的攻击。权限维持通常发生在成功渗透系统后,攻击者不仅仅是获取对系统的访问权限,还试图保持这种权限,以执行进一步的攻击操作。
二、打靶实例详解
文章内的靶机及脚本关注后私信获取
1.准备阶段
首先将靶机以及kali启动。
注意将两者的网络适配器均调整为NAT模式(确保二者是在同一个网段下)。
2.信息收集——确认靶机ip
首先确定攻击机kali的ip来确定接下来扫描的网段。
命令:ip a
方法一——fping
命令:fping -g 192.168.10.0/24
方法二——Netdiscover
命令:netdiscover -i eth0 -r 192.168.10.0/24
方法三——arp-scan
命令:arp-scan -l
方法四——nmap
命令:nmap -sP 192.168.10.0/24
在上面扫描出的ip地址中,.1、.2、.254、.132都是kali自身的一些ip地址。
所以通过上面的四种方法均可以确定靶机的ip地址为:192.168.10.176。
3.信息收集——端口扫描
命令:nmap -A -v -sS -sV -p- 192.168.10.176
知识点——nmap参数说明:
-A:详细扫描目标IP,加载所有脚本,尽可能地全面地探测信息
-v:显示详细的扫描过程
-sS:利用TCP SYN扫描
-sV:探测开放
-p-:扫描全部端口
可以看到开放的端口有:
22:SSH服务
80:HTTP服务
4.威胁建模
访问:http://192.168.10.176/
通过Wappalyzer插件得到下面的信息:
Web服务:Apache 2.4.38
操作系统:Debian
5.漏洞探测
通过前面的扫描,可以看到存在开放的80端口,因此猜测其存在HTTP服务。
访问其web服务,默认端口为80。
可以看到一张小丑的图片。
查看网页源代码,可以看到没有什么有价值的信息。
查看robot.txt文件,同样没有什么收获。
安装Gobuster工具。
命令:apt-get install gobuster
接下来通过使用Gobuster和大字典(Kali自带),查找网站部署的服务器,发现了JoomlaCMS。
命令:gobuster dir -u 192.168.10.176 -w /usr/share/dirb/wordlists/big.txt
访问Joomla站点,发现只有一个帖子,其中有电影“小丑”的两个场景对话,还发现一个登录口。
安装Joomscan工具。
命令:apt-get install joomscan
接下来使用Joomscan对站点进行探测。