下载 Java IAST 代理程序并将其部署在 Web 服务器上
您必须下载并在被测应用程序的 Web 服务器上部署 IAST 代理,以监视运行时期间发送的流量并报告其发现的漏洞。
开始之前
- 被测应用程序应安装在 Web 服务器上。
- 您必须在 AppScan Enterprise 中的“监视器”视图的“任务夹”选项卡中创建一个应用程序。有关在 AppScan Enterprise 中创建应用程序的更多信息,请参阅创建应用程序。
关于此任务
过程
- 登录 AppScan Enterprise Server。
- 转至“监控”页面 > “投资组合”选项卡以查看可用应用程序列表。
-
单击您要将 IAST 代理下载到的应用程序。
系统将显示应用程序页面。有关创建应用程序的更多信息,请参阅创建应用程序
-
在左侧窗格中,单击 IAST 代理
IAST 代理程序页面显示在右侧窗格中。
-
单击创建新代理。
将显示 IAST 入门页面。
-
单击创建新代理。
系统显示 IAST 代理创建页面。
-
从代理类型
注: IAST 功能支持基于 Java、.NET 和 Node.js 的应用程序。
- 在代理名称框中,输入您为应用程序创建的代理的唯一名称。代理名称可以包含字母数字和特殊字符,最大长度为 30 个字符。
- 单击下载代理。将显示检查您的下载文件夹消息,并且 AppScanIASTAgent
- 将 AppScanIASTagent 文件提取到文件夹中。
-
您可以使用以下任一类型的文件来部署 Java IAST 代理程序:
注: 对于 Java IAST 代理程序,JAR 和 WAR 文件具有相同的通信令牌,因此两种代理程序将与同一 IAST 会话进行通信。在一些应用程序使用 WAR 文件而其他应用程序使用 JAR 文件的情况下,这一点很有帮助。
-
如果编译时和运行时 Java 版本均为 9 或更高版本,请将以下 Java 属性添加到 Java 运行命令:
–Djava.lang.invoke.stringConcat=BC_SB
结果
使用 WAR 文件部署 Java IAST 代理程序
过程
- 在测试的应用程序的 Web 服务器上部署 Secagent.war
-
与被测应用程序交互(运行功能测试,运行动态扫描或手动探索应用程序),以便 IAST 代理监测请求并报告安全问题。
注: IAST 扫描不会发送自己的请求。仅当请求通过系统测试、手动探索或 DAST 扫描等发送到正在测试的应用程序时,它才能发现问题。
-
转至应用程序的选项卡视图,然后单击左侧窗格中的所有问题,以查看与已发现的安全漏洞相关的问题列表。
注: 您可以使用过滤器 Discovery Method=IAST 仅查看应用程序中的 IAST 问题。
使用 JAR 文件部署 Java IAST 代理程序
过程
- 在 jar_deployment 文件夹中,找到 Secagent.jar
- 将 Secagent.jar
-
将以下标志添加到您的应用程序命令行:
-Djavaagent:<path to secagent.jar>
示例:对于购物网站:
java -javaagent:secagent.jar -jar ./shopping/target/shopping-0.9.0-SNAPSHOT.jar
结果
使用安全管理器运行 Java 代理
关于此任务
您可以使用安全管理器运行 Java 代理:
- 作为 Tomcat 上的 war 文件或
- 作为 Tomcat 以外的服务器上的 jar 文件。请联系 AppScan 支持团队获取指导。
要在 Tomcat 上使用安全管理器作为 war 运行 Java 代理:
过程
-
找到 catalina.policy 文件。
catalina.policy 文件通常位于 Tomcat 安装配置目录中。确切的路径可能会有所不同,具体取决于您的操作系统和 Tomcat 版本。
- 在文本编辑器中打开 catalina.policy 文件。
-
找到“授予”块。
查找以关键字“grant”开头的块,后跟一个或多个“permission”语句。
-
添加所需的权限如下:
- 保存 catalina.policy 文件。
- 重新启动 Tomcat 服务器以应用更改。