XCTF_web get_post

题目:GET_POST

【攻防世界】http://111.198.29.45:59215/


0x01 进入网页

index.php

打开网站,看到提示,于是在搜索栏网址后添加 /?a=1后回车,发现出现新提示,要我们用 POST 方式再提交一个新变量。


0x02 另辟蹊径

不懂,遂百度查wp,发现都是用火狐浏览器(Firefox)中的hackbar插件来实现POST提交,然而我电脑并未下载这个浏览器,嫌麻烦,从网页控制台入手,想通过创建js方法实现POST提交。

函数如下:

var httpRequest = new XMLHttpRequest();  // 第一步:创建需要的对象
httpRequest.open('POST', 'http://111.198.29.45:59215/?a=1', true);  // 第二步:打开链接,这里把a=1带上
httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");  // 设置请求头 注:post方式必须设置请求头(在建立连接后设置请求头)
httpRequest.send('b=2');  // 发送请求 将要发送的数据写在send中
/**
 * 获取数据后的处理程序
 */
httpRequest.onreadystatechange = function () {  // 请求后的回调接口,可将请求成功后要执行的程序写在其中
    if (httpRequest.readyState == 4 && httpRequest.status == 200) {  // 验证请求是否发送成功
        var json = httpRequest.responseText;  // 获取到服务端返回的数据
        console.log(json);
    }
};


0x03 传值取flag

按快捷键 F12 打开控制台,点击顶部导航栏中的 Console,输入事先准备的js函数,回车。

在控制台输入写好的 js 函数
返回结果
flag在返回数据中

flag: cyberpeace{c60a261e554fe2c9c36eb58b4d8521cb}

你可能感兴趣的:(XCTF_web get_post)