RASP | 远程Java应用的RASP调试教程

远程Java应用的RASP调试教程

介绍

Java RASP是基于Java Agent技术实现的,而Java Agent代码无法独立启动,必须依赖于一个Java运行时程序才能运行。 如何调试一个Java Agent可以参考之前的一篇推文: 如何 debug JRASP Agent代码

在RASP开发的中后期,则需要在真实的Web服务器上测试。通常这些Java应用程序都运行在远端设备上,开发者本地不具备这样的环境。所以我们需要远程调试一个真实的Java应用,来解决bug或者验证RASP的防护效果。下面将以tomcat为例,介绍如何调试一个应用于远端Java应用的RASP程序。

环境条件

  1. 运行于Windows上的IDEA CE 2021.2(社区版)
  2. 运行于Linux上的apache-tomcat-9.0.0.m1

调试步骤

1. 设置IDEA远程调试

  1. 点击编辑运行配置
  2. 新建一个远程JVM调试模板
  3. 调试器模式设置为附加到远程JVM,传输方式选择Socket。IDEA还有ShareMemory方式的传输方式,这两者的本质都是用于传输远程调试信息。双机调试建议使用Socket模式。
  4. 设置目标Java应用所在机器的IP地址,以及一个未被使用的端口。
  5. 选择目标Java应用运行时JDK版本,将会自动生成一些启动参数。 不同的JDK版本的启动参数不同 ,所以需要注意这点。
  6. 复制自动生成的JVM启动参数,用于后续添加到目标Java应用的启动参数中。
  7. 设置需要调试的代码
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Raspberry Pi是一种小型的单片微型计算机,它的应用范围非常广泛,由于其体积小、成本低,被广泛应用于物联网、家庭娱乐以及智能家居等领域。Java作为一种非常流行的编程语言,也逐渐被应用于Raspberry Pi的开发中。下面将详细介绍Raspberry Pi的Java实现。 首先,Raspberry Pi的Java实现主要包含两个方面。一方面是Java SE Embedded,即Java编程语言在嵌入式系统和嵌入式设备上的实现。Java SE Embedded可直接运行在Raspberry Pi上,使其能够使用Java进行编程和应用开发。另一方面是Java ME Embedded,即Java嵌入式系统用于小型设备的高性能实现。Java ME Embedded适用于嵌入式系统,可运行在Raspberry Pi上,使Raspberry Pi能够支持Java ME平台。 其次,Raspberry Pi的Java实现可以通过多种方式进行编程和应用程序开发。其中,Java SE Embedded可以采用Eclipse、NetBeans和IntelliJ IDEA等开发工具,而Java ME Embedded则可使用Java ME SDK进行开发。此外,Raspberry Pi的Java实现还支持JavaFX,这是一种可以在桌面、浏览器和移动设备上运行的Java用户界面框架,十分方便实用。 总之,Raspberry Pi的Java实现可以使Raspberry Pi拥有更加灵活和多样的应用,同时也为Java开发者提供了一个全新的开发平台。此外,由于Java编程语言的强大和普遍性,Raspberry Pi的Java实现具有较高的开发效率和可维护性。可以预计,在未来的智能家居和物联网应用中,Raspberry Pi的Java实现将会发挥其巨大的潜力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值