Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!
BTPS-SecPack — Kit de ferramentas de segurança baseado em PowerShell para pequenas e médias empresas, fornecendo alertas automatizados, fortalecimento do Active Directory, encaminhamento de eventos do Windows, integração com Sysmon e scripts de resposta a incidentes para melhorar a visibilidade e a defesa. | Kitploit
Kit de ferramentas de segurança baseado em PowerShell para pequenas e médias empresas, fornecendo alertas automatizados, fortalecimento do Active Directory, encaminhamento de eventos do Windows, integração com Sysmon e scripts de resposta a incidentes para melhorar a visibilidade e a defesa.
Compartilhar
O Pacote de Segurança PowerShell da Equipe Azul
Usando o Microsoft Teams para Alertas em Vez de Email
Se você deseja usar o Microsoft Teams para enviar alertas em vez de usar email, você vai querer carregar o branch microsoft-teams deste repositório, que possui as modificações de alerta do Teams. Levará um pouco de tempo para implementar isso como uma opção de configuração no script de instalação. Usar o Microsoft Teams para postagens de alerta não elimina a necessidade de certas notificações por email neste repositório. O email ainda será usado para algumas ações. Essas postagens no Teams podem ser concluídas depois que você criar um webhook. Os chamados webhooks oferecem a possibilidade de enviar alertas ou outras notificações para um canal do Microsoft Teams. Eu pessoalmente ainda prefiro emails depois de usar essa mensagem porque são mais fáceis de organizar, na minha opinião.
Você pode criar um webhook seguindo os passos abaixo (se você for um administrador)
Abra o aplicativo Microsoft Teams
No painel esquerdo, clique em "Teams"
Clique no ícone de mais opções representado por 3 pontos "..." ao lado de um dos Canais do Teams desejados. Exemplo de Nome do Canal: Geral
Clicar nesses 3 pontos exibirá um menu suspenso. Clique em "Conectores"
Clique no botão "Adicionar" ao lado de "Webhook de Entrada"
Clique em "Adicionar" na tela pop-up do Webhook de Entrada
Na tela do Webhook de Entrada, realize as seguintes ações
a. Defina um nome para o seu webhook. Na imagem abaixo, esse valor é "PowerShell-TeamsMessagePost"
b. Clique em "Criar"
c. Opcionalmente, você também pode usar "Enviar Imagem" para selecionar uma imagem para o Webhook de Entrada. Na imagem abaixo, deixei o ícone padrão, que é o triângulo azul claro em fundo branco.
d. Clique em "Criar"
A URL do Webhook de Entrada é criada. Copie a URL e clique em "Concluído"
Agora você pode usar a URL acima nos scripts do Pacote de Segurança B.T.P.S que forneço. Você pode atualizar rapidamente o valor nos scripts executando os comandos abaixo
root@kitploit:~
$WebHook = Read-Host -Prompt "Paster your Webhook URL here: "
$SIEM = Read-Host -Prompt "If you have a SIEM in your environment enter the link here: "
$BTPSHome = Read-Host -Prompt "Where did you save the BTPS Security Pacakge git repo? EXAMPLE: C:\Users\Administrator\Downloads\BTPS-SecPack-microsoft-teams"
$Files = (Get-ChildItem -Path $BTPSHome -Include "AttemptedPasswordChange.ps1","AttemptedPasswordReset.ps1","Failed.Username.and.Password.ps1","User.Account.Created.ps1 ","User.Account.Locked.ps1","User.Account.Unlocked.ps1","DNSZoneTransferAlert.ps1","NewComputerAlert.ps1","Query-InsecureLDAPBinds.ps1","UnusualUserSignInAlert.ps1","Watch-PortScan.ps1 " -Recurse -ErrorAction SilentlyContinue -Force).FullName
ForEach ($File in $Files) {
((Get-Content -Path $File -Raw) -Replace "WEBHOOK_URL_REPLACE","$WebHook") | Set-Content -Path $File -Force
((Get-Content -Path $File -Raw) -Replace "SIEM TOOL LINK","$SIEM") | Set-Content -Path $File -Force
} # End ForEach
Seu alerta no Microsoft Teams será algo parecido com isto
CONTRIBUA PARA O PROJETO
Se você deseja ajudar a contribuir com o conteúdo deste projeto, sinta-se à vontade para entrar em contato comigo em [email protected] com seus pensamentos e ideias. Para informações mais gerais sobre isso, consulte a documentação CONTRIBUTING.
DOAÇÕES
Se você deseja doar para este projeto para me ajudar a manter um site agradável para a documentação, suas doações serão graciosamente aceitas.
ENVIE ETHERUM PARA : 0xBeDbCfA5366fF1187957BB3ed8811c51B4dBe4D4
O Pacote de Segurança B.T.P.S.
Este repositório contém uma coleção de ferramentas PowerShell que podem ser utilizadas para proteger e defender um ambiente com base nas recomendações da Microsoft.
Este repositório também pressupõe que você consultou a Folha de Dicas de Registro de Eventos do Windows para registro em seu ambiente. Use LOG-MD ou CIS-CAT para garantir que o registro recomendado esteja configurado.
Installer.ps1
Eu escrevi um script de instalação inicial para configurar automaticamente o máximo possível dessas proteções. A maioria desses scripts são alertas por email. Ao executar o Installer.ps1, você será questionado sobre como deseja autenticar no seu servidor SMTP. Isso pode ser feito através do uso de um arquivo de credenciais ou usando autenticação por endereço IP. Este script deve ser executado em um controlador de domínio, pois é onde muitos dos alertas estão localizados. Sugiro usar WinRM sobre HTTPS em seu ambiente. Tenho um vídeo e instruções de configuração para WinRM sobre HTTPS no site deste projeto AQUI. Este script informará se o LDAP sobre SSL está sendo utilizado em seu ambiente. Se você deseja configurar o LDAP sobre SSL em seu ambiente, o que recomendo fortemente, fiz um vídeo sobre como fazer isso de forma segura AQUI. O script Installer.ps1 ajudará você a configurar cada seção deste pacote com pausas no script que aguardam você concluir uma tarefa, se necessário. Um desses intervalos, por exemplo, é para você configurar uma política de grupo para ser distribuída. Após a execução, a maioria das proteções abaixo será aplicada ao seu ambiente. O "Alerta de Login Incomum" exigirá que você modifique o arquivo UserComputerList.csv para conter informações sobre quais usuários devem fazer login em quais dispositivos em seu ambiente.
Quais Proteções Estão Incluídas Após Executar o Installer.ps1?
Iscas Executáveis Canary Incluí alguns arquivos executáveis que um invasor pode não resistir em executar. Esses arquivos executáveis são binários falsos que exibem a mensagem de ajuda do arquivo executável original para parecer que o arquivo é legítimo após a execução. Esses arquivos executáveis devem ser enviados para Canary Tokens, que enviará um alerta por email sempre que o arquivo for executado. As instruções sobre isso podem ser visualizadas AQUI
RemediateCompromisedOfficeAccount.ps1VER é usado para responder a um usuário cuja senha do Office365 foi comprometida. Isso irá Redefinir a senha (o que encerra a sessão). Remover delegados da caixa de correio. Remover regras de encaminhamento de email para domínios externos. Remover a propriedade de encaminhamento global na caixa de correio. Definir a complexidade da senha da conta como alta. Habilitar auditoria de caixa de correio. Produzir um registro de auditoria para o administrador revisar.
Receber alertas quando uma conta está expirando em 2 semanas ou menos
Receber alerta contendo uma tabela de todos os usuários cujas senhas expiram em duas semanas ou menos
Receber um alerta quando um usuário tenta alterar sua senha
Receber um alerta quando uma conta tenta alterar a senha de outra conta
Receber um alerta quando uma conta falha ao fazer login em um servidor
Receber um alerta quando uma nova conta de usuário é criada
Receber um alerta quando uma conta de usuário é bloqueada
Receber um alerta quando uma conta de usuário foi desbloqueada
Receber um alerta quando credenciais de administrador são usadas para executar um processo com privilégios elevados. Isso realmente serve apenas para monitorar usuários que podem ter recebido credenciais de administrador contra as recomendações de TI. Também pode ser usado para monitorar um administrador quanto a atividade maliciosa, se desejado. Provavelmente você não precisará implementar o MonitorAdminEscalation.ps1
Isso basicamente cria uma entrada de log de eventos no visualizador de eventos contendo hashes do AutoRuns. Não sou o autor disso. Estou apenas incluindo isso no pacote por ser algo importante de se monitorar.
Receber informações diárias sobre logins do Azure dos seus usuários
Desabilitar protocolos TLS e SSL fracos em um Cliente ou Servidor IIS
Habilitar DNS sobre HTTPS quando disponível
Habilitar HSTS em um servidor IIS local
Corrigir caminhos de serviço que contêm espaços nos nomes de diretório, mas sem aspas usadas para evitar a execução de payloads injetados
Desinstalar o PowerShell versão 2 de uma ou mais máquinas remotas ou locais
Remover um email reportado como spam de todas as caixas de entrada que recebem o email
Rotacionar as chaves Kerberos usadas em um ambiente de exchange online
Habilitar ou Desabilitar a assinatura SMB em um dispositivo, bem como desabilitar ou habilitar SMBv1 ou SMBv2 e SMBv3
Habilitar a Autenticação em Nível de Rede do RDP para impedir que computadores não pertencentes ao domínio se conectem via RDP a um cliente
Atualizar quaisquer atualizações de driver disponíveis em uma máquina local ou remota
Adicionar um banner de notificação aos emails que os usuários recebem no Outlook quando o nome do remetente corresponde a um nome na empresa e o endereço de email não é do domínio interno
Criar uma Regra de Transporte que permita que servidores Microsoft Exchange rejeitem mensagens de email com falha no DMARC
Receber um alerta quando uma varredura de portas for detectada em um dispositivo local
Receber um alerta quando um shell bind for aberto e manter um registro de todas as conexões estabelecidas com um dispositivo, incluindo a porta e protocolos usados
Habilitar o registro do Sysmon em um ambiente usando um arquivo de configuração do Sysmon padrão personalizado
Usar consulta de domínio WHOIS para descobrir domínios que foram conectados há menos de 2 anos e receber um alerta quando uma conexão de cliente ocorrer
Realizar uma verificação de lista negra em endereços IP que também foram conectados e receber alertas quando uma conexão de cliente ocorrer
Realizar uma validação de hash em processos do Windows para descobrir hashes MD5 para os quais o Virus Total retorna resultados
Cmdlets que podem ser usados para instalar todas as atualizações do Windows disponíveis
Cmdlet que pode remover uma única atualização KB que não está atualizando por qualquer motivo. Uma vez removida, você pode usar Update-Windows para reinstalar a atualização emitida.
Este é um cmdlet que vou usar quando concluir o arquivo Install.ps1 e que pode ser usado para configurar tudo acima. Por enquanto, use os READMEs que forneci para instalar as funcionalidades desejadas.