攻防世界-Web 简单入门-No.1
比赛地址
攻防世界 :https://adworld.xctf.org.cn/
按F12检查一下就找到了flag
这个简单GET方式就只用在地址后面加上?a=1
http://220.249.52.133:36337/?a=1
还有一个POST 我推荐一个简单插件 HackBar
勾选Post data 输入b=2 点击Execute 就可以拉
cyberpeace{b346411e7a78da0351b2e761dcd0076b}
我们先了解一下这个robots,知道了他又一个专门的txt储存信息
我们访问一下发现了flag的地址
http://220.249.52.133:51467/robots.txt
cyberpeace{ff21c6f05c08ee15d57549b2825eae4a}
这个题目是关于备份的,看我笔记上面
所以我们访问
在备份中找到了flag
Cyberpeace{855A1C4B3401294CB6604CCC98BDE334}
这个比较简单也比较复杂了,
我们先抓一个信息,然后看见了它有一个链接的cookie.php我们访问一下
http://220.249.52.133:44399/cookie.php
就看到了flag了
cyberpeace{aed28d70d38a22dbd98acb1c44ccc241}
这种就非常简单,我们打开F12
删除这个代码双击它在按Del
就可以点击 了
这个一看就是密码爆破了
他提示了一下是随便设置了一个密码我们先找到他的用户名
先抓包,然后给测试器
我们先选择爆破出用户名
在这里选择用户名然后开始爆破
我们爆破出来一个长度不一样的就对了就可以不用爆破了现在修改爆破密码了
更换爆破目标
修改爆破字典
成功跑到了这里我推荐一首字典真的特别好用
用正确的密码获得了flag
cyberpeace{66b2d0f2849b6f94ec086465e6cf5dbb}
没用装waf ,是linux 系统就非常危险
我们使用全局查找就找到了flag 的地址
这里补充一下知识
(1)find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找
(2)find /etc -name httpd.conf #在/etc目录下文件httpd.conf
(3)find /etc -name ‘srm’ #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
(4)find . -name ‘srm*’ #表示当前目录下查找文件名开头是字符串‘srm’的文件
然后使用cat 查看内容
cyberpeace{659f0e45d75f6935d0e30f5bbf17bf3d}
我们先看这个代码的意思
<?php
show_source(FILE); //这个是展示PHP代码,没啥用
include(“config.php”); //一个嵌入的意思看下图
a=@a=@_GET[‘a’]; //输入值a
b=@b=@_GET[‘b’]; //输入值b
if($a==0 and $a){ //判断a等于0并且还要是true 说白了就是
echo KaTeX parse error: Expected 'EOF', got '}' at position 26: … //不等于0同时也要等于0 }̲ if(is_numeric(b)){ //b不能是数字
exit();
}
if($b>1234){ //b还要比1234大
echo $flag2;
}
?>
从上面代码分析我们知道了
a是要等于0又要不等于0
b是要比1234大还要不能是数字
这里我们给a=a任何一个字母,字母不能代表任何数字所以默认是0,可是字母是算是有内容同时也会输出true
然后b我们通过判断不会转换字母的性质(这里我还是不太好说)我们给b=1235a这样他既不是数字,也不比1234小
Cyberpeace{647E37C7627CC3E4019EC69324F66C7C}
一开始就要我们伪造ip然后看了一下xff和referer协议明白了,我们先老规矩抓包
然后我们分析一下协议
Referer请求头包含了当前请求页面的来源页面的地址,即表示当前页面是通过此来源页面里的链接进入的。服务端一般使用 Referer
请求头识别访问来源,可能会以此进行统计分析、日志记录以及缓存优化等。
X-Forwarded-For (XFF) 在客户端访问服务器的过程中如果需要经过HTTP代理或者负载均衡服务器,可以被用来获取最初发起请求的客户端的IP地址,这个消息首部成为事实上的标准。在消息流从客户端流向服务器的过程中被拦截的情况下,服务器端的访问日志只能记录代理服务器或者负载均衡服务器的IP地址。如果想要获得最初发起请求的客户端的IP地址的话,那么 X-Forwarded-For 就派上了用场。
X-Forwarded-For:仿造的ip地址
这一步我们伪造了ip接下来要伪造地址域名
Referer:url
cyberpeace{f3c6bca1289c3c41733f2328a454a6ac}
这个研究了很久
我们使用一个好用的工具叫做中国剑蚁,如果有需要软件的同学,我已经上传了,不仅仅有剑蚁还有菜刀和冰蝎
cyberpeace{d7583ec59a74f1b4b391aa736cf1fd1e}
怎么输入密码都不对,我们就开始审计代码
我目光看到了一堆字符上面
通过python跑一下输出了
55,56,54,79,115,69,114,116,107,49,50
把他转换成ascii
脚本
s=[55,56,54,79,115,69,114,116,107,49,50]
d=""
for i in s:
b=chr(i)
d=d+b
print(d)
print(d)结果
7
78
786
786O
786Os
786OsE
786OsEr
786OsErt
786OsErtk
786OsErtk1
786OsErtk12
786OsErtk12
Cyberpeace{786OsErtk12}
chr(i)
d=d+b print(d)
print(d)
结果
7
78
786
786O
786Os
786OsE
786OsEr
786OsErt
786OsErtk
786OsErtk1
786OsErtk12
786OsErtk12
Cyberpeace{786OsErtk12}
完~本次学习到此结束。