Olá! Hoje vamos falar sobre como a linguística é integrada ao trabalho de um sistema DLP e como ela nos ajuda a proteger dados importantes de ataques maliciosos.
Recentemente, a necessidade das empresas de proteger os dados do vazamento de informações confidenciais cresceu significativamente. A mudança de funcionários para um modo de trabalho remoto levou a um aumento significativo de ataques cibernéticos e crimes na área de segurança da informação: de acordo com relatórios de analistas, no primeiro terço de 2020, o número de vazamentos de informações confidenciais de empresas russas aumentou 38%, e essa tendência continua a se desenvolver.
Via de regra, documentos legais, documentos financeiros, dados pessoais de funcionários e clientes, etc. estão sob ataque. Para proteger os dados confidenciais de intrusos, as empresas instalam sistemas DLP (Data Loss Prevention) para evitar vazamentos de informações.
A tecnologia de análise linguística está profundamente integrada ao trabalho de muitos sistemas DLP, já que a análise de conteúdo é uma base invariável para filtrar o tráfego a fim de detectar violações, e a qualidade da tecnologia determina em grande parte a qualidade do próprio produto.
Análise lingüística: como funciona
A tecnologia de análise lingüística permite determinar automaticamente o assunto e se a informação analisada é confidencial, com base nos termos e suas combinações encontradas nela .
Para começar, fazemos uma análise inicial dos documentos: após a empresa cliente determinar o volume e o conteúdo dos documentos que são confidenciais e que precisam ser protegidos (é desejável que haja pelo menos dez amostras de documentos para cada categoria de informação protegida). No caso em que o cliente não entende quais documentos ele deve fornecer, você pode focar na lista de informações restritas adotadas na organização do cliente), o lingüista destaca os termos- palavras ou frases típicas de um determinado setor e especificando as especificidades do texto. É extremamente importante aqui que os termos sejam encontrados com a maior frequência possível nos textos de documentos em um setor e extremamente raramente em outro (por exemplo, para o setor bancário, os termos típicos podem ser "saldo em dinheiro", "liquidação e serviços em dinheiro" ou "depósito").
- Além disso, os termos são categorizados . O número de categorias não é determinístico, porém, quanto mais categorias forem selecionadas, mais heterogênea será a classificação. As categorias agrupam termos em grupos conceituais gerais para ajudar a organizar as informações com mais clareza.
Quando um termo é categorizado, um linguista pode defini-lo como "característica". Características são os termos encontrados apenas na categoria em que foram inseridos e não ocorrem em nenhuma das outras categorias. Se apenas um desses termos for encontrado no texto interceptado, esse texto automaticamente pertence à categoria em que esse termo está localizado.
Em geral, pode haver de três termos em uma categoria (o número mínimo de termos não característicos, após a detecção dos quais o sistema detecta o texto como confidencial) a vários milhares, dependendo das especificações da categoria. Se esta for uma categoria que consiste apenas em termos característicos (por exemplo, "Drogas", "Terrorismo", etc.), então pode haver vários milhares de termos na categoria. Se uma categoria consistir em termos não característicos (em regra, são categorias baseadas na documentação da empresa - pessoal, contabilidade, informações jurídicas), é aconselhável limitar o número de termos a algumas dezenas (de três a cinquenta).
- Em seguida, o linguista insere as categorias no banco de dados de filtragem de conteúdo (BCF), com base no qual a análise linguística ocorre. A base de filtragem de conteúdo é um dicionário estruturado hierarquicamente que inclui uma lista de categorias e termos.
O BKF funciona como um classificador, a partir do qual ocorre a distribuição temática da informação analisada.
Ao adicionar termos não característicos ao BCF, eles recebem um peso- um número de 1 a 10 (por padrão, ao criar uma categoria, o peso é definido como 5). Os valores dos pesos para os termos na categoria devem ser proporcionais à razão das frequências do uso de termos no texto, e são as frequências do uso de termos em relação uns aos outros - sua frequência em relação às palavras no texto que não estão incluídas no BCF não importa. Por exemplo, se em uma das categorias do BCF vamos introduzir os termos "glokaya", "kuzdra" e "shtekto" e definir os mesmos pesos (não importa se eles têm um peso de 10 ou 1), então o texto "Glokaya kuzdra shteko fervido os lados e cachos bokrenka" será detectado com relevância 1. no texto encaminhado, as palavras “glokaya” e “kuzdra” aparecerão 10 vezes, e “shteko” - 100 vezes, a relevância do texto da categoria com pesos iguais para todos os termos diminuirá e será de aproximadamente 0,69.Neste caso, é razoável definir o peso dos termos "gloka" e "kuzdra" para 1, e o termo "shteko" para 10. Então, a relevância do texto enviado se tornará 1. É claro que nem sempre é possível observar uma proporção tão estrita, mas deve ser procurada.
Para determinar a relevância do texto de uma categoria particular, um dos modelos de busca clássicos é usado - o modelo vetorial. Esta é uma forma bastante popular de trabalhar com vários objetos linguísticos.
A ideia principal pode ser descrita da seguinte forma: existe um determinado espaço definido por vários termos (no nosso caso, este é um documento interceptado pelo sistema que contém informação textual). Um vetor é construído para o documento interceptado, o valor de cada coordenada do vetor será o número de vezes que o termo correspondente é usado neste documento. Um vetor semelhante é construído para cada categoria BKF. A dimensão dos vetores é a mesma para todos os textos analisados e é igual ao número de palavras do BKF.
Em seguida, o valor de relevância dos vetores pode ser calculado como o cosseno do ângulo entre eles, usando o produto escalar e a norma: A
semelhança do cosseno do documento interceptado e dos termos do BKF varia no intervalo de 0 a 1: quanto maior esse valor, mais semelhante o documento é a uma ou outra categoria.
A tecnologia de análise linguística baseada em bases de filtragem de conteúdo tem uma série de vantagens sobre outras tecnologias de classificação de texto (que também são usadas por linguistas do InfoWatch para analisar documentos, mas mais sobre eles posteriormente).
O principal diferencial da BKF é sua "flexibilidade" e a possibilidade de customizar as bases para as necessidades de uma determinada empresa. Os lingüistas reabastecem e ajustam manualmente o conteúdo do BKF, ajustando assim a tecnologia para cada cliente.
A tecnologia de análise linguística baseada no BKF permite encontrar os termos e frases necessários, levando em consideração a transliteração, a presença de erros de digitação e morfologia: por exemplo, com um determinado termo "locação de transporte", o sistema reagirá tanto a "locação de transporte" quanto a "locação de transporte", ou seja, e. a todas as combinações possíveis de inflexão deste termo com erros de impressão. A pesquisa é feita com base em dicionários morfológicos (para russo é o dicionário de A.A.Zaliznyak, para línguas estrangeiras - dicionários criados separadamente). O detector de erros não corrige os termos do dicionário morfológico, o que ajuda a evitar responder a palavras, a distância Domerau - Levenshtein (1) entre as quais é igual a um.
O InfoWatch possui um grande banco de dados de dicionários do setor. Desenvolvemos o BKF para uma variedade de áreas de negócios - do espaço à energia, também temos bases de perfil estreito (por exemplo, no Islã ou contendo o código-fonte C ++, Java, etc.), projetado para fins específicos de empresas individuais. Vale acrescentar que, além do russo, temos 95 BKFs em 33 línguas estrangeiras, levando em consideração o suporte de morfologia para muitas delas.
Autolinguist: proteção rápida de documentos padrão
Como regra, o fluxo de trabalho de uma empresa individual não difere em grande variabilidade; em cada um dos departamentos, são usados documentos padrão que são semelhantes no assunto e no conteúdo lexical.
Para proteger e classificar tais documentos no "arsenal" do InfoWatch existe outra ferramenta para análise de dados de texto - o "Autolinguist".
Como o nome sugere, a tecnologia permite classificar automaticamente documentos típicos em categorias predefinidas sem recorrer à análise manual.
A análise de documentos no âmbito da criação do BKF é geralmente um trabalho longo e intensivo em energia (em média, um lingüista leva de 2 a 5 dias para destacar termos, criar categorias e trabalhar mais com a eliminação de respostas falsas positivas e falsas negativas), um autolinguista pode acelerar significativamente o processo de configuração da categorização de textos.
O classificador utiliza a biblioteca de aprendizado de máquina Liblinear, em particular o algoritmo de regressão logística (2) , que permite obter a probabilidade de um documento de texto pertencer a uma determinada categoria.
O usuário tem a oportunidade de customizar o trabalho do “Autolinguista” por si mesmo: tendo carregado previamente a coleção de documentos de treinamento e treinado o classificador, o usuário pode posteriormente adicionar novas categorias, bem como ajustar o conteúdo da base documental.
Objetos de texto: quando regex não é um problema, mas uma solução
Outra ferramenta poderosa para analisar e detectar as informações necessárias são os objetos de texto - uma tecnologia baseada no uso de expressões regulares (que, como você sabe, são ferramentas extremamente flexíveis e convenientes que permitem especificar quase todos os critérios de pesquisa) e é usada para proteger os dados com um externo fixo apresentar, por exemplo, números de cartão de crédito, detalhes de contas bancárias, endereços de e-mail, etc.
Um objeto de texto pode incluir um ou mais padrões de expressões regulares ou strings (palavras ou frases; neste caso, a pesquisa será realizada por uma correspondência exata da palavra com a string, sem levar em conta as peculiaridades de grafia e morfologia).
Para verificar o texto encontrado ou uma combinação de números e configurações, levando em consideração as necessidades do cliente, sem alterar o código-fonte da tecnologia, as funções de verificação são escritas em Lua.
Vou dar um exemplo de função de verificação para detecção de códigos bancários internacionais no sistema SWIFT:
A função remove o prefixo “SWIFT”, verifica e retorna o resto do texto sem separadores.
Além de um conjunto de objetos de texto pré-instalados (russo, bielorrusso, cazaque, vietnamita, malaio, árabe, bem como vários outros internacionais que cobrem dados de quase todas as áreas de negócios), os usuários têm a oportunidade de criar seus próprios objetos de texto que são exclusivos para uma empresa específica. Por exemplo, será importante para uma organização de transporte controlar o número VIN de carros, e para uma estrutura militar - o número de identificação de um militar.
Amigos, com este artigo, vocês aprenderam sobre os principais meandros da análise linguística dentro do sistema InfoWatch Traffic Monitor: bases de filtragem de conteúdo e seus princípios básicos - termos e categorias; Tecnologia "Autolinguist", capaz de classificar de forma independente textos típicos e objetos de texto usados para detectar dados de modelo.
Apesar da comprovada eficácia das tecnologias e desenvolvimentos que já possuímos, continuamos a desenvolver ativamente na análise semântica, reabastecendo regularmente os existentes e criando novos BKF e objetos de texto, bem como expandindo o âmbito das tecnologias linguísticas. Com certeza vou escrever sobre todas as inovações e "chips" interessantes no futuro.
Colegas-linguistas, comentem, façam perguntas difíceis, joguem links úteis e compartilhem sua experiência! Vamos fazer do mundo um lugar melhor juntos!
Autor: Volobrinskaya Valeriavaleria_volob
1. , , , , .
2. , .