CTF-BugKu-WEB-1-20
2020.09.17
全面复习web,给自己定个目标,后天之前结束BugKu-Web,开始逆向。
经验教训
- php弱等于用于绕过
==,弱等于之前会把等号两边转化为同一类型变量; - 全局变量全局变量全局变量!!$GLOBALS、$_SERVER、$_REQUEST、$_POST、$_GET、$_FILES、$_ENV、$_COOKIE、$_SESSION
- 浏览器的检查元素的网络中内容不一定可信,因为浏览器在接受数据的时候会过滤不符合规则的内容,但是flag可能就藏着里边
- 伪装成本地登陆添加请求头
X-Forwarded-For: 127.0.0.1; - 火狐浏览器有时候会出bug,在一个比较确定的答案没有结果的时候,可以换个浏览器试试。。。。
- 文件包含漏洞的利用,
php://input配合<?php echo system('ls');?>和php://filter/read=convert.base64-encode/resource=index.php; - 数组求md5会返回false;
- 如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。
- 数据库中大数据库是information_schema,其中有TABLES、COLUMNS表,存储所有的表和列信息。
第一题 web2
https://ctf.bugku.com/challenges#web2

- 一堆这个,在页码源文件找到flag


第二题 计算器
https://ctf.bugku.com/challenges#计算器

- 打开如下

- 输入框只能输入一位数,检查源码,发现生成验证码多js文件

- 直接访问,在文件中发现flag
flag{CTF-bugku-0032}

第三题 web基础$_GET
https://ctf.bugku.com/challenges#web基础$_GET

- 比较简单的get,构造payload
?what=flag,输出flagflag{bugku_get_su8kej2en}


第四题 web基础$_POST
https://ctf.bugku.com/challenges#web基础$_POST

- 简单的post,Firefox打开,hackbar插件,添加post
what=flag,请求得到flagflag{bugku_get_ssseint67se}


第五题 矛盾
https://ctf.bugku.com/challenges#矛盾

- 不能是数字,还得弱等于1,这就用到字符'1qwk'弱等于数字1这个知识点了,在弱等于的时候,等号两边会转化为同一类型的变量,这里1qwk转化为数字后为数字1,payload
num=1qwk,得到flagflag{bugku-789-ps-ssdf}


第六题 web3
https://ctf.bugku.com/challenges#web3

- 打开是很多弹窗,看源码,在底部发现信息,html转码,得
KEY{J2sa42ahJK-HS11III}


第七题 域名解析
https://ctf.bugku.com/challenges#域名解析

- 访问
http://123.206.87.240/后,用hackbar修改host为flag.baidu.com即可得KEY{DSAHDSJ82HDS2211}

第八题 你必须让他停下
https://ctf.bugku.com/challenges#你必须让他停下

- 看源码知道是一个script脚本一直在运行,用浏览器停用脚本之后,得到如下界面,没啥用,

- 看页面文字,stop at panda,我刷新界面源码,发现请求文件一直在变,是不是请求的是panda就可以了呢,burp拦截试试,一直重发就会发现,有概率出现flag
flag{dummy_game_1s_s0_popular}


第九题 本地包含
https://ctf.bugku.com/challenges#本地包含

- 访问500,估计是坏掉了

第十题 变量1
https://ctf.bugku.com/challenges#变量1

- 得到代码
<?php
error_reporting(0);
include "flag1.php";
highlight_file(__file__);
if(isset($_GET['args'])){
$args = $_GET['args'];
if(!preg_match("/^\w+$/",$args)){
die("args error!");
}
eval("var_dump($$args);");
}
?>
- 主要意思就是满足正则表达式,来用var_dump()来输出变量值,这里想到全局变量,构造payload
?args=GLOBALS得到flagflag{92853051ab894a64f7865cf3c2128b34}

第十一题 web5
https://ctf.bugku.com/challenges#web5

