点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

项目地址:https://github.com/momosecurity/bombus

‍‍

‍‍项目介绍

近年来,随着监管政策不断细化与收紧,企业安全合规日趋重要。而合规工作的落地,存在大量检查、审计类重复活动,而且随着企业人员和适用政策的叠加,人工成本也会逐渐上升。因此,为解决此类问题,我们设计并实施了安全合规审计系统,将控制落实、合规检查及跟踪汇报等合规审计类流程固化到线上系统,实际使用中起到良好效果。

初始检查策略依据为SOX法案有关要求,适用于在美国上市的公司。企业可根据自身需要配置检查策略。

项目概览

1. 项目概念说明

项目主旨: 项目旨在检查公司内部生产存在的不合规行为,及时发现及时汇报。覆盖范围包括应用系统、操作系统及数据库三个横向维度,以及员工权限角色、操作日志及工单部署三个纵向维度。从不同的角度切入,对风险行为进行检测,识别风险项。

项目简要概念图说明如下:

如图所示,除去日常工作,最终的产出为审阅报告(点击查看)。

名词解释:

业务线: 参与审阅的各个独立的业务部门或职能部门; 资产清单: 各业务线的资产,其上承载了用户操作或产品功能,包含主机、数据库实例及运营后台等; 策略原子: 对业务线的日志或账号信息等,需要检测日志是否存在危险操作,账号是否有越权等,策略原子为对应的规则。

2. 数据同步简介

数据同步主要有推拉两种方式,结合要采集数据的集成化程度,选用哪种方式。

目前系统中推拉两种都有采用。数据拉取通过定时任务方式实现,由业务方推送的数据,则通过启用服务接口来实现。

因数据库、服务器主机的命令管理与账号权限信息相对于各业务线基本无差异,这里统一采用了拉取的方式。除此之外,还有资产列表的同步也是使用拉取的方式。

定时任务详情见样例:

deploy/crontab/crontab_demo.txt

针对应用系统,因各业务方差异较大,则统一采用了推送的方式,由业务方按照指定格式推送数据,完成数据采集。

接收接口为 api/audit/common_data, 其中详情格式定义见www/audit/utils.py中字段定义。数据消费交由后台服务business_bg_log_persistence

以其中UserRoleData 用户角色数据为例,对接数据格式如下:

字段名

含义

类型

实例

bg_name

后台名称

string

'ca_bg'

role

角色名称

string

'管理员'

date

统计日期

string

'2020-01-01'

user_details

用户列表

list

[{"user": "11111111", "create_ts": 1580897321}]

请求样例:

curl --location --request POST 'http://127.0.0.1:60010/api/audit/common_data/' \
--header 'Authorization: Token secret_key_example' \
--header 'Content-Type: application/json' \
--data-raw '{"data_type": "UserRoleData","data": [{"bg_name": "ca_bg", "role": "test", "date": "2020-01-01", "user_details": [{"user":"123", "create_ts": 1580897321}]}]
}'
  1. 代码概述

代码功能简介见当前目录文件 CODEVIEW

后台介绍

1. 概述

菜单总览

如果所示,除去用户管理外(管理员可见,不多介绍),项目总分为七个主目录。其中业务相关部分主要为资产清单、策略配置和任务为合规审计主体部分,知识库为合规的执行标准依据等,APP隐私合规与工作台为合规当前工作提供跟踪记录的作用。

2. 资产清单

资产清单

资产作为整个审计流程中最不可缺少的部分,分别包含应用系统的运营后台、数据库的实例和操作系统对应的主机等资产。为整个合规审查的基石, 数据采集的来源。这里资产类型分为应用系统、数据库和操作系统。审计范围则对应不同的审计规格。

3. 策略配置

策略配置

如图所示,该部分包含五个子目录,各目录介绍如下:

3.1 正则规则配置

正则规则主要用来对日志中的主机命令、数据库操作日志等进行匹配,筛选可能存在风险的命令(如用户授权等),该页面可依据于标准正则进行灵活配置,最终将命中日志呈现在审计报告中,以供审阅。

3.2 策略原子

策略原子

策略原子目前支持正则命令匹配、权限相容矩阵、长期未访问及转岗异动四种,从不同方面对用户行为进行检测。可以根据需要为不同的审阅任务配置差异化的监控策略。

正则策略原子可以组合【正则规则配置】中的正则规则,统一管理。

3.3 策略组配置

策略组

策略组可将多个策略原子进行统一管理配置,并可指定审阅周期(目前支持月、季度、半年),起到一次配置,重复使用的目的。

在任务配置中,可通过对策略组及业务线的组合,完成业务线的任务计划,在特定时间开启目标任务。

3.4 非标准用户管理

非标准用户指的是由于各种原因,在日志或权限中的用户唯一标识,不能通过标准的方式获取到用户信息。如用户标准名为【姓-名】,但由于历史原因,张三的名字为【张.三】。

3.5 审阅人管理

审阅人对应各个数据库系统、操作系统、应用系统及工单的负责人,在报告生成后,对报告中的问题进行审阅批复等。

4. 任务

任务

如图所示,任务分为任务配置与任务列表部分。

4.1 任务配置

任务配置起到执行计划的作用,可以随意搭配业务线与策略组,在指定时期生成审阅任务。为审阅报告的生成主体,与最终的报告一一对应。

4.2 任务列表

在当前条件(时间等)满足任务配置中的执行计划所需条件时,则生成具体的任务,如为业务线A配置了每季度的审阅任务,则在季度初会自动生成审阅任务。通过任务列表可进入到报告详情页。

审阅报告

图中所示为应用系统的审阅页面,显示数据为当前时间点的策略验证结果,针对风险项等情况特别进行标识。

5. 知识库&APP隐私合规&工作台

知识库

知识库是合规工作开展的基石,涵盖合规工作所依据的法律法规、内部制度等,让合规工作做到有据可依。

APP隐私合规与待办跟踪是为合规人员记录当前的工作事项及待办事项的记录界面,于此不多介绍。

快速启动

项目架构概述:

项目采用前后端分离结构,后端使用django + mongo + redis,前端使用iViewUI进行界面搭建,前后端交互主要通过使用django rest framework框架实现的REST API接口进行交互。

技术栈:

mongo + redis + nginx  + python3.6 + iViewUI(node v13.5.0)

快速体验:

注: 服务端口60010, 确保端口未占用
# 1. 使用docker方式部署, 确保本机docker环境; 2. 切换至项目目录下
chmod +x run.sh
./run.sh# 体验入口
访问入口: http://127.0.0.1:60010/
管理员: (user:admin; password:admin)
审阅人: (user:auditor; password:auditor)

‍‍

‍‍

往期推荐

记一次订单号的重复事故

实例告诉你如何把 if-else 重构成高质量代码!

盘点提高国内访问 GitHub 的速度的 9 种方案

这个需求很简单,明天上线没问题吧?要不要怼回去?

最最最全面的Java异常面试及解答

Spring Boot 多版本更新,紧急修复 RFD 安全漏洞

我们在星球聊了很多深度话题,你不来看看?

我的星球是否适合你?

点击阅读原文看看我们都聊过啥?

陌陌开源合规审计平台 Bombus相关推荐

  1. 安全合规--52--安全合规审计平台bombus-2.0部署实践

    一.引子 陌陌近期开源了他们的安全合规审计平台bombus-2.0,因此打算搭建起来看看,感觉这个平台对于日常合规工作的开展还是能方便很多的.平台具体就不过多做介绍了,开源项目中的README.md文 ...

  2. 开源合规处理方法_经济高效的开源软件许可合规模型

    开源合规处理方法 "法规遵从性工业园区"是一个唤起反乌托邦图像的组织,该组织从事复杂且昂贵的过程以遵守开放源代码许可条款. 当生活经常模仿艺术时,许多组织都参与了这种实践,可悲的是 ...

  3. SAP GRC 权限合规审计系统

    引言 SAP GRC权限合规检查系统(简称AMS-R系统)是SAP ERP应用企业进行权限合规检查.违规数据抓取和IT审计的理想工具. **关键字:**SAP GRC. SAP 合规审计. SAP 财 ...

  4. 如何保障银行日志安全合规审计

    日志是整个银行 IT 信息系统中非常重要的信息和数据,它对信息安全整个过程中关键记录信息的监控统计,特别针对安全事故分析.追踪起到了关键性作用. 随着网络规模的迅速扩大,加上各类应用系统逐步增多,运维 ...

  5. 大咖说开源|谭中意:如何构建高效/安全/合规的开源软件供应链和国际开源合规标准?...

    点击上方"开源社"关注我们 | 作者:叶雨秋 | 编辑:沈于蓝 | 设计:宋传琪.朱亿钦 开源供应链点亮计划 - 暑期系列是由中科院软件所和 openEuler 社区共同举办的一项 ...

  6. 帷幄DAM - 内容合规审核平台 内容营销分发平台

    X 美妆品牌市场营销团队内部流程复杂缓慢,导致营销内容的创作和流转滞后于市场发展,无法提供第一手营销资料进行产品宣传和销售,因此流失了很多潜在客户.优化低效的工作流程,加强品牌对外输出的能力,成为X品 ...

  7. 盘点现有开源软件许可合规工具

    |原文出处:The Openchain Reference Tooling Work Group |翻译:刘天栋.Ted,开源社.ONES(开源战略研究组) |编辑:胡湘月 |设计:周颖 引言 开源软 ...

  8. 完整的数字化招采平台(电子化采购管理系统)合规管理解决方案

    合规是公司治理的重要组成部分,是企业提升核心竞争力.防范市场风险和法律风险的重要手段,一流的企业必须要有一流的法治工作为保障.企业只有依法合规经营才能行稳致远. 合规背景 2018年11月,国务院国资 ...

  9. 扇贝开发:国内NFT平台运营主要合规问题

    2022年三月末,在关闭了一大批数字藏品交易小程序后,某头部社交软件平台又再次封禁了一大批NFT.数字藏品平台公众号.据不完全统计,此次封禁波及的较有知名度的平台约有十多个,还有不少平台公众号虽未被封 ...

最新文章

  1. 漫谈Word2vec之skip-gram模型
  2. TCP/IP 计算机网络协议
  3. 盘点Windows10系统的使用小技巧三 —— 虚拟桌面
  4. NSLog不打印设置
  5. 计算机汉字编码贵州,计算机汉字输入编码方法
  6. Codeforces Round #183 (Div. 2) C
  7. tf.contrib.slim add_arg_scope
  8. 图片太多加载过慢?学学图片懒加载吧
  9. jstack命令:教你如何排查多线程问题
  10. Spring Data Redis:Sentinel的高可用性
  11. java log.error_Logger.error打印错误异常的详细堆栈信息
  12. 套接字设置为(非)阻塞模式
  13. 【Python学习】 - - 链表推导式[ 2*x for x in X ]、匿名函数、并行迭代
  14. Postgresql添加/删除触发器示例
  15. 浅谈对程序员的认识_浅谈程序员的英语学习
  16. (转)TortoiseGit(乌龟git)保存用户名密码的方法
  17. 搜集-类似Visio绘图软件
  18. Java IO和NIO的区别
  19. 几个 ICON 图标 网站
  20. MarkDown基本语法--程序员必修

热门文章

  1. 坑爹坑娘坑祖宗的87端口(记一次tomcat故障排查)
  2. python 同步 互斥 信号量 锁 简介
  3. python3 使用psutil 查看内存占用
  4. linux 后台任务 前台任务 查看切换终止开始命令 bg、fg、ctrl+z、ctrl+d和ctrl+c 简介
  5. ASP.NET前台代码绑定后台变量方法总结
  6. c++中两个类互相引用的问题
  7. Linux C编程--网络编程1--字节顺序和字节处理函数
  8. Linux2.6内核 -- 结构的初始化
  9. Centos7.2部署DHCP服务
  10. CPU亲和性的使用与机制--含Xen中VCPU和PCPU的綁定方法