JWT框架

Json Web Token,是一种令牌格式,形式由三部分组成,之间由.连接,(解密网站为:JSON Web Tokens – jwt.io)形式大概就是如下:

三部分分别为1.header:声明了JWT的签名算法 2.payload:承载了各种声明并传递明文数据,例如:username、password等 3.signture:拥有该部分的JWT被称为JWS,也就是签了名的JWS

我们把alg改为none,因为当alg为none的时候,后端将不执行签名验证,也就相当于没有加密方式了,再把username改为admin,secretid改为[],利用脚本生成,脚本:

im[……]

继续阅读

[BJDCTF2020]EzPHP

这道题考点特别特别多,看了许多师傅的WP终于大概理解了这道题

开题看到这个–GFXEIM3YFZYGQ4A=

全大写,还有“=”号,base32

解密之后是1nD3x.php

直接访问,发现是源文件

多重代码审计,一个一个看

(1)

 正则匹配掉了许多我们之后要的参数,$_SERVER[‘QUERY_STRING’]不进行url解码,而GET的传参方式会进行一次解码,因此我们可以把要传的参数进行url编码(此处是对所有字符进行url编码,而不是对特殊字符如空格、引号等进行url编码)即可绕过黑名单限制。(用hackbar[……]

继续阅读

WEB–入门

CTF中的Web题型,就是给定一个Web网站,选手要根据题目所提示的信息,找到网站上的flag字符串。

我们需要掌握一些基本的语言,像PHP、Python、JavaScript等

Web框架:ThinkPHP、Flask等

在学习之前我们需要知道一些常识,也是最基本的常识--源代码

这是我们未来需要面对的最多的东西,有了源码大部分的题目都能找出漏洞

当然我们也不是经常能够遇到直接把源码放在明面上的情况,首先教大家怎么查看前端源码

1.f12

这样打开的就是源码,很多时候这个源码里面会藏着提示

2.鼠标右键查看页面源代码

练习[……]

继续阅读

[BJDCTF2020]EasySearch

额,我看到了两个用户登录框?

抓个包看看

哦,应该是显示问题

爆破肯定不现实,先扫描看看有没有目录泄露

直接源码泄露了,还是下载出来的

先看看情况

[……]

继续阅读

[CISCN2019 总决赛 Day2 Web1]Easyweb

不允许出现php的字样,用短标签绕过

短标记是用来输出变量或表达式,一般用法是短标签开启short_open_tag = On,配置文件:php.ini

短标记是用来输出变量或表达式,一般用法是
<?=$a?>
<?=(表达式)?>
就相当于
<?php echo $a?>

<?php echo (表达式)?>

[……]

继续阅读

[BJDCTF2020]Mark loves cat

考点

1.git泄露

2.githack下载源码

3.变量覆盖

输出变量$handsome,满足条件$_GET[‘flag’] == = $x && $x !=== ‘flag’

?handsome=flag&flag=x&x=flag

原因第一个是让flag变成参数$handsome,同时要让第二个检测,x不能等于flag,中间另设一个变量x,因为有foreach使我们get请求里面赋值的变量重新赋值为我们的键名

假如我们让a=b,那么最后访问a时得到的就是b

这里的值表面是 x 但前面我们进行了变量覆盖[……]

继续阅读

[ASIS 2019]Unicorn shop

让我们输入商品ID和价格去购买,那肯定是尝试输入flag去请求

没有这个请求,那只有尝试用它原本的商品ID–1、2、3、4

还是错误请求

直到第四个

只允许一个字符可以购买

换句话说,一个字符要代表比1337大

在unicode编码里面有一些符号代表数字

比如ↂ就代表数值是10000

同时我们换个思路–为什么一定非要是字符

中文里面的万和亿其实也是可以

[……]

继续阅读

[NPUCTF2020]ReadlezPHP

仅有一张图片,没有什么可以去操作的。F12看源码

href提示有一个目录

看到最后的unserialize就知道是反序列化,先分析一下代码

1.需要我们输入data参数,之后将data参数反序列化执行,有一个类HelloPhp

2.类里面要构造两个参数a,b.并且因为析构函数会执行 echo $b($a);,这种包裹的形式可以想到用system(ls /)查看

实际上因为被过滤了system,ls,时间函数限制下只好使用

那就可以构建HelloPhp的序列化字符串,直接查看phpinfo这样data传入时反序列化就会执行析构函数

payload[……]

继续阅读

[MRCTF2020]PYWebsite

先点一个买试试,发现是真的二维码,我就不去扫了,肯定不是这样出解。

那我先去查看源码

纳尼,意思是我们的md5传入这个就会是验证通过,同时下面还给了一个目录/flag.php,先访问看看

这句话有点意思,只有两个人的IP可以看到,一个是购买的,一个是它本人–它本人就是127.0.0.1撒

那我们XFF文件头伪造IP就行了

[……]

继续阅读

蜀ICP备2022010829号