bugku_ctf,web第5题_矛盾

题目

$num=$_GET['num'];
if(!is_numeric($num))
{
echo $num;
if($num==1)
echo 'flag{**********}';
}

还是php的代码, 看过之前的get那题应该知道该如何答题

分析

num赋一个值, 这个值不是数字但是等于1. 看似矛盾实则不是.只需要在数字后加上字母即可。原理在下面的基础知识部分。

解答

直接在地址栏加上

?num=1a

基础知识

==:会先将字符串类型转化成相同,再比较
===: 会先判断两种字符串的类型是否相等,再比较.

在转化时, 对于1a这种数字在前字符在后的混合型, 会只将前边的数字转换为int型。即1a转化为1
这属于php的弱类型问题, 更多的关于php的弱类型绕过, 参考该文章https://www.cnblogs.com/Mrsm1th/p/6745532.html

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,089评论 2 9
  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 5,637评论 0 6
  • 第一章 前端三大语言:HTML(专门编写网页内容)、CSS(编写网页样式)、JS(专门编写网页交互行为) 能简写尽...
    fastwe阅读 4,816评论 0 0
  • 前言: 此文用于记录做BugkuCTF时遇到的知识,主要为了巩固和查阅。 记录各种知识 1.stripos(字符串...
    煊奕阅读 5,933评论 0 4
  • js简介 Js是一种基于事件和对象驱动的解释性、松散性的语言。 一切皆对象 javascript 布兰登艾奇 ...
    塔库纳玛哈哈阅读 5,059评论 0 2

友情链接更多精彩内容