ctfhub技能树_web_web前置技能_HTTP

目录

一、HTTP协议

1.1、请求方式

1.2、302跳转

1.3、Cookie

1.4、基础认证

1.5、响应包源代码


一、HTTP协议

1.1、请求方式

注:HTTP协议中定义了八种请求方法。这八种都有:1、OPTIONS

:返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性。2、HEAD:

向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。3、GET:向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在Web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问。Loadrunner中对应get请求函数:web_link和web_url。4、POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form。5、PUT:向指定资源位置上传其最新内容。6、DELETE:请求服务器删除Request-URL所标识的资源。7、TRACE:回显服务器收到的请求,主要用于测试或诊断。8、CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。curl -v -X CTFHUB http://challenge-898db4987bee622b.sandbox.ctfhub.com:10800/index.php

(1)打开http://challenge-898db4987bee622b.sandbox.ctfhub.com:10800

(2)打开BurpSuite,点击Proxy出现以下情况,点击OK

(3)点击Setting,再点击Burp’s browser,再勾选Allow Burp’s browser to run without a sendbox

(4)点击Intercept is off,然后点击Open browser

(5)打开浏览器中输入网址,点击Enter

(6)复制内容

(7)点击Repeater,修改target(其中Host为网址的ip地址,Port为网址的端口号),并将内容粘贴进Request的Raw去

(8)修改GET为CTFHUB,修改/为/index.php,点击Send,得到flag为ctfhub{37c0f64d78fcd79fd4f2a7d9}

1.2、302跳转

注:重定向:HTTP重定向:服务器无法处理浏览器发送过来的请求(request),服务器告诉浏览器跳转到可以处理请求的url上。(浏览器会自动访问该URL地址,以至于用户无法分辨是否重定向了。)

重定向的返回码3XX说明。Location响应首部包含了内容的新地址或是优选地址的URL。状态码:301:在请求的URL已被移除时使用。响应的Location首部中应该包含资源现在所处的URL。

302:与301状态码类似,但是,客户端应该使用Location首部给出的URL来零食定位资源,将来的请求仍然使用老的URL。curl -i http://challenge-6ae22a10bb44b806.sandbox.ctfhub.com:10800/index.php

(1)打开http://challenge-6ae22a10bb44b806.sandbox.ctfhub.com:10800

(2)打开BurpSuite,点击Proxy出现以下情况,点击OK

(3)点击Setting,再点击Burp’s browser,再勾选Allow Burp’s browser to run without a sendbox

(4)点击Intercept is off,然后点击Open browser

(5)打开浏览器中输入网址,点击Enter

(6)复制内容

(7)点击Repeater,修改target(其中Host为网址的ip地址,Port为网址的端口号),并将内容粘贴进Request的Raw去

(8)点击send

(9)修改/为/index.php,点击Send,得到flag为ctfhub{e85b6c0fc318bca91d85a957}

1.3、Cookie

(1)打开http://challenge-9c3b7fcdb23a3363.sandbox.ctfhub.com:10800

(2)打开BurpSuite,点击Proxy出现以下情况,点击OK

(3)点击Setting,再点击Burp’s browser,再勾选Allow Burp’s browser to run without a sendbox

(4)点击Intercept is off,然后点击Open browser

(5)打开浏览器中输入网址,点击Enter

(6)复制内容

(7)点击Repeater,修改target(其中Host为网址的ip地址,Port为网址的端口号),并将内容粘贴进Request的Raw去

(8)粘贴内容,添加Cookie:admin=0,点击Send

(9)修改admin=0为admin=1,点击Send,得到flag为ctfhub{911d5c0297059b85d2d82811}

1.4、基础认证

注:在HTTP中,基本认证(英语:Basic access authentication)是允许http用户代理(如:网页浏览器)在请求时,提供用户和密码的一种方式。详情请查看 https://zh.wikipedia.org/wiki/HTTP基本认证。

(1)打开http://challenge-7fc108acd0d05b5e.sandbox.ctfhub.com:10800,点击click发现要输入用户密码验证,并下载题目附件

(2)打开BurpSuite,点击Proxy出现以下情况,点击OK

(3)点击Settings,再点击Burp’s browser,再勾选Allow Burp’s browser to run without a sendbox

(4)点击Intercept is off,然后点击Open browser

