随笔分类 - 学习笔记
学习笔记
摘要:1. 前言 弃用docker选择使用podman的理由: 使用虚拟机进行容器管理 不需要本机root权限 非守护进程 podman命令与docker一致 2. 安装及配置 使用homebrew安装podman brew install podman brew install podman-compo
阅读全文
摘要:前言 这学期的专业实习周的第七个实验:Typecho CMS反序列化漏洞的代码审计,因为是学校的实验内容,所以难度也会比较低一些 环境搭建 Typecho CMS官方:https://typecho.org/ 漏洞影响版本:Typecho ≤ 1.1(15.5.12) 下载链接:Release Ty
阅读全文
摘要:今天登录同学的小皮运维后台的时候发现CPU占有率达到100% 排查 登录服务器通过top看了下CPU占用情况,发现存在xmrig挖矿进程(当时直接kill -9结束了进程没有截到图) 看了下这些文件的时间信息,发现miner.sh的Modify为2023-02-10 17:32:48.0000000
阅读全文
摘要:前言 最近面试老是被问到shiro 550的洞,这个洞之前hvv中担任了很重要的角色,之前也只是使用工具做过攻击,也大概看过原理,却没有自己去分析过,所以赶紧学一下。 Shiro介绍 官方介绍:Shiro是Apache开源的一个功能强大且易于使用的Java安全框架,它执行身份验证、授权、加密和会话管
阅读全文
摘要:前言 休息了好像有一周了(慢慢的罪恶感),昨天在打比赛的时候做了一个php-cms的审计,然后激起了学习的热情。 之前打比赛的时候遇到过fastjson的题,当时也就是直接用poc利用了,也学习过fastjson的触发原理,这里简单的复习一下,文章如下: https://www.cnblogs.co
阅读全文
摘要:前言 该篇目的在于简单记录一下学习JNDI注入中的一些笔记,未提到的一些还没深入学习,之后搞明白了会继续补充! JNDI简介 官方解释:JNDI(The Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API,
阅读全文
摘要:前言 距离上次php审计是在ThinkPHP v5.0.24反序列化漏洞分析,这篇笔记本来在很久之前应该就要写的,但是一直对tp路由还是不够熟悉,个人觉得难度要比反序列化高一些,拖了这么久今天做个了结。 环境搭建 使用环境:Apache + PHP 7.0.9 下载具有漏洞环境的ThinkPHP 5
阅读全文
摘要:前言 接上篇TemplatesImpl利用链分析,学习了通过TemplatesImpl利用链来进行类加载执行恶意代码,现在来学习一下CommonsCollections2利用链。 分析前的准备 漏洞组件:commons-collections4.0,使用jdk1.7 在pom.xml中引入漏洞依赖
阅读全文
摘要:前言 在学习java cc2链的时候看到利用TemplatesImpl,记得之前在fastjson反序列化的时候也遇到过,所以就想着单独写个TemplatesImpl利用链分析的文章,该篇也作为cc2链的前篇。 自定义类加载器 之前学习过Java的类加载过程,我们可以通过自定义类加载器来加载字节码,
阅读全文
摘要:前言 URLDNS链是Java反序列化中比较简单的一个链子,由于URLDNS不依赖第三方包和不限制jdk版本,所以经常用于检测反序列化漏洞。 URLDNS并不能执行命令,只能发送DNS请求。 (应该先看这个简单的链再去学习cc1的...) 利用链 查看ysoserial中URLDNS的Gadget:
阅读全文
摘要:概念 RMI机制即Java远程方法调用(Java Remote Method Invocation),在Java语言中,一种用于实现远程过程调用的应用程序编程接口。它使得客户端上运行的程序可以远程调用远程服务器上的对象。远程方法调用特性使Java编程人员能够在网络环境中分布操作。 RMI机制架构共分
阅读全文
摘要:前言 学习Java基础语法也有1年多的时间了,Java安全基础也学了有半年了,期间通过ctf赛题学习过fastjson的反序列化并了解了其利用链,但并未深入学习并记录笔记。 一直都说要赶紧审计java的反序列化利用链,但老是一推再推,让这篇文章开个头,步入学习java审计的开始! Java反序列化基
阅读全文
摘要:概念 代理模式是Java当中最常用的设计模式之一。其特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。而Java的代理机制分为静态代理和动态代理,这里学习Java自带的jdk动态代理机制。 静态代理示例 静态代理是在编译使用时,定义
阅读全文
摘要:概念 反射是Java的特征之一,是一种间接操作目标对象的机制 在JVM运行的时候会动态加载类,对于任意一个类都能获取到该类的所有属性和方法,对于任意一个对象,都能够调用它的任意一个方法和属性(包括私有的方法和属性),这种动态获取的信息以及动态调用对象的方法的功能就是Java的反射机制 阅读建议: 如
阅读全文
摘要:概念 Java类加载器(Java Classloader)是Java运行时环境(Java Runtime Environment)的一部分,负责动态加载Java类到Java虚拟机的内存空间中,用于加载系统、网络或者其他来源的类文件。 Java源代码通过javac编译器编译成类文件,然后JVM来执行类
阅读全文
摘要:下边内容都是一些提权思路的整理,对于很多知识点并没有细化和深入,仅供个人参考,日后在实战中碰到了会深入学习并记录在新的文章中。 基础知识 权限组划分: Administrators:管理员组,默认情况下,Administrators中的用户对计算机/域有不受限制的完全访问权。 Power Users
阅读全文
摘要:UDF提权 原理 UDF(user defined function)即用户自定义函数是Mysql的一个拓展接口,用户通过自定义函数可以实现在Mysql中无法方便实现的功能,其添加的新函数都可以在SQL语句中调用,就像version()函数一样。 用户可以通过自己增加函数对Mysql功能进行扩充,文
阅读全文
摘要:隐藏用户 原理 在创建用户时,在用户名后添加一个$并修改注册表即可把该用户隐藏,只有在注册表中才能看到用户信息 复现过程 使用net user whoami$ Aa123456 /add添加一个用户,使用net users查看用户发现没有该用户,但是还是可以在计算机管理中查看到 这里我们紧接着将隐藏
阅读全文
摘要:ThinkPHP v5.0.24 反序列化 前言 昨天花了一下午的时间才把反序列化链给审明白,今天记录一下笔记再来审一遍。(自己还是太菜了~~~) 在我的印象中,ThinkPHP框架的漏洞非常多,所以也是学习代码审计的优选,提升代码能力,从每一天做起! 在这一次的审计中,因为没有使用动态调试,所以使
阅读全文
摘要:前言 Fastjson 是阿里开发的一个 Java 库,用于将 Java 对象序列化为 JSON 格式,也可将字符串反序列化为 Java 对象。 Fastjson 是非常多见的 Java 反序列化漏洞,CTF中也出现的非常频繁。 Fastjson 1.2.24 Fastjson 1.2.24 版本的
阅读全文