日常打靶Vulnhub靶场之Ubuntu_CTF过程记录

靶场环境

靶机:VirtualBox虚拟机主机(IP:192.168.56.17),网卡类型Host_only

测试机:kali linux(IP:192.168.56.3) ,网卡类型Host_only

端口扫描

nmap对靶机端口扫描,发现只开放了80、3306和33060三个端口。

nmap -sT --min-rate 10000 -p- 192.168.56.17

继续对端口进行详细信息扫描

nmap -sT -sV -sC -p80,3306,33060 192.168.56.17

发现apache版本和数据库mysql版本信息。

目录爆破

使用gobuster和字典进行目录爆破http://192.168.56.17。

gobuster dir -u http://192.168.56.17 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x txt,php,html,conf

发现爆破出来的目录几乎都不能访问,转移注意力到80端口的页面。

访问靶机网页观察信息

观察网站页面,经过一番尝试后发现该网站有一个contact模块,貌似具有提交的功能,测试<script>alert(123);</script>和单引号和双引号SQL注入测试,均未能测试出结果。而且网站的地质类中的地址一直都为发生变换。

F12查看网页源码,发现有引入了几个js文件:

逐个访问这些js文件,发现网站路径,同时也知道了后台使用的CMS类型版本信息。

访问该路径,发现是登录后台,尝试admin/admin 弱口令失败。

分析CMS源码

由于靶机使用的是SeedDMS系统,百度该系统发现是它是一个开源的文档管理系统,

现在网站源码进行源码分析下载。发现在conf目录下的settings.xml文件中有数据库的配置。

直接访问靶机的配置文件:

http://192.168.56.17/seeddms51x/conf/settings.xml

发现连接数据库的信息

登录数据库

mysql -h 192.168.56.17 -u seeddms -p seeddms

查看数据库信息,查看数据库中的表格

发现敏感数据库表格users 和tblUsers:

查询表格中的数据库:

发现admin guest和saket用户,其中admin的密码MD5加密的。

修改数据库中的用户名登录网站后台

直接操作数据库修改数据库中用户的密码1234

update seeddms.tblUser set pwd=md5('1234') where login='admin';

修改密码成功登录网站管理后台admin/1234:

发现在“添加文档”模块中有文件上传功能可以考虑是否可以存在文件上传漏洞:

收集可以利用的exploit

在kali中使用searchexploit seeddms命令查找是否有利用的exploit

查看该exploit:

searchexploit -m 47022.txt
cat 47022.txt

47022.txt文件中给出了漏洞利用的步骤:

上传反弹shell文件

创建反弹shell的文件(需要上传的文件)

上传反弹shell的文件:

查看已经上传的文件序号为5:

反弹shell

按照47022.txt中的四部构造能够访问可以反弹shel的php文件,kali中开启监听以后再访问该url。

http://192.168.56.17/seeddms51x/data/1048576/5/1.php

kali中开启监听:

nc -lvvp 1234

浏览器访问构造的url以后,kali中得到了一个shell

 

su saket 切换到上面在数据库中的得到的用户。

并使用以下命令得到一个交互的shell

python2 -c 'import pty;pty.spawn("/bin/bash")'

提权

 id命令查看依旧不是root权限:

  sudo bash的到系统最高权限。

总结:

        端口扫描发现数据库和网页的80端口开放,目录爆破并未发现有用的信息,只能访问到网站的首页,点击网站的页面,浏览器的url不会发生变化。发现有contact模块,并尝试XSS注入测试和SQL注入测试,但并未发现漏洞。F12观察网站的源码,发现有y引入的js文件,遂尝试访问这几个js文件,可以访问并且在其中一个js文件中发现了网站管理后台使用的CMS信息和用户的登录路径。百度得知SeedDMS系统是一个开源的文件管理系统,然后下载源码,进行分析,发现conf目录中settings.xml文件中有数据库的配置信息,包括数据库用户名和密码。所以尝试能否通过url访问配置文件,发现可以访问该配置文件,并且拿到了数据库的账号密码,登录数据库,搜集用户的信息,最后通过修改数据库中的用户密码,登录网站管理后台,发现文档上传模块。通过searchexploit功能查找到47022.txt的exploit,按照步骤斤进行,上传反弹shell的文件,监听端口,触发反弹shell的文件,拿到shell后,切换到saket用户(数据库中users表格中存有该用户的密码且为明文)。sudo -l 发现该用户可以执行所有命令,执行sudo bash,打开一个新的具有root权限的shell。

### 推荐适合初学者的VulnHub靶场环境 对于希望提升渗透测试技能的新手来说,选择合适的VulnHub虚拟机非常重要。以下是几个特别推荐给新手用户的简单级别CTF挑战: #### 1. PwnLab Beginner Edition PwnLab Beginner Edition 是专门为初次接触漏洞利用的人设计的一个入门级练习平台[^1]。该环境中包含了常见的Web应用安全问题,如SQL注入、XSS跨站脚本攻击等基础知识点。 #### 2. DC-1 (Damn Vulnerable Web Application) DC系列中的第一个版本提供了一个非常友好的学习曲线,旨在让参与者熟悉基本的安全概念和技术。此机器涵盖了多种类型的Web应用程序缺陷,包括但不限于文件上传漏洞、命令执行以及弱密码等问题[^2]。 #### 3. Mutillidae II Mutillidae II是一个开源项目,它模拟了许多真实世界中存在的安全隐患,非常适合用来实践各种攻击技巧。这个VM提供了详细的文档和支持材料来帮助新手理解每种漏洞的工作原理及其修复方法[^3]。 ```bash # 下载并启动Mutillidae II VM vboxmanage clonehd mutillidae_ii.ovf cloned_mutillidae.vdi --format VDI VBoxManage createvm --name "Mutillidae-II" --register VBoxManage modifyvm "Mutillidae-II" --memory 512 --acpi on --boot1 dvd --nic1 nat VBoxManage storagectl "Mutillidae-II" --name "SATA Controller" --add sata --controller IntelAhci VBoxManage storageattach "Mutillidae-II" --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium cloned_mutillidae.vdi VBoxHeadless --startvm "Mutillidae-II" ``` 这些简单的VulnHub CTF环境不仅能够使新手掌握必要的理论知识,还能通过实际操作加深理解和记忆效果。建议从上述选项之一开始尝试,在完成之后可以逐步向更复杂的场景过渡。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值