(5)打开浏览器中输入网址,点击Enter

(6)点击Forward

(7)点击click

(8)点击Forward

(9)随意输入Username和Password点击Sign in

(10)复制以下内容,可以看到密码通过Basic加密

(11)右击后点击Send to Repeater,点击Repeater,输入以下内容点击Send可以看到回包中Username为admin

(12)右击后点击Send to Intruder,修改Target为http://challenge-7fc108acd0d05b5e.sandbox.ctfhub.com:10800,在密码前后加$

(13)cd Downloads进入Downloads,unzip 271_b790fbaa9f8480532fff81553e908114d783bc30.zip解压题目附件

(14)点击Load...,找到文件点击Open

(15)点击Add,选择Add prefix,添加admin:,点击OK

(16)点击Add,选择Encod,选择Base64-encode,点击OK

(17)点击Start attack

(18)看到成功的加密后的用户名密码为YWRtaW46YWNjZXNz

(19)点击Response,得到flag为ctfhub{cdc7a886854885eba099ac91}

1.5、响应包源代码

(1)打开http://challenge-e9850eb7cbc3c296.sandbox.ctfhub.com:10800,点击F12,得到flag为ctfhub{a46f9a8c37a27cefe281f95b}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/192271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过查看ThreadLocal的源码进行简单理解

目录 为什么要使用ThreadLocal? 简单案例 ThreadLocal源码分析 断点跟踪 为什么要使用ThreadLocal 在多线程下,如果同时修改公共变量可能会存在线程安全问题,JDK虽然提供了同步锁与Lock等方法给公共访问资源加锁,但在高并发…

力扣 --- H指数

题目描述: 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。 根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他&#xff…

【HDFS】调试慢节点pipiline ack信息

Client - DN1 - DN2 - DN3 DN3 send ack:[0][d3]。 DN2 send ack: [从dn2入队到收到dn3的ack耗时,0] [d2,d3]。 DN1 send ack: [pkt从dn1入队到收到dn2的ack耗时,pkt从dn2入队到收到dn3的ack耗时,0] [d1,d2,d3]。 Client receive: 就是DN1发送过来数据。 客户端收到的第一个…

【论文笔记】Universal Guidance for Diffusion Models

Abstract 典型的扩散模型经过训练以接受特定形式的条件作用(最常见的是文本),并且如果不经过重新训练就不能接受其他形式的条件的作用。 这项工作中提出了一种通用制导算法(universal guidance algorithm),使扩散模型能够通过任意…

python弹球小游戏

import pygame import random# 游戏窗口大小 WIDTH 800 HEIGHT 600# 定义颜色 WHITE (255, 255, 255) BLACK (0, 0, 0) RED (255, 0, 0) GREEN (0, 255, 0) BLUE (0, 0, 255)# 球的类 class Ball:def __init__(self):self.radius 10self.speed [random.randint(2, 4),…

ElasticSearch之Delete index API

删除指定的索引。 同时删除索引关联的数据、分片、元数据等相关的资源,因此执行前需要慎重。 命令样例如下: curl -X DELETE "https://localhost:9200/testindex_003?pretty" --cacert $ES_HOME/config/certs/http_ca.crt -u "elasti…

4-Docker命令之docker pause

1.docker pause介绍 docker pause命令是用来暂停docker容器中的所有进程 2.docker pause用法 docker pause [参数] container [container......] [root@centos79 ~]# docker pause --helpUsage: docker pause CONTAINER [CONTAINER...]Pause all processes within one or …

DELL EMC unity 存储系统日志收集方法

对于一些非简单的硬件故障,解决故障最有效、最快速的方法就是收集日志,而不是瞎搞。常见的乱搞方法就是 1. reimage系统‘ 2. 更换控制器;3, 重启。 本文详细介绍了图形界面GUI和命令行CLI下如何收集DELL EMC Unity日志的方法和常…

Spring Cloud笔记 —— 什么是Spring Cloud?

引言: 在写这篇博客之前,其实吧,博主很久之前有过一段时间的Spring Cloud的案例项目开发经验,就是一个案例项目开发而已,也说不上有多高大上,那个时候,我其实也是从众而已罢了,毕竟现…

微信小程序:input双向绑定

