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
chaos — Utilitário de varredura de IP de origem desenvolvido com ChatGPT | Kitploit
Ferramentas/GitHubGitHub/r57-labs/chaos
ReconhecimentoMapeamento de RedeColeta de InformaçõesSegurança WebTestes de Penetração
GitHubr57-labs/chaos

chaos

Utilitário de varredura de IP de origem desenvolvido com ChatGPT

Ver Repositório
7085há 3 anosRevisado 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

chaos

chaos é um scanner de IP 'origin' desenvolvido pela RST em colaboração com o ChatGPT. É uma utilidade de nicho com um público-alvo principalmente de testadores de penetração e caçadores de bugs.

Um IP de origem é uma expressão técnica que descreve o destino IP público final para sites que são servidos publicamente por meio de terceiros. Se você quiser entender mais sobre por que alguém pode estar interessado em IPs de origem, consulte nossa postagem no blog.

chaos foi rapidamente prototipado da ideia ao conceito funcional em menos de 24 horas usando nossos princípios de DevOps com o ChatGPT.

root@kitploit:~
usage: chaos.py [-h] -f FQDN -i IP [-a AGENT] [-C] [-D] [-j JITTER] [-o OUTPUT] [-p PORTS] [-P] [-r] [-s SLEEP] [-t TIMEOUT] [-T] [-v] [-x] 
         _..._
     .-'`     `'-.
   __|___________|__ 
   \               /
    `._  CHAOS _.'
       `-------`
         /   \\
        /     \\
       /       \\
      /         \\
     /           \\
    /             \\
   /               \\
  /                 \\
 /                   \\
/_____________________\\
CHAtgpt Origin-ip Scanner
 _______ _______ _______ _______ _______
|\\     /|\\     /|\\     /|\\     /|\\/|
| +---+ | +---+ | +---+ | +---+ | +---+ |
| |H  | | |U  | | |M  | | |A  | | |N  | |
| |U  | | |S  | | |A  | | |N  | | |C  | |
| |M  | | |E  | | |N  | | |D  | | |O  | |
| |A  | | |R  | | |C  | | |   | | |L  | |
| +---+ | +---+ | +---+ | +---+ | +---+ |
|/_____|\\_____|\\_____|\\_____|\\_____\\

 Origin IP Scanner developed with ChatGPT
 cha*os (n): complete disorder and confusion
 (ver: 0.9.4)

v94_csv

Funcionalidades

  • Com threads para ganhos de desempenho
  • Atualizações de status em tempo real e barras de progresso, ótimo para varreduras grandes ;)
  • Opções flexíveis de usuário para vários cenários e restrições
  • Redução de conjunto de dados para tempos de varredura aprimorados
  • Saída CSV fácil de usar

Instalação

  1. Baixe / clone / descompacte / etc.
  2. cd path/to/chaos
  3. pip3 install -U pip setuptools virtualenv
  4. virtualenv env
  5. source env/bin/activate
  6. (env) pip3 install -U -r ./requirements.txt
  7. (env) ./chaos.py -h

Opções

root@kitploit:~
-h, --help            mostra esta mensagem de ajuda e sai
-f FQDN, --fqdn FQDN  Caminho para o arquivo FQDN (um FQDN por linha)
-i IP, --ip IP        Endereço(s) IP para requisições HTTP (IPs separados por vírgula, redes IP e/ou arquivos com IP/rede por linha)
-a AGENT, --agent AGENT
                      Valor do cabeçalho User-Agent para requisições
-C, --csv             Anexar saída CSV a OUTPUT_FILE.csv
-D, --dns             Realizar consultas DNS diretas/reversas nos valores FQDN/IP antes da requisição; sem impacto na fila de teste
-j JITTER, --jitter JITTER
                      Adicionar um atraso aleatório de 0-N segundos ao valor de sleep
-o OUTPUT, --output OUTPUT
                      Anexar saída do console ao ARQUIVO
-p PORTS, --ports PORTS
                      Lista separada por vírgulas de portas TCP a usar (padrão: "80,443")
-P, --no-prep         Não pré-verificar cada IP/porta com `GET /` usando o cabeçalho `Host: {IP:Port}` para eliminar hosts que não respondem
-r, --randomize       Randomizar (mais ou menos) a ordem em que IPs/portas são testados
-s SLEEP, --sleep SLEEP
                      Adicionar N segundos antes da thread completar
-t TIMEOUT, --timeout TIMEOUT
                      Aguardar N segundos por um host que não responde
-T, --test            Modo de teste; não enviar requisições
-v, --verbose         Habilitar saída detalhada
-x, --singlethread    Execução com uma única thread; para sistemas com 1-2 núcleos; padrão threads=(núcleos-1) se núcleos>2

Exemplos

Teste no Localhost

Iniciar servidor HTTP python

root@kitploit:~
% python3 -u -m http.server 8001
Serving HTTP on :: port 8001 (http://[::]:8001/) ...

Iniciar ncat como HTTP em uma porta detectada como SSL; usar um loop porque --keep-open pode travar

root@kitploit:~
% while true; do ncat -lvp 8443 -c 'printf "HTTP/1.0 204 Plaintext OK\n\n<html></html>\n"'; done
Ncat: Version 7.94 ( https://nmap.org/ncat )
Ncat: Listening on [::]:8443
Ncat: Listening on 0.0.0.0:8443

Também iniciar ncat como SSL em uma porta que terá detecção HTTP como padrão

root@kitploit:~
% while true; do ncat --ssl -lvp 8444 -c 'printf "HTTP/1.0 202 OK\n\n<html></html>\n"'; done    
Ncat: Version 7.94 ( https://nmap.org/ncat )
Ncat: Generating a temporary 2048-bit RSA key. Use --ssl-key and --ssl-cert to use a permanent one.
Ncat: SHA-1 fingerprint: 0208 1991 FA0D 65F0 608A 9DAB A793 78CB A6EC 27B8
Ncat: Listening on [::]:8444
Ncat: Listening on 0.0.0.0:8444

Preparar um arquivo FQDN:

root@kitploit:~
% cat ../test_localhost_fqdn.txt 
www.example.com
localhost.example.com
localhost.local
localhost
notreally.arealdomain

Preparar um arquivo / lista de IPs:

root@kitploit:~
% cat ../test_localhost_ips.txt 
127.0.0.1
127.0.0.0/29
not_an_ip_addr
-6.a
=4.2
::1

Executar a varredura

  • Nota: uma rede IPv6 adicionada aos IPs na CLI
  • -p para especificar as portas em que estamos escutando
  • -x para execução com thread única para dar tempo aos nossos servidores ncat de reiniciar
  • -s0.2 sleep curto para nossos servidores ncat reiniciarem
  • -t1 para timeout após 1 segundo

test_local

root@kitploit:~
% ./chaos.py -f ../test_localhost_fqdn.txt -i ../test_localhost_ips.txt,::1/126 -p 8001,8443,8444 -x -s0.2 -t1   
2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: localhost.local
2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: localhost
2023-06-21 12:48:33 [WARN] Ignoring invalid FQDN value: notreally.arealdomain
2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block =4.2
2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block -6.a
2023-06-21 12:48:33 [WARN] Error: invalid IP address or CIDR block not_an_ip_addr
2023-06-21 12:48:33 [INFO] * ---- <META> ---- *
2023-06-21 12:48:33 [INFO] * Version: 0.9.4
2023-06-21 12:48:33 [INFO] * FQDN file: ../test_localhost_fqdn.txt
2023-06-21 12:48:33 [INFO] * FQDNs loaded: ['www.example.com', 'localhost.example.com']
2023-06-21 12:48:33 [INFO] * IP input value(s): ../test_localhost_ips.txt,::1/126
2023-06-21 12:48:33 [INFO] * Addresses parsed from IP inputs: 12
2023-06-21 12:48:33 [INFO] * Port(s): 8001,8443,8444
2023-06-21 12:48:33 [INFO] * Thread(s): 1
2023-06-21 12:48:33 [INFO] * Sleep value: 0.2
2023-06-21 12:48:33 [INFO] * Timeout: 1.0
2023-06-21 12:48:33 [INFO] * User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36 ch4*0s/0.9.4
2023-06-21 12:48:33 [INFO] * ---- </META> ---- *
2023-06-21 12:48:33 [INFO] 36 unique address/port addresses for testing
Prep Tests: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 36/36 [00:29<00:00,  1.20it/s]
2023-06-21 12:49:03 [INFO] 9 IP/ports verified, reducing test dataset from 72 entries
2023-06-21 12:49:03 [INFO] 18 pending tests remain after pre-testing
2023-06-21 12:49:03 [INFO] Queuing 18 threads
  ++RCVD++ (200 OK) www.example.com @ :::8001                                                                                                                                                    
  ++RCVD++ (204 Plaintext OK) www.example.com @ :::8443                                                                                                                                          
  ++RCVD++ (202 OK) www.example.com @ :::8444                                                                                                                                                    
  ++RCVD++ (200 OK) www.example.com @ ::1:8001                                                                                                                                                   
  ++RCVD++ (204 Plaintext OK) www.example.com @ ::1:8443                                                                                                                                         
  ++RCVD++ (202 OK) www.example.com @ ::1:8444                                                                                                                                                   
  ++RCVD++ (200 OK) www.example.com @ 127.0.0.1:8001                                                                                                                                             
  ++RCVD++ (204 Plaintext OK) www.example.com @ 127.0.0.1:8443                                                                                                                                   
  ++RCVD++ (202 OK) www.example.com @ 127.0.0.1:8444                                                                                                                                             
  ++RCVD++ (200 OK) localhost.example.com @ :::8001                                                                                                                                              
  ++RCVD++ (204 Plaintext OK) localhost.example.com @ :::8443                                                                                                                                    
  ++RCVD++ (202 OK) localhost.example.com @ :::8444                                                                                                                                              
  ++RCVD++ (200 OK) localhost.example.com @ ::1:8001                                                                                                                                             
  ++RCVD++ (204 Plaintext OK) localhost.example.com @ ::1:8443                                                                                                                                   
  ++RCVD++ (202 OK) localhost.example.com @ ::1:8444                                                                                                                                             
  ++RCVD++ (200 OK) localhost.example.com @ 127.0.0.1:8001                                                                                                                                       
  ++RCVD++ (204 Plaintext OK) localhost.example.com @ 127.0.0.1:8443                                                                                                                             
  ++RCVD++ (202 OK) localhost.example.com @ 127.0.0.1:8444                                                                                                                                       
Origin Scan: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 18/18 [00:06<00:00,  2.76it/s]
2023-06-21 12:49:09 [RSLT] Results from 5 FQDNs:
  ::1
    ::1:8444 => (202 / OK)
    ::1:8443 => (204 / Plaintext OK)
    ::1:8001 => (200 / OK)

  127.0.0.1
    127.0.0.1:8001 => (200 / OK)
    127.0.0.1:8443 => (204 / Plaintext OK)
    127.0.0.1:8444 => (202 / OK)

  ::
    :::8001 => (200 / OK)
    :::8443 => (204 / Plaintext OK)
    :::8444 => (202 / OK)

  www.example.com
    :::8001 => (200 / OK)
    :::8443 => (204 / Plaintext OK)
    :::8444 => (202 / OK)
    ::1:8001 => (200 / OK)
    ::1:8443 => (204 / Plaintext OK)
    ::1:8444 => (202 / OK)
    127.0.0.1:8001 => (200 / OK)
    127.0.0.1:8443 => (204 / Plaintext OK)
    127.0.0.1:8444 => (202 / OK)

  localhost.example.com
    :::8001 => (200 / OK)
    :::8443 => (204 / Plaintext OK)
    :::8444 => (202 / OK)
    ::1:8001 => (200 / OK)
    ::1:8443 => (204 / Plaintext OK)
    ::1:8444 => (202 / OK)
    127.0.0.1:8001 => (200 / OK)
    127.0.0.1:8443 => (204 / Plaintext OK)
    127.0.0.1:8444 => (202 / OK)


rst@r57 chaos % 

Teste e modo detalhado no localhost

-T executa em modo de teste (faz tudo exceto enviar requisições)

-v opção detalhada fornece saída adicional

test_local_verbose

Defeitos Conhecidos

  • A detecção HTTP/HTTPS não é ideal
  • Precisa de opção para ajustar o delimitador de nova linha CSV
  • Precisa de opções para ajustar onde strings longas / muitas linhas são truncadas
  • Tentar descobrir por que marcamos requests v2.x como obrigatório ;)
  • Opções para muito detalhado / silencioso
  • Escalonar o lançamento de threads quando estamos usando sleep / jitter
  • Pesquisar por meta-refresh em respostas 200
  • Cabeçalho Content-Location para 201s?
  • Melhorar a geração de nomes de threads para que tenhamos o número correto de nomes únicos
  • Verificação de sanidade em máscaras de rede IPv6 para evitar varreduras que durem mais que o sol?
  • TBD?

Links Relacionados

  • postagem do blog chaos

Avisos Legais

  • Copyright (C) 2023 RST
  • Este software é distribuído no estado 'COMO ESTÁ', sem garantias expressas ou implícitas de qualquer tipo
  • Este software é destinado a pesquisa e/ou testes autorizados; é sua responsabilidade garantir que você está autorizado a usar este software de qualquer forma
  • Ao usar este software, você reconhece que é responsável por suas ações e assume toda a responsabilidade por quaisquer danos diretos, indiretos ou outros
Baixar ferramenta