Implantar e executar o Splunk Enterprise dentro de um contêiner Docker + conectar-se a openvas
Mais uma vez,
olá, meu caro!!
O post não começa aqui
Como vocês perceberam os assuntos do blog estão muito diversificados e isso é legal, quanto mais tecnologias conhecermos melhor, sem via de dúvidas. No post de hoje eu decidi abordar esse assunto de "Splunk+Docker+Openvas" pois no post anterior eu mencionei a respeito dele. Durante minhas buscas eu não consegui identificar este assunto agrupado em um só lugar e em português, lendo documentações e relatos em fóruns e após implantar está arquitetura algumas vezes,
eu me senti preparado para compartilhar e facilitar a vida dos interessados. Ao final do post eu sempre recomendo leitura, não deixe de ler!
Por que utilizar Splunk no docker?
Com a aplicação rodando em micro serviço torna muito fácil a escalação de clusters, replicação do ambiente, obtemos tbm uma redução de recursos e custos de hardware. Após a configuração inicial os clusters podem ser criados sob demanda.
Etapas:
- Obter o docker
- Obter a imagem do splunk
- Rodar a imagem do splunk
- Instalar componente do GSM no splunk
- Configurar índices
- Configurar alertas do splunk
- Disparar alerta do GSM para o splunk
1. Obter o docker
Caso você não tenha o docker instalado comece por aqui, faça o download e instalação do docker em seu sistema, os links oficiais para download estão logo abaixo:
Website oficial
Community Edition
As instalções estão disponíveis para:
- Windows
- Mac
- Linux
- AWS & Azure
Instalação do docker
2. Obtendo a imagem do splunk
Uma imagem do Docker é uma coleção de binários e configurações a serem usadas ao iniciar um contêiner
Existem imagens oficiais do Splunk Docker
Faça o download da imagem conforme oweb comando abaixo:
#docker pull splunk/splunk:latest
Obtendo a imagem do splunk |
Para utilizar a image contida no github declare o comando abaixo:
#git clone https://github.com/splunk/docker-splunk
3. Rodar a imagem do splunk
Execute o comando abaixo para rodar a imagem do splunk. Repare que a porta 7680 ficará exposta, isto justamente por que precisaremos dela para escutar as conexões advindas do openvas.
docker run -d -p 8000:8000 -p 7680:7680 -e 'SPLUNK_START_ARGS=--accept-license' -e 'SPLUNK_PASSWORD=<password>' splunk/splunk:latest
Onde está <password> você deve declarar um novo password para acessar o splunk pela primeira vez. O usuário é admin, após o primeiro acesso as credenciais podem ser alteradas.
Status Contêiner
#docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
283ce7035651 splunk/splunk:latest "/sbin/entrypoint...." 6 minutes ago Up 6 minutes (healthy) 0.0.0.0:7680->7680/tcp, 4001/tcp, 8065/tcp, 8088-8089/tcp, 8191/tcp, 9887/tcp, 9997/tcp, 0.0.0.0:8000->8000/tcp tender_ramanujan
Gerenciamento de portas do docker - Contêineres do Docker são executados em uma rede virtual isolada |
A saída do comando acima exibirá uma hash de números e letras que representam o ID do contêiner que é a sua aplicação splunk. Execute o comando abaixo para verificar o status do contâiner.
#docker ps -a -f id=<contêiner_id>
Quando o status do contêiner estiver como healthy, significa que ele já está disponível e você poderá acessá-lo com o comando abaixo através de seu navegador.
#localhost:8000
A integração do Splunk requer a instalação do aplicativo Greenbone-Splunk no servidor splunk. O download e instalação do aplicativo são explicados na seção Aplicação Splunk.
Depois que o aplicativo é instalado no servidor splunk, o GSM pode ser instruído a enviar os resultados para o servidor splunk. Esta seção cobrirá a configuração do GSM.
A Greenbone Networks oferece um pequeno aplicativo para integração com o Splunk. O aplicativo está atualmente disponível em https://download.greenbone.net/tools/Greenbone-Splunk-App-1.0.1.tar.gz.
Para instalar o aplicativo no seu servidor splunk. Navegue até Splunk-> App-> ManagerApps > Install app from file I
Verifique a porta do Greenbone-Splunk-App após a instalação. Você pode acessar a porta na GUI Web através de Settings-> Data inputs-> TCP.
Depois que o aplicativo é instalado no servidor splunk, o GSM pode ser instruído a enviar os resultados para o servidor splunk. Esta seção cobrirá a configuração do GSM.
A Greenbone Networks oferece um pequeno aplicativo para integração com o Splunk. O aplicativo está atualmente disponível em https://download.greenbone.net/tools/Greenbone-Splunk-App-1.0.1.tar.gz.
Para instalar o aplicativo no seu servidor splunk. Navegue até Splunk-> App-> ManagerApps > Install app from file I
Gerenciamento de aplicativos |
Upload de aplicativo |
Aplicativo instalada com sucesso |
Verifique a porta do Greenbone-Splunk-App após a instalação. Você pode acessar a porta na GUI Web através de Settings-> Data inputs-> TCP.
A porta do aplicativo é necessária para a configuração no GSM. |
5. Configurar índices
Para configurar o índice acesse settings > indexes > New Index
Criando um novo índice para receber os dados do openvas |
Para configurar o índice para receber os dados do openvas acesse settings> data input > 7680 > more settings > index
Adicionando o índice aos dados de entrada do openvas |
6. Configurar alertas do splunk
Para configurar o GSM, navegue até Configuration > Alerts. Crie um novo alerta clicando no ícone novo.Role para baixo até a opção Enviar para o host. Preencha o endereço IP do servidor splunk e a porta do aplicativo Greenbone. Esta porta TCP é 7680 por padrão. Escolha o formato XML.
Configurações para o novo alerta |
Para testar o alerta criado navegue até a aba actions ainda em alerts e clique sobre Test Alert
Validando a conexão do alerta criado |
Alerta validado com sucesso |
7. Disparar alerta do GSM para o splunk
Este alerta agora pode ser adicionado às tarefas apropriadas. Navegue para Scans > Tasks e crie uma nova Task usando o alerta. O alerta pode até ser adicionado a tarefas já existentes, o alerta não modifica o comportamento da análise.
Resumo e download |
Para fins de teste, relatórios existentes podem ser processados pelo alerta. Navegue para Scans > Reports. Escolha qualquer relatório existente e mude para a visualização Resumo e Download. Aqui você pode processar o relatório usando qualquer alerta configurado.
Resumo e download do relatório |
Acessando as informações no Splunk
Para acessar as informações no Splunk, alterne para o painel do Greenbone. O painel do Greenbone na interface da Web do Splunk exibirá as vulnerabilidades encontradas nos últimos sete dias.
Você criar visualizações novas e adicionar aos seus dashboards conforme necessário. Abaixo um painel criado por mim para testes no ambiente interno.
E é isso, até o próximo!
Leitura recomendada:
No comments