Tiago Souza - Tecnologia, Riscos e Segurança

Power BI: Como Visualizar Vulnerabilidades de Segurança

Este post apresenta um projeto que combina informações de três fontes para criar uma lista de vulnerabilidades de segurança: o Common Vulnerability Scoring System (CVSS), o Exploit Prediction Scoring System (EPSS) e a lista de vulnerabilidades exploradas conhecidas publicada pela CISA.

O projeto baixa as informações dessas fontes e as combina em uma lista que pode ser usada para enriquecer as informações fornecidas pelo seu scanner de vulnerabilidades, como o OpenVAS, para priorizar a correção.

Os scanners geralmente mostram apenas o número CVE e a pontuação CVSS, mas não exportam detalhes completos como "exploitabilityScore" ou "userInteractionRequired". Adicionando a pontuação EPSS, você obtém mais opções para selecionar o que fazer primeiro e filtrar nos limiares que fazem sentido para o seu ambiente. As saídas do projeto estão disponíveis nos formatos json e csv, além das informações serem importadas para um banco de dados sqlite.

Neste post, você também verá um exemplo de dashboard no PowerBI, contendo um arquivo de modelo do PowerBI que gera um painel que você pode ajustar às suas necessidades. Para usar o modelo, o relatório do OpenVAS deve estar no formato csv para que a importação funcione. Para utilizar o PowerBI, é necessário baixá-lo gratuitamente neste link. Não é preciso ter uma conta da Microsoft para utilizá-lo.

O projeto é escrito em bash, jq e sqlite3, tornando-o muito amigável para iniciantes. Esse post oferece um guia passo a passo para a configuração e execução do projeto, incluindo a obtenção de uma chave da API NIST, edição do arquivo .env e ajuste do agendamento do cron. Existem três contêineres do docker que executam as etapas necessárias, e vários arquivos de saída serão gerados.

No geral, o projeto oferece uma maneira fácil de combinar informações de várias fontes e priorizar a correção de vulnerabilidades de segurança.

Recursos de segurança

Antes de seguirmos, é importante entender o que são esses recursos que estamos citando aqui na postagem. O NIST (CVSS), o First.Org (EPSS) e o CISA (Exploited Vulnerabilities) são três recursos de segurança cibernética que ajudam a identificar e avaliar vulnerabilidades.

Exemplo de Dashboard no PowerBI

Este repositório contém um modelo de arquivo do PowerBI para gerar um painel personalizado de demonstração. É possível ajustar o painel para atender às suas necessidades:

power-bi-1 Imagem 1: Exemplo de painel com o PowerBI

 

O relatório do OpenVAS precisa estar no formato .csv para a importação funcionar:

power-bi-2 Imagem 2: Importação do arquivo .csv

 

O PowerBI usará o arquivo CVE.json criado e fará um relacionamento:

power-bi-3 Imagem 3: Relacionamento no PowerBI

Configurações

Execução

Você pode esperar o cron executar o script de download em um agendamento.

Alternativamente, você pode executar manualmente o script de download com o seguinte comando:

docker exec -it vulnerability-tables-cron bash /opt/scripts/download.sh

Descrição do Container

Existem três contêineres do Docker:

Tanto o contêiner filebeat quanto o logstash são opcionais e incluídos apenas para continência.

Exemplos dos arquivos de saída

Serão gerados vários arquivos de saída, e aqui está uma estimativa: 316K CISA_known_exploited.csv 452K CISA_known_exploited.json 50M CVSS.csv 179M CVSS.json 206M CVE.json 56M CVE.csv 6.7M EPSS.csv 12M EPSS.json 49M database.sqlite .

Você pode esperar encontrar estas informações para cada CVE: grep -i 'CVE-2021-44228' CVE.json | jq { "CVE": "CVE-2021-44228", "CVSS2_accessComplexity": "AV:N/AC:M/Au:N/C:C/I:C/A:C", "CVSS2_accessVector": "NETWORK", "CVSS2_authentication": "MEDIUM", "CVSS2_availabilityImpact": "NONE", "CVSS2_baseScore": "COMPLETE", "CVSS2_baseSeverity": "COMPLETE", "CVSS2_confidentialityImpact": "COMPLETE", "CVSS2_exploitabilityScore": "9.3", "CVSS2_impactScore": "null", "CVSS2_integrityImpact": "8.6", "CVSS2_vectorString": "10", "CVSS3_attackComplexity": "null", "CVSS3_attackVector": "null", "CVSS3_availabilityImpact": "null", "CVSS3_baseScore": "null", "CVSS3_baseSeverity": "null", "CVSS3_confidentialityImpact": "null", "CVSS3_exploitabilityScore": "null", "CVSS3_impactScore": "null", "CVSS3_integrityImpact": "null", "CVSS3_privilegesRequired": "null", "CVSS3_scope": "null", "CVSS3_userInteraction ": "null", "CVSS3_vectorString": "null", "CVSS3_acInsufInfo": "null", "CVSS3_obtainAllPrivilege": "null", "CVSS3_obtainUserPrivilege": "null", "CVSS3_obtainOtherPrivilege": "null", "CVSS3_userInteractionRequired": "null", "EPSS": "0.97095", "EPSS_Percentile": "0.99998", "CISA_dateAdded": "2021-12-10", "CISA_RequiredAction": "For all affected software assets for which updates exist, the only acceptable remediation actions are: 1) Apply updates; OR 2) remove affected assets from agency networks. Temporary mitigations using one of the measures provided at https://www.cisa.gov/uscert/ed-22-02-apache-log4j-recommended-mitigation-measures are only acceptable until updates are available." }

Download do Projeto

Para realizar o download do CVE Vulnerability Information Downloader, acesse o site do projeto no GitHub.

 


#CISA #CVE #CVSS #EPSS #NIST #ciberseguranca #powerbi #segurança #vulnerabilidade