漏洞描述
Java 虚拟机为 Java 语言提供 Java debugger、JDB 调试功能,应用在编译过程中可以开启 Remote Debug 模式,方便程序员远程对代码进行调试。但是,该模式没有身份校验机制,且可执行系统命令。
在 Remote Debug 模式下,黑客可连接该端口直接入侵主机,甚至可获取服务器权限,从而窃取数据。该漏洞的官方评级为 高危。
修复方案
关闭 Remote Debug 模式。
- 直接关闭 Java Debug 模式进程。
java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=7001,suspend=n
使用 Tomcat 中间件。
注释
startup.sh
第 2 行:declare -x CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.compiler=NONE-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8788"
然后,重启对应项目 Tomcat 服务。
- 直接关闭 Java Debug 模式进程。
使用 ECS 安全组防火墙 限制外部 IP 对 Remote Debug 端口的访问。