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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Ferramentas/GitHubGitHub/justicerage/ffm
Escalada de PrivilégiosMovimento LateralExfiltração de DadosColeta de InformaçõesPós-ExploraçãoTestes de PenetraçãoComando e ControleUtilitários e FrameworksRed Teaming
GitHubjusticerage/ffm

FFM

Modo de Luta pela Liberdade: plataforma de hacking open source

3494717há 5 mesesRevisado 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
Ver Repositório

Modo de Luta pela Liberdade (FFM)

FFM é um harness de hacking que você pode usar durante a fase de pós-exploração de um engajamento de red-teaming. A ideia da ferramenta foi derivada de uma conferência de 2007 do @thegrugq.

Foi apresentada no SSTIC 2018 (vídeo) e o deck de slides que a acompanha está disponível em esta url. Se você não estiver familiarizado com esta classe de ferramentas, é fortemente recomendado dar uma olhada nelas para entender qual é o propósito de um harness de hacking. Todos os comentários estão incluídos nos slides.

Este projeto é distribuído sob os termos da Licença GPL v3.

Documentação

A documentação principal está neste README e nos módulos de comando em commands/. A palestra do SSTIC mencionada acima continua sendo o melhor background de alto nível sobre como o harness deve ser usado. Material adicional de walkthrough está disponível em:

  • https://ice-wzl.gitbook.io/hacknetics/c2-frameworks/ffm-documentation

Contribuidores

  • ice-wzl contribuiu com comandos, documentação e refatorações durante a história do projeto.

Instalação

Instalação com Docker

  • Com a diversidade de prompts de terminais modernos, recomendamos fortemente usar docker com esta ferramenta.
  • Utilizar o Dockerfile neste repositório reduzirá drasticamente os erros em potencial encontrados.
  • Utilizar um contêiner para interagir com hosts remotos também é mais seguro. Se você fosse explorado enquanto interage com um host remoto, eles estariam no seu contêiner em vez do seu host real. Vamos torcer para que isso não aconteça.
  • Certifique-se de ter o Docker instalado no seu sistema local
git clone https://github.com/JusticeRage/FFM.git
cd /FFM

docker build Docker_Install/ -t ffm:ffm

docker image list 
REPOSITORY                TAG         IMAGE ID      CREATED        SIZE
localhost/ffm             ffm         fb6dd17e3b91  9 minutes ago  614 MB
docker.io/library/ubuntu  22.04       3b418d7b466a  2 weeks ago    80.3 MB

#execute seu novo contêiner e acesse um prompt /bin/bash como root
docker run -it --entrypoint /bin/bash -u 0 fb6dd17e3b91
  • Depois de entrar no seu contêiner, defina a passwd para root e neo
  • su neo e agora você está pronto

Instalação sem Docker

  • Não recomendado
 git clone https://github.com/JusticeRage/FFM.git
 cd /FFM
 pip install -r requirements.txt

Uso

O objetivo de um harness de hacking é atuar como um auxiliar que automatiza tarefas comuns durante a fase de pós-exploração, mas também protege o usuário contra erros que possa cometer.

É uma instrumentação do shell. Execute ./ffm.py para ativá-lo e você pode começar a trabalhar imediatamente. Os comandos são distribuídos nos pequenos módulos em commands/, com commands/command_manager.py lidando com descoberta e registro. Os principais grupos são enumeração, ajuda, stealth, transferência e execução.

Existem dois comandos que você precisa conhecer:

  • Digite !list para exibir todos os comandos fornecidos pelo harness.
  • Digite !list tags para ver as diferentes tags nas quais os comandos podem ser agrupados
!list tags
Lista de comandos disponíveis:
	 enumeration
	 execution
	 help
	 stealth
	 transfer
  • Agora você pode digitar !list enumeration (ou uma das outras tags) para ver comandos que se enquadram nessa categoria.
!list enumeration
Lista de comandos disponíveis:
	!backup-hunter: Caça por arquivos de backup
	!info: Retorna CPU(s), Arquitetura, Memória e Versão do Kernel para a máquina atual.
	!log: Alterna o registro (logging) da entrada e saída do harness para um arquivo.
	!mtime: Retorna arquivos modificados nos últimos X minutos
	!os: Exibe a distribuição da máquina atual.
	!db-hunter: Caça por arquivos .sqlite, .sqlite3 e .db
	!sshkeys: Caça por chaves SSH privadas e públicas na máquina atual.
	!suid: Encontra binários SUID, SGID na máquina atual.
	--snip--

  • Digite SHIFT+TAB para realizar a conclusão com tab na máquina local. Isso pode ser útil se você estiver conectado via SSH em um computador remoto, mas precisar referenciar um arquivo localizado na sua máquina.

Lista de funcionalidades

Este harness de hacking fornece algumas funcionalidades descritas abaixo. Conforme descritas, a filosofia de design por trás da ferramenta também será apresentada. Não se espera que todos os comandos implementados no FFM sejam adequados para você. Cada um tem sua própria maneira de fazer as coisas, e ajustar o harness à sua necessidade específica provavelmente exigirá que você modifique parte do código e/ou escreva alguns plugins. Muito esforço foi dedicado para garantir que esta seja uma tarefa indolor.

Comandos

Comandos de Enumeração

  • !os é um comando extremamente simples que apenas executa cat /etc/*release* para mostrar qual SO a máquina atual está executando. Provavelmente é mais valioso como uma demonstração de que, no contexto de um harness de hacking, você pode definir aliases que funcionam através dos limites das máquinas. Conecte-se via SSH a qualquer computador, digite !os e o comando será executado. Os comandos de enumeração residem em commands/enumeration_commands.py, os comandos de ajuda em commands/help_commands.py, e os comandos relacionados a stealth estão divididos entre commands/stealth_commands.py, commands/notty_sudo.py e commands/log_control.py.
  • !backup-hunter Caça por arquivos de backup
  • !info Retorna CPU(s), Arquitetura, Memória e Versão do Kernel para a máquina atual.
  • !log Alterna o registro (logging) da entrada e saída do harness para um arquivo. Implementado em commands/log_control.py.
  • !mtime Retorna arquivos modificados nos últimos X minutos. Por exemplo, !mtime 5 obterá todos os arquivos na máquina local (aos quais você tem direitos de ver) que foram modificados nos últimos 5 minutos.
  • !db-hunter Caça por arquivos .sqlite, .sqlite3 e .db e outros arquivos de banco de dados
  • !sshkeys Caça por chaves SSH privadas e públicas na máquina atual.
  • !suid Encontra binários SUID, SGID na máquina atual.
  • !strange-dirs Verifica o dispositivo começando pelo caminho especificado pelo usuário em busca de diretórios estranhos em um host
  • !sudo-version Verifica se há uma versão vulnerável do sudo
  • !vm Verifica se o dispositivo é uma Máquina Virtual

Comandos de Transferência

  • Comandos que ajudam a puxar e enviar arquivos, bem diretos.
  • !download [arquivo remoto] [caminho local] obtém um arquivo da máquina remota e o copia localmente através do terminal. Este comando é um pouco mais complexo porque uma verificação de erros mais rigorosa é necessária, mas é outro comando que você pode ler facilmente para começar. Ele reside em commands/download_file.py. Observe que requer xxd ou od na máquina remota para funcionar corretamente.
  • !download-dir [diretório remoto] [destino local] transmite um arquivo tar de um diretório remoto através do terminal e o extrai localmente sem tocar no sistema de arquivos remoto. Ele reside em commands/download_directory.py. Requer tar e base64 na máquina remota, e também usa gzip quando disponível.
  • !upload [arquivo local] [caminho remoto] funciona exatamente como o comando anterior, exceto que um arquivo local é colocado na máquina remota. Ele reside em commands/upload_file.py.

Comandos de Execução

Baixar ferramenta