CTFHUB-Web-Web前置技能-HTTP协议
Posted Web_Fresher
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CTFHUB-Web-Web前置技能-HTTP协议相关的知识,希望对你有一定的参考价值。
地址:https://www.ctfhub.com/#/skilltree
请求方式
预备知识
1.http请求样式以及服务器响应包的样式
具体可以在菜鸟教程中了解一下https://www.runoob.com/http/http-messages.html
2.curl命令的使用
这里简单列举几个:
①curl -i http://ip 查看http响应头
②curl -v http://ip 查看交互过程
③curl -X GET http://ip或者curl -X http://ip GET请求(发起http请求时默认是GET型)
④curl -X POST http://ip -d "参数" POST请求
注:这里的请求方式可以是常规的请求方式如GET、POST,也可以是自己定义的,前提是被服务端允许,区分大小写!
这里给出两个学习地址,根据需要自行了解
Windows中的curl命令:https://blog.csdn.net/wangjunji34478/article/details/35988223
Linux中的curl命令:https://www.cnblogs.com/duhuo/p/5695256.html
题解payload:curl -v -X CTFHUB http://challenge-74da4bfe747dae2a.sandbox.ctfhub.com:10080/index.php
302跳转
预备知识
意思就是该URI中的资源被临时移动,但URI不变
题解:直接抓包在重发器里发送就可以看到URI里面的内容了
cookie
预备知识
cookie:由后端服务器端创建保存在客服端一种数据库结构。浏览器请求和后端服务端响应都会携带创建的cookie来回传输。cookie在传输时存储在请求头和响应头中。
import base64
dic_file_path = r"C:\\Users\\asus\\Desktop\\Else\\10_million_password_list_top_100.txt"# 字典文件路径
with open(dic_file_path, \'r\') as f:
password_dic = f.readlines()
username = \'admin:\' # 用户名,默认admin
for password in password_dic:
str1=str.encode(username + password.strip())
encodestr = base64.b64encode(str1)
encodestr=str(encodestr)
encodestr=encodestr.strip(\'b\\\'\')
#encodestr=encodestr.replace("=","\\=") #避免“=”被转译 #这一句我觉得不需要就注释掉了
print(encodestr)
这个地方要取消勾选!!!
二:爆破点选择46后面的
然后载入题目给的密码,并且勾选base64加密
转载请注明出处✔
以上是关于CTFHUB-Web-Web前置技能-HTTP协议的主要内容,如果未能解决你的问题,请参考以下文章
CTFHub-Web-Web前置技能-HTTP协议-基础认证详解
ctfhub技能树—web前置技能—http协议—响应包源代码