Skip to content

Aplicação voltada para a área da Segurança da Informação. Consiste em um scanner de portas que verifica quais destas estão ativas.

License

Notifications You must be signed in to change notification settings

werdelesmarcio/iPyScan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

119 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Logo

CircleCI Code Coverage Maintainability Maintainability Build status Bugs Lines of Code Vulnerabilities GitHub License GitHub commits since latest release

iPyScan

iPyScan é um scanner de portas TCP moderno escrito em Python 3. Ele oferece suporte a varredura multithread, captura de banners de serviços, exportação em JSON/CSV e uma interface de linha de comando completa.

Trata-se de uma aplicação voltada principalmente para sistemas GNU/Linux (embora o interpretador Python 3 no Windows também execute a aplicação normalmente), com o objetivo de realizar a varredura de portas. A aplicação verifica quais portas estão abertas em um intervalo de portas fornecido por argumentos, retornando OPEN em caso positivo. Os argumentos fornecidos consistem no endereço do host ou IP do alvo a ser analisado, seguido do intervalo de portas inicial e final.

OBS.: Se o objetivo for escanear apenas uma porta, basta fornecer o mesmo valor para os dois últimos parâmetros.

Estrutura do projeto:

PyScan/
├── ipyscan/                       # Pacote principal renomeado
│   ├── main.py                    # Permite rodar com python -m ipyscan
│   ├── scanner/
│   │   └── input_validation.py
│   │   └── network_utils.py
│   │   └── port_scanner.py
│   ├── utils/
│   │   └── banner.py
│   │   └── exporter.py
│   └── ipyscan.py                 # Renomeie como ipyscan/main.py
├── tests/
│   └── test_core.py
├── pyproject.toml                 # Configuração moderna
├── setup.cfg                      # Metadados do projeto
├── README.md
├── LICENSE                        # MIT ou GPL

banner status


🚀 Funcionalidades

  • ✅ Escaneamento de portas TCP (com multithread)
  • ✅ Captura de banner de serviços (HTTP, FTP, SSH, etc)
  • ✅ Exportação em JSON ou CSV
  • ✅ Interface via argparse
  • ✅ Testes automatizados com unittest
  • ✅ Pronto para instalação via pip

📦 Instalação local

git clone https://github.com/werdelesmarcio/ipyscan.git
cd ipyscan
pip install .

⚖️ Uso básico

ipyscan --target 127.0.0.1 --ports 20-80 --threads 100 --output json

Argumentos

Flag Descrição Exemplo
--target IP ou hostname do alvo 127.0.0.1
--ports Faixa de portas (ex: 20-80) 20-100
--threads Número de threads (default: 100) --threads 200
--output Formato de exportação json ou csv

📅 Exemplo de Saída JSON

[
  {
    "port": 22,
    "banner": "SSH-2.0-OpenSSH_8.4"
  },
  {
    "port": 80,
    "banner": "HTTP/1.1 200 OK"
  }
]

💡 Roadmap de melhorias

  • Banner grabbing com heurísticas por porta
  • Testes automatizados com unittest
  • Exportação JSON/CSV
  • Ajuda CLI detalhada com --help
  • Banner seguro com subprocess
  • Scan UDP
  • Modo silencioso --quiet
  • Interface web (Flask ou GUI)

🌐 Licença

Este projeto está sob Licença GPL-3.0. Para mais informações, consulte a documentação de licença no link abaixo.


🚀 Contribuição

Pull requests são bem-vindos! Para grandes mudanças, abra uma issue antes.


Desenvolvido por Werdeles Marcio - 2025

Screenshot

Example

Colaboradores

Um praise para os cúbicos que contribuíram neste projeto 👏


Werdeles Soares

💻 Desenvolvedor

Fabi Gonçalves

👨‍💻 Colaboradora

Matheus Oliveira

👨‍💻 Colaborador

Como contribuir para o projeto

Caso tenha alguma dúvida confira este guia de como contribuir no GitHub

Contatos

Se quiser entrar em contato, crie um issue no GitHub ou envie um e-mail para [email protected]. Obrigado!

linkedin GitHub last commit GitHub contributors

About

Aplicação voltada para a área da Segurança da Informação. Consiste em um scanner de portas que verifica quais destas estão ativas.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published