每周学习总结链接
-
打开网页链接显示主要内容:
由于对页面进行分析后,发现只有一个地方可以输入,那就测试一下,输入后显示:
然后进行了抓包,发现抓的包是在页面弹出窗口后才出现的,那有没有可能是本地 JS 代码,直接审计页面源代码:function validate(){ var code = document.getElementById("vcode").value; if (code != ""){ if(hex_md5(code) == "0cd4da0223c0b280829dc3ea458d655c"){ # 这里的 hex_md5 是一种加密算法 alert("您通过了验证!"); window.location = "./flag.php" }else{ alert("你的授权码不正确!"); } }else{ alert("请输入授权码"); } } <div class="col-md-6 col-md-offset-3"> <form class="contact-form php-mail-form" role="form"> <div class="form-group"> <input type="name" name="name" class="form-control" id="vcode" placeholder="Your Validation Code"> <div class="validate"></div> </div> <div class="form-send"> <button type="submit" class="btn btn-large" onclick="validate()">验证以获取flag</button> </div> </form> </div>
然后我把 0cd4da0223c0b280829dc3ea458d655c 放到 cmd5 网站解密,发现需要花钱,这就不正常了,说明思路错了
-
接着,会在代码中发现: window.location = “./flag.php” 说明存在这一个页面,直接在浏览器访问:
-
进行抓包可以知道:
没发现任何测试点,接着看原始页面,我们发现这一句:
-
我们在看看发送的数据报中没有关于来源的 HTTP 头部信息:X-Forwarded-For: 127.0.0.1
总结
这一关主要看的就是对于页面所展示信息的敏感,以及对页面源代码的审计