最佳实践使用DLV查看某企业安全态势

网友投稿 680 2022-05-30

本文档介绍某企业安全态势监控大屏的创建过程,为云上企业的安全事件处置提供可视化的决策依据。

特点如下:

使用实时业务态势,可以实时检测,有效防范每一起安全事件。

使用地理化访问轨迹,通过2D、3D地图组件使安全威胁来源一目了然。

使用表格组件的条件样式,对风险等级做出明显区分,可以快速捕获高风险攻击源。

列举展示内容:根据内容选择组件,该项目需要展示企业网站的访问情况与网站受攻击情况。内容主要包括两大类:访问信息与攻击信息。

访问状态下的访问信息与使用的组件类型如下表所示:

访问信息

组件类型

访问区域排行

区域排行

网站访问区域

中国地图

访问趋势

线状图

实时攻击信息

轮播表格

攻击状态下的攻击信息与使用的组件类型如下表所示:

攻击信息

组件类型

攻击区域排行

区域排行

攻击类型排行

轮播表格

攻击趋势

线状图

攻击源

地球

已开通关系型数据库RDS,并创建“数据库引擎”为“MySQL”的实例“rds-secure0”。

已购买云数据迁移CDM,新建集群“cdm-secure”。

说明:

新建CDM集群“cdm-secure”时,在“购买云数据迁移集群”页面中的“虚拟私有云”、“子网”、“内网安全组”信息配置需要和RDS实例“rds-secure0”一致。

数据准备

从https://dlv-public-image.obs.cn-north-1.myhuaweicloud.com/demo1.zip路径下载数据至本地。

选择创建好的RDS实例“rds-secure0”,输入用户名和密码登录到云上数据库MySQL,在“rds-secure0”根目录创建数据库“dlv”,选择“导入·导出 > 快速导入”将下载的sql数据导入到数据库中。

创建云数据库MySQL连接

登录DLV控制台。

选择“我的数据 > 新建数据连接”。

在“新建数据连接”页面,选择建立“云数据库MySQL”的连接。

设置云数据库MySQL名称为“mysql_secure”,配置“mysql_secure”的域名、端口、用户名、密码、连接代理集群。点击“获取数据库”,选择数据库“dlv”,单击“确定”,数据源“mysql_secure”创建成功。如图1所示。

图1 创建mysql_secure

登录DLV控制台。

单击“我的大屏 > 新建大屏”,

选择空白模板,新建一个大屏名称为“secure”的大屏。

图2 新建大屏

在组件列表下的“文本”组件库中选择“标题”组件。

图3 插入标题组件

单击“标题”组件的“数据”面板,设置value值为“某企业安全态势感知”。

图4 某企业安全态势感知

单击“样式”面板,配置标题的文本样式。如图5所示。

图5 配置标题组件

在组件列表下的“地图”组件库中选择“地球”组件。

图6 插入地球组件

在“样式”面板中配置飞线颜色样式。如图7所示。

图7 飞线样式配置

单击“数据”面板,在字段映射处配置“from”映射为“attack_source”,“to”映射为“attack_dest”。在“数据源类型”的下拉选项中选择“数据库”,“选择已有数据连接”的下拉选项中选择“mysql_secure”,通过sql语句查询攻击数据,单击“查看数据响应结果”。执行不同的sql语句,数据响应的结果不同,您可以根据不同的攻击类型输入不同的sql语句。

查询攻击类型XSS的sql语句:SELECT CONCAT(t.src_lng , ',', t.src_lat) as attack_source, CONCAT(t.target_lng, ',', t.target_lat) as attack_dest, COUNT(1) AS attack_num FROM dlv.ods_attack_log t where t.attack_type="XSS" GROUP BY t.src_lng , t.src_lat , t.target_lng , t.target_lat

查询攻击类型CSRF的sql语句:SELECT CONCAT(t.src_lng , ',', t.src_lat) as attack_source, CONCAT(t.target_lng, ',', t.target_lat) as attack_dest, COUNT(1) AS attack_num FROM dlv.ods_attack_log t where t.attack_type="CSRF" GROUP BY t.src_lng , t.src_lat , t.target_lng , t.target_lat

查询攻击类型sensitive_file的sql语句:SELECT CONCAT(t.src_lng , ',', t.src_lat) as attack_source, CONCAT(t.target_lng, ',', t.target_lat) as attack_dest, COUNT(1) AS attack_num FROM dlv.ods_attack_log t where t.attack_type="sensitive_file" GROUP BY t.src_lng , t.src_lat , t.target_lng , t.target_lat

