添加新的插件API

Java 版本

Rhino 引擎支持将 Java 中的对象注册到 JavaScript 环境,并被 JavaScript 代码调用

若你目前还不了解 Rhino,或者不了解如何使用 Rhino 向 JavaScript 环境中注册对象,请先查看 Rhino 官方文档:https://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino/Embedding_tutorial#Expose_Java_APIs

在 OpenRASP 中,我们注册了 stdout 对象和 sql_tokenize 方法到 JavaScript 环境中,你可以参照我们的代码编写。

代码清单:

  • com/baidu/openrasp/plugin/js/engine/JSStdout.java - stdout 对象实现
  • com/baidu/openrasp/plugin/js/engine/JSTokenizeSql.java - sql_tokenize 方法实现
  • com/baidu/openrasp/plugin/js/engine/JSContextFactory.java - 初始化 JavaScript 环境并注册对象

原文: https://rasp.baidu.com/doc/hacking/api.html