【Web安全】不安全的HTTP方法

简介: 围绕渗透攻防层面来看不安全的HTTP方法漏洞的检测发现修复等手法。

一、常见的HTTP请求方法如下


GET:Get长度限制为1024,特别快,不安全,在URL里可见,URL提交参数以 ?分隔,多个参数用 & 连接,请求指定的页面信息,并返回实体主体。

HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头。

POST:长度一般无限制,由中间件限制,较慢,安全,URL里不可见。请求的参数在数据包的请求body中。

PUT:向指定资源位置上传其最新内容。

DELETE:请求服务器删除指定的页面。

CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

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

TRACE:回显服务器收到的请求,主要用于测试或诊断。


如下图展示:

image.png

二、请求方式安全隐患


PUT:由于PUT方法自身不带验证机制,利用PUT方法可以向服务器上传文件,所以恶意攻击者可以上传木马等恶意文件。

DELETE:利用DELETE方法可以删除服务器上特定的资源文件,造成恶意攻击。

OPTIONS:将会造成服务器信息暴漏,如中间件版本、支持的HTTP方法等。

TRACE:可以回显服务器上收到的请求,主要用于测试或诊断,一般都会存在反射型跨站漏洞(XSS漏洞)


三、渗透攻击检测


使用OPTIONS方法列出服务器使用的HTTP方法。注意,不同目录中激活的方法可能各有不同。

有时被告知一些方法有效,但实际上它们并不能使用,有时即使OPTIONS请求返回的响应中没有列出某个方法,但该方法仍然可用。


  • 手动测试每一个方法是否可用,使用CURL发送OPTIONS请求,查看响应头部分

curl -I -X OPTIONS https://X.X.X.X

image.png


  • 使用burp工具进行查看

image.png

image.png

nc.exe –nvv IP 端口 (其中IP和端口按实际状况填写,用空格隔开)

回车

在新行中输入以下一行,并回车

OPTIONS / HTTP/1.1

image.png

存在响应体中Allow字段或其他显示请求方法的字段中存在以上请求方式,均会对目标应用系统造成影响!


攻击手段这里不做过多介绍,大家自行百度!!!


四、修复方案


禁用OPTIONS不安全的HTTP请求方法!


以下针对不安全的HTTP方法中的TRACE相关的修复建议:


中间件为Apache服务器

image.png

更多详细介绍:

LoadModule rewrite_module modules/mod_rewrite.so #首先激活rewrite模块

RewriteEngine On #启用Rewrite引擎

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

RewriteRule .* - [F] #定义规则:对于所有格式的来源请求,均返回[F]-Forbidden响应。

image.png

或参考如下方法:

image.png


中间件为Microsoft IIS

image.png


中间件为Sun ONE Web Server releases 6.0

 若是你使用的是Sun ONE Web Server releases 6.0 SP2 或者更高的版本, 在obj.conf文件的默认object section里添加下面的语句:

 <Client method="TRACE">

 AuthTrans fn="set-variable"

 remove-headers="transfer-encoding"

 set-headers="content-length: -1"

 error="501"

 </Client>


中间件为Sun ONE Web Server releases 6.0 SP2


若是你使用的是Sun ONE Web Server releases 6.0 SP2 或者更低的版本, 编译以下地址的NSAPI插件:

http://sunsolve.sun.com/pub-cgi/retrieve.pl?doc=fsalert%2F50603

目录
相关文章
|
2月前
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
129 7
|
13天前
|
域名解析 缓存 网络协议
Web基础与HTTP协议
通过掌握这些基础知识和技术,开发者可以更加高效地构建和优化Web应用,提供更好的用户体验和系统性能。
64 15
|
8天前
|
缓存 安全 搜索推荐
阿里云先知安全沙龙(北京站) ——浅谈Web快速打点
信息收集是网络安全中的重要环节,常用工具如Hunter、Fofa和扫描工具可帮助全面了解目标系统的网络结构与潜在漏洞。遇到默认Nginx或Tomcat 404页面时,可通过扫路径、域名模糊测试、搜索引擎缓存等手段获取更多信息。AllIN工具(GitHub: P1-Team/AllIN)能高效扫描网站路径,发现敏感信息。漏洞利用则需充分准备,以应对突发情况,确保快速拿下目标站点。 简介:信息收集与漏洞利用是网络安全的两大关键步骤。通过多种工具和技术手段,安全人员可以全面了解目标系统,发现潜在漏洞,并制定有效的防御和攻击策略。
|
17天前
|
安全 应用服务中间件 网络安全
实战经验分享:利用免费SSL证书构建安全可靠的Web应用
本文分享了利用免费SSL证书构建安全Web应用的实战经验,涵盖选择合适的证书颁发机构、申请与获取证书、配置Web服务器、优化安全性及实际案例。帮助开发者提升应用安全性,增强用户信任。
|
22天前
|
负载均衡 监控 安全
HTTP代理IP的安全与稳定技术与策略的结合
随着科技与互联网的发展,企业对代理的需求日益增长。为加强HTTP代理IP的安全性和稳定性,可采取用户教育、使用加密协议、定期更换IP、监控可用性、设置访问控制、负载均衡、配置防火墙及定期更新维护等措施。这些方法能有效提升代理服务的安全性和可靠性。
22 7
|
2月前
|
开发者
HTTP 协议请求方法的发展历程
【10月更文挑战第21天】
|
2月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
73 11
|
2月前
|
缓存 安全 网络安全
HTTP/2与HTTPS在Web加速中的应用
HTTP/2与HTTPS在Web加速中的应用
|
2月前
|
安全
HTTP 协议的请求方法
【10月更文挑战第21天】
|
2月前
|
缓存 安全 前端开发
HTTP 协议的请求方法在实际应用中有哪些注意事项?
【10月更文挑战第29天】HTTP协议的请求方法在实际应用中需要根据具体的业务场景和需求,合理选择和使用,并注意各种方法的特点和限制,以确保网络通信的安全、高效和数据的一致性。