| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> OpenRASP Java应用自我保护使用 -> 正文阅读 |
|
[系统运维]OpenRASP Java应用自我保护使用 |
前言笔者上一章写了编译openrasp-v8的JNI编译过程,实际上是百度开源的OpenRASP的引擎依赖包,简单体验了,基础功能非常不错,只是很多管理功能需要2次开发,体验了以下,分享过程。 1. RASP与WAFRASP(Runtime application self-protection)运行时应用自我保护,将自身注入到应用程序中,与应用程序松耦合,进行实时监测、阻断攻击。对于JAVA而言,应用本身通过javaagent技术注入agent来实现,原有代码无需修改。 实际上WAF的部分功能与RASP重叠,WAF是专门防御安全方面的,只是侧重点不一样,而且加密或者序列化流只能RASP防御。区别网上都很多了,可以直接网上查阅。本质上RASP就是给应用武装,让应用自身去跟安全风险作战。 2. 安装体验查阅百度OpenRASP文档:安装部署 - OpenRASP 官方文档 - 开源自适应安全产品 (baidu.com) 目前client仅支持Java、PHP,目前主流开发方式是Java,所以体验Java为例。? 2.1 准备实际上准备的是server端的数据库,还有client端的数据库示例,所以需要MongoDB、ElasticSearch、MySQL 安装Server端,各个版本要求很明确了,MongoDB就选最新版本,elasticsearch就选5.6 ?MySQL是客户端示例需要的,笔者就选5.6,方便测试漏洞。 自己开发直接docker安装,方便:
运行后 2.2 server安装server端可以下载直接用,如果需要定制就要2次开发,源码编译,go开发的后端 ??????Index of /app/openrasp/release/latest/ (baidu.com) 笔者macOS下:wget?https://packages.baidu.com/app/openrasp/release/latest/rasp-cloud-mac.tar.gz 下载解压后:tar -zxvf rasp-cloud-mac.tar.gz ?然后执行
可以看到版本号1.3.7,client的agent也建议对应。? ?日志路径,后管编写系统go,CN地址go很活跃,基本上是世界上最活跃的区域了,一般用来编写后管系统,类似后管前端使用VUE编写差不多。此时可以访问: 其中用户名固定为?openrasp,初始密码为?admin@123。? 仅仅是安装好了server端,实际上是后管平台,不会有任何用途,需要agent注入才能生效 2.3 agent注入?以Tomcat为例,实际上Springboot原理类似,都是执行注入javaagent参数:javaagent技术原理_fenglllle的博客-CSDN博客_javaagent原理 wget?https://packages.baidu.com/app/openrasp/release/latest/rasp-java.tar.gz ?用下面的指令初始化,集成在CI CD平台,实际上是对jvm参数加上--javaagent: java -jar RaspInstall.jar -heartbeat 90 -appid 62d8c6e81ae21a6f67acc1ac0515011e36b69c75 -appsecret NAa3VwiqVe2u3bCulQex0AriesMn3GgONe931rPUmDO -backendurl http://localhost:8086/ -install?/path/to/tomcat
注意:appid和appsecret是server端每次启动生成的,不能使用固定的 这时就获取到一个已经注入javaagent的Tomcat,而示例需要去百度去获取 建议获取vulns.war,示例非常完整,放在tomcat的webapps下,解压 2.4 参数修改实际上启动Tomcat就可以用了,但是数据库漏洞会报错,因为没有连接数据库。需要修改参数,war包解压后先删除war,然后cd vulns 这2个配置,分别修改为docker的MySQL连接,直接查看OpenRASP可以看到,修改了catalina.sh脚本,注入agent参数 ./startup.sh即可启动 ,Tomcat尽量使用老版本,不超过Tomcat8,示例是jsp写的,新Tomcat可能不兼容。 2.5 体验???其中SQL注入这些需要提前创建表,安装示例写入即可? ?随意执行几个漏洞,拦截方式是可以修改的,但是没有发现规则修改的地方,管理功能基本上都有,但是不是很贴近实际生产。 插件可下载,但是不能单独每条编辑,NodeJS语法: 官方开发指南:单机版本 - OpenRASP 官方文档 - 开源自适应安全产品 (baidu.com) ?? 总结实际上百度开源的OpenRASP拿来就可以直接用,如果需要定制规则,需要后端定制,还有很多管理功能实际上可以更友好,但是核心功能非常完整,自己需要处理agent带来的的性能影响,出现agent问题怎么办的情况。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 0:45:37- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |