基于C语言的DLP(数据泄露防护)核心实现

近年来,数据泄露事件越来越多,无论从外部合规要求还是内部安全需求,保障数据的完整性、一致性、可用性已经成为组织内部首要关注点。

组织内部数据可分为结构化及非结构化两种类型,结构化数据安全防护技术已经相对成熟,如数据库审计、防火墙、脱敏、加密、备份等产品可支撑数据生命周期下对数据的安全管控要求,但针对非结构化数据目前处于火热阶段,已是数据安全产品新的发力点,主要技术为DLP即数据泄露防护,DLP分为主机与网络两种监测方式,主机是通过在终端安装的防泄漏客户端实现文件扫描、截屏留证、传输管控等功能。另外是通过识别网络流量方式检测网络传输文件是否包含泄露内容。目前使用较为广泛、实施成本最低、客户容易接受的便是网络监测的方式。

本文主要介绍如何通过旁路镜像检测网络流量中相关文件,实现对敏感文件内容的防护。由于前期只考虑核心原理及技术最终实现,所以在代码方面还未来得及优化完善,另外我只通过解读pcap文件,识别doc文本一种环境,针对复杂环境还需完善。综上所述,本文知识探讨DLP核心技术实现原理和相关技术实现,所以代码层面会一定缺陷,还请见谅。

主机版DLP可依托开源openDLP进行实现,本文不进行介绍。

二、实现原理

通过镜像流量方式检测文件是否包含敏感内容,是否已经泄露,其实现方式流程为:1.采集网络流量;2.解析网络流量内容;3.根据文件头判断文件类型;4.导出tcp数据,根据判断的文件类型重命名文件,也可通过关键字转换成十六进制码进行在线匹配,如果匹配成功再进行文件保存留证;5.如果为图片,则通过OCR识别后进行判断,如果为非文字识别,可通过机器学习方式进行学习后再对图片进行识别。

我测试方式为,从网站下载一份word文档,另存为pcap文件,随后识别pcap文件中的文档类型并进行另存留证。

三、具体实现

  • 文件头基础介绍

在进行代码介绍前,首先需要了解文件头。网络流量对文件监测需要根据文件头进行判断,并根据文件头开始记录payload内容,下图为常见文件头内容(如不满足可自行搜索)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

登峰造Geek

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值