OpenRASP Documents (Old)
  • 简介
  • 安装部署
    • 兼容性说明
    • 安装管理后台
    • 快速接入
      • PHP 服务器
      • Tomcat 服务器
      • JBoss 服务器
      • Wildfly 服务器
      • Resin 服务器
      • Jetty 服务器
      • Spring Boot 框架
      • WebLogic 服务器
      • WebSphere 服务器
      • 宝兰德BES服务器
      • 东方通TongWeb服务器
      • 中创InforSuiteAS服务器
      • 普元PAS服务器
    • 安装测试用例
    • 安装灰盒扫描工具
      • IAST 高级配置选项
    • SIEM 系统集成
      • Splunk
      • Logstash
    • 大规模部署
    • 卸载软件
  • 服务配置
    • 日志说明
    • 管理后台
    • 单机版本
    • 其他配置
  • 功能说明
    • 攻击检测能力说明
    • CVE 漏洞覆盖说明
    • 安全基线检查
    • 应用加固支持
    • 应用异常监控
    • 类库信息查询
    • HTML 响应修改
  • 插件开发
    • 开发插件
    • 接口说明
      • RASP 类接口
      • Context 类接口
    • 参数说明
    • 单元测试
    • 在线调试
    • 官方插件定制
  • 二次开发
    • 架构说明
      • Java 版本
      • PHP 版本
      • 管理后台
      • IAST 扫描器
      • Hook 函数列表
    • 从源代码编译
      • Java 版本
      • PHP 版本
      • 管理后台
    • 云控后台接口
    • 代码调试
    • 添加新的Hook点
    • 添加新的插件API
    • 提交你的代码
  • 性能测试
  • 版本变更
  • 关于我们
Powered by GitBook
On this page
  • 下载测试用例
  • 安装测试用例
  • 检测能力说明
  • 用例使用说明
  • 攻击拦截说明
  • FAQ
Export as PDF
  1. 安装部署

安装测试用例

Previous普元PAS服务器Next安装灰盒扫描工具

Last updated 11 days ago

为了验证OpenRASP的漏洞检测效果,或者IAST工具的漏洞检测能力,我们提供了多个测试用例,覆盖常见高危漏洞。测试用例的部署也非常简单,复制到 webroot/webapps 目录即可。

下载测试用例

常用镜像:

文件说明

文件名
适用服务器
说明

php-vulns.tar.gz

PHP

主要测试用例,包含十几种高危漏洞

vulns.war

Java

主要测试用例,包含十几种高危漏洞

S2-016.war

Java

Struts S2-016 漏洞

fastjson.war

Java

fastjson RCE 漏洞

fastjson-1.2.60.war

Java

fastjson 1.2.60 RCE 漏洞

wxpay-xxe.war

Java

某支付系统 XXE 漏洞

CVE-2019-10173.war

Java

xstream 反序列化漏洞

CVE-2019-12384.war

Java

jackson-databind 反序列化漏洞

安装测试用例

PHP 版本

  • 解压 php-vulns.tar.gz 到web目录,并通过浏览器访问

Java 版本

  • 复制war包到webapps目录,等待一段时间后可通过浏览器访问。若web服务器未开启war包自动解压缩功能,可能需要重启web服务器生效。

检测能力说明

请参考如下几篇文章:

用例使用说明

在每个测试用例的页面里,我们都给出了正常的请求样例,以及攻击性的请求样例。你可以点击页面上的链接触发,也可以使用 curl 命令发出请求。具体请参考实际的页面:

攻击拦截说明

FAQ

1. SpringBoot 如何安装 JSP 测试用例?

2. OpenRASP没有产生报警

如果OpenRASP没有产生报警,请按照如下方法排查

  1. 确保OpenRASP引擎工作正常

    1. 检查OpenRASP是否支持你的服务器。此类问题Java环境出现较多,比如目前netty就不支持。排查方法是检查<rasp_home>/logs/rasp/rasp.log是否有[main][com.baidu.openrasp.HookHandler] detect server: XXXX字样,如果没有就是没识别到

  2. 确保漏洞存在

    1. WAF基于请求特征检测漏洞,并不关心攻击是否成功、漏洞是否存在。OpenRASP基于行为检测,只有攻击成功的时候才会产生报警,所以需要漏洞真实存在。比如,对于SQL注入漏洞,你应该优先使用sqlmap进行测试,并确保能够读取到业务数据

  3. 检查JS检测插件是否正确

    1. 如果你同时在测试IAST,请先把插件换回防护插件,即official.js

  4. 如果不是上述问题,需要手动排查原因

    1. 开启行为日志,然后检查<rasp_home>/logs/plugin/plugin.log是否有日志。

      1. 对于远程版本,可以在后台打开打印「行为日志」开关

    2. 如果没有相关行为日志,则说明目前Java、PHP agent不支持你的服务器。你可以提交PR或者联系我们,并提供最小测试用例

    3. 如果有行为日志,则说明目前JS插件无法防护你发起的攻击。同样,你可以联系我们,并提交最小测试用例

3. OpenRASP产生了报警,但是没有拦截攻击

如果是单机版,

如果是远程管理版本

  1. 打开后台,找到 系统设置 -> 防护设置

  2. 关闭总开关,即 将所有算法设置为「记录日志」模式

  3. 对于你想要开启的检测算法,改为 拦截攻击

  4. 点击保存,并等待一个心跳周期生效(也可以通过重启tomcat/php等应用服务器快速生效)

当攻击被拦截,OpenRASP 会显示特定的拦截页面,以及当前 Request ID,事后可根据这个ID去搜索对应的攻击日志。如果你发现 OpenRASP 无法拦截攻击,很有可能是安装没有成功,请参考 文档进行排查,并检查应用启动日志是否有错误,e.g catalina.out

值得注意的是,默认我们不开启拦截,需要你关闭 系统设置 -> 防护设置 -> 将所有算法设置为「记录日志」模式 开关,保存后等待一个心跳周期生效;单机版需要参考 修改插件,才能开启拦截。

最后,若要了解报警里有哪些字段信息,请查看 文档。

请参考 这篇文章进行操作,或者使用我们的servlet版本测试用例

检查日志目录是否有写权限。此类问题PHP环境出现较多,可以参考进行排查

对于单机版,请参考修改插件

请参考修改插件

国外镜像: github.com
国内镜像: packages.baidu.com
检测能力,覆盖场景以及零规则检测算法介绍
CVE 漏洞覆盖说明
常见安装问题
单机版本 - 开启拦截
日志说明
仰望星空 - springboot中使用jsp
OpenRASP正常拦截攻击,但是alarm.log没有日志
开启行为日志
开启拦截
blocked
blocked