Struts 2最新0day破坏性漏洞(远程任意代码执行)等的重现方法
Struts 2的远程任意代码执行和重定向漏洞,是这两天互联网上最重大的安全事件,据说国内互联网企业中,很多电商纷纷中招,应该已经有大规模的用户隐私泄露。这里我们简单总结下怎样在自己机子上重现这些漏洞,这篇日志也是面向对网络安全比较感兴趣的初学者,即使你没有什么经验,也能知道这漏洞到底怎么回事:
首先我们需要下载包含漏洞的Struts 2,在这里:http://archive.apache.org/dist/struts/ 有Struts 1和Struts 2的基本上全部的发行版本。我们点击这个链接:binaries/ ,就可以找到受漏洞影响的最新版本:Struts 2.3.15(struts-2.3.15-all.zip),我们就下载这个压缩包。下载完成之后,我们就可以生成Demo项目了:
这里我们首先介绍一种最简单的方法:将上面的压缩包解压后,可以看到“%解压目录%\struts-2.3.15\apps”下有一些war包,这些都是Struts 2的一些简单示例应用,我们选择其中的struts2-blank.war,拷贝到Tomcat的webapps文件夹下,再重启Tomcat,然后就可以访问:http://localhost:8080/struts2-blank/ ,看到一个很简单的页面。我们选择“English”,就会跳转到下面这个URL:
http://localhost:8080/struts2-blank/example/HelloWorld.action?request_locale=en
利用这个URL,就可以做很多坏事了,在Struts 2的官网上已经给出了完整的PoC(proof of concept),例如:http://struts.apache.org/release/2.3.x/docs/s2-016.html
我们如果将上面这个URL换成:
http://localhost:8080/struts2-blank/example/HelloWorld.action?redirect:http://www.yahoo.com/
就会被重定向到雅虎的网站。
更过分的是,如果我将URL换成:
就会自动弹出计算器!如果点击下面的URL,就会跳出Windows的资源管理器(假设我们在Windows系统中):
是不是很神奇?这个问题现在还在蔓延,可谓是今年互联网领域影响最大的一次安全事件了。
最后再给大家附赠两条可以远程执行的命令,这个可以调出来Windows系统加密程序,如下图所示:
最下面这个要谨慎使用,可以强制当前用户注销:
Struts 2最新0day破坏性漏洞(远程任意代码执行)等的重现方法的更多相关文章
- WordPress wp-includes/functions.php脚本远程任意代码执行漏洞
漏洞名称: WordPress wp-includes/functions.php脚本远程任意代码执行漏洞 CNNVD编号: CNNVD-201309-166 发布时间: 2013-09-13 更新时 ...
- Git漏洞允许任意代码执行(CVE-2018-17456)复现
Git漏洞允许任意代码执行(CVE-2018-17456) 国外安全研究员 joernchen 在 9 月 23 日向 git 官方报告了漏洞的相关细节.10月5日,Git项目披露了一个漏洞,编号为C ...
- PHP-CGI远程任意代码执行漏洞(CVE-2012-1823)修复方案
首先介绍一下这个漏洞,其实是在apache调用php解释器解释.php文件时,会将url参数传我给php解释器,如果在url后加传命令行开关(例如-s.-d .-c或 -dauto_prepend_ ...
- WordPress 'is_serialized()'远程任意代码执行漏洞(CVE-2013-4338)
漏洞版本: WordPress 3.6 漏洞描述: Bugtraq ID:62345 CVE ID:CVE-2013-4338 WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PH ...
- Tomcat远程任意代码执行漏洞及其POC(CVE-2017-12617)
一.原理分析: 只需参数readonly设置为false或者使用参数readonly设置启用WebDAV servlet false,则Tomcat可以不经任何身份验证的控制直接接收PUT方式上传的文 ...
- 干货|CVE-2019-11043: PHP-FPM在Nginx特定配置下任意代码执行漏洞分析
近期,国外安全研究员Andrew Danau,在参加夺旗赛(CTF: Capture the Flag)期间,偶然发现php-fpm组件处理特定请求时存在缺陷:在特定Nginx配置下,特定构造的请求会 ...
- seacms_6.4.5 前台任意代码执行漏洞分析
环境搭建 1.下载安装包 下载地址: 链接:https://pan.baidu.com/s/1uw_VnxnvG4GGEae4TRsGGw 密码:cd48 2.常规安装 漏洞复现 poc1: http ...
- 修复Apache Log4j任意代码执行漏洞安全风险通告
2021年12月10日 0x01漏洞背景 Apache Log4j 是 Apache 的一个开源项目,Apache Log4j2是一个基于Java的日志记录工具.该工具重写了Log4j框架,并且引入了 ...
- php 168任意代码执行漏洞之php的Complex (curly) syntax
今天了解了php 168的任意代码执行漏洞,Poc: http://192.168.6.128/pentest/cms/php168/member/post.php?only=1&showHt ...
随机推荐
- 2015暑假acm短训小结
时间很快,短训已经结束,短短20天,心里有一些思绪想要记下. 收获: 从最近发的随笔中可以看出,做得最多的是搜索——Dfs,Bfs.对于搜索,如何描述状态,如何压缩状态,如何决定下一个结点,是否可以剪 ...
- gpg-agent具体配置
gpg(gnupg)工具使用很广泛,在前面一篇文章中就具体介绍:http://blog.csdn.net/dongtingzhizi/article/details/26362205,有一个问题值得关 ...
- C++中,引用作为函数参数
引用作为函数参数 C++之所以增加引用类型, 主要是把它作为函数参数,以扩充函数传递数据的功能. ———————————————————— c++,函数传参:(1)将变量名作为实参和形参.这时传给形参 ...
- linux修改shell为zsh
以前使用的bash,如果目录很长,那么整个路径都被占满了. 询问一下一位大牛,答曰:zsh. 安装:ubuntu下sudo apt-get install zsh 修改默认登录shell: $chsh ...
- BZOJ 3391: [Usaco2004 Dec]Tree Cutting网络破坏( dfs )
因为是棵树 , 所以直接 dfs 就好了... ---------------------------------------------------------------------------- ...
- 【转】lnmp_auto:自动化安装lnmp环境脚本
原文链接: lnmp_auto:自动化安装lnmp环境脚本 这哥们整理的这篇博文很好 转载分享 博文转载如下: 源代码在github上:https://github.com/jianfengye/ ...
- AOP 笔记
http://blog.csdn.net/Intlgj/article/details/5671248 这篇文章里面介绍的非常好,值得阅读. 这里盗用里面的两张图片 [在没有AOP之前是这样的] [使 ...
- (Problem 16)Power digit sum
215 = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26. What is the sum of the digits of th ...
- DG创建和提取虚拟机文件
http://www.cr173.com/soft/33359.html http://www.diskgenius.cn/help/newvmdk.php
- Spirng+SpringMVC+Maven+Mybatis+MySQL项目搭建(转)
这篇文章主要讲解使用eclipse对Spirng+SpringMVC+Maven+Mybatis+MySQL项目搭建过程,包括里面步骤和里面的配置文件如何配置等等都会详细说明. 如果还没有搭建好环境( ...