- 打开查看源码,发现brainfuck密码,不对,经过查阅是JSFUCK密码,这是一种神奇的fuck密码
CTF-BugKu-WEB-1-20的更多相关文章
- [Bugku]Web题解
bugku地址链接:https://ctf.bugku.com 1.web2 浏览器就显示一堆动态笑脸,时间长了密集恐惧症了. 解法1: F12查看源码 解法2: 地址栏输入: view-source ...
- Bugku web(1—35)
1.web2 打开网页: 哈哈,其实按下F12你就会发现flag. 2.计算器 打开网页,只是让你输入计算结果,但是发现只能输入一个数字,这时按下F12,修改一下参数,使之可以输入多个数字,修改后输入 ...
- 一文读懂前端技术演进:盘点Web前端20年的技术变迁史
本文原文由作者“司徒正美”发布于公众号“前端你别闹”,即时通讯网收录时有改动,感谢原作者的分享. 1.引言 1990 年,第一个Web浏览器的诞生:1991 年,WWW诞生,这标志着前端技术的开始. ...
- bugku web所有writeup_超详细讲解_持续更新
首先说一下我的主用工具,在windows下,主要是用这些,用到其他特定的工具会在题里说. 0.浏览器:火狐,配合Max hackbar插件 (这个是免费的) 1.抓包改包:burpsuite.http ...
- bugku web web5
JSPFUCK??????答案格式CTF{**} http://123.206.87.240:8002/web5/ 字母大写 jspfuck这不是骂人吗,怎么回事啊? ·点进去看见有一个可以输入的框, ...
- bugku web web基础
web基础$_GET $what=$_GET['what'];echo $what;if($what=='flag')echo 'flag{****}'; 看了这段代码知道,需要用get提交what= ...
- http://ctf.bugku.com/challenges#Mountain%20climbing:bugku--Mountain-Climbing
分析这道题,爽,能够结合IDA和ollydbg分析代码,美滋滋.但如果以后能直接根据汇编容易地看懂逻辑那就更好了. 参考链接: https://blog.csdn.net/cossack9989/ ...
- CTF Jarvisoj Web(session.upload_progress.name php 上传进度)
Jarvisoj Web 题目地址:http://web.jarvisoj.com:32784/index.php <?php //A webshell is wait for you ini_ ...
- Bugku web web基础$_GET
web基础$_GET 打开网站后发现 $what=$_GET['what']; echo $what; if($what=='flag') echo 'flag{****}'; 根据这段话的意思是将w ...
- BUGKU web刷题记录
web1 直接F12查看源码,得到flag. web2 直接输入验证码答案,长度被限制,修改可输入长度,提交后得到flag. web3 $what=$_GET['what']; echo $what; ...
随机推荐
- 【支付宝SDK】沙箱调试,以及遇到的坑
from rest_framework.views import APIView from alipay import AliPay, DCAliPay, ISVAliPay from django. ...
- Dubbo系列之 (四)服务订阅(1)
辅助链接 Dubbo系列之 (一)SPI扩展 Dubbo系列之 (二)Registry注册中心-注册(1) Dubbo系列之 (三)Registry注册中心-注册(2) Dubbo系列之 (四)服务订 ...
- http请求工作流程
一.HTTP工作原理 HTTP协议定义Web客户端如何从Web服务器请求Web页面,以及服务器如何把Web页面传送给客户端.HTTP协议采用了请求/响应模型.客户端向服务器发送一个请求报文,请求报文包 ...
- 区块链入门到实战(29)之Solidity – 环境搭建
在线开发环境Remix(推荐) 学习Solidity推荐使用在线开发环境Remix,本教程的例子将使用Remix开发运行. 安装本地编译器 安装 nodejs / npm node官方网站下载node ...
- Fiddler扩展——导出Jmeter脚本
前言 Fiddler,对于大家而言,应该早已耳熟能详,是个抓包神器,具体的使用,我就不多说了.如果对Fiddler的使用还不太熟练,可以翻看我以前一系列的博文.我罗列出来,方便大家阅读,如下所示: 1 ...
- vs使用fscanf和fprintf错误警告处理
严重性代码说明项目文件行 禁止显示状态错误 C4996 fopen('fscanf'.strcmp):This function or variable may be unsafe. 最全解决办法(转 ...
- 【免费】windows下如何生成tar.gz,一键生成tar.gz
废话 一.实验背景 tar.gz 是Linux和Unix下面比较常用的格式,一条命令就可以把文件压缩打包成tar.gz格式,然而这种格式在windows并不多见. Linxu服务器上,tar.gz 包 ...
- 网络测速神器:SpeedTest深度指南
最近在测试一个项目,里面涉及到一个测试case:在linux服务器上,当网络带宽较差时,观察服务的消息处理能力和表现.限制网卡带宽有许多方法,比如Wondershaper或者ethtool.那验证限速 ...
- Tesselation学习
Tesselation的作用:给低片面数模型镶嵌更多片面,让低模变高模. 和法线贴图不同,法线本质是通过改变低模表面的颜色来模拟高模,比如在一个片面上普通diffuse是均匀的颜色分布(因为光照颜色一 ...
- MAC 上编译安装nginx-rtmp-module 流媒体服务器
MAC 上编译安装nginx-rtmp-module 流媒体服务器 记录踩坑过程 下载nginx和nginx-rtmp-module wget http://nginx.org/download/ng ...
- [Bugku]Web题解