dean2021.github.io's People
dean2021.github.io's Issues
Struts2 OGNL沙箱历史绕过方式总结 - 老路的博客
https://dean2021.github.io/posts/struts-bypass-sandbox/
沙箱绕过 s2-003 绕过方式:
#context['xwork.MethodAccessor.denyMethodExecution']=false, #[email protected]@EMPTY_SET s2-005 绕过方式:
#_memberAccess.allowStaticMethodAccess=true #context['xwork.
Struts2框架: S2-003漏洞详细分析 - Dean's notes
https://dean2021.github.io/posts/s2-003/
0x00 前言 阅读本文需要具备的知识:
熟悉J2EE开发, 了解Struts2框架执行流程 0x01 漏洞复现 影响漏洞版本:
XWork框架的元素详解 - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note_05/
纸上得来终觉浅, 预知此事要躬行
0x01 构成XWork数据流体系的两大元素之间有什么样的关系 ? ActionContext 和 ValueStack之间是从属关系, ValueStack是ActionContext的一个组成部分.
- Dean's notes
- Dean's notes
S2-001 漏洞详细分析 - Dean's notes
https://dean2021.github.io/posts/s2-001/
0x00 前言 阅读本文需要具备的知识:
熟悉J2EE开发, 主要是JSP开发 了解Struts2框架执行流程 了解Ognl表达式 如果你不具备这些知识, 阅读这篇文章将会是一场艰难的旅行.
- Dean's notes
Struts2框架源码分析:概况 - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note/
Struts2和Struts1.x有什么区别? 他们各自发展轨迹又如何? Struts1是Apache社区在2000年3月31号发布的一款javaweb框架. 随着时代进步,Struts1的不足显而易见,此时Opensymphony开源了一款优秀的web框架,名为Webwork2. Apache社区在2005年12月14日宣布Struts项目和Webwork2项目合并,推出名为Struts2的Web框架. Strus2框架开始进入辉煌时代. Struts2依赖于那些核心技术? 表示层技术, Struts2表示层主要是整合, 如整合Freemarker或Velocity为核心的模板技术、构建Flash应用的Flex技术、ajax技术等,以plugin形式进行整合.
My First Post - Dean's notes
http://dean.csoio.com/posts/my-first-post/
Hello, Github.io
Java RMI 入门 - [无坑篇] - Dean's notes
http://dean.csoio.com/posts/java-rmi/
从网上阅读了无数rmi demo和 paper,存在各种各样的坑,这篇文章一定能让你轻松入门.
My Lucky Cat - Dean's notes
http://dean.csoio.com/posts/luckycat/
功能 Debug必备,专职莫名奇妙的又难复现的Bug. 挖洞必备,开阔挖洞思路,增加挖洞灵感. 减压小助手,工作压力大,这只喵始终提醒你保持微笑和乐观心态. 孤单杀手, 你不是一个人在战斗,还有这只喵在陪着你! 附上靓照:
This is a test issue from WhiteSource, it will be closed shortly
Struts2框架: S2-002 漏洞详细分析 - Dean's notes
https://dean2021.github.io/posts/s2-002/
0x00 前言 阅读本文需要具备的知识:
熟悉J2EE开发, 主要是JSP开发 了解Struts2框架执行流程 0x01 漏洞复现 影响漏洞版本:
Struts2 OGNL沙箱历史绕过方式总结 - Dean's notes
https://dean2021.github.io/posts/s2-bypass-sandbox/
沙箱绕过 s2-003 绕过方式: 1 2 #context['xwork.MethodAccessor.denyMethodExecution']=false, #[email protected]@EMPTY_SET s2-005 绕过方式: 1 2 3 #_memberAccess.
Jenkins 安全研究 - Dean's notes
https://dean2021.github.io/posts/jenkins-security/
Jenkins 安全研究 一、Jenkins历史漏洞 Jenkins 任意文件读取漏洞分析 Jenkins 未授权远程代码执行漏洞分析(CVE-2017-1000353) Jenkins-LDAP (CVE-2016-9299) 反序列化漏洞分析 CVE-2018-1000861 二、相关资料 stapler框架文档
XWork框架中的容器设计 - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note_02/
“容器”是用来解决:“在程序的运行期,应该如何创建我们需要的对象?” 和 “当创建新对象,该对象依赖的对象也能正确被创建出来?”
对象的生命周期管理包含哪两个方面的内容 ? 在程序运行期,对象实例的创建和引用机制. 对象与其关联的对象的依赖关系的处理机制.
深入XWork设计原理 - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note_04/
0x01 基于人机交互的请求响应模式主要由哪三大要素构成 ? 沟通协议 请求内容 相应内容 0x02 在Java语言中 ,有哪三种主要的请求响应的实现模式 ? 参数-返回(Param-Return)模式.
2018年-研究计划清单 - Dean's notes
http://dean.csoio.com/posts/plan/
参考文献中标记删除线表示已阅读完, 清单会不断Update.
一、自动化Java 0day挖掘方向 涉及到技术栈:Java Instrumentation、
Struts2 运行流程分析之doFilter - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note_07/
注意: 本文基于Struts2.2.1版本进行的代码分析
首先先大致看一下StrutsPrepareAndExecuteFilter.java的doFilter的实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) res; try { // 设置request/response编码 prepare.
深入理解OGNL - Dean's notes
http://dean.csoio.com/posts/struts2-internals-readbook-note_03/
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。
0x01 为什么要引入表达式引擎 ?表达式引擎在Web开发中有什么重要作用 ? 同一个对象 ,在 “弱类型 ”的平台和一个 “强类型 ”的平台之间交互 ,就必须有一个非常重要的 “翻译 ”角色解决这种 “不匹配 ” 。这个角色 ,就是我们所说的表达式引擎 ,它充当着桥梁作用 ,保证数据能够顺利地在MVC的各个层次进行流转 。 0x02 一个合格的表达式语言应该具备什么? 能够处理表达式与对象之间的映射关系,并且这种关系是双向的。 能够支持丰富多样的表达式语法计算。 能够支持必要的数据类型转换.
Linux 提权检测研究 - 老路的博客
https://dean2021.github.io/posts/linux-privilege-escalation/
作者:老路(Dean) 微信号:dean2029 (欢迎来撩) 文章来源:主机安全 (知识星球) 一、基于SUID提权检测 1.1、原理介绍 寻找具备suid权限的二进制程序文件,并且该文件需要具备自定义执行命令条件(如:nmap),或者该二进制程序存在漏洞,利用注入shellcode执行命令(如:缓冲区溢出漏洞)。(PS: 如果不能执行命令,读写文件也可以)
Golang投毒小技巧 - Dean's notes
http://dean.csoio.com/posts/golang-compiler-poisoning/
小技巧:
分享一个小玩意,修改 /usr/local/Cellar/go/1.10.3/libexec/src/runtime/proc.go 文件的main函数,加入恶意代码,以后在这台机器上编译任意go文件都会内置恶意代码,可以用来留后门 ^^
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.