图8 XSS的数据响应结果

在地球“样式”面板单击“添加子组件”,下拉列表中选择“地球飞线”。如图9所示。

图9 添加地球飞线组件

单击“地球飞线”,进入“地球飞线”配置面板。在“样式”面板中配置飞线颜色样式。如图10所示。

【最佳实践】使用DLV查看某企业安全态势

图10 地球飞线样式配置

重复3在“数据”面板中配置地球飞线数据,输入查询CSRF攻击类型的sql语句,单击“查看数据响应结果”。

重复4,5,6配置另外一组地球飞线样式和数据,输入查询sensitive_file攻击类型的sql语句,单击“查看数据响应结果”。

在组件列表下的“常用图表”组件库中选择“区域排行”组件。

在组件右侧的“样式”中配置组件样式,“数据”面板中字段映射处配置“area”映射为“area_name”,“num”映射为“pv_num”,“数据源类型”的下拉选项中选择“数据库”,“选择已有数据连接”的下拉选项中选择“mysql_secure”,通过sql语句“select area_name,pv_num,percent from dw_pv_country order by 2 desc”查询访问区域排行,单击“查看数据响应结果”。

图11 访问区域排行

在左侧组件库中拖动一个“标题”组件至“区域排行”组件的上方,并给标题组件命名为“访问区域排行”。

右键单击“区域排行”,选择“拷贝”,复制一份新的区域排行组件。

图12 拷贝区域排行组件

重复2配置组件样式,“数据”面板中字段映射处配置“area”映射为“area_key”,“num”映射为“attack_num”,执行sql语句“select area_key,attack_num from dw_attack_province order by 2 desc limit 5” 访问攻击区域排行。

在“新的区域排行”组件上方配置一个名称为“攻击区域排行”的“标题”组件。

图13 添加区域排行组件

添加“基础平面地图”和“标题”组件,标题组件命名为“网站访问区域”,配置“基础平面地图”的组件“样式”与“数据”。

基础平面地图在“数据”面板中配置字段映射后,执行sql语句:select area_key as name,pv_num as value from dw_pv_province;

添加“线状图”和“标题”组件,标题组件命名为“访问趋势”,配置“线状图”组件的“样式”与“数据”。

访问趋势的线状图在“数据”面板中配置字段映射后,执行sql语句:select date_hour,pv_num from (select date_hour,pv_num from dw_pv_hour order by 1 desc limit 10) pv_hour order by 1;

复制2中的线状图和标题组件,生成一份新的线状图和标题组件。新的标题组件命名为“攻击趋势”。配置新的线状图组件的“样式”与“数据”。

攻击趋势的线状图在“数据”面板中配置字段映射后,执行sql语句:select date_hour,attack_num from (select date_hour,attack_num from dw_attack_hour order by 1 desc limit 10) attack_hour order by 1;

图14 添加基础平面地图、线状图组件

添加两个“表格轮播”组件分别展示攻击详细信息和攻击类型排行。

在“数据”面板中配置字段映射后,执行攻击详细信息的sql语句:

SELECT FROM_UNIXTIME(FLOOR(ROUND(date_time / 1000)), '%Y-%m-%d %H:%i:%S') as date_time, province_key, CONCAT('***', SUBSTRING(url, 20, 30), '***') url, t1.type_name_cn,(case risk_level when '8' then '高危' when '7' then '紧急' when '6' then '紧急' when '5' then '一般' when '4' then '一般' else '一般' end) as risk_level FROM ods_attack_log t, dim_attack_type t1 WHERE t.attack_type = t1.type_code AND province_key IS NOT NULL ORDER BY 1 DESC LIMIT 10;

在“数据”面板中配置字段映射后,执行攻击类型排行的sql语句:

select attack_type_name, (case risk_level when '8' then '高危' when '7' then '紧急' when '6' then '紧急' when '5' then '一般' when '4' then '一般' else '一般' end) as risk_level,attack_num from dw_attack_type order by 3 desc;

为了表示不同风险级别,在“数据”面板的“风险系数”参数下的“条件样式”页签中,设置红色为高危级别。

图15 表格轮播

最后添加背景图片、边框、时间器等素材。安全态势感知大屏最终展示效果如下图所示。

图16 安全态势感知大屏

大数据分析

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【WEB前端全栈成长计划】第三阶段 考核开发实录(四)
下一篇:Excel表格如何使用自动套入格式批量修改数据
相关文章