Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
flashmingo — Análise automática de arquivos SWF baseada em algumas heurísticas. Extensível via plugins. | Kitploit
Ferramentas/GitHubGitHub/mandiant/flashmingo
Análise EstáticaAnálise Dinâmica (Sandboxing)Análise de VulnerabilidadesEngenharia ReversaScripting e AutomaçãoAnálise ForenseAnálise de MalwareAnálise de BináriosAprendizado e EducaçãoArchived
GitHubmandiant/flashmingo

flashmingo

12036há 7 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

Análise automática de arquivos SWF baseada em algumas heurísticas. Extensível via plugins.

Ver Repositório

FLASHMINGO

Instalar

NOTA: As instruções a seguir são para Python3.

Se você precisar instalar o FLASHMINGO no Python2.7, você pode conferir o release 1.0 na aba releases. Os passos de instalação são essencialmente os mesmos.

Instale os pacotes Python3 listados em requirements.txt.

Você pode usar o seguinte comando: pip3 install -r requirements.txt

Se você quiser usar a funcionalidade de descompilação, precisa instalar o Jython. Usuários de Ubuntu/Debian podem executar apt install jython

Clone o projeto ou baixe o arquivo zip.

O quê

FLASHMINGO é um framework de análise para arquivos SWF. A ferramenta automaticamente tria arquivos Flash suspeitos e orienta o processo de análise posterior, liberando recursos preciosos em sua equipe. Você pode facilmente incorporar os módulos de análise do FLASHMINGO ao seu fluxo de trabalho.

Por quê

Até hoje, investigadores forenses e analistas de malware precisam lidar com arquivos SWF suspeitos. Se a história se repetir, a ameaça de segurança pode se tornar ainda maior além do fim de vida do Flash em 2020. Os sistemas continuarão suportando um formato de arquivo legado que não será mais atualizado com patches de segurança. A automação é a melhor maneira de lidar com esse problema e é aqui que o FLASHMINGO pode ajudar. FLASHMINGO é um framework de análise para processar automaticamente arquivos SWF que permite sinalizar amostras Flash suspeitas e analisá-las com esforço mínimo. Ele se integra em vários fluxos de trabalho de análise como uma aplicação autônoma ou uma biblioteca poderosa. Os usuários podem facilmente estender a funcionalidade da ferramenta por meio de plugins Python personalizados.

Como

Arquitetura

FLASHMINGO é projetado com simplicidade em mente. Ele lê um arquivo SWF e cria um objeto (SWFObject) representando seu conteúdo e estrutura. Depois, o FLASHMINGO executa uma série de plugins que atuam sobre esse SWFObject e retornam seus valores ao programa principal.

Abaixo, um diagrama de fluxo em ASCII obrigatório:

root@kitploit:~
                                                 +----------+
                                                 |          |
                       +------------+----------->+ PLUGIN 1 +------------+
                       |            |            |          |            |
                       |            |            +----------+            |
                       |            |                                    |
                       |            |            +----------+            |
                       |            |            |          |            |
+---------+            |            +----------->+ PLUGIN 2 +--------+   |
|SWF FILE +----------->+ FLASHMINGO |            |          |        |   |
+---------+            |            |            +----------+        |   |
                       |            |                                |   |
                       |            |                                |   |
                       |            |                                |   |
                       |            |                          +-----v---v-+
                       |            |                          |           |
                       |            |                          |           |
                       +-----+------+------------------------->+ SWFOBJECT |
                             ^                                 |           |
                             |                                 |           |
                             |                                 +-----+-----+
                             |                                       |
                             |                                       |
                             |                                       |
                             +---------------------------------------+

Ao usar o FLASHMINGO como biblioteca em seus próprios projetos, você só precisa cuidar de dois tipos de objetos:

  • um ou mais SWFObject(s), representando a(s) amostra(s)
  • um objeto Flashmingo. Isso atua essencialmente como um mecanismo de conexão entre plugins e objetos SWFObject.

Plugins!

Os plugins do FLASHMINGO são armazenados em seus próprios diretórios dentro de... você adivinhou: plugins Quando um objeto Flashmingo é instanciado, ele percorre este diretório e processa todos os manifestos dos plugins. Se isso indicar que o plugin está ativo, ele é registrado para uso posterior. No nível do código, isso significa que um pequeno dicionário plugin_info é adicionado à lista plugins.

Os plugins são invocados via a API run_plugin com dois argumentos:

  • o nome do plugin
  • a instância de SWFObject

Opcionalmente, a maioria dos plugins permite que você passe seus próprios dados do usuário. Isso depende do plugin (leia a documentação) e pode ser explicado mais facilmente com um exemplo. O plugin padrão SuspiciousNames pesquisará todos os pools de constantes por strings contendo substrings suspeitas (por exemplo: 'overflow', 'spray', 'shell', etc.) Existe uma lista de substrings comuns já codificada no plugin para que ele possa ser usado como está. No entanto, você pode passar uma lista de suas próprias substrings definidas, neste caso através do parâmetro names.

Exemplo de código:

root@kitploit:~
fm = Flashmingo()
print fm.run_plugin('DangerousAPIs', swf=swf)
print fm.run_plugin('SuspiciousNames', swf=swf, names=['spooky'])

Plugins padrão

O FLASHMINGO vem com alguns plugins úteis de fábrica:

  • binary_data
  • dangerous_apis
  • decompiler
  • suspicious_constants
  • suspicious_loops
  • suspicious_names
  • template :)

Estendendo o FLASHMINGO

Um plugin modelo é fornecido para facilitar o desenvolvimento. Estender o FLASHMINGO é bastante simples. Siga estes passos simples:

  • Copie o modelo
  • Edite o manifesto
  • Sobrescreva o método run
  • Adicione seu código personalizado

Você está pronto para começar :)

FLASHMINGO como biblioteca

API

  • Consulte o diretório docs para documentação gerada automaticamente
  • Veja o post do blog da FireEye para um exemplo

Interfaces

  • Console

Criar Documentação

$ pip install sphinxcontrib-napoleon

Após configurar o Sphinx para construir sua documentação, habilite o napoleon no arquivo conf.py do Sphinx:

Em conf.py, adicione napoleon à lista de extensões

extensions = ['sphinxcontrib.napoleon']

Use sphinx-apidoc para construir sua documentação da API:

$ sphinx-apidoc -f -o docs/source projectdir

Isso cria arquivos .rst para o Sphinx processar

$ make html

É isso! :)

Baixar ferramenta