TL;DR 本文较长,适合先码后看,如有些许错误,还请师傅们斧正。文章中所有代码均在本地环境运行并测试通过,源码已备份至GitHub。 JSP 在学习Java内存马之前,我们先来简单了解一下JSP技术。 什么是JSP JSP(Java Ser…
Source 文章相关代码已经同步至Github 什么是RPC 在了解Hessian之前,我们先来了解一下RPC(Remote Procedure Call Protocol,远程过程调用协议)。 我们知道,互联网最重要的功能就是能在不同计算…
什么是ROME ROME 是一个可以兼容多种格式的 feeds 解析器,可以从一种格式转换成另一种格式,也可返回指定格式或 Java 对象。ROME 兼容了 RSS (0.90, 0.91, 0.92, 0.93, 0.94, 1.0, 2.…
前置知识 什么是Pickle? pickle是Python中一个能够序列化和反序列化对象的模块。和其他语言类似,Python也提供了序列化和反序列化这一功能,其中一个实现模块就是pickle。在Python中,"Pickling" 是将 Py…
在比赛中碰到了一些非常精妙的LFI技巧,遂记录学习一下。 Nginx Temp File Include 假如有如下代码 <?php ($_GET['action'] ?? 'read' ) === 'read' ? readf…
Fastjson 概述 Fastjson是阿里巴巴的开源JSON解析库,它可以解析 JSON 格式的字符串,支持将 Java Object 序列化为 JSON 字符串,也可以从 JSON 字符串反序列化到 Java Object。项目地址 F…
JNDI 概述 JNDI(Java Naming and Directory Interface,Java命名和目录接口)是SUN公司提供的一种标准的Java命名系统接口。JNDI提供统一的客户端API,并由管理者将JNDI API映射为特定…