美文网首页
php弱类型

php弱类型

作者: deepseek米洛 | 来源:发表于2019-01-15 12:29 被阅读0次

前言:

本题考虑的是php弱类型、is_numeric()、int()强制类型转换

代码:

<?php
show_source(__FILE__);
$flag = "xxxx";
if(isset($_GET['time'])){ 
        if(!is_numeric($_GET['time'])){ 
                echo 'The time must be number.'; 
        }else if($_GET['time'] < 60 * 60 * 24 * 30 * 2){ 
                        echo 'This time is too short.'; 
        }else if($_GET['time'] > 60 * 60 * 24 * 30 * 3){ 
                        echo 'This time is too long.'; 
        }else{ 
                sleep((int)$_GET['time']); 
                echo $flag; 
        } 
                echo '<hr>'; 
}
?>

知识点:

int(),不能正确转换的类型有十六进制型字符串、科学计数法型字符串
is_numeric()支持普通数字型字符串、科学记数法型字符串、部分支持十六进制0x型字符串

分析:

代码中,先是判断是不是数字,然后再进行int长短的限定判断
也就是只能限定在5184000L< time < 7776000
通过is_number() 能传入科学计数法,来进行绕过。

如果是之间的操作,但是在遇到sleep()的话也只能等到明年了
所以根据int不能处理科学计数法,而number上能处理

img

payload:
?time=5.185e6

image.png

相关文章

  • php中弱语言类型的底层实现

    php中弱语言类型的底层实现 PHP是弱语言类型,主要分为三类: 1、标量类型:integer、string、fl...

  • 语言类型实例

    无类型: 汇编弱类型、静态类型 : C/C++弱类型、动态类型检查: Perl/PHP强类型、静态类型检查 :Ja...

  • PHP弱类型

    php是世界上最好的语言,所以php自身的安全问题也是web安全的一个方面。由于其自身弱类型语言的特性以及内置函数...

  • php弱类型

    前言: 本题考虑的是php弱类型、is_numeric()、int()强制类型转换 代码: 知识点: 分析: 代码...

  • PHP的变量与常量

    弱类型语言PHP PHP是一种非常弱的类型语言。在大多数编程语言中,变量只能保持一种类型的数据,而且这个类型必须在...

  • PHP如何判断空

    PHP类型比较 PHP自动类型转换(弱语言) PHP去除空格 1、去除两边的空格trim($arr) 2、正则匹配...

  • Go和PHP的语言特性

    Go是编译型、静态类型、强制类型语言,PHP是解释型、动态类型、弱类型语言

  • 2020-07-10 php7新特性 (上)

    (1)标量类型和返回值类型的声明 php,默认是弱校验模式 =》弱类型校验模式【标量 +返回值】类型声明模式分为:...

  • php弱类型(转)

    前段时间做了南京邮电大学网络攻防平台上面的题目,写了一个writeup之后,还有必要总结一下。由于做的题目都是we...

  • php弱类型总结

    PHP是弱类型,动态的语言脚本。在申明一个变量的时候,并不需要指明它保存的数据类型。例如: 动态变量,在运行期间是...

网友评论

      本文标题:php弱类型

      本文链接:https://www.haomeiwen.com/subject/uovedqtx.html