网站安全渗透测试 之squid代理漏洞挖掘与修复

简介: 在对网站进行渗透测试的时候,发现很多网站都在使用squid反向代理系统,该系统存在可以执行远程代码的漏洞,很多客户找我们SINE安全做渗透测试服务的同时,我们会先对客户的网站进行信息搜集工作,包括域名,二级域名收集,网站使用的反向代理系统,网站程序开发语言,是否使用开源的代码,以及网站后台路径收集,都在前期渗透中需要做的。

在对网站进行渗透测试的时候,发现很多网站都在使用squid反向代理系统,该系统存在可以执行远程代码的漏洞,很多客户找我们SINE安全做渗透测试服务的同时,我们会先对客户的网站进行信息搜集工作,包括域名,二级域名收集,网站使用的反向代理系统,网站程序开发语言,是否使用开源的代码,以及网站后台路径收集,都在前期渗透中需要做的。
3
前段时间某一个客户网站使用的就是squid反向代理系统,客户APP,以及网站后台都被攻击者篡改,被恶意提现,会员注单篡改,银行卡号篡改,充值通道篡改,给客户带来了很大的经济损失,通过老客户介绍找到我们SINE安全,我们对该情况进行详细的了解,针对实际情况,定制了详细的渗透测试服务方案。关于squid系统漏洞的检测,我们来详细的介绍一下:
4
squid是开源的一套网站反向代理系统,可以对网站进行加速,缓存,有些网站访问较慢,就会在国内的服务器节点做反向代理,加速网站的快速访问,将图片,以及JS文件,css文件进行缓存,还有一个好处通过squid可以隐藏网站的真实IP。squid支持很多种TCP协议,包括80端口的http协议,FTP的21端口协议,HTTPS433端口的协议,都可以进行反向代理,简单易用受到很多开发者的喜欢。

squid漏洞产生的原因在于缓冲区溢出导致可以执行远程代码,当反向代理收到cachemgr的请求时候,会使用parseheaders这个函数接口,将请求来的参数进行解析操作,并赋值于后端去,正常应该对请求的参数进行字数限制,而该请求并没有对字数多少进行限制,导致可以写入代码进行数据溢出,当长度超过squid的安全限制后,就会执行恶意的代码。漏洞的利用方式是,构造恶意的代码,使用FTP协议的方式进行请求 request-uri,将代码加密,提交到服务器中去,就可以达到渗透服务器的权限。代码如下:

2
1

当服务器执行恶意代码后,就会产生一个webshell到网站的根目录下,从而对网站进行控制,该webshell也叫网站木马后门,相当于网站的管理员权限,可以写入文件,修改文件,修改数据库等操作,通过对客户网站的渗透测试发现,导致被篡改的问题根源,是squid系统存在漏洞,随即我们SINE安全对客户的squid漏洞进行了修复,对代码的长度进行了限制,防止溢出,并对所有的请求包括get,post.cookies的请求都进行了字符长度限制。

相关文章
|
5月前
|
安全 NoSQL Shell
web渗透-SSRF漏洞及discuz论坛网站测试
SSRF(服务器端请求伪造)是一种安全漏洞,攻击者可诱使服务端发起任意请求,进而探测或攻击内网系统。常用于端口扫描、访问内部服务、读取本地文件等。常见防御包括限制协议、域名和IP,但可通过302跳转、短地址等方式绕过。
315 1
web渗透-SSRF漏洞及discuz论坛网站测试
|
9月前
|
安全 前端开发 Linux
Immunity CANVAS Professional 7.27 (macOS, Linux, Windows) - 渗透测试和漏洞利用平台
Immunity CANVAS Professional 7.27 (macOS, Linux, Windows) - 渗透测试和漏洞利用平台
263 3
Immunity CANVAS Professional 7.27 (macOS, Linux, Windows) - 渗透测试和漏洞利用平台
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
1167 1
|
安全 程序员 网络安全
Kali渗透测试:对软件的溢出漏洞进行测试
Kali渗透测试:对软件的溢出漏洞进行测试
219 1
|
安全 Java 应用服务中间件
渗透测试-JBoss 5.x/6.x反序列化漏洞
渗透测试-JBoss 5.x/6.x反序列化漏洞
286 14
|
安全 测试技术 Linux
CentOS7 安装vulhub漏洞测试环境
CentOS7 安装vulhub漏洞测试环境
710 0
|
安全 网络协议 Linux
Kali渗透测试:使用Armitage针对漏洞进行攻击
Kali渗透测试:使用Armitage针对漏洞进行攻击
312 0
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
8月前
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1241 23
|
10月前
|
SQL 安全 测试技术
2025接口测试全攻略:高并发、安全防护与六大工具实战指南
本文探讨高并发稳定性验证、安全防护实战及六大工具(Postman、RunnerGo、Apipost、JMeter、SoapUI、Fiddler)选型指南,助力构建未来接口测试体系。接口测试旨在验证数据传输、参数合法性、错误处理能力及性能安全性,其重要性体现在早期发现问题、保障系统稳定和支撑持续集成。常用方法包括功能、性能、安全性及兼容性测试,典型场景涵盖前后端分离开发、第三方服务集成与数据一致性检查。选择合适的工具需综合考虑需求与团队协作等因素。
1623 24