Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
chaosblade — Um kit de ferramentas de experimentos de engenharia do caos fácil de usar e poderoso.(Uma ferramenta de injeção de experimentos de caos simples, fácil de usar e poderosa, de código aberto da Alibaba) | Kitploit
Ferramentas/GitHubGitHub/chaosblade-io/chaosblade
Segurança de Infraestrutura em NuvemSegurança de ContêineresDevSecOpsEngenharia do Caos
GitHubchaosblade-io/chaosblade

chaosblade

Um kit de ferramentas de experimentos de engenharia do caos fácil de usar e poderoso.(Uma ferramenta de injeção de experimentos de caos simples, fácil de usar e poderosa, de código aberto da Alibaba)

Ver Repositório
6.5k1.0khá 6 diasRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

logo

Chaosblade: Um kit de engenharia do caos fácil de usar e poderoso

Build Status Financial Contributors on Open Collective codecov license CII Best Practices

Versão em chinês README
Wiki: DeepWiki

🔥🔥🔥 Grande atualização: Chaosblade Agent lançado - Blade AI

image O Blade AI atua como a camada de agente inteligente dentro do ecossistema ChaosBlade: no nível fundamental, ele invoca o ChaosBlade para executar injeção de falhas; no nível superior, incorpora capacidades de orquestração, como entendimento de intenção, auditoria de segurança, verificação de efeitos, recuperação segura e relatórios estruturados—transformando assim as simulações de falhas de um processo de "escrever comandos manualmente" para um concluído por "interação conversacional".

Para informações detalhadas, consulte: Blade AI README

  • Lançamento: blade-ai-v0.1.0
  • Branch de código: blade-ai-v0.1.0

Introdução

ChaosBlade é uma ferramenta de injeção experimental de código aberto da Alibaba que segue os princípios da engenharia do caos e os modelos de experimentos do caos para ajudar empresas a melhorar a tolerância a falhas de sistemas distribuídos e garantir a continuidade dos negócios durante o processo de migração das empresas para a nuvem ou para sistemas nativos da nuvem.

Chaosblade é um projeto de código aberto interno do MonkeyKing. Ele é baseado em quase dez anos de testes de falhas e práticas de simulação da Alibaba e combina as melhores ideias e práticas dos negócios do Grupo.

ChaosBlade não é apenas fácil de usar, mas também suporta ricos cenários experimentais. Os cenários incluem:

  • Recursos básicos: como CPU, memória, rede, disco, processo e outros cenários experimentais;
  • Aplicações Java: como bancos de dados, caches, mensagens, a própria JVM, microsserviços, etc. Você também pode especificar qualquer método de classe para injetar vários cenários experimentais complexos;
  • Aplicações C++: como especificar métodos arbitrários ou linhas de código experimentais para injeção de atraso, adulteração de variáveis e valores de retorno;
  • Contêiner: como matar o contêiner, CPU no contêiner, memória, rede, disco, processo e outros cenários experimentais;
  • Plataformas nativas da nuvem: por exemplo, cenários experimentais de CPU, memória, rede, disco e processo em nós da plataforma Kubernetes, cenários experimentais de rede do Pod e do próprio Pod, como matar Pods, e cenários experimentais de contêiner, como o cenário experimental de contêiner Docker mencionado anteriormente;

Encapsular os cenários por domínio em projetos individuais não apenas padroniza os cenários do domínio, mas também facilita a expansão horizontal e vertical dos cenários. Seguindo o modelo de experimento do caos, o cli chaosblade pode ser chamado de forma uniforme. Os itens atualmente incluídos são:

  • chaosblade: ferramenta de gerenciamento de experimentos do caos, incluindo comandos para criar experimentos, destruir experimentos, consultar experimentos, preparar ambientes experimentais e cancelar ambientes experimentais. É a execução de experimentos do caos. Os métodos de execução incluem CLI e HTTP. Fornece comandos completos, cenários experimentais e descrições de parâmetros de cenário, com operação simples e clara.
  • chaosblade-spec-go: definição do modelo de experimento do caos em linguagem Golang; cenários implementados com Golang são fáceis de implementar com base nesta especificação.
  • chaosblade-exec-os: implementação de cenários experimentais de recursos básicos.
  • chaosblade-exec-docker: implementação de cenários experimentais de contêiner Docker, padronizada por chamadas à API Docker.
  • chaosblade-exec-cri: implementação de cenários experimentais de contêiner, padronizada por chamadas à CRI.
  • chaosblade-operator: o cenário experimental da plataforma Kubernetes é implementado; experimentos do caos são definidos pelo método CRD padrão do Kubernetes, sendo muito conveniente usar o método de operação de recursos do Kubernetes para criar, atualizar e excluir cenários experimentais, incluindo o uso de kubectl, client-go, etc., e também a ferramenta cli chaosblade descrita acima.
  • chaosblade-exec-jvm: implementação de cenários experimentais de aplicações Java, usando a tecnologia Java Agent para montagem dinâmica, sem qualquer acesso, uso de custo zero. Também suporta desinstalação e recicla completamente os diversos recursos criados pelo Agent.
  • chaosblade-exec-cplus: implementação de cenários experimentais de aplicações C++, usando tecnologia GDB para injetar cenários experimentais em nível de método e linha de código.
  • chaosblade-box: possui capacidades de plataforma de engenharia do caos e de plataforma de teste de resiliência. Para mais informações sobre as capacidades da plataforma de teste de resiliência, consulte o branch main2.

Início Rápido

Este guia ajuda você a executar sua primeira injeção de falha no Kubernetes em menos de 5 minutos usando o ChaosBlade. Vamos injetar uma falha de estresse de CPU em um Pod como um exemplo mínimo.

Pré-requisitos

Antes de começar, certifique-se de ter:

  • Acesso ao kubectl para um cluster Kubernetes em execução (kubectl cluster-info retorna com sucesso)
  • Um namespace de destino com pelo menos um Pod em execução (padrão: default)
  • ChaosBlade instalado:
    • O kit de ferramentas CLI chaosblade baixado e extraído (o binário blade está no seu PATH)
    • O chaosblade-operator implantado no seu cluster (necessário para cenários Kubernetes)

Instale o operador com Helm:

root@kitploit:~
helm install chaosblade-operator chaosblade-operator-<version>.tgz --namespace chaosblade --create-namespace

Verifique se o operador está em execução:

root@kitploit:~
kubectl get pods -n chaosblade

Injetar Sua Primeira Falha (Estresse de CPU)

Execute uma falha de CPU em plena carga contra um Pod no namespace default:

root@kitploit:~
blade create k8s pod-cpu fullload   --cpu-percent 80   --kubeconfig ~/.kube/config   --names <pod-name>   --namespace default

Se a injeção for bem-sucedida, o ChaosBlade retorna um resultado JSON contendo um uid de experimento. Salve esse uid para verificar o status ou destruir o experimento posteriormente:

root@kitploit:~
{"code":200,"success":true,"result":"<experiment-uid>"}

Verificar o Status do Experimento

root@kitploit:~
blade status <experiment-uid>

Recuperar (Destruir a Falha)

Sempre recupere após sua simulação para restaurar o alvo ao normal:

root@kitploit:~
blade destroy <experiment-uid>

É isso! Você concluiu um ciclo completo de injetar-verificar-recuperar. Para explorar mais cenários, execute blade create k8s -h ou veja Prática de Engenharia do Caos em Nuvem Nativa.

Comando CLI

Você pode baixar o kit de ferramentas chaosblade mais recente em Releases, extraí-lo e usá-lo. Se quiser injetar cenários de falha relacionados ao Kubernetes, você precisa instalar o chaosblade-operator. Para documentos de uso detalhados em chinês, consulte chaosblade-help-zh-cn .

O chaosblade suporta métodos de invocação via CLI e HTTP. Os comandos suportados são os seguintes:

  • prepare: alias é p, preparação antes do experimento de engenharia do caos, como simular aplicações Java, onde você precisa anexar o java agent. Por exemplo, para simular uma aplicação cujo nome é business, execute blade p jvm --process business no host de destino. Se a anexação for bem-sucedida, retorne o uid para consulta de status ou revogação do agent.
  • revoke: alias é r, desfaz a preparação anterior do experimento de engenharia do caos, como desanexar o java agent. O comando é blade revoke UID
  • create: alias é c, cria um experimento de engenharia do caos. O comando é blade create [TARGET] [ACTION] [FLAGS]. Por exemplo, se você implementar um consumidor Dubbo chamando a interface xxx.xxx.Service com atraso de 3s, o comando executado é blade create dubbo delay --consumer --time 3000 --Service xxx.xxx.Service; se a injeção for bem-sucedida, retorne o uid experimental para consulta de status e destruição do experimento.
  • destroy: alias é d, destrói um experimento de engenharia do caos, como destruir o experimento de atraso Dubbo mencionado acima. O comando é blade destroy UID
  • status: alias é s, consulta o estágio de preparação ou o status do experimento. O comando é blade status UID ou blade status --type create
  • server: inicia o servidor web, expõe o serviço HTTP e permite chamar o chaosblade por meio de requisições HTTP. Por exemplo, execute na máquina de destino xxxx: para realizar um experimento de CPU em plena carga:

Use o comando blade help [COMMAND] ou blade [COMMAND] -h para ver a ajuda

Demonstração de Experiência

Baixe a imagem de demonstração do chaosblade e experimente o uso do kit de ferramentas blade

demo.gif

Comando para baixar a imagem:

root@kitploit:~
docker pull chaosbladeio/chaosblade-demo

Execute o contêiner de demonstração:

root@kitploit:~
docker run -it --privileged chaosbladeio/chaosblade-demo

Após entrar no contêiner, você pode ler o arquivo README.txt para realizar o experimento do caos. Aproveite!

Nuvem Nativa

chaosblade-operator O projeto é uma ferramenta de injeção de experimentos do caos para plataformas nativas da nuvem. Ele segue o modelo de experimento do caos para padronizar o cenário experimental e define o experimento como recursos CRD do Kubernetes, mapeando modelos experimentais para atributos de recursos do Kubernetes, e combina de forma muito amigável os modelos de experimento do caos com o design declarativo do Kubernetes. Ao mesmo tempo em que depende de modelos de experimento do caos para desenvolver cenários convenientemente, também integra bem os conceitos de design do Kubernetes. Por meio de kubectl ou escrevendo código para chamar diretamente a API do Kubernetes, é possível criar, atualizar e excluir experimentos do caos, e o status do recurso pode indicar claramente o status de execução do experimento, padronizando a injeção de falhas no Kubernetes. Além de usar os métodos acima para realizar experimentos, você também pode usar o método cli do chaosblade para executar cenários experimentais do Kubernetes e consultar o status do experimento de forma muito conveniente. Para detalhes, leia o documento em chinês: Prática de Engenharia do Caos em Nuvem Nativa

Compilar

Consulte BUILD.md para obter os detalhes.

Bugs e Feedback

Para relatar bugs, tirar dúvidas e discutir, envie GitHub Issues.

Você também pode entrar em contato conosco por:

  • Grupo Dingding (recomendado para chinês): 23177705
  • Grupo Slack: chaosblade-io
  • Sala no Gitter: comunidade chaosblade
  • E-mail: [email protected]
  • Twitter: chaosblade.io

Contribuindo

Aceitamos todas as contribuições, mesmo que seja apenas pontuação. Veja os detalhes em CONTRIBUTING. Para a trilha de promoção de estudantes que participam da comunidade, veja: (Contributor Ladder)

Registro de Uso Empresarial

A intenção original do nosso projeto de código aberto é reduzir a barreira para a implementação da engenharia do caos nas empresas, por isso valorizamos muito o uso do projeto nas empresas. Recebemos a todos aqui ISSUE. Após o registro, você será convidado a participar do grupo de e-mail corporativo para discutir os problemas encontrados pela engenharia do caos na implantação nas empresas e compartilhar experiências de implantação.

Contribuidores

Contribuidores de Código

Este projeto existe graças a todas as pessoas que contribuem. [Contribua].

Licença

O Chaosblade é licenciado sob a Apache License, Versão 2.0. Consulte LICENSE para obter o texto completo da licença.

Baixar ferramenta
blade server start -p 9526
curl "http://xxxx:9526/chaosblade?cmd=create%20cpu%20fullload"