CTFHUB-技能树-Web前置技能-基础认证、响应包源代码

本文介绍了基础认证在HTTP中的工作原理,包括如何在桌面应用中使用Base64编码传输用户名密码。还详细讲述了如何通过响应包源代码查看和利用这些信息进行暴力破解,以及开发者工具在获取源代码中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

技能树-Web前置技能-基础认证、响应包源代码

基础认证

在HTTP中,基本认证(英语:Basic access authentication)是允许http用户代理(如:网页浏览器)在请求时,提供 用户名 和 密码 的一种方式。

桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64编码的字符串放在http request 中的header Authorization中发送给服务端, 例如:当浏览器访问使用基本认证的网站的时候, 浏览器会提示你输入用户名和密码,这就是基础认证

基础认证学习参考:

HTTP协议:什么是HTTP基本认证

秒懂HTTP基本认证(Basic Authentication)

开启题目,给的附件打开是一串密码

在这里插入图片描述

猜测此题为暴力破解,抓包

在这里插入图片描述

Authentication存在 basic编码。字符串格式xxxxxxxxx==大概率为Base64编码,本网页提交会将用户名密码经过base64加密后提交,且格式为:admin:password(将basic编码解码后发现的)

在这里插入图片描述

放入重放器中,可以发现

Basic realm="Do u know admin ?"

猜测登录名为admin

在这里插入图片描述

包放入测试器中,进行暴力破解

在这里插入图片描述

再payload option中导入字典(点击载入),载入附件给的密码字典

在这里插入图片描述

payload processing中增加爆破规则:

添加前缀,admin:

在这里插入图片描述

添加Base64编码

在这里插入图片描述

取消URL编码

在这里插入图片描述

开始爆破即可,查看状态或长度与其他不同的,得到flag

在这里插入图片描述

响应包源代码

响应包源码查看可以通过请求后浏览器端返回的服务器响应包源码进行查看,方法打开开发者工具(F12)>源代码>查看源码

启动题目后,开一把贪吃蛇游戏后,查看源代码即可,F12,在查看器中,也可以得到

在这里插入图片描述

### HTTP基本认证的实现方式 HTTP基本认证是一种简单的身份验证机制,客户端通过请求头中的`Authorization`字段传递用户名和密码给服务器。这种认证方式通常用于保护资源免受未授权访问。 #### 认证流程 当客户端尝试访问受保护的资源时,如果未提供有效的凭证,服务器会返回状态码 `401 Unauthorized` 并附带一个 `WWW-Authenticate` 头部,指示需要进行基本认证[^1]。 随后,客户端会在后续请求中,在头部加入如下形式的内容: ```http GET /protected/page.html HTTP/1.1 Host: example.com Authorization: Basic dXNlcjE6cGFzczE= ``` 其中,`Basic dXNlcjE6cGFzczE=` 是经过 Base64 编码后的字符串,表示用户名和密码组合(例如:`username:password` 被编码为 `dXNlcjE6cGFzczE=`)。 #### 在CTFHub上的应用实例 在 CTFHub 的靶场环境中,SSRF漏洞练习场景可能会涉及 HTTP 基本认证的应用。例如,攻击者可以通过伪造带有有效认证信息的请求来访问目标系统的内部服务或接口[^2]。 假设存在一个内网服务 `/internal/api/data` 受到 HTTP 基本认证保护,则可以构造如下请求模拟合法用户的访问行为: ```http GET http://localhost/internal/api/data HTTP/1.1 Host: localhost Authorization: Basic YWRtaW46MTIzNDU2 ``` 这里的 `YWRtaW46MTIzNDU6` 对应的是用户名 `admin` 和密码 `123456` 的 Base64 编码结果。 #### 利用 Gopher 协议发送 POST 请求 某些情况下,为了进一步测试 SSRF 或其他类型的漏洞,可能需要用到更复杂的协议支持。比如,Gopher 协议会允许构建自定义数据包并提交至指定端口。以下是基于 Gopher 协议的一个简单例子,展示如何向远程主机发送 POST 数据[^3]: ```plaintext gopher://target_host:port/_POST /path/to/resource HTTP/1.1%0D%0AHost:%20example.com%0D%0AAuthorization:%20Basic%20YWRtaW46MTIzNDU2%0D%0AContent-Type:%20application/x-www-form-urlencoded%0D%0AContent-Length:%2013%0D%0A%0D%0Aparam=value ``` 此 URL 将执行一次标准的 HTTP POST 请求操作,并附加必要的认证令牌以及表单参数。 --- ### 相关工具与技术扩展 对于实际渗透测试过程中遇到的安全设备检测问题,可考虑使用专门设计用来分析 Web 应用防火墙 (WAF) 类型及其配置特性的开源项目——WAFW00f 工具来进行辅助判断[^4]。另外,针对跨域资源共享限制条件下发起反向代理连接的需求,也可以参考 rebinder 技术方案完成动态 DNS 解析绑定处理[^5]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

python炒粉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值