web篇新手入门
说明:题目均来自于网站https://adworld.xctf.org.cn/
逐题说明:
第1题.
方法一:f12获取代码调试框,从注释中获得了flag,注意flag的形式如下:cyberpeace{7090f71afecceba23bbde51ca7811036}
花括号里跟随的即是需要找到的flag
方法二:view-source
举例:view-source:http://220.249.52.133:49131/
第2题.robots
web协议用于阻止规定类型的网络爬虫抓取关键信息,在禁止列表中的网络爬虫将无法爬取信息
解题方法,在url之后添加robots.txt即可访问robots禁止类型
第三题.备份文件
注:备份文件的文件命名的一般格式为:
index.php.bak~
index.php~
index.bak
直接斜杠后跟随需要访问的文件名即可下载以后获取flag
第四题.cookie
look-here:cookie.php
访问这个文件,查看header获取flag
第五题.disabled_button
将button的不可用属性删除即可
第六题.weak_auth
弱口令:指用户名和密码都设置得比较简单
比方如下:
admin/123456
admin/admin
guest/guest
admin/admin123
admin/88888888
root/root
root/1234567
输入弱口令之后即可获取flag
第七题.command_execution 指运行命令
ping命令后可以跟随&&继续执行附加的命令
比方说:
ping 127.0.0.1 && ls /home
#指执行完ping命令后继续执行ls home下的目录的命令
这题的解题命令为
ping 127.0.0.1 && cat /home/flag.txt
#经过试验测试home下存贮着flag.txt这个文件
cat表示打印文件之中的内容
第八题.simple_php
<?php
show_source(__FILE__);
include("config.php");
$a=@$_GET['a'];
$b=@$_GET['b'];
if($a==0 and $a){
echo $flag1;
}
if(is_numeric($b)){
exit();
}
if($b>1234){
echo $flag2;
}
?>
需要捕获flag1与flag2来获取最终flag
$表示一个变量
@用于屏蔽错误信息,加上了@符号就不会显示错误
a
=
@
a=@
a=@_GET[‘a’]; #含义为通过get方式获取a变量
if($a==0 and $a)
这里需要特别注意的是
php里的弱比较 == (类型不一样则会相互转换)
强比较则是指 ===(一定要类型一样才可以)
把a赋值为0e123时,0e1230*10^1230
但是and $a也是成立的,因为a并不直接是0,只有当进行弱比较之时才会进行自动转换
将b赋值为1235aab(首先1234aab并不是numeric,其次与>进行比较的时候,会出现弱比较进行类型转换,aab中的第一a为出现的第一个字母之后的所有都直接被截断了
1235aab==1235
1235aab123a=1235(之后的统一都是被截断的)
所以这里需要访问的url后跟随着
/?a=0e123&&b=1235aab
第九题.get_post
需要安装工具hackbar,直接安装Chrome插件即可
链接如下:https://chrome.google.com/webstore/detail/hackbar/ginpbkfigcoaokgflihfhhmglmbchinc?hl=zh-CN
get方式提交为显式提交:提交方式为/?a=1
post方式提交则借助于工具hackbar:操作方式->load->enable post->body:b=2->execute
第十题.xff_referer
通过bp伪造xff以及referer,bp相当于中间商,所以信息经过都需要bp来查看一次,经过bp查看的信息就不再安全了
首先安装burp suite:链接如下:https://www.sqlsec.com/2019/11/macbp.html