
RedEye é uma ferramenta de análise visual que apoia operações de Red & Blue Team.
Este repositório do GitHub não está mais em desenvolvimento ativo. Revisaremos issues e pull requests da comunidade para correções de bugs, mas não consideraremos novas adições de funcionalidades.
RedEye é uma ferramenta analítica de código aberto desenvolvida pela CISA e pelo Pacific Northwest National Laboratory do DOE para auxiliar Red Teams na visualização e relato de atividades de comando e controle. Esta ferramenta permite que um operador avalie e exiba dados complexos, avalie estratégias de mitigação e possibilite uma tomada de decisão eficaz em resposta a uma avaliação da Red Team. A ferramenta analisa logs, como os do Cobalt Strike, e apresenta os dados em um formato de fácil compreensão. Os usuários podem então marcar e adicionar comentários às atividades exibidas na ferramenta. Os operadores podem usar o modo de apresentação do RedEye para apresentar descobertas e fluxo de trabalho às partes interessadas.
RedEye pode ajudar um operador a eficientemente:
./RedEye --redTeam --password <your_password>
./RedEye # Ou simplesmente clique duas vezes no executável "RedEye"
Problema no MacOS - Ao executar o RedEye pela primeira vez, você pode receber um erro "não verificado". Você deve ir em "Preferências do Sistema" > "Segurança e Privacidade" > "Geral" e clicar em "Abrir mesmo assim". Mais informações na página de suporte da Apple.
RedEye possui dois modos que cobrem duas etapas do processo de Red Teaming. O modo Red Team permite importar dados C2, editar dados importados e fazer comentários e apresentações. Após curar e anotar os dados da campanha, as Red Teams podem exportar sua campanha como um arquivo .redeye independente e entregá-lo a uma Blue Team para relato e remediação. O modo Blue Team executa o RedEye em um modo simplificado somente leitura para visualizar dados curados exportados por uma Red Team.
Nota: Ambos os modos Red Team e Blue Team podem ser iniciados a partir do mesmo binário do aplicativo RedEye.
O binário baixado vem em duas partes:
RedEyeparsers contendo binários de analisadores (ex.: cobalt-strike-parser binário analisador de logs do Cobalt Strike)Existem três opções para executar o RedEye no modo Red Team:
--redTeam e password:
./RedEye --redTeam --password <your_password>
docker-compose.yml.docker-compose -f docker-compose.yml up -d redeye-core
O modo Blue Team é uma interface simplificada e somente leitura para exibir dados que foram curados, anotados e exportados por uma Red Team. Este modo é executado por padrão para tornar a inicialização mais simples para a Blue Team.
A versão Blue Team pode ser executada clicando duas vezes no binário do aplicativo 'RedEye'. O RedEye é executado em http://127.0.0.1:4000 (por padrão) e abrirá automaticamente seu navegador padrão.
Se uma pasta campaigns estiver localizada no mesmo diretório que o aplicativo RedEye, o RedEye tentará importar quaisquer arquivos de campanha .redeye dentro dela. Os arquivos de campanha podem ser exportados no modo Red Team.
Para preparar uma versão para a Blue Team, siga estas duas etapas:
RedEye para uma pasta vazia.campaigns no mesmo diretório e coloque os arquivos de campanha .redeye que deseja enviar dentro dela.Folder/
RedEye
campaigns/
Campaign-01.redeye
Campaign-02.redeye
Arquivos .redeye também podem ser carregados no modo Blue Team através do diálogo "+ Adicionar Campanha".
Existem conjuntos de dados de exemplo neste repositório disponíveis para download. Eles estão localizados na pasta ./applications/redeye-e2e/src/fixtures.
Você pode querer usar uma ferramenta como download-directory.github.io para baixar apenas uma pasta de um repositório do github
Digite ./Redeye -h para ver as opções
-d, --developmentMode [boolean] coloca o banco de dados e o servidor em modo de desenvolvimento
-r, --redTeam [boolean] executa o servidor no modo red team
--port [number] a porta na qual o servidor deve ser exposto
-p, --password [string] a senha para autenticação do usuário
--parsers [string...] Uma lista de analisadores a serem usados ou uma flag para usar todos os analisadores na pasta parsers
-t, --childProcesses [number] número máximo de processos filhos que o analisador pode usar
-h, --help exibe ajuda para o comando
você também pode configurar os parâmetros do servidor em um arquivo config.json que fica ao lado do binário RedEye
{
"password": "937038570",
"redTeam": true,
"parsers": ["cobalt-strike-parser", "brute-ratel-parser"] // ou true/false
}
npm install -g yarnyarn install // Instala todos os pacotesyarn release:all para construir um binário para Linux, macOS e Windowsyarn release:(mac|windows|linux) .Instale Node.js >= v16 Instale yarn globalmente via npm
npm install -g yarn
Instale as dependências dos pacotes
yarn install
Executa o projeto em modo de desenvolvimento
yarn start
É recomendado executar o servidor e o cliente em dois terminais separados
yarn start:client
...em outro terminal
yarn start:server
para construir um binário para Linux, macOS e Windows
yarn release:all
para construir para uma plataforma específica, substitua all pelo nome da plataforma
yarn release:(mac|windows|linux)