- 博客(20)
- 收藏
- 关注
原创 CVE-2022-22947(Spring-Cloud-Gateway)
`SpringCloud Gateway` 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。
2023-04-09 22:17:38
1041
原创 Tomcat内存马
Tomcat内存马主要分为三种,分别是Filter型、Servlet型和Listener型,其原理是动态的将恶意组件添加到正在运行的Tomcat服务器中。
2023-03-03 16:57:33
715
原创 Tomcat内存马-Filter型
在此处调用了filter.doFilter()方法,此处的filter为我们编写filter对象,该对象通过filterConfig.getFilter()从filterConfig中获取。从上面的分析可知,filter内存马的关键就是将恶意Filter的信息添加进FilterConfig数组和将恶意的filtermap添加进FilterMaps中,那么Tomcat在启动时就会自动初始化我们的恶意Filter,并在访问相应的路径时触发代码。我们首先来实现一个简单的Filter。
2023-03-01 16:01:53
297
原创 Tomcat基础知识
Tomcat 是一个小型的轻量级应用服务器,其主要作用为Servlet和 JSP容器,支持全部JSP以及Servlet规范。但它同样具有处理HTML页面的功能,可以充当Web服务器。简单点说,Tomcat可以看成是Web服务器+Servlet容器,不过其作为Web服务器功能较弱。
2023-03-01 11:40:23
311
原创 vultarget-a靶场渗透
CVE-2020-1472影响win server2008r到win2019多个操作系统版本,只需要得到域控的用户名且能够访问到目标域控,漏洞不需要主机在域环境下,原理是通过将目标域控密码置空,根据获取的凭得到域管理员的权限。可以发现此win7主机存在双网卡,192.168.14.0为外网环境,10.0.20.0为内网环境。web服务器地址为http://192.168.14.137/,很明显该网站属于通达oa。使用redis写shell,网站绝对路径可在phpinfo界面中获取。使用蚁剑连接shell。
2022-12-30 09:51:48
478
原创 JNDI注入
JNDI(The Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API,命名服务将名称和对象联系起来,使得我们可以用名称访问对象。
2022-11-17 11:12:52
872
原创 Fastjson反序列化
fastjson 是阿里巴巴的开源JSON解析库,它可以解析 JSON 格式的字符串,支持将 Java Bean 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 JavaBean。fastjson是目前java语言中最快的json库,其功能完备且使用简单,因而使用非常广泛。自fastjson在1.2.24版本爆出第一次漏洞到至今,有着多次的安全补丁更新和绕过。
2022-11-15 14:49:49
11746
1
原创 CommonsBeanutils
Apache Commons Beanutils 是 Apache Commons 工具集下的另一个项目,它提供了对普通Java类对象(也称为JavaBean)的一些操作方法。梳理一下流程,首先反序列化入口PriorityQueue类中我们可以调用任意对象的compare方法,而我们要调用的这个compare方法中,最终要调用至PropertyUtils.getProperty方法,进而调用TemplatesImpl利用链。
2022-10-14 13:53:53
4030
原创 利用TemplatesImpl攻击shiro-Shiro550
为了让浏览器或服务器重启后用户不丢失登录状态,Shiro支持将持久化信息序列化并加密后保存在Cookie的rememberMe字段中,下次读取时进行Base64解密后,再使用aes密钥解密后的数据,进行反序列化。resolveClass 是反序列化中用来查找类的方法,简单来说,读取序列化流的时候,读到一个字符串形式的类名,需要通过这个方法来找到对应的 java.lang.Class 对象。也就是说,如果反序列化流中包含非Java自身的数组,则会出现无法加载类的错误。
2022-10-13 18:18:07
884
原创 CommonCollections2
在4.0同样可以使用,同时4.0多了两条新的利用链。java.util.PriorityQueue中的readObject()方法为本链的入口点,其中调用了heapity()方法。而在siftDownUsingComparator()方法中,我们可以调用指定类的compare()方法。
2022-10-13 13:52:32
1506
原创 Common-Collections3
在学习过TemplatesImpl 加载字节码之后,我们可以利用加载字节码的方式去替代InvokerTransformer调用Runtime的exec方法,只需调用 TemplatesImpl.newTransformer(),即可执行任意代码。而根据CC1的两条链,我们可以对其进行简单的改造,将其InvokerTransformer中对exec的调用替换为调用 TemplatesImpl.newTransformer(),即可得到两条半成品的CC3。这条链为InvokerTransformer的绕过。
2022-10-04 17:33:58
529
原创 ClassLoader与字节码
ClassLoader为类加载器,它是用来加载 Class 的。字节码可以来自于磁盘文件 *.class,也可以是 jar 包里的 *.class,也可以来自远程服务器提供的字节流,字节码的本质就是一个字节数组 []byte,它有特定的复杂的内部格式。当类初始化的时候,类的static块中的代码会执行,但是defineClass被调用时,类对象是没有被初始化的,只有这个对象显式地调用其构造函数,初始化代码才能被执行,我们用反射调用其构造函数,成功执行放在static中的代码。
2022-10-04 17:33:24
617
原创 Common-Collections 1
与TransformedMap相同,这条链同样在jdk8u71以后不能使用,原因也相同,变更后的AnnotationInvocationHandler#readObject不再直接使用反序列化得到的Map对象,所以不能够使用了
2022-09-09 16:54:27
796
原创 GeminiIncV2靶机渗透测试
GeminiIncV2靶机渗透测试前言此靶机综合性极强,渗透过程一波三折,非常贴合实战场景,做完之后我有了很大收获一、靶机安装靶机为Vulnhub上的GeminiIncV2 下载文件后直接导入VM即可攻击机为kali,ip为192.168.14.131两个靶机均使用VM下的net模式连接二、端口扫描nmap扫描整个网段,确认主机ip,为192.168.14.136nmap -sS 192.168.14.0/24//-sS:TCP SYN扫描,主机向目标端口发送SYN报文,如果目标端口返
2022-05-06 20:05:32
345
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人