Natas8:

Natas8 Writeup(常见编码、php函数)

同样给了php源码,审计源码,发现给了一个预设参数encodedSecret,以及一个加密函数encodeSecret, 该函数将secret参数先进行base64编码、然后用strrev 函数进行倒序,再用 bin2hex 函数转为16进制,返回结果。如果点击提交,且post传入的secret 参数值经加密后,等于 encodedSecret 参数的值,则输出flag。至此,只需要将 encodedSecret的值逆推,然后post即可。

$encodedSecret = "3d3d516343746d4d6d6c315669563362";

function encodeSecret($secret) {
    return bin2hex(strrev(base64_encode($secret)));
}

if(array_key_exists("submit", $_POST)) {
    if(encodeSecret($_POST['secret']) == $encodedSecret) {
    print "Access granted. The password for natas9 is <censored>";
    } else {
    print "Wrong secret";
    }
}

先把’3d3d516343746d4d6d6c315669563362’从16进制转成字符,然后把该字符串倒序,最后将之base64解码,得到’oubWYf2kBqz',将该字符串post得到flag。

<?php
$encodedSecret = "3d3d516343746d4d6d6c315669563362";
$secret = base64_decode(strrev(hex2bin($encodedSecret)));
echo $secret;
?>

Natas8 Writeup(常见编码、php函数)

Natas8 Writeup(常见编码、php函数)

flag:W0mMhUcRRnG8dcghE4qvk3JA9lGt8nDl

相关文章:

  • 2022-12-23
  • 2021-09-25
  • 2021-12-18
  • 2021-10-09
  • 2021-06-17
  • 2021-09-02
  • 2022-02-07
猜你喜欢
  • 2022-01-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-28
  • 2021-08-29
  • 2022-03-11
相关资源
相似解决方案