Struct2漏洞复现汇总
什么是struts
Struts2就是一个框架,它是属于web层的一个框架,是Struts1的一个升级版,但是它和Struts1来相比,提供了太多的增强和改进,怎么运行的呢,就是实现了Servlet的功能,来进行控制页面跳转。 同时这也是基于MVC设计模式的Web应用框架,Struts2的控制功能就相当于MVC中的Controller的功能,用来控制页面的转向。
S2-001远程代码执行漏洞漏洞发现通过网页后缀来发现是否为xxx.do或xxx.action,有的需要抓包看提交的请求链接是否存在以上两种情况,有的是在返回的链接上。
漏洞成因当用户提交表单数据且验证失败时,服务器使用OGNL表达式%{value}解析用户先前提交的参数值,并重新填充相应的表单数据。例如,在注册或登录页面中,如果提交失败,则服务器通常默认情况下将返回先前提交的数据。由于服务器用%{value}对提交的数据执行OGNL表达式解析,因此服务器可以直接发送有效载荷来执行命令。
环境搭建使用vulhub/Struct2/S2-001
docker-compose build
docker-compose up -d
...
Weblogic漏洞复现(1)
Weblogic XMLDecoder 反序列化漏洞(CVE-2017-10271)漏洞原理Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。
漏洞触发url:/wls-wsat/CoordinatorPortType(POST)
SOAP:SOAP是web服务安全性内置协议,采用保密和身份验证规则集的方式,支持OASIS个W3C制定的标准,结合使用xml加密、xml签名和SAML令牌等方式来验证身份和授权。SOAP更安全,适合处理敏感数据。
影响版本
Weblogic 10.3.6.0 | 12.1.3.0 | 12.2.1.2 | 12.2.1.3
环境搭建使用vulhub/weblogic/CVE-2017-10271
docker-compose build
docker-compose up -d
启动镜像后,访问http:/xxxx:7001/即可看到一个404页面,说明weblogic已成功启动。
漏洞复现利用上面介绍的漏洞url ...
tomcat
TomcatTomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选
CVE-2017-12615:远程代码执行漏洞漏洞描述影响范围:Apache Tomcat 7.0.0 - 7.0.79 (windows环境)
当 Tomcat 运行在 Windows 操作系统时,且启用了 HTTP PUT 请求方法(例如,将 readonly 初始化参数由默认值设置为 false),攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的 JSP 文件,JSP文件中的恶意代码将能被服务器执行。导致服务器上的数据泄露或获取服务器权限。
1234567891011121314151617<servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</serv ...
nginx漏洞复现
CVE-2013-4547-nginx文件名逻辑漏洞漏洞原理这个漏洞其实和代码执行没有太大关系,其主要原因是错误地解析了请求的URI,错误地获取到用户请求的文件名,导致出现权限绕过、代码执行的连带影响。
我们请求1.gif[0x20][0x00].php,这个URI可以匹配上正则\.php$,可以进入这个Location块;但进入后,Nginx却错误地认为请求的文件是1.gif[0x20],就设置其为SCRIPT_FILENAME的值发送给fastcgi。fastcgi根据SCRIPT_FILENAME的值进行解析,最后造成了解析漏洞。
环境搭建启动漏洞环境:
1docker-compose up -d
环境启动后,访问http://your-ip:8080/即可看到一个上传页面。
漏洞复现过程这个环境是黑名单验证,我们无法上传php后缀的文件,先创建一个test.png
12GIF98A<?php phpinfo(); ?>
上传抓包修改,后缀加上一个空格
上传成功,成功显示文件路径
%00截断解析php文件,访问路径
http://your-ip:8080/upl ...
Laravel Debug mode RCE(CVE-2021-3129)
Laravel Debug mode RCE(CVE-2021-3129)漏洞漏洞简介Laravel是一套简洁、开源的PHP Web开发框架,旨在实现Web软件的MVC架构。
2021年01月12日,Laravel被披露存在一个远程代码执行漏洞(CVE-2021-3129)。当Laravel开启了Debug模式时,由于Laravel自带的Ignition 组件对file_get_contents()和file_put_contents()函数的不安全使用,攻击者可以通过发起恶意请求,构造恶意Log文件等方式触发Phar反序列化,最终造成远程代码执行。
环境配置采用vulhub的docker
12docker-compose up -d环境启动后,访问`http://your-ip:8080`即可查看Laravel默认的欢迎页面。
漏洞分析Laravel在第6版之后,debug模式使用了ignition组件来美化堆栈信息,除此之外,ignition还附带了“一键修复bug”的功能。
通过这些solutions,开发者可以通过点击按钮的方式,快速修复一些错误。本次漏洞就是其中的vend ...