Don’t Forget To Contemplate
TASK 1 With what kind of tool can intercept web traffic?
可用于拦截流量的工具是:proxy
TASK 2 What is the path to the directory on the webserver that returns a login page?
WEB服务的登录页面地址是:/cdn-cgi/login
访问ip地址,查看源码,在最下面发现敏感目录
TASK 3 What can be modified in Firefox to get access to the upload page?
可以在FireFox中被修改以访问上传页面的是:cookie
访问上传页面,提示需要超级管理员权限,查看cookie,发现可以进行篡改
将user的值改成TASK 4中找到的34322,成功越权拿到上传页面
TASK 4 What is the access ID of the admin user?
管理员的access ID是:34322
访问/cdn-cgi/login,以访客形式登录,进入页面后到处点点,在Account页面发现url中有id=2这一可疑参数,尝试修改成1,发现变成了管理员
TASK 5 On uploading a file, what directory does that file appear in on the server?
上传文件时,该文件出现在服务器的哪个目录中:/uploads
上传一句话木马,上传成功后并没有给出上传路径,直接开扫
TASK 6 What is the file that contains the password that is shared with the robert user?
与robert用户共享的密码文件是:db.php
尝试利用一句话木马,发现利用不了,于是上传kali自带的webshell,并开启监听
(webshell位置:/usr/share/php/php-reverse-shell.php)
访问/uploads/php-reverse-shell.php后,发现nc中反弹shell成功
访问网站根目录,到处翻翻
在登录页面中发现了db.php,访问发现robert的账号密码
TASK 7 What executible is run with the option “-group bugtracker” to identify all files owned by the bugtracker group?
使用“-group bugtracker”选项时用来识别 bugtracker 组拥有的所有文件的可执行文件是:find
尝试切换成robert用户,但是由于获取到的shell是非交互式的,需要先升级成交互式shell
成功切换成robert用户后,查看权限组,发现属于bugtracker组
利用find命令查看可执行文件:find / -type f -group bugtracker 2>/dev/null(2>/dev/null表示将错误信息丢弃)
TASK 8 Regardless of which user starts running the bugtracker executable, what’s user privileges will use to run?
无论哪个用户开始运行 bugtracker 可执行文件,运行时使用的用户权限是什么:root
访问/usr/bin,查看bugtracker文件的用户权限
bugtracker文件拥有s权限并且文件拥有者是root,也就是说无论哪个用户开始运行 bugtracker,所使用的权限都是root
TASK 9 What SUID stands for?
SUID的全称是:Set Owner User Id
TASK 10 What is the name of the executable being called in an insecure manner?
以不安全方式调用的可执行文件的命令是:cat
Submit user flag
访问/home/robert,发现user.txt,访问user.txt,获得flag
Submit root flag
执行bugtracker,发现程序的功能就是cat一个路径然后输出,不存在的编号就输出No such file or directory
由于程序的cat不是以绝对路径写入的,所以可以伪造一个恶意的cat,使其以root权限执行该恶意cat,从而达到提权的目的
export PATH=/tmp:$PATH # 在环境变量前添加/tmp目录
echo “/bin/bash” > /tmp/cat # 将/bin/bash写入cat,执行后获得root权限的shell
chmod +x /tmp/cat # 添加执行权限
再次执行bugtracker,随便输入一个ID,成功提权
接下来就是去/root目录下获取root.txt的值,要注意的是,由于cat已经被改成恶意的cat了,所以可以利用tac、nl等命令来获取文件内容