• 实验吧Web-FALSE


    笔记:

    PHP函数isset(): 检测变量是否设置

    只能用于变量,传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数

     格式:  isset ( mixed var [, mixed var [, ...]] ) 

        若变量不存在则返回 FALSE
        若变量存在且其值为NULL,也返回 FALSE
        若变量存在且值不为NULL,则返回 TURE 

        同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE

    == :  比较运算符号  不会检查条件式的表达式的类型

    ===:  恒等计算符 , 同时检查表达式的值与类型。(会检查表达式类型,如bool)

    die()函数  :  停止程序运行,输出内容

    sha1()函数: 计算字符串 "Hello" 的 SHA-1 散列。默认的传入参数类型是字符串型

    W3School: http://www.w3school.com.cn/php/func_string_sha1.asp

    例:

    <?php
    $str = "Shanghai";
    echo sha1($str);
    ?>

    链接: http://www.shiyanbar.com/ctf/1787

    右击查看源代码,发现这一段:

    登录成功条件: (1)传入name,password的值(2)name和password的值不能相等(3)  name和password的sha1加密散列值相等

    前两个条件容易实现,关键是第三个条件,怎样实现呢?

    思路: sha1()函数默认的传入参数类型是字符串型,可以传入其他类型,使其返回值为false。如数组类型。

    实现: 构造url:  http://ctf4.shiyanbar.com/web/false.php?name[]=a&password[]=b (a,b只要不等即可),提交即可获得flag

     

  • 相关阅读:
    linux 批量替换内容
    在Linux下如何查CC攻击?
    mysql init_connect
    利用javascript对字符串加密
    js学习笔记10----字符串的基本操作
    js学习笔记9----时间操作
    3种方法实现列表自动滚动
    如何解决wow.js与fullpage的兼容性
    js兼容获取元素的样式
    用php去除bom头
  • 原文地址:https://www.cnblogs.com/ssooking/p/5869784.html
Copyright © 2020-2023  润新知