IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 解决远端www服务支持TRACE请求的几种方式 -> 正文阅读

[系统运维]解决远端www服务支持TRACE请求的几种方式

目录

1.为什么要禁止

漏洞描述:

漏洞危害:

2.怎么判断当前虚机是否存在trace漏洞

3.解决方式

3.1虚机层解决

3.2代码层修改


1.为什么要禁止

漏洞描述:

目标WEB服务器启用了TRACE方法。TRACE方法是HTTP(超文本传输)协议定义的一种协议调试方法,该方法使得服务器原样返回任何客户端请求的内容(可能会附加路由中间的代理服务器的信息),由于该方法原样返回客户端提交的任意数据,因此,可用来进行跨站脚本(XSS)攻击,这种攻击方式又称为跨站跟踪攻击(XST)

漏洞危害:

恶意攻击者可以通过TRACE Method返回的信息了解到网站前端的一些信息,如缓存服务器等,从而为下一步的攻击提供便利。
恶意攻击者可以通过TRACE Method进行XSS攻击
即使网站对关键页面启用了HttpOnly头标记和禁止脚本读取cookie信息,那么通过TRACE Method恶意攻击者还是可以绕过这个限制读取到cookie信息。


2.怎么判断当前虚机是否存在trace漏洞

服务器输入:

curl -v -x TRACE http://ip:端口号

存在trace漏洞,解决完成之后,无200响应即可

3.解决方式

3.1虚机层解决

IIS服务器:

???

?????URLScan

Apache服务器:找到相关apach配置目录

1、停止Apache服务(以root权限登录)

? ? ? ? ? ? ? ? # ? ?cd ?/opt/IBM/HTTPServer/bin

? ? ? ? ? ? ? ? # ? ?./apachectl stop

2、修改httpd.conf文件

? ? ? ? ? ? ? ?# ? cd ?/opt/IBM/HTTPServer/conf

? ? ? ? ? ? ??编辑httpd.conf文件
?
? ? ? ? ? ? ? # 首先,激活rewrite模块(去掉符号#)
? ? ? ? ? ? ? LoadModule rewrite_module modules/mod_rewrite.so

? ? ? ? ? ? ?# 启用Rewrite引擎
? ? ? ? ? ? ?RewriteEngine On
? ? ? ? ? ??

? ? ? ? ? ? ?# 对Request中的Method字段进行匹配:^TRACE 即以TRACE字符串开头
? ? ? ? ? ? ?RewriteCond %{REQUEST_METHOD} ^TRACE
? ? ? ? ? ? ?

? ? ? ? ? ? ?# 定义规则:对于所有格式的来源请求,均返回[F]-Forbidden响应
? ? ? ? ? ? ?RewriteRule .* - [F]
?
? ? ? ? ? ? 对于2.0.55以上版本的apache服务器,有一种更简单的办法:
? ? ? ? ? ? TraceEnable off



3、启动Apache服务(以root权限登录)

? ? ? ? ? ? ? ? # ? ?cd ?/opt/IBM/HTTPServer/bin

? ? ? ? ? ? ? ? # ? ?./apachectl start

3.2代码层修改

boot项目,内嵌undertow容器解决方案:

pom依赖:

<dependency>
    <groupId>org.springframwork.boot</groupId>
    <artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

前提是,这个类,可以被扫描到,componentScan扫描到

注:定制器怎么调用、加载的,可参考:源码解析

@Configuration
public class UndertowWebServerCustomizerConfig implements WebServerFactoryCustomizer<UndertowServletWebServerFactory>{

    @Override
    public void customize(UndertowServletWebServerFactory factory){
        factory.addDeploymentInfoCustomizers(deploymentInfo ->{
            deploymentInfo.addInitualHandlerChainWrapper(new HandlerWrapper(){
                
                @Override
                public HttpHandler wrap(HttpHandler handler){
                    HttpString[] disallowerHttpMethods = {HttpString.tryFromString("TRACE"),HttpString.tryFromString("TRACK")
                    };

                    return new DisallowedMethodsHandler(handler,disallowerHttpMethods );
                }  
            });
        });

    }

}

其余容器的解决方案如下:

可参考:https://www.cnblogs.com/zcg-cpdd/p/14485370.html

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-06-08 19:16:18  更:2022-06-08 19:20:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:23:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码