下载地址
靶机截图
收集信息
主机扫描
arp-scan -l
端口扫描
nmap -A -p- 10.4.7.142
端口详细
PORT | STATE | SERVICE | VERSION |
22/tcp | open | ssh | OpenSSH 8.2p1 Ubuntu 4ubuntu0.2 (Ubuntu Linux; protocol 2.0) |
80/tcp | open | http | Apache httpd 2.4.41 ((Ubuntu)) |
目录扫描
dirsearch -u http://10.4.7.142
访问目录
根据目录扫描出来的结果可以逐条访问 先访问 10.4.7.142/config/ ,看到里面有一个php文件点进去查看,发现什么都没有
访问 10.4.7.142/dashboard.php ,显示参数丢失
访问10.4.7.142/index.php ,显示页面 ,查看源代码好像没啥可用的地方
访问 10.4.7.142/js/ 有两个js文件,访问后好像没有太大的用处
访问10.4.7.142/register.php ,显示的是注册界面
访问10.4.7.142/upload/ ,发现有一个jpg文件 查看一下
信息收集的已经差不多下面进行渗透
渗透过程
通过nmap端口扫描靶机开启22端口和80端口,去访问一下80端口
有个login登录按钮 尝试点击
进入到登录页面 从靶机页面介绍说不要使用暴力破解,注册一个登录试试
创建用户
用户名 :test 邮箱:test@qq.com 密码:123456
注册完成后输入用户名密码登录进去,只有更新资料和更改密码
此处可以通过更新一下密码,用bp抓一下包
此处验证一下是否存在越权操作漏洞,修改id为1 ,发送
显示密码已更新
密码已经更改好,然后用bp去爆破一下管理员的用户名 Ctrl+i 传送到 Intruder模块
选中用户名添加payload位置
设置payload 在设置里添加一个用户名字典 开始攻击
发现管理员的用户名 admin
此时知道管理的用户名和密码尝试登录系统,登录成功,多出一个上传文件的地方
此处可以上传一句话木马试一试能否成功,应该是做了上传文件类型的限制,
后缀名改为.phtml 显示上传成功,且显示了上传路径
访问上传路径后打开中国蚁剑
添加数据测试连接
反弹shell到kali
kali开启监听7777端口
虚拟终端输入
反弹shell成功
提权
当前用户是www-data 需要提权到root
查看可以提权的用户
cat /etc/passwd | grep /bin/bash
去john目录下找一下有用的信息
发现这个toto有root所属者权限,那么可以尝试一下suid提权
查看一下user.txt 发现权限不够被拒绝 那就先提权
运行一下toto,查看自己的用户还是没有变化,toto可能就是john用户执行id命令的结果
环境变量提权
当进入到权限较低的用户时,查到具有suid权限文件也就上面的toto,那么可以使用echo命令法来获取管理员权限,修改环境变量路径来进行提权。
echo "/bin/bash" > /tmp/id
将字符串/bin/bash写入到/tmp/id这个文件中。符号>用于将内容重定向到文件,如果文件不存在则创建,如果存在则覆盖原有内容
chmod 777 /tmp/id
这个命令改变了/tmp/id文件的权限,使其对所有用户都开放可读、可写、可执行。权限设置777是最高级别的权限,对应于八进制数的rwxrwxrwx
export PATH=/tmp:$PATH
这个命令将/tmp目录添加到当前用户的PATH环境变量的最开始位置
输入完成后再运行一下toto,查看本地用户已经是john
看着不习惯可用python3 -c "import pty;pty.spawn('/bin/bash')"
好处是,它提供了一个更接近真实终端的交互环境
当时有个user.txt文件 看看现在是否有权限访问
查看password得知john的密码是root123
查看john能执行的命令,发现john可以root权限执行file.py 将当前用户提权到root 写入file.py
echo "import pty;pty.spawn('/bin/bash')" > file.py
这条命令将一个Python代码片段输出到名为file.py的文件中。这段代码导入Python的pty模块,并调用pty.spawn()函数来启动/bin/bash,即Bash shell
sudo python3 /home/john/file.py
/home/john/file.py文件的权限允许普通用户以超级用户(通常是root用户)的权限执行命令
提权成功,拿到flag
总结
1.了解越权漏洞
2.bp的基本用法
3.了解上传文件漏洞
4.中国蚁剑的基本用法
5.了解环境变量提权
最后分享一个自动生成反弹shell的网站