语言分析的三大难题,没有它们,InfoWatch Traffic Monitor无法正常工作

图片



你好!今天,我们将讨论如何将语言学集成到DLP系统的工作中,以及它如何帮助我们保护重要数据免受恶意攻击。



最近,公司保护数据免遭机密信息泄露的需求已大大增加。员工转向远程工作模式导致信息安全领域的网络攻击和犯罪活动显着增加:根据分析师的报告,到2020年第一季度,俄罗斯公司泄露的机密信息数量增加了38%,这种趋势还在继续发展。



通常,法律文件,财务文件,员工和客户的个人数据等都受到攻击。为了保护机密数据不受入侵者的侵害,公司安装了DLP(数据丢失防护)系统以防止信息泄漏。



语言分析技术已深深地集成到许多DLP系统的工作中,因为内容分析是过滤流量以检测违规的不变基础,并且技术的质量在很大程度上决定了产品本身的质量。



语言分析:如何工作



语言分析技术允许根据术语及其所遇到的组合自动确定主题以及所分析的信息是否机密



首先,我们对文件进行初步分析:在客户公司确定机密且需要保护的文件数量和内容之后(对于每种受保护信息类别,最好至少有十个文件样本)。如果客户不明白他必须提供什么文件,则可以关注客户组织中接受的受限信息列表),语言学家突出显示这些术语-特定行业的特征的单词或短语,并指定文本的详细信息。在此极为重要的是,在一个行业的文档文本中尽可能经常找到这些术语,而在另一个行业则很少见这些术语(例如,对于银行业,典型的术语可以是“现金余额”,“结算和现金服务”或“存款”)。



-此外,还对术语进行了分类。类别的数量是不确定的,但是,选择的类别越多,分类将越多样化。类别将术语分为一般概念组,以帮助更清晰地组织信息。



对术语进行分类后,语言学家可以将其定义为“特征”。特征是仅在输入它们的类别中找到的术语,在任何其他类别中都没有出现。如果在拦截的文本中甚至找到一个这样的术语,则该文本自动属于该术语所在的类别。



通常,一个类别中的三个术语(非特征性术语的最小数量,系统会检测到该术语以检测其为机密文字)的最小数量取决于该类别的细节。如果这是仅由特征性术语组成的类别(例如,“毒品”,“恐怖主义”等),则该类别中可能有数千个术语。如果类别由非特征性术语组成(通常,这些是基于公司文档的类别-人员,会计,法律信息),则建议将术语数限制为几十个(三个至五十个)。



图片



-然后,语言学家将类别输入内容过滤数据库(BCF),在此基础上进行语言分析。内容过滤库是一个分层结构的字典,其中包含类别和术语的列表。



BKF用作分类器,在此基础上发生所分析信息的主题分布。



在BCF中添加非特征性术语时,会为其分配权重-1到10之间的数字(默认情况下,创建类别时,权重设置为5)。类别中术语的权重值应与文本中术语使用频率的比率成正比,这是术语相对于彼此使用的频率-BCF中不包含的相对于文本中这些词的频率无关紧要,例如,如果在BCF类别之一中我们将引入术语“ glokaya”,“ kuzdra”和“ shtekto”并为其设置相同的权重(权重为10或1都没有关系),然后将检测到文本“ Glokaya kuzdra shteko弄翻了侧面并且卷曲了bokrenka”,相关性为1。在转发的文本中,单词“ glokaya”和“ kuzdra”将出现10次,“ shteko”-100次,则所有术语具有相同权重的类别文本的相关性将降低,大约为0.69。在这种情况下,将术语“ gloka”和“ kuzdra”的权重设置为1,将术语“ shteko”的权重设置为10是合理的。然后,发送的文本的相关性将变为1。很明显,并非总是可以遵守如此严格的比例,但是应该为之努力。



为了确定文本与特定类别的相关性,使用了一种经典的搜索模型-矢量模型。这是使用各种语言对象的一种相当流行的方式。



图片



主要思想可以描述如下:存在由各种术语定义的特定空间(在我们的情况下,它是包含文本信息的系统拦截的文档)。为截取的文档建立一个向量,向量的每个坐标的值将是此文档中使用相应术语的次数。为每个BKF类别构建相似的向量。所有分析文本的向量维数均相同,并且等于BKF中的单词数。



然后可以使用点积和范数将向量的相关性值计算为它们之间夹角的



图片



余弦值截获文档和BKF中的项余弦相似度在0到1的范围内变化:该值越大,文档与一个类别或另一类别的相似性就越大。



与其他文本分类技术相比,基于内容过滤基础的语言分析技术具有许多优势(InfoWatch语言学家也使用这些技术来分析文档,但稍后会详细介绍这些技术)。



BKF的主要区别特征是其“灵活性”以及为特定公司的需求定制基础的能力。语言学家手动补充和调整BKF的内容,从而为每个客户微调技术。



基于BKF的语言分析技术可让您找到必要的术语和短语,并考虑音译,错别字和词法的存在:例如,对于给定的术语“运输租赁”,系统将同时对“运输租赁”和“运输租赁”做出反应,即e。该术语的所有可能变形和印刷错误。搜索是根据形态词典进行的(对于俄语,它是A.A.Zaliznyak的词典,对于外语-单独创建的词典)。错字检测器不能纠正形态词典中的术语,这有助于避免对单词之间的Domerau-Levenshtein距离(1)等于1的单词做出反应



InfoWatch具有庞大的行业词典数据库。我们已经为各种业务领域开发了BKF-从太空到能源,我们还拥有狭窄的基础(例如,在伊斯兰中或包含C ++,Java等源代码),这些基础是针对各个公司的特定目的而设计的。还值得补充的是,除俄语外,我们还考虑到其中许多外语在形态学方面的支持,因此有33种外语的95个BKF。



自动语言学家:快速保护标准文档



通常,单个公司的工作流在可变性方面不会有所不同;在每个部门中,都使用主题和词法内容相似的标准文档。



为了在InfoWatch的“军械库”中对此类文档进行保护和分类,还有另一个用于分析文本数据的工具-“ Autolinguist”。



顾名思义,该技术使您可以自动将典型文档分类为预定义的类别,而无需进行手动分析。



在BKF创建框架内对文档进行分析通常是一项漫长而费力的工作(平均而言,语言学家需要2-5天的时间来突出显示术语,创建类别并进一步消除假阳性和假阴性反应),自动语言学家可以显着加快设置文本分类的过程。



分类器使用Liblinear机器学习库,特别是logistic回归算法(2),这使得有可能获得文本文档属于特定类别的概率。



用户有机会自己定制“自动语言学家”的工作:预先加载了文档训练集并训练了分类器之后,用户可以随后添加新类别以及调整文档库的内容。



文本对象:正则表达式不是问题而是解决方案时



文本对象 是另一个用于分析和检测必要信息的强大工具,它是一种基于正则表达式的技术(众所周知,它是非常灵活和便捷的工具,允许您指定几乎任何搜索条件),并且用于使用固定的外部文件保护数据显示例如信用卡号,银行帐户详细信息,电子邮件地址等。



图片



文本对象可以包括一个或多个正则表达式或字符串(单词或短语;在这种情况下,将搜索与单词字符串完全匹配的模式,而无需考虑拼写和词法的特殊性)的模式。



为了验证找到的文本或数字和设置的组合,并在不更改技术源代码的情况下考虑到客户的需求,使用Lua编写了验证功能。



我将给出一个验证功能的示例,该功能可以在SWIFT系统中检测国际银行代码:



图片



该功能删除“ SWIFT”前缀,验证并返回不带分隔符的其余文本。



除了一组预装的文本对象(俄语,白俄罗斯语,哈萨克语,越南语,马来语,阿拉伯语以及涵盖几乎所有业务领域数据的许多国际文本对象)之外,用户还可以创建自己的文本对象,这些文本对象对于特定业务而言是唯一的。例如,对于运输机构来说,控制车辆的VIN号非常重要,对于军事机构而言,控制军人ID的编号也很重要。



图片



朋友,从本文中您了解了InfoWatch Traffic Monitor系统中语言分析的主要复杂性:内容过滤基础及其基础-术语和类别; “自动语言”技术,能够独立分类典型文本和用于检测模板数据的文​​本对象。



尽管我们已经拥有的技术和开发已被证明行之有效,但我们继续积极地进行语义分析,定期补充现有内容并创建新的BKF和文本对象,并扩大语言技术的范围。将来,我一定会写所有的创新和有趣的“芯片”。



同事语言学家,发表评论,提出难题,抛出有用的链接并分享您的经验!让我们一起使世界变得更美好!



作者: Volobrinskaya Valeriavaleria_volob






1. , , , , .

2. , .



All Articles