添加新的插件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 环境并注册对象