Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
spoonmap — Wrapper em Python para masscan e nmap para descoberta de portas em larga escala, descoberta de hosts, banner grabbing e varredura de vulnerabilidades baseada em NSE em redes internas ou externas. | Kitploit
Ferramentas/GitHubGitHub/trustedsec/spoonmap
Ferramentas DefensivasReconhecimentoScanners de VulnerabilidadesMapeamento de RedeEscaneamento de PortasScripting e AutomaçãoColeta de InformaçõesSegurança de RedeTestes de PenetraçãoUtilitários e Frameworks
GitHub
208437há 3 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 →
trustedsec/spoonmap

spoonmap

Wrapper em Python para masscan e nmap para descoberta de portas em larga escala, descoberta de hosts, banner grabbing e varredura de vulnerabilidades baseada em NSE em redes internas ou externas.

Ver Repositório
Compartilhar

SpooNMAP

CI

Dependências

Este script é um wrapper para masscan e nmap. O nmap lida com a descoberta de hosts e (para varreduras menores) descoberta de portas, captura de banners de serviço e scripts NSE. O Masscan é usado para descoberta de portas em larga escala, onde a velocidade bruta importa. Instale ambos a partir do seu gerenciador de pacotes preferido ou a partir do código-fonte.

É necessário Python 3.8+ (requires-python em pyproject.toml; o CI tem como base a versão 3.8).

Instalação

O SpooNMAP pode ser executado diretamente a partir de um checkout — sem necessidade de etapa de instalação, consulte "Uso" abaixo — ou instalado como um comando autônomo com uv:

uv tool install git+https://github.com/trustedsec/spoonmap

Isso coloca um executável spoonmap no seu PATH, para que você possa invocá-lo como spoonmap de qualquer diretório em vez de clonar o repositório e executar ./spoonmap.py. Não há pacote no PyPI — este projeto nunca foi publicado em pypi.org, e o comando acima instala diretamente do repositório git. Use a forma completa git+https://... acima, não um simples uv tool install spoonmap; seja lá o que esse nome resolva no PyPI, agora ou no futuro, não é este projeto.

Para atualizar para o commit mais recente:

uv tool upgrade spoonmap

Instalar desta forma não torna o SpooNMAP um scanner autónomo: masscan e nmap continuam a ser ferramentas de sistema separadas que têm de ser instaladas independentemente (ver "Dependencies" acima), exatamente como quando se executa a partir de um checkout — uv tool install apenas empacota o próprio código Python do SpooNMAP e os seus scripts NSE incluídos, não os binários externos que ele invoca.

A única coisa que vale a pena compreender antes de instalar desta forma: o módulo Python de um spoonmap instalado vive onde quer que o uv tenha colocado o seu ambiente de ferramenta gerido — não num diretório onde alguma vez pensaria procurar um ficheiro de configuração ou saída de scan. É exatamente esse o cenário de que trata a secção "Where Files Live" abaixo — leia essa secção para saber o que é resolvido em relação ao seu diretório atual e porquê; instalar via uv tool install não altera a regra, apenas faz com que a regra importe, uma vez que já não resta nenhum diretório de checkout para onde um caminho de configuração ou de saída possa recair por hábito.

Usage

Simplesmente executar o script irá solicitar-lhe todas as opções necessárias.

config.json, ficheiros de alvo/exclusão e saída de scan são todos resolvidos em relação ao diretório a partir do qual executa o comando — ver "Where Files Live" abaixo se a sua saída não estiver onde espera, especialmente se estiver habituado a invocar o SpooNMAP por caminho a partir de fora do seu próprio diretório.

Se usar uv, pode executar sem um ambiente virtual separado:

uv run spoonmap.py

Ou invoque diretamente se o script for executável:

# ./spoonmap.py

________                   _____   _______  _________________
__  ___/______________________  | / /__   |/  /__    |__  __ \
_____ \___  __ \  __ \  __ \_   |/ /__  /|_/ /__  /| |_  /_/ /
____/ /__  /_/ / /_/ / /_/ /  /|  / _  /  / / _  ___ |  ____/
/____/ _  .___/\____/\____//_/ |_/  /_/  /_/  /_/  |_/_/
       /_/


Service Categories (comma-separated numbers, default: All)
	(1) Web          [80, 443, 7001, 7002, 8000, 8080, 8081, 8443, 8888, 9090, 10443]
	(2) Database     [1433, U:1434, 1521, 3306, 5432, 6379, 9200, 27017]
	(3) Remote Management  [22, 23, 3389, 5900, 5901, 6129, 1723, 5985, 5986]
	(4) Email        [25, 110, 143, 465, 587, 993, 995]
	(5) LDAP         [389, 636]
	(6) Network Infrastructure  [53, 179, U:500, U:161, U:623, U:631, U:1194, 1194]
	(7) File Transfer      [21, 111]
	(8) SMB          [445, 135, 139, U:137]
	(9) Specialized  [1090, 3300, 4786, 6970, 2375, 4243, 9100, 8530, 8531]
	(10) Containers & Debuggers  [2377, 10250, 8001, 9229, 2345, 5005, 61616, 8009, 6000]
	(11) Local LLM  [11434, 1234, 7860, 5000, 5001, 1337, 3000, 8000, 8080]
	(12) Full Port Scan  [1-65535, TCP only — no UDP]
	(c) Custom Port Scan  [enter your own comma-separated ports]

(The Full Port Scan number increments automatically with the number of categories.)

**Full Port Scan is TCP only.** It sweeps TCP 1-65535 and runs no UDP discovery at
all, so every `U:` port listed in the categories above — SNMP (U:161), IKE (U:500),
IPMI (U:623), IPP (U:631), OpenVPN (U:1194), NetBIOS (U:137), SQL Browser (U:1434) —
is skipped, along with the NSE scripts and findings that depend on them. It is
*wider* than All on TCP and *narrower* on UDP. For both, run All and Full as two
passes, or use the Custom option with the UDP ports appended
(e.g. `1-65535,U:161,U:500,U:623`).

Which categories would you like to scan (e.g. 1,3 — default: All)?

Would you like to enumerate service banners for any identified services (default: Yes)?

Would you like to run NSE security scripts on identified services (default: No)?

Target Scan
	(1) External
	(2) Internal

Is this an internal or external scan (default: External)?

How fast would you like to scan (default: 20000 packets/second)?

Please enter the full path for the file containing target hosts (default: /opt/spoonmap/ranges.txt):

Would you like to exclude any hosts? (default: No)

Run host discovery before port scanning (default: Yes)?

Tune advanced settings (nmap threads, masscan batch size, nmap work-unit threshold)? (default: No)

Você também pode criar um arquivo config.json (baseado em config.json.sample) para pular todos os prompts:

{
    "scan_categories": ["Web", "Database", "Remote Management"],
    "banner_scan": "True",
    "script_scan": "False",
    "host_discovery": "True",
    "target_scan": "Internal",
    "max_rate": "2000",
    "target_file": "ranges.txt",
    "output_path": "./",
    "exclusions_file": "exclusions.txt",
    "nmap_threads": 5,
    "masscan_batch_size": 5,
    "nmap_threshold": 5000000
}

Para escanear todas as categorias, defina "scan_categories": "All". Para escanear todas as 65535 portas TCP, defina "scan_categories": "Full" — observe que isto é apenas TCP e não realiza descoberta UDP. Para uma lista de portas totalmente personalizada, omita scan_categories e use "dest_ports": ["80","443","U:53"] em vez disso. As portas UDP são especificadas com o prefixo U: (por exemplo, "U:53").

Quando você responde aos prompts interativos, as opções selecionadas são gravadas em config.json antes do início da varredura. O arquivo gerado documenta cada campo editável da mesma forma que config.json.sample faz, e carrega uma chave marcadora __generated_by_prompts__. Isso significa que uma varredura interativa interrompida pode ser retomada da mesma forma que uma orientada por configuração — basta executar novamente com --resume, e todos os prompts são ignorados.

Se a saída de uma varredura anterior for detectada em output_path, a ferramenta oferece três opções: [d]elete (remover a saída anterior e começar do zero), [a]ppend (manter a saída anterior, mas executar novamente todas as fases), ou [r]esume (manter a saída anterior e ignorar o trabalho já concluído, exatamente como a flag --resume faz).

Baixar ferramenta