2020.09.17

全面复习web,给自己定个目标,后天之前结束BugKu-Web,开始逆向。

经验教训

  1. php弱等于用于绕过==,弱等于之前会把等号两边转化为同一类型变量;
  2. 全局变量全局变量全局变量!!$GLOBALS、$_SERVER、$_REQUEST、$_POST、$_GET、$_FILES、$_ENV、$_COOKIE、$_SESSION
  3. 浏览器的检查元素的网络中内容不一定可信,因为浏览器在接受数据的时候会过滤不符合规则的内容,但是flag可能就藏着里边
  4. 伪装成本地登陆添加请求头X-Forwarded-For: 127.0.0.1
  5. 火狐浏览器有时候会出bug,在一个比较确定的答案没有结果的时候,可以换个浏览器试试。。。。
  6. 文件包含漏洞的利用,php://input配合<?php echo system('ls');?>php://filter/read=convert.base64-encode/resource=index.php
  7. 数组求md5会返回false;
  8. 如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。
  9. 数据库中大数据库是information_schema,其中有TABLES、COLUMNS表,存储所有的表和列信息。

第一题 web2

https://ctf.bugku.com/challenges#web2

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



第二题 计算器

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

  1. 打开如下

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

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

第三题 web基础$_GET

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

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



第四题 web基础$_POST

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

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



第五题 矛盾

https://ctf.bugku.com/challenges#矛盾

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



第六题 web3

https://ctf.bugku.com/challenges#web3

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



第七题 域名解析

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

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

第八题 你必须让他停下

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

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

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



第九题 本地包含

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

  1. 访问500,估计是坏掉了

第十题 变量1

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

  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);");
}
?>
  1. 主要意思就是满足正则表达式,来用var_dump()来输出变量值,这里想到全局变量,构造payload?args=GLOBALS得到flagflag{92853051ab894a64f7865cf3c2128b34}

第十一题 web5

https://ctf.bugku.com/challenges#web5

  1. 打开查看源码,发现brainfuck密码,不对,经过查阅是JSFUCK密码,这是一种神奇的fuck密码

    CTF-BugKu-WEB-1-20的更多相关文章

    1. [Bugku]Web题解

      bugku地址链接:https://ctf.bugku.com 1.web2 浏览器就显示一堆动态笑脸,时间长了密集恐惧症了. 解法1: F12查看源码 解法2: 地址栏输入: view-source ...

    2. Bugku web(1—35)

      1.web2 打开网页: 哈哈,其实按下F12你就会发现flag. 2.计算器 打开网页,只是让你输入计算结果,但是发现只能输入一个数字,这时按下F12,修改一下参数,使之可以输入多个数字,修改后输入 ...

    3. 一文读懂前端技术演进:盘点Web前端20年的技术变迁史

      本文原文由作者“司徒正美”发布于公众号“前端你别闹”,即时通讯网收录时有改动,感谢原作者的分享. 1.引言 1990 年,第一个Web浏览器的诞生:1991 年,WWW诞生,这标志着前端技术的开始. ...

    4. bugku web所有writeup_超详细讲解_持续更新

      首先说一下我的主用工具,在windows下,主要是用这些,用到其他特定的工具会在题里说. 0.浏览器:火狐,配合Max hackbar插件 (这个是免费的) 1.抓包改包:burpsuite.http ...

    5. bugku web web5

      JSPFUCK??????答案格式CTF{**} http://123.206.87.240:8002/web5/ 字母大写 jspfuck这不是骂人吗,怎么回事啊? ·点进去看见有一个可以输入的框, ...

    6. bugku web web基础

      web基础$_GET $what=$_GET['what'];echo $what;if($what=='flag')echo 'flag{****}'; 看了这段代码知道,需要用get提交what= ...

    7. http://ctf.bugku.com/challenges#Mountain%20climbing:bugku--Mountain-Climbing

        分析这道题,爽,能够结合IDA和ollydbg分析代码,美滋滋.但如果以后能直接根据汇编容易地看懂逻辑那就更好了. 参考链接: https://blog.csdn.net/cossack9989/ ...

    8. 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_ ...

    9. Bugku web web基础$_GET

      web基础$_GET 打开网站后发现 $what=$_GET['what']; echo $what; if($what=='flag') echo 'flag{****}'; 根据这段话的意思是将w ...

    10. BUGKU web刷题记录

      web1 直接F12查看源码,得到flag. web2 直接输入验证码答案,长度被限制,修改可输入长度,提交后得到flag. web3 $what=$_GET['what']; echo $what; ...

    随机推荐

    1. 01@-tornado

      import tornado.web ''' tornado的基础web框架模块 ''' import tornado.ioloop ''' tornado的核心IO循环模块 封装了Linux的epo ...

    2. 实战开发,使用 Spring Session 与 Spring security 完成网站登录改造!!

      上次小黑在文章中介绍了四种分布式一致性 Session 的实现方式,在这四种中最常用的就是后端集中存储方案,这样即使 web 应用重启或者扩容,Session 都没有丢失的风险. 今天我们就使用这种方 ...

    3. hiho一下第零周(题目1 : A + B)

      #include<iostream> using namespace std; int main() { int a,b; while(cin>>a>>b) cou ...

    4. javaWeb项目之图书管理系统(附视频讲解)

      视频播放地址:javaWeb图书系统 本系统为"Swing项目之图书管理系统"(此源码已共享)的Web版,网页框架用采用EasyUI 数据库为MysqL,写Web项目摒弃了火狐浏览 ...

    5. NRF52840 添加 led service

      记录NRF52840 添加LED service的流程,以及遇到的问题. 由于SDK中已经有了led service的.c和.h文件,因此只需要添加文件,并且调用相关函数即可. 注:编译调试环境为ke ...

    6. 自己搭建的集群,启动hadoop时slave节点的datanode没有启起来怎么办?

      自己搭建的集群,启动hadoop 集群是,发现slave节点的datanode没有启动,查了资料发现是因为我在启动集群前,执行了这个命令: hadoop namenode -format 这个指令会重 ...

    7. “大地主”IPV6的邻居发现BD

      引入 因为当初设计IPv4的时候,没有考虑到网络发展的速度这么快,到今现在IPv4有很多不足,32位的 IPv4地址不够用,现在128位的IPv6能完全够用,据说可以地球上每一粒沙子都分配一个地址,而 ...

    8. vue前端工程化

      今日目标 1.能够了解模块化的相关规范 2.了解webpack3.了解使用Vue单文件组件4.能够搭建Vue脚手架 5.掌握Element-UI的使用 1.模块化的分类 A.浏览器端的模块化   1) ...

    9. 什么是PR劫持和权重劫持

      http://www.wocaoseo.com/thread-265-1-1.html PR劫持OR网站权重劫持虽然概念不一样,但是其原理是一样的,同样属于seo中的灰色手段,是我们抵制和反对的seo ...

    10. soso官方:基于相关排序的判断

      http://www.wocaoseo.com/thread-186-1-1.html 议程 概述 检索词 用户的信息需求 网页的自有信息 网页的附属信息 相关性的计算框架 概述 相关性的表象 检索词 ...