OpenRASP v0.21 版本发布,拖库检测与数据安全

释放双眼,带上耳机,听听看~!

文章转载开源中国

OpenRASP 简介

OpenRASP 是百度安全推出的一款开源、免费的自适应安全产品。OpenRASP将新兴的RASP(Runtime Application Self-Protection)安全防护技术普及化,使其迅速成为企业Web安全防护中的一个重要武器,有效增强防御体系纵深和对漏洞防护的适应能力。

据上一个版本发布相隔约1个月,百度安全实验室此次发布为OpenRASP v0.21版本。

What's New

首先,该版本进一步加强了SQL注入的检测能力。在v0.21里,我们公开了SQL注入检测算法#2,即根据语句规范来判定是否存在SQL注入攻击。目前我们一共支持5种规范:

  • 禁止多语句执行,e.g select 123; select 456

  • 禁止16进制字符串,e.g load_file(0x41424344)

  • 禁止MySQL版本号注释,e.g /*!12345

  • 禁止数字常量比较操作,e.g SELECT 1 FROM dual WHERE 8778 <> 8778

  • 禁止使用黑名单里的函数,e.g load_file,benchmark,pg_sleep, …

我们挑选了包括Discuz 等十几种开源应用,提取了他们的SQL语句进行测试,目前没有发现误报的情况。具体要开启哪些检测逻辑,请结合业务来进行配置。

其次,该版本引入了数据库拖库检测功能。通常,黑客会先尝试上传WebShell,一旦成功,就可以利用数据库管理功能,进行拖库操作。当单个SELECT语句读取行数超过预先定义的阈值,OpenRASP就会产生报警,提示管理员检查应用是否异常。这个条数默认是500,可以在 rasp.properties 里配置。

然后,在安全基线检查上,我们增加了对数据库连接账号审计的功能。使用管理员账号链接数据库的Web应用,通常会带来更多安全隐患。当发生SQL注入攻击,或者当黑客拿到Web服务器控制权限时,结合一系列技巧,黑客可以进一步拿下数据库服务器,获取更多机密数据。

目前我们会检测的管理账号如下:

  • SQL Server: sa、administrator

  • MySQL: root

  • Oracle: sys、system

另外,为了减轻运维压力,相同的Web应用,每天只会报警一次。

最后值得一提的是,在v0.21里,我们增加了对DB2数据库的支持。 DB2在金融行业广泛应用,然而商业RASP产品均不支持。由于授权原因,我们仅测试了DB2 9.7、10.5等几个版本。

更新详情

重大变更

  • 安全基线日志拆分到单独的文件里

    • 方便采集不同类型的日志

    • 升级前,用户需要手动删除 rasp/conf/rasp-log4j.xml 文件

新增功能

  • 检测 JSTL 方式的文件包含漏洞,或者SSRF漏洞利用

  • 支持 DB2 数据库,我们仅测试了免费版本,9.7 和 10.5

  • 服务器安全基线

  • 增加慢查询审计功能

    • 使用 SELECT 语句读取超过500行数据,可配置

  • 支持 Syslog TCP 方式传输报警日志

算法改进

  • 公开SQL注入检测算法 #2 – 基于语句规范,可修改插件配置

    • 禁止多语句执行,e.g select 123; select 456

    • 禁止16进制字符串,e.g load_file(0x41424344)

    • 禁止MySQL版本号注释,e.g /*!12345

    • 禁止数字常量比较操作,e.g SELECT 1 FROM dual WHERE 8778 <> 8778

    • 禁止使用黑名单里的函数,e.g load_file,benchmark,pg_sleep, …

API 变更

其他变更

给TA打赏
共{{data.count}}人
人已打赏
安全经验

安全人员发现基于 .NET 平台且使用开源项目的勒索软件

2017-12-4 11:12:22

安全经验

Java 社区平台 Sym 2.3.0 发布,包含安全方面的更新

2017-12-13 11:12:22

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索