
O GoScan é um cliente de scanner de rede interativa, com preenchimento automático, que fornece abstração e automação sobre o nmap.Embora tenha começado como um pequeno projeto paralelo que desenvolvi para aprender @golang , o GoScan agora pode ser usado para realizar a descoberta de host, varredura de porta e enumeração de serviço não apenas em situações em que ser furtivo não é uma prioridade e o tempo é limitado ( pensar em CTFs, OSCP, exames, etc.), mas também (com alguns ajustes em sua configuração) durante os compromissos profissionais.
Instalação
binária (recomendada) Os
binários estão disponíveis na página Release .
# Linux (64bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.3/goscan_2.3_linux_amd64.zip
$ unzip goscan_2.3_linux_amd64.zip
# Linux (32bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.3/goscan_2.3_linux_386.zip
$ unzip goscan_2.3_linux_386.zip
# After that, place the executable in your PATH
$ chmod +x goscan
$ sudo mv ./goscan /usr/local/bin/goscan
Construa a partir da fonte
$ git clone https://github.com/marco-lancini/goscan.git
$ cd goscan/goscan/
$ make setup
$ make build
Para criar um binário multiplataforma, use o comando cross via make:
$ make cross
Docker
$ git clone https://github.com/marco-lancini/goscan.git
$ cd goscan/
$ docker-compose up --build
Uso O
GoScan suporta todos os principais passos da enumeração de rede:

| Degrau | Comandos |
|---|---|
| 1. Alvos de carga | Adicione um único alvo através do CLI (deve ser um CIDR válido): load target SINGLE <IP/32>Faça o upload de vários destinos a partir de um arquivo de texto ou pasta: load target MULTI <path-to-file> |
| 2. Descoberta do Host | Execute uma varredura de ping: sweep <TYPE> <TARGET>Ou carregue os resultados de uma descoberta anterior:Adicione um único host vivo através do CLI (deve ser um / 32): load alive SINGLE <IP>Carregar vários hosts vivos de um arquivo de texto ou pasta: load alive MULTI <path-to-file> |
| 3. Port Scanning | Execute uma varredura de porta: portscan <TYPE> <TARGET>Ou faça o upload de resultados nmap de arquivos XML ou pastas: load portscan <path-to-file> |
| 4. Enumeração de serviços | Execução Seca (mostre apenas comandos, sem executá-los): enumerate <TYPE> DRY <TARGET>Executar enumeração de serviços detectados: enumerate <TYPE> <POLITE/AGGRESSIVE> <TARGET> |
| 5. Varreduras Especiais | Testemunha ocularFaça capturas de tela de sites, serviços RDP e servidores VNC abertos (somente KALI): special eyewitnessEyeWitness.py precisa estar no caminho do sistemaExtrair informações de domínio (Windows) dos dados de enumeraçãospecial domain <users/hosts/servers>DNSEnumerar DNS (nmap, dnsrecon, dnsenum): special dns DISCOVERY <domain>DNS da Bruteforce: special dns BRUTEFORCE <domain>DNS reverso da Bruteforce :special dns BRUTEFORCE_REVERSE <domain> <base_IP> |
| Útil | Mostrar resultados: show <targets/hosts/ports>Configurar automaticamente as configurações, carregando um arquivo de configuração: set config_file <PATH>Altere a pasta de saída (por padrão ~/goscan):set output_folder <PATH>Modifique os parâmetros padrão do nmap: set nmap_switches <SWEEP/TCP_FULL/TCP_STANDARD/TCP_VULN/UDP_STANDARD> <SWITCHES>Modifique as listas de palavras padrão: set_wordlists <FINGER_USER/FTP_USER/...> <PATH> |
Integrações Externas
Afase de Enumeração de Serviços atualmente suporta as seguintes integrações:
| QUE | INTEGRAÇÃO |
|---|---|
| ARP | nmap |
| DNS | nmapdnsrecondnsenumhospedeiro |
| DEDO | nmapfinger-user-enum |
| FTP | nmapftp-user-enumhidra [AGRESSIVO] |
| HTTP | nmapniktodirbTestemunha ocularsqlmap [AGRESSIVO]fimap [AGRESSIVO] |
| RDP | nmapTestemunha ocular |
| SMB | nmapenum4linuxnbtscansamrdump |
| SMTP | nmapsmtp-user-enum |
| SNMP | nmapsnmpcheckonesixtyonesnmpwalk |
| SSH | hidra [AGRESSIVO] |
| SQL | nmap |
| VNC | Testemunha ocular |

