陕西省网络空间安全技术大赛WriteUp


陕西省网络空间安全技术大赛WriteUp

1.签到(10分)

base64解密

2.签到(50分)

mark

看一下源码~


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <title>登录</title>
    <meta name="description" content="slick Login">
    <meta name="author" content="Webdesigntuts+">
</head>

<body>
    <form>
    <div align="center">
    <p>Username: <input type="text" name="Username" id="Username" size="25" required/></p>
    <p>Password: <input type="password" name="password" id="password" size="25" required/></p>
    <p><input type="submit" class="small button" name="submit" id="submit" value="Submit"/><br/></p>
    </form>

     <!--  if (isset($_GET['Username']) && isset($_GET['password'])) {
           $logined = true;
        $Username = $_GET['Username'];
        $password = $_GET['password'];

        if (!ctype_alpha($Username)) {$logined = false;}
        if (!is_numeric($password) ) {$logined = false;}
        if (md5($Username) != md5($password)) {$logined = false;}

        if ($logined){
            echo "successful";
        } else {
            echo "login failed!";
        }
    }
-->
</body>

</html>

可以看出来这里的要求是:

(1)username是字母

(2)password是数字

(3)2者的md5的==判断为true

这里的关键在于松散比较,如果0e 开头的,又是用的 == ,可以只判断前两位,之后的只要都是数字就可以。

纯数字md5:240610708

纯字母md5:QNKCDZO

可以写脚本跑,最好平时跑好收集起来。

<?php
for ($flag = 240000000; $flag <= 249999999; $flag++) {
        if (md5($flag) == md5('QNKCDZO')){
            echo $flag."/";
        }
}

?>

submit,然后。。。。

mark

源码源码~


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <title>qiang</title>
</head>

<body>
    <form>
    <div align="center">
    <h2>哈哈,以为这样就完了吗?!并没有,接着奋斗吧,少年!</h2>
    </form>

     <!--  if (isset($_POST['message'])) {
    $message = json_decode($_POST['message']);
    $key ="*********";
    if ($message->key == $key) {
        echo "flag";
    } 
    else {
        echo "fail";
    }
 }
 else{
     echo "~~~~";
 }
-->
</body>

</html>
​~~~~

百度了解一些json_decode,构造post。

mark

原理呢如下

mark

得到flag:flag{sffs_gsg_suhs}


文章作者: LANVNAL
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 LANVNAL !
 上一篇
PHP反序列化 PHP反序列化
PHP反序列化​ php类可能会包含一些特殊的函数叫magic函数,magic函数命名是以符号_开头的,比如__construct, __destruct, __toString, __sleep, __wakeup等等。这些函数在某
2017-04-16
下一篇 
解决zip伪加密的另一方法-爆破 解决zip伪加密的另一方法-爆破
hbctf的一个题–>http://hbctf-1252906577.costj.myqcloud.com/misc/flag6.zip 先来writeup: 解压软件打开,可以看到CRC32值。 因为题目提示了是6位数字,匹配CR
2017-04-15
  目录