V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Caojx
V2EX  ›  程序员

今天小伙伴用 PHP 写的 if else 逻辑,被人轻而易举的绕过了!这是为什么?

  •  
  •   Caojx · 2018-02-10 14:17:18 +08:00 · 11482 次点击
    这是一个创建于 2486 天前的主题,其中的信息可能已经有所发展或是发生改变。

    if else 逻辑可以轻易的绕过么

    65 条回复    2018-02-14 15:13:21 +08:00
    nszm
        1
    nszm  
       2018-02-10 14:25:38 +08:00
    不贴代码怎么看
    shiji
        2
    shiji  
       2018-02-10 14:31:34 +08:00
    一行代码都不给,怎么答题。。。
    抽象概念题?
    to2false
        3
    to2false  
       2018-02-10 14:32:28 +08:00 via iPhone
    题目:空
    下一个
    mokeyjay
        4
    mokeyjay  
       2018-02-10 14:32:45 +08:00
    虽然没有代码,但我猜是弱类型的锅
    bramblex
        5
    bramblex  
       2018-02-10 14:35:52 +08:00   ❤️ 6
    一般人:

    我写个程序出现了问题 -> 我的逻辑出错了吗?

    楼主:

    我写个程序出现了问题 -> 错的不是我,是世界!
    function007
        6
    function007  
       2018-02-10 14:44:24 +08:00
    因为学得不精
    jayx
        7
    jayx  
       2018-02-10 14:45:06 +08:00
    不好猜
    mrhhsg
        8
    mrhhsg  
       2018-02-10 14:55:56 +08:00   ❤️ 1
    已 block


    开玩笑,没有没有
    Stevenv
        9
    Stevenv  
       2018-02-10 15:09:24 +08:00
    我目测是自己逻辑问题,怪语言系列。。
    abowloflrf
        10
    abowloflrf  
       2018-02-10 15:11:53 +08:00
    又黑 PHP ???
    yingfengi
        11
    yingfengi  
       2018-02-10 15:13:57 +08:00 via Android
    代码呢。
    zgk
        12
    zgk  
       2018-02-10 15:18:36 +08:00 via Android
    如果是弱类型比较导致的问题话可以看文档👀
    http://php.net/manual/zh/types.comparisons.php
    akira
        13
    akira  
       2018-02-10 15:25:54 +08:00
    目测是 弱类型的理解有问题
    lansexinyu
        14
    lansexinyu  
       2018-02-10 16:03:18 +08:00
    没代码怎么说
    misaka19000
        15
    misaka19000  
       2018-02-10 16:14:38 +08:00
    天天黑 PHP 有意思吗?
    leamtrop
        16
    leamtrop  
       2018-02-10 16:17:09 +08:00
    还能这样黑 PHP 啊?
    dobelee
        17
    dobelee  
       2018-02-10 16:22:11 +08:00 via Android
    學藝不精。
    chinvo
        18
    chinvo  
       2018-02-10 16:37:14 +08:00
    哦,下一个

    已 block
    xxbutoo
        19
    xxbutoo  
       2018-02-10 16:40:01 +08:00
    又黑我 php????
    你特么写个 if ($num ==1)
    WytheHuang
        20
    WytheHuang  
       2018-02-10 16:58:46 +08:00   ❤️ 1
    代码也没有, 就简简单单的几句话, 就想黑 PHP???
    caola
        21
    caola  
       2018-02-10 17:39:12 +08:00
    代码都没有,又想黑世界上最好的语言 PHP 了?
    tabris17
        22
    tabris17  
       2018-02-10 17:42:09 +08:00 via iPhone
    真•提问的艺术
    WuwuGin
        23
    WuwuGin  
       2018-02-10 17:45:49 +08:00 via Android
    是真的,php 能被黑客轻易破解,换成汇编吧。
    zjsxwc
        24
    zjsxwc  
       2018-02-10 17:48:30 +08:00
    黑的太不专业了,上个代码啊
    KgM4gLtF0shViDH3
        25
    KgM4gLtF0shViDH3  
       2018-02-10 18:03:03 +08:00 via iPhone
    缺铜币了吧
    gouchaoer
        26
    gouchaoer  
       2018-02-10 18:04:26 +08:00
    这个。。。
    si
        27
    si  
       2018-02-10 18:29:40 +08:00   ❤️ 1
    这样的问题我只能这样回答:这是因为那个原因啊。
    twoyuan
        28
    twoyuan  
       2018-02-10 19:44:10 +08:00
    可以轻易的绕过
    ceshi12
        29
    ceshi12  
       2018-02-10 19:44:34 +08:00
    好问题,因为所以,4 个字
    wlh233
        30
    wlh233  
       2018-02-10 19:48:10 +08:00
    可以的,你只需要
    wdlth
        31
    wdlth  
       2018-02-10 20:07:33 +08:00
    按照 CTF 的知识,写得不好确实是可以绕过的,比如“ 0e 比较绕过”,但是用 Password Hashing API 就没这么容易了……
    1762628386
        32
    1762628386  
       2018-02-10 20:17:47 +08:00
    if( FunctionName() ===false ){
    //
    }else{
    //
    }

    怕不是这种?
    1762628386
        33
    1762628386  
       2018-02-10 20:18:32 +08:00
    FunctionName(){
    echo "哈哈 我绕过了"
    }
    Cyron
        34
    Cyron  
       2018-02-10 20:25:37 +08:00   ❤️ 1
    小伙伴就是楼主系列
    fuyufjh
        35
    fuyufjh  
       2018-02-10 20:28:32 +08:00
    blocked
    guog
        36
    guog  
       2018-02-10 21:00:45 +08:00 via Android
    @xxbutoo 哈哈,莫不是再去掉一个等号😂
    usedname
        37
    usedname  
       2018-02-10 21:11:28 +08:00
    V2EX 第 287414 号会员,加入于 2018-01-28 22:04:39 +08:00,今日活跃度排名 7190


    你忍了这么久也是不容易哈, 速度 block sb
    junmoxiao
        38
    junmoxiao  
       2018-02-10 21:44:05 +08:00
    最烦这样问问题的,就给个大概的现象,前因后果什么都没有,无语
    ebony0319
        39
    ebony0319  
       2018-02-10 22:06:47 +08:00 via Android
    if 的时候引发一个异常比如:1/0==0,然后在在异常捕获时候留一个后门,或者没有捕获异常导致内存泄露。还有一种就是 if(a==1);{}else{}。好了,瞎编不下去了。
    xttttt
        40
    xttttt  
       2018-02-10 23:50:28 +08:00 via Android
    If (lz!==sb)
    nciyuan
        41
    nciyuan  
       2018-02-11 03:18:49 +08:00 via Android
    咋的逻辑?除了 eles 在 if 里面没有 eles if?还有没参数?或者 if 套 if 那种?或者大小写(笑
    mentalidade
        42
    mentalidade  
       2018-02-11 04:35:57 +08:00 via Android
    这都有回答,楼上都是靠意念答题的吗
    victor
        43
    victor  
       2018-02-11 07:10:47 +08:00
    是马上要放假了,都无心工作了吗?这种钓鱼问题也有这么多人送币(包括我)。
    kfangf
        45
    kfangf  
       2018-02-11 08:44:53 +08:00 via Android
    咋听起来是黑我 PHP 的?
    代码不贴就想黑世界上最好的语言?
    littleylv
        46
    littleylv  
       2018-02-11 09:31:20 +08:00
    《提问的艺术》
    watzds
        47
    watzds  
       2018-02-11 09:37:52 +08:00 via Android
    好厉害啊,凌波微步?这都绕过了!
    chenyu8674
        48
    chenyu8674  
       2018-02-11 10:04:55 +08:00
    我猜 LZ 的意思是一段类似
    if(isXXX) {
    doXXX_1()
    } else {
    doXXX_2()
    }
    的代码里,do1 和 do2 都没有被执行?
    cjyang1128
        49
    cjyang1128  
       2018-02-11 10:17:05 +08:00
    完了,黑 php 的花样已经层出不穷了
    stephenliubp
        50
    stephenliubp  
       2018-02-11 10:17:55 +08:00
    @chenyu8674 什么情况下会这样???
    shrimp
        51
    shrimp  
       2018-02-11 10:18:29 +08:00
    判断是否 “” NULL 0
    dangyuluo
        52
    dangyuluo  
       2018-02-11 10:18:56 +08:00
    注册的小号开黑么?
    imdong
        53
    imdong  
       2018-02-11 10:40:06 +08:00
    楼主你好,根据你的描述,我认为这是 PHP 的漏洞。
    建议向 PHP 官方提交。
    RubyJack
        54
    RubyJack  
       2018-02-11 10:45:13 +08:00
    小伙伴=LZ 自己
    zgx030030
        55
    zgx030030  
       2018-02-11 10:51:24 +08:00
    很好奇,绕过 if else 判断是一种什么黑科技
    leavic
        56
    leavic  
       2018-02-11 10:59:23 +08:00
    PHP 日常被黑
    kimmykuang
        57
    kimmykuang  
       2018-02-11 11:08:42 +08:00
    很多时候都不是语言问题,是用语言的人的问题
    fhefh
        58
    fhefh  
       2018-02-11 11:13:05 +08:00
    楼主 代码贴出来~
    qce7
        59
    qce7  
       2018-02-11 11:14:57 +08:00
    这是一条万能的帖子,把 PHP 换成任何语言都能黑。。
    还是人的问题
    pangliang
        60
    pangliang  
       2018-02-11 13:39:50 +08:00
    == 和 ===
    flynaj
        61
    flynaj  
       2018-02-11 16:01:48 +08:00 via Android
    没有实力是这样的
    ScotGu
        62
    ScotGu  
       2018-02-11 16:09:54 +08:00
    我草,从黑提问到人身攻击。

    if (这题我会) {
    不会的人就是 SB。
    }else{
    这题我不会,偷偷学,千万不能被发现不会,要不就是 SB。
    }
    lh900519
        63
    lh900519  
       2018-02-11 16:32:47 +08:00
    哈哈, 还有 4 个收藏
    KgM4gLtF0shViDH3
        64
    KgM4gLtF0shViDH3  
       2018-02-11 16:41:40 +08:00   ❤️ 1
    @wsstest is_numeric and 那个不是漏洞,是你赋值的时候没加括号,and 的优先级比&&低,你用&&不加括号也行的。
    fengche361
        65
    fengche361  
       2018-02-14 15:13:21 +08:00
    请小伙伴站出来说话
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2829 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 12:00 · PVG 20:00 · LAX 04:00 · JFK 07:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.