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
flowinspect — Uma ferramenta de inspeção de rede | Kitploit
Ferramentas/GitHubGitHub/7h3ram/flowinspect
Sniffing e Análise de PacotesAnálise de VulnerabilidadesShellcodeAnálise ForenseFuzzingSegurança de RedeAnálise de MalwareDetecção de Intrusão
GitHub7h3ram/flowinspect

flowinspect

Uma ferramenta de inspeção de rede

Ver Repositório
822428há 9 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

flowinspect

Uma ferramenta de inspeção de tráfego de rede

Descrição:

Ele usa libnids (por meio de seus bindings Python de Jon Oberheide: pynids) para desfragmentar IP e remontar pacotes TCP (UDP é inspecionado em base de pacote por pacote) para gerar fluxos de rede. Esses fluxos são então inspecionados usando um dos quatro modos de inspeção:

  • regex (re2 - bindings Python: pyre2)
  • correspondência difusa de strings (fuzzywuzzy)
  • libemu (bindings Python: pylibemu)
  • yara (bindings Python: yara-python)

As correspondências regex são realizadas com a biblioteca re2 e seus bindings Python, pyre2, que suporta PCRE, correspondências sem diferenciar maiúsculas de minúsculas, invertidas e multilinha, etc. Ela tem enormes ganhos de desempenho em comparação com o módulo re embutido no Python (que é usado como alternativa caso o re2 não esteja instalado).

Os recursos de correspondência difusa de strings são executados por meio do módulo fuzzywuzzy. Ele ajuda a realizar tanto uma correspondência exata quanto relativa de strings. Um limite de correspondência padrão de 75 é usado como padrão e pode ser substituído pela cli.

Libemu e seus bindings Python, pylibemu, são usados para detecção de shellcode. As heurísticas GetPC usadas pelo libemu fornecem uma taxa de detecção razoável. Há alguns casos em que o libemu simplesmente falha, mas para a maioria dos casos de uso é bom o suficiente.

Yara é uma ferramenta de identificação e classificação de malware baseada em assinaturas. Seus bindings yara-python fornecem uma API para usar arquivos de assinatura existentes/personalizados em um buffer de entrada que, neste caso, é um fluxo de rede.

A inspeção pode ser solicitada para qualquer uma das direções CTS/STC/ANY ou suas combinações. Os buffers de inspeção são preenchidos à medida que o tráfego de rede chega e, portanto, as correspondências CTS (CTS ou ANY) acontecem primeiro. Se mais de um modo de inspeção for solicitado, os fluxos são inspecionados na seguinte ordem: regex, fuzzy, libemu e, finalmente, yara. Para TCP, se qualquer um dos modos de inspeção tiver sucesso, o fluxo correspondido não será inspecionado novamente. Essa é uma abordagem otimista e está habilitada por padrão. No entanto, se para um determinado caso de uso um fluxo TCP precisar ser inspecionado várias vezes, isso pode ser solicitado explicitamente usando a cli.

A inspeção pode ser completamente desabilitada, se necessário, por meio da opção de cli linemode. Esse modo é realmente útil e, quando combinado com um outmode adequado, ajuda a visualizar a comunicação de rede como ela é enquanto ocorre na rede. O linemode é habilitado automaticamente como alternativa se nenhum modo de inspeção for fornecido via cli.

Para UDP, as correspondências acontecem em base de pacote por pacote e, assim, pacotes subsequentes serão testados mesmo depois que uma correspondência já tenha sido encontrada em um fluxo UDP. Como apenas pacotes subsequentes e seu conteúdo são inspecionados, isso garante que os dados já correspondidos durante ciclos de inspeção anteriores não sejam inspecionados novamente.

O escopo da correspondência pode ser limitado por expressões BPF, modificadores de conteúdo do tipo offset-depth do Snort ou por meio de opções de cli de limite de inspeção de pacotes/fluxos. Para TCP, os fluxos correspondidos também podem ser encerrados, se necessário. Os fluxos também podem ser registrados em arquivos, além de serem despejados no stdout. Alguns modos de saída úteis (quite, meta, hex, print, raw) ajudam em análises adicionais. O outmode meta é especialmente útil, pois mostra detalhes realmente importantes específicos da correspondência, como o tamanho total do conteúdo correspondido, o deslocamento do início de uma correspondência no fluxo de rede, os IDs de pacotes que uma correspondência abrange, a direção do pacote no qual uma correspondência aconteceu, etc.

A geração de pcap para fluxos correspondidos também é suportada. Se habilitada, ela despeja todos os pacotes do início até o fim do fluxo. Fluxos TCP correspondidos são despejados assim que um close/reset é visto e, para aqueles fluxos em que não vemos um close/reset, eles são despejados antes da saída da ferramenta. Para UDP, como não há informações de estado como close/reset disponíveis, eles são despejados apenas quando a ferramenta sai. Isso garante que todos os pacotes, mesmo aqueles que chegam após a correspondência, sejam capturados no pcap do fluxo. Exceto pelo cabeçalho global personalizado do pcap, pelo cabeçalho pcap por pacote e pelo cabeçalho L2 Ethernet II (que não é visto pelo flowinspect), tudo acima permanece como está nos pacotes capturados despejados.

AJUDA: -----```c ______ _ __ / / /_ _ () _________ ___ / / / // / __ \ | /| / / / __ / / __ / _ / / __/ / __/ / // / |/ |/ / / / / ( ) // / / // / // //_/|/|/// /// ._/_/___/_/ //

flowinspect v0.2 - A network inspection tool Ankur Tyagi (7h3rAm [at] gmail [dot] com)

usage: flowinspect.py [-h] (-p --pcap | -d --device) [-c --cregex] [-s --sregex] [-a --aregex] [-i] [-m] [-G --cfuzz] [-H --sfuzz] [-I --afuzz] [-r fuzzminthreshold] [-C --cdfa] [-S --sdfa] [-A --adfa] [-l] [-X --dfaexpr] [-g [graphdir]] [-P --cyararules] [-Q --syararules] [-R --ayararules] [-M] [-y] [-Y --emuprofileoutsize] [-O --offset] [-D --depth] [-T --maxinspstreams] [-U --maxinsppackets] [-t --maxdispstreams] [-u --maxdisppackets] [-b --maxdispbytes] [-w [logdir]] [-o {quite,meta,hex,print,raw}] [-f --bpf] [-v] [-V] [-e] [-k] [-j] [-Z] [-n] [-L]

optional arguments: -h, --help show this help message and exit -p --pcap input pcap file -d --device listening device

RegEx per Direction: -c --cregex regex to match against CTS data -s --sregex regex to match against STC data -a --aregex regex to match against ANY data

RegEx Options: -i ignore case -m disable multiline match

Fuzzy Patterns per Direction: -G --cfuzz string to fuzzy match against CTS data -H --sfuzz string to fuzzy match against STC data -I --afuzz string to fuzzy match against ANY data

Fuzzy Options: -r fuzzminthreshold threshold for fuzzy match (1-100) - default 75

DFAs per Direction ('m[0-9][1-9]='): -C --cdfa DFA expression to match against CTS data -S --sdfa DFA expression to match against STC data -A --adfa DFA expression to match against ANY data

DFA Options: -l switch default boolean operator to 'or' -X --dfaexpr expression to test chain members -g [graphdir] generate DFA transitions graph

Yara Rules per Direction: -P --cyararules Yara rules to match on CTS data -Q --syararules Yara rules to match on STC data -R --ayararules Yara rules to match on ANY data

Shellcode Detection: -M enable shellcode detection -y generate emulator profile for detected shellcode -Y --emuprofileoutsize emulator profile memory size (default 1024K | max: 10240K)

Baixar ferramenta