For the complete documentation index, see llms.txt. This page is also available as Markdown.

Spring Data Redis不安全反序列化

Spring Data Redis 概述

Spring Data Redis是更大的Spring Data家族的一部分,提供从Spring应用程序轻松配置和访问Redis。Spring Data Redis在将数据写入Redis之前首先序列化数据。默认情况下,使用Java原生序列化进行序列化。

不安全反序列化

当Spring Data Redis从Redis检索数据时,存储的字节码会被反序列化。由于在反序列化过程中目标类没有被检查或过滤,这可能导致远程代码执行。

利用示例:

  1. 使用ysoserial生成payload

  2. 将生成的payload写入Redis:

  3. 触发或等待Spring检索数据,易受攻击代码示例:

  4. 服务器成功启动计算器:

    调用栈如下:

参考

最后更新于