JWT框架
Json Web Token,是一种令牌格式,形式由三部分组成,之间由.连接,(解密网站为:JSON Web Tokens – jwt.io)形式大概就是如下:
三部分分别为1.header:声明了JWT的签名算法 2.payload:承载了各种声明并传递明文数据,例如:username、[……]
Json Web Token,是一种令牌格式,形式由三部分组成,之间由.连接,(解密网站为:JSON Web Tokens – jwt.io)形式大概就是如下:
三部分分别为1.header:声明了JWT的签名算法 2.payload:承载了各种声明并传递明文数据,例如:username、[……]
这道题考点特别特别多,看了许多师傅的WP终于大概理解了这道题
开题看到这个–GFXEIM3YFZYGQ4A=
全大写,还有“=”号,base32
解密之后是1nD3x.php
直接访问,发现是源文件
多重代码审计,一个一个看
(1)
&[……]
不允许出现php的字样,用短标签绕过
短标记是用来输出变量或表达式,一般用法是短标签开启short_open_tag = On,配置文件:php.ini
短标记是用来输出变量或表达式,一般用法是
<?=$a?>
<?=(表达式)?>
就相当于
<?p[……]
考点
1.git泄露
2.githack下载源码
3.变量覆盖
输出变量$handsome,满足条件$_GET[‘flag’] == = $x && $x !=== ‘flag’
?handsome=flag&flag=x&x=fla[……]
让我们输入商品ID和价格去购买,那肯定是尝试输入flag去请求
没有这个请求,那只有尝试用它原本的商品ID–1、2、3、4
还是错误请求
直到第四个
只允许一个字符可以购买
换句话说,一个字符要代表比1337大
在unicode编码里面有一些[……]
仅有一张图片,没有什么可以去操作的。F12看源码
href提示有一个目录
看到最后的unserialize就知道是反序列化,先分析一下代码
1.需要我们输入data参数,之后将data参数反序列化执行,有一个类HelloPhp
2.类里面要构造两个参数a,b.并且因为[……]
先点一个买试试,发现是真的二维码,我就不去扫了,肯定不是这样出解。
那我先去查看源码
纳尼,意思是我们的md5传入这个就会是验证通过,同时下面还给了一个目录/flag.php,先访问看看
这句话有点意思,只有两个人的IP可以看到,一个是购买的,一个是它本人–它本人就是[……]