CTFHUB HTTP请求方式

#题目重述

使用 CTF**B 方式请求获得 flag。

#解题思路

##思路一

使用 JavaScript 创建XMLHttpRequest()对象,再用open()send()方法发送"CTFHUB"请求方法。

这种方法会遇到跨域访问限制的问题,目前对于跨域还是知识忙点,尝试了很多次都无法解决。

##思路二

这种方法是从网上查来的,使用 Windows 自带的cmd命令行中的 curl命令。

curl -v -X CTFHUB challenge-49d7e6a31e278c6b.sandbox.ctfhub.com

输入这个命令,按下回车,所有的服务器返回信息就会打印在下方。在返回的 html 源码中找到 ctfhub{……}即可。

#题后反思

##定一个目标

了解跨域及常用跨域方法的使用方法。

##curl 命令

1 介绍

curl 命令在 Linux 操作系统中经常来测试网络和 url 的联通性,模拟正常的网络访问。除此之外,curl 还支持包括 HTTP、HTTPS、ftp 等众多协议,还支持 POST、cookies、认证、从指定偏移处下载部分文件等功能。

2 常用方法

  1. curl url(获取网址的文本信息)
curl www.baidu.com

CTFHUB HTTP请求方式_第1张图片

这里出现乱码应该是编码方式的问题,没有使用utf-8编码方式。

  1. curl -i url(获取文本的头部及文本信息)
curl -i www.baidu.com

CTFHUB HTTP请求方式_第2张图片

可以看到,在获取的信息部分,加入了头部信息。

  1. curl -x proxy url(使用代理请求网页内容)
curl -x 0.0.0.0 www.baidu.com
  1. curl -v(获取整个通信过程)
curl -v www.baidu.com

CTFHUB HTTP请求方式_第3张图片

可以看到,整个请求的过程都被完整展现。

  1. curl -X url(使用特定方法请求网页文本)
curl -X GET www.baidu.com

在本题中就用到了 4,5 两种命令。
要注意这里的-X是大写,而 3 中的 -x是小写。

  1. curl -I url(仅返回头部信息)
curl -I www.baidu.com

CTFHUB HTTP请求方式_第4张图片

可以看到,这里返回的仅有头部信息。

3 乱码解决

在刚刚的实践中,我们发现网站返回的文本是乱码,这是因为CMD命令行运行窗口应该是用操作系统的编码,windows中文环境的编码是GBK。如果网页是其他的编码(比如UTF-8),curl某一个URL时候出现中文乱码,可以通过iconv插件来解决。

下载地址
CTFHUB HTTP请求方式_第5张图片

下载完成后点击下一步即可安装成功。接下来配置环境变量。
CTFHUB HTTP请求方式_第6张图片

配置完环境变量就可以使用了。我们先来看一下使用方法
CTFHUB HTTP请求方式_第7张图片
CTFHUB HTTP请求方式_第8张图片

#总结

开始了CTF的尝试,希望在练习的过程中能学到更多的知识,加油(ง •_•)ง

你可能感兴趣的:(CTF)