打开题目链接

是一段php代码,应该是代码审计问题,首先分析源码

目标是输出flag变量,所以flag就在flag变量里面

输出条件有三个

flag变量长度等于$exam的长度,长度为49

flag变量不能包含` , “ , . , \ , ( , ) , [ , ] , _ , flag , echo , print , require , include , die , exit ;

eval($_GET[‘flag’]) === sha1($flag)

前面两个条件好绕过,就是第三个条件比较麻烦

我们可以利用php短标签来绕过

<? ?>和<?= ?>是短标签而<?php ?>是长标签,其中<?= 是代替 <? echo的,<? ?>代替的是<?php ?>,当PHP不支持使用短标签时,请到PHP的安装目录下找到PHP.INI文件:short_open_tag=On。php5默认的标记为<?php ?>

直接利用eval输出$flag变量的值,payload为?flag=$a='dlag';$a{0}='f';?>11111111111111111;<?=$$a;?>,其中?>用于闭合开头的<?php 标记,111…111是用来填充长度的。直接输出flag变量中的flag值,不需要再和sha1($flag)比较。

BugKu——闪电十六鞭相关推荐

  1. 二十八、bugku 闪电十六鞭

    php字符对照 &quot=" <?phperror_reporting(0);require __DIR__.'/flag.php';$exam = 'return\''.s ...

  2. Bugku 闪电十六鞭

    进入环境,是一串php代码 <?phperror_reporting(0);require __DIR__.'/flag.php';$exam = 'return\''.sha1(time()) ...

  3. [bugku]-闪电十六鞭

    ==============================简化源码==============================1.strlen($_GET['flag']) != strlen($e ...

  4. bugku ctf 闪电十六鞭 <?= ?> 短标签

    0x00 解题须知 在php中 <? ?>和<?= ?>是短标签 而<?php ?>是长标签 其中<?= 是代替 <? echo的 <? ?> ...

  5. BugKu_闪电十六鞭

    访问目标地址 发现了一段php代码,又是代码审计的问题 分析代码 <?phperror_reporting(0);require __DIR__.'/flag.php';$exam = 'ret ...

  6. bugku-闪电十六鞭

    1: 打开环境看看,bp备好的然后我就抓了, 没有任何意义 于是点击网站上的Click here,,,马老师 2:审计PHP代码, 如果没有用get传参传入flag,则会显示Click here(正常 ...

  7. 第三百三十六章 斗宗强者间的大战!

    第三百三十六章 斗宗强者间的大战! <script language="javascript" src="/js/style2.js"></s ...

  8. 第十六届全国大学智能车竞赛华东赛区成绩汇总

    简 介: 第十六届全国大学生智能车竞赛在上海理工大学举行.各组别成绩和奖项在本文中列出. 关键词: 智能车竞赛,华东赛区 §01 各组成绩 一.基础四轮组 学校名称 队伍名称 成绩 决赛成绩 获奖情况 ...

  9. 南京大学计算机 曹云浩,【2015.青春曲园】第二十六届“迎校庆”校园十佳歌手大赛独家放送~...

    原标题:[2015.青春曲园]第二十六届"迎校庆"校园十佳歌手大赛独家放送~ 林籁泉韵声动梁尘 如歌似梦落凡尘 如诗似画挂心头 曲阜师范大学第二十六届"迎校庆" ...

最新文章

  1. Deep learning调参经验
  2. 对Julia社区不熟悉?创始人来告诉你
  3. python流程图-使用Graphviz快速绘制流程图
  4. 【Flutter】Flutter 混合开发 ( Flutter 与 Native 通信 | 完整代码示例 )
  5. Oracle 11g 新特性简介
  6. Java 获取linux根目录下的文件夹_Windows支持直接访问Linux子系统文件:你的下一台Linux何必是Linux...
  7. POI(java 操作excel,word等)编程
  8. Project——编制进度计划、保存基准
  9. VS中,DEBUG/RELEASE的宏定义不同引起的问题
  10. 简单的Charles抓包ios微信网页
  11. 操作系统原理,物理内存“扩充”技术,内存紧缩,覆盖,交换,虚拟内存思想
  12. linux下学习db2
  13. P老师需要去商店买n支铅笔作为小朋友们参加NOIP的礼物。她发现商店一共有 3种包装的铅笔,不同包装内的铅笔数量有可能不同,价格也有可能不同。
  14. Akka(二):使用Akka模拟yarn
  15. C51---13 DS18B20温度传感器
  16. Unity线性工作流下UI保持Gamma的解决方案收集
  17. java的几个生命周期(部分简单总结)
  18. 什么是二值图像、什么是灰度图像、什么是彩色图像?区别?
  19. pcm编码为aac/MP3格式ffmpeg(八)
  20. 关于5G定位技术的探讨

热门文章

  1. 收集vue2精佳文章,一月下半月 - 岂敢定居,一月三捷
  2. 【python】re模块的 findall 和 finditer 函数用法
  3. 开源虚拟声卡解决方案
  4. synchronize-with
  5. 职场办公人员必备的10款好用软件,值得收藏!
  6. Haproxy部署网站LB集群
  7. Postgresql设置主键递增
  8. 交替性注意力_神经科学研究所发现大脑在专注与分心之间交替,保持平衡才能达到最佳状态!...
  9. 帅帅什么意思_帅帅的军事家最新资讯
  10. 适合大学生的六个兼职项目,挣钱的同时还能提升自己