靶场环境下载下来,在本地vamware测试!
信息收集及漏洞利用
map -p- 192.168.115.0/24,nmap 192.168.115.157 -T4 -A -O,发现22、80端口等
目录扫描,dirsearch -u http://192.168.115.157/和dirb http://192.168.115.157,发现有用的就是phpmyadmin目录:
其它无可用信息!oscp考试不能用bp,因为用hydra爆破尝试:
提示爆破成功,但是登录的时候失败,说明不行!
由于80端口可以访问,打开首页只有一张图片:
查看源码也没发现有用的,把图片下载下来使用strings 查看一下:
两个工具提取出的文本,做为密码爆破phpmyadmin,也无果!
把爆破出的密码做为目录访问试试,结果成功了:
输入key或者kzMb5nVYJw 都提示无效的key,查看源码发现下一段提示:
说明可以爆破试试:
elite是key,输入之后如下:
测试一下sql注入:
sql注入漏洞!然后按照步骤获取数据库,获取数据表,获取数据列等,最后最user表获取数据:
用户名:ramses,密码:YzZkNmJkN2ViZjgwNmY0M2M3NmFjYzM2ODE3MDNiODE,这么多大小写字母,很像base64编码,解码后:c6d6bd7ebf806f43c76acc3681703b81,像是md5加密,继续解密试试:omega。用户名和密码都有了,进行phpmyadmin和ssh远程登录,最后ssh登录成功,注意这个靶场的ssh端口是777需要加-p参数指定端口:
漏洞利用思路二:既然可以进行sql注入,我们使用sql写入一句话木马,但是一句话木马的文件写在哪个目录呢?这就得碰运气:
说是在/var/www/html里面,我们先测试输入 phpinfo:
没有写的权限,上面信息收集还收集到了一个uploads目录,如果不行就换其它的思路:
接下来就写入一句话木马用蚁剑连接,然后进行反弹shell。也可以写入命令执行函数进行反弹shell:
然后进行反弹shell。
漏洞利用思路三:
写sql注入的时候直接写反弹shell命令进行反弹,这里就不说了,下去可以试验一下!调试有点费劲!
SQL注入写入反弹shell
权限提升
权限提升时的几个常规信息收集:
发现都没用可以利用的价值,然后看看SUID提权:
find / -user root -perm -4000 -print 2>/dev/null
发现特殊文件/var/www/backup/procwatch!查看权限,其它用户可以执行:
提权原理,procwatch 文件的所属用户和所属主都是root,而且其它用户可以执行(ramses用户可以执行),而且被设置了s位(SUID提权原理就是让执行者ramses临时获得文件所有者root的权限),
ln -s /bin/sh ps 的意思是把/bin/sh 以软连接的形式伪装成ps,执行procwatch的时候执行里面的ps,这样普通用户执行procwatch的时候获得root的权限,并且以root身份开启了shell,我们就获得大了root权限。那为什么又用软连接和环境变量呢:在不加环境变量的时候执行procwatch遇到ps,linux的机制首先会从系统默认的环境变量寻找ps,如果我们把当前目录加入到环境变量,则执行的时候从我们加入的环境变量找ps,ps又是/bin/sh的软链接,所以找到了/bin/sh。测试了一下
ln -s /bin/bash ps,这样提权就不成功,到时候可以试试!