Overthewire-natas23

Overthewire level 23 to level 24

一个很简单的页面,让我们提交password,先看看它的代码

<?php
    if(array_key_exists("passwd",$_REQUEST)){
        if(strstr($_REQUEST["passwd"],"iloveyou") && ($_REQUEST["passwd"] > 10 )){
            echo "<br>The credentials for the next level are:<br>";
            echo "<pre>Username: natas24 Password: <censored></pre>";
        }
        else{
            echo "<br>Wrong!<br>";
        }
    }
    // morla / 10111
?>

要看到下一关的密码需要满足两个条件

  1. strstr("$passwd", "iloveyou") != 0
  2. "$passwd" > 10

满足第一个条件只需要字符串中有iloveyou即可
满足第二个条件则要字符串>10, 在php中字符串与数字比较是比较对应的ascii码,因此随便构建一个比'10'大的即可

请求一下http://natas23.natas.labs.overthewire.org/?passwd=11iloveyou即可获得密码
第24关密码为OsRmXFguozKpTZZ5X14zNO43379LZveg

posted @ 2021-05-29 23:02  wudiiv11  阅读(75)  评论(0编辑  收藏  举报