微信小程序&#xff1a;input双向绑定 微信小程序&#xff1a;input双向绑定1 数据容器准备2 输入组件准备3 逻辑代码准备4 总结实战示例1.wxml文件导入2.js文件导入 微信小程序&#xff1a;input双向绑定 <说明> PS&#xff1a;该笔记采用渐进式编程&#xff0c;使每一步…

LLM;超越记忆《第 2 部分 》

一、说明 在这篇博客中&#xff0c;我深入研究了将大型语言模型&#xff08;LLM&#xff09;提升到基本记忆之上的数学框架。我们探索了动态上下文学习、连续空间插值及其生成能力&#xff0c;揭示了 LLM 如何理解、适应和创新超越传统机器学习模型。 LLM代表了人工智能的重大飞…

DDD系列 - 第4讲 从架构师的角度看待DDD - 一个关于拆解、微服务、面向对象的故事(二)

目录 第3次拆解 - 面向对象分析与设计3.1 交互入口实现层3.2 面向对象分析3.2.1 根据业务映射类3.2.2 对象持久化仓库3.2.3 自定义属性类3.2.4 类间的关联关系3.2.5 分包提升内聚、包内指定入口类降低耦合3.2.6 定义交互出口3.3 流程编排 & 业务编排3.4 交互出口实现层 &am…

基于相关性的四种机器学习聚类方法

在这篇文章中&#xff0c;基于20家公司的股票价格时间序列数据。根据股票价格之间的相关性&#xff0c;看一下对这些公司进行分类的四种不同方式。 苹果&#xff08;AAPL&#xff09;&#xff0c;亚马逊&#xff08;AMZN&#xff09;&#xff0c;Facebook&#xff08;META&…

TCP简介及特性

1. TCP协议简介 TCP是Transmission Control Protocol的简称&#xff0c;中文名是传输控制协议。它是一种面向连接的、可靠的、基于IP的传输层协议。两个TCP应用之间在传输数据的之前必须建立一个TCP连接&#xff0c;TCP采用数据流的形式在网络中传输数据。TCP为了保证报文传输的…

目标检测YOLO系列从入门到精通技术详解100篇-【图像处理】图像预处理方法

目录 前言 知识储备 Opencv图像操作 几个高频面试题目 为什么需要图像算法? 算法原理

基于eBPF检测非法调试行为

本文基于eBPF编写一个内核模块来监测ARM调试寄存器&#xff0c;来检测可能的非法调试行为&#xff0c;大致步骤如下&#xff1a; 1. 安装必要的软件和工具&#xff1a;确保系统已经安装了支持eBPF开发的必要软件和工具&#xff0c;如LLVM、Clang和libbpf等。同时&#xff0c;还…

Effective CPP(三):类的构造/析构/赋值运算

文章目录 一、C类中编译器默认创建的函数二、为多态基类声明一个虚析构函数三、在析构函数中 "捕获" 异常四、不在构造函数和析构函数的过程中调用虚函数五. 重载赋值类运算符号的时候返回 this 指针六. 在 operator 中处理“自我赋值”七. 拷贝复制对象的时候应该考…

菜鸟内推java岗一面

菜鸟内推&#xff0c;java岗&#xff0c;电话一面 总时长 40min&#xff0c;过程如下&#xff1a; 1、自我介绍&#xff0c;学习、项目啥的&#xff0c;简单提一提。 2、接触到的微服务架构啥的&#xff0c;怎么解决问题等等。 3、 数据 库索引&#xff0c;对索引的理解&#x…

idea汉化

所有的jetbrains 汉化包下载地址&#xff0c; 包括leda &#xff0c;pycharm /&#xff0c;datagrip 等软件&#xff0c;&#xff0c;所有方法都一样&#xff1a;搜索对应的版本需要的包 下载后&#xff0c;在idea的插件中选择从磁盘加载&#xff0c;然后重启 &#xff0c;即可…

循环队列的结构设计和基本操作的实现(初始化,入队,出队,判空,获取长度,清空,销毁)

目录 1.队列的定义 2.循环队列的设计图示 3.循环队列的结构设计 4.循环队列的实现 5.循环队列的总结 1.队列的定义 和栈相反,队列(queue)是一种先进先出(first in first out,缩写为FIFO)的线性表.它只允许在表的一端进行插入,而在另一端删除元素. 在队列中,允许插入的一…