Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Ferramentas/GitHubGitHub/wh00hw/pyflipper
Segurança BluetoothSegurança IoTFerramentas RFID/NFCSegurança Sem FioHacking de HardwareTestes de PenetraçãoUtilitários e FrameworksSegurança de Hardware e IoTRed Teaming
GitHubwh00hw/pyflipper

pyFlipper

Wrapper CLI Python para Flipper Zero

Ver Repositório
4384922há 2 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

PyFlipper

Wrapper Python para CLI do Flipper Zero

Artigos

  • Como hackear um restaurante

Funções e características:

  • Wrapper CLI serial do Flipper
  • Interface de cliente WebSocket
  • Interface TCP simples

Novidades (compatibilidade com firmware 1.x)

Esta versão alinha o wrapper com a CLI atual do Flipper Zero (validado em hardware real, firmware unlshd-089e):

  • Novo módulo info: flipper.info.device_info() / power_info() / power_debug_info() (os comandos modernos info device / info power).
  • power info → info power: flipper.power.info() continua funcionando e agora lê info power internamente. Adicionado flipper.power.otg_on()/otg_off().
  • date: use flipper.date.datetime(); a análise foi corrigida para o formato de saída atual.
  • Storage: os tamanhos são analisados tanto como KB quanto KiB, read() agora retorna o conteúdo completo do arquivo em várias linhas, e cartões exFAT / sem rótulo são analisados corretamente (corrige #21).
  • Infrared: a lista de protocolos é lida ao vivo do firmware, então NECext, Kaseikyo, RCA, Pioneer, … são suportados automaticamente (corrige #15). Novo flipper.ir.protocols().
  • debug → sysctl debug, subghz tx/rx ganhou o argumento device obrigatório, bt hci_info inalterado.
  • NFC reescrito para o sub-shell interativo atual (scan, dump, emulate, field, apdu, raw, mfu) com auxiliares de cache de chave Mifare Classic por UID (import_nfc_keys, write_key_cache).
  • Camada serial unificada (serial / websocket / TCP) com tratamento de escape ANSI para o shell atual, além de um conjunto de testes sem hardware.
  • Removido do firmware oficial (mantido para firmwares personalizados que ainda os incluem): ps (→ top), music_player, nfc detect.

Instruções de configuração:

$ pip install pyflipper

Testado em:

  • Python 3.8.10 no Linux 5.4.0 x86_64
  • Python 3.9.10 no Windows 10
  • Python 3.10.5 no Android 12 (Termux + OTGSerial2WebSocket SEM ROOT NECESSÁRIO)
  • Python 3.12 no Linux (firmware unlshd-089e)

Uso/Exemplos

Conexão

from pyflipper import PyFlipper

# Local serial port
flipper = PyFlipper(com="/dev/ttyACM0")

# OR

# Remote serial2websocket server
flipper = PyFlipper(ws="ws://192.168.1.5:1337")

# TCP
flipper = PyFlipper(tcp='192.168.89.222:22170')

Energia

# Informações (no firmware atual, isto lê `info power` internamente)
info = flipper.power.info()

# Desligar
flipper.power.off()

# Reiniciar
flipper.power.reboot()

# Reiniciar no modo DFU
flipper.power.reboot2dfu()

# Alternar o pino OTG de 5V no cabeçalho GPIO
flipper.power.otg_on()
flipper.power.otg_off()

Atualização/Backup

# Instalar atualização de arquivo .fuf
flipper.update.install(fuf_file="/ext/update.fuf")

# Fazer backup do Flipper para arquivo .tar
flipper.update.backup(dest_tar_file="/ext/backup.tar")

# Restaurar Flipper do arquivo .tar de backup
flipper.update.restore(bak_tar_file="/ext/backup.tar")

Carregador

# Listar aplicativos instalados
apps = flipper.loader.list()

# Abrir aplicativo
flipper.loader.open(app_name="Clock")

Informações do Flipper

# Obter data do flipper (objeto datetime)
date = flipper.date.datetime()

# Obter timestamp do flipper
timestamp = flipper.date.timestamp()

# Obter dicionário de informações do dispositivo (firmware atual `info device`, chaves separadas por ponto)
device_info = flipper.info.device_info()

# Obter dicionário de informações de energia (firmware atual `info power`)
power_info = flipper.info.power_info()

# Informações estendidas de depuração de energia/medidor
power_debug = flipper.info.power_debug_info()

# Comando legado `device_info` (chaves separadas por sublinhado, ainda suportado)
legacy_info = flipper.device_info.info()

# Obter dicionário de informações de heap
heap = flipper.free.info()

# Obter string free_blocks
free_blocks = flipper.free.blocks()

# Obter informações do Bluetooth
bt_info = flipper.bt.info()

Compatibilidade de firmware. Esta biblioteca agora tem como alvo a CLI atual do Flipper Zero (firmware 1.x, verificado contra Unleashed unlshd-089e). Alguns comandos legados foram removidos do firmware oficial e, portanto, não estão mais disponíveis: ps (substituído pelo top interativo), music_player e nfc detect (NFC agora é um sub-shell interativo). power info foi movido para info power, debug foi movido para sysctl debug e storage agora relata tamanhos em KiB — tudo tratado de forma transparente pelos wrappers acima.

Armazenamento

Informações do sistema de arquivos

# Obter informações do sistema de arquivos de armazenamento
ext_info = flipper.storage.info(fs="/ext")

Explorador

# Obter dicionário do armazenamento /ext
ext_list = flipper.storage.list(path="/ext")

# Obter dicionário da árvore do armazenamento /ext
ext_tree = flipper.storage.tree(path="/ext")

# Obter informações do arquivo
file_info = flipper.storage.stat(file="/ext/foo/bar.txt")

# Criar diretório
flipper.storage.mkdir(new_dir="/ext/foo")

Arquivos

# Ler arquivo
plain_text = flipper.storage.read(file="/ext/foo/bar.txt")

# Remover arquivo
flipper.storage.remove(file="/ext/foo/bar.txt")

# Copiar arquivo
flipper.storage.copy(src="/ext/foo/source.txt", dest="/ext/bar/destination.txt")

# Renomear arquivo
flipper.storage.rename(file="/ext/foo/bar.txt", new_file="/ext/foo/rab.txt")

# Arquivo de hash MD5
md5_hash = flipper.storage.md5(file="/ext/foo/bar.txt")

# Escrever arquivo de uma vez
file = "/ext/bar.txt"

text = """There are many variations of passages of Lorem Ipsum available, 
but the majority have suffered alteration in some form, by injected humour, 
or randomised words which don't look even slightly believable. 
If you are going to use a passage of Lorem Ipsum, 
you need to be sure there isn't anything embarrassing hidden in the middle of text. 
"""

flipper.storage.write.file(path=file, text=text)

# Escrever arquivo usando um listener
file = "/ext/foo.txt"

text_one = """There are many variations of passages of Lorem Ipsum available, 
but the majority have suffered alteration in some form, by injected humour, 
or randomised words which don't look even slightly believable. 
If you are going to use a passage of Lorem Ipsum, 
you need to be sure there isn't anything embarrassing hidden in the middle of text. 
"""

flipper.storage.write.start(file)

time.sleep(2)

flipper.storage.write.send(text_one)

text_two = """All the Lorem Ipsum generators on the Internet tend to repeat predefined chunks as 
necessary, making this the first true generator on the Internet.
 It uses a dictionary of over 200 Latin words, combined with a handful of 
 model sentence structures, to generate Lorem Ipsum which looks reasonable. 
The generated Lorem Ipsum is therefore always free from repetition, injected humour, or non-characteristic words etc.
"""
flipper.storage.write.send(text_two)

time.sleep(3)

# Don't forget to stop
flipper.storage.write.stop()

LED/Retroiluminação

# Definir led genérico ligado (r,b,g,bl)
flipper.led.set(led='r', value=255)

# Desligar led azul
flipper.led.blue(value=0)

# Definir valor do led verde
flipper.led.green(value=175)

# Ligar retroiluminação
flipper.led.backlight_on()

# Desligar retroiluminação
flipper.led.backlight_off()

# Desligar led
flipper.led.off()

Vibro

# Definir vibro Verdadeiro ou Falso
flipper.vibro.set(True)

# Ligar vibro
flipper.vibro.on()

# Desligar vibro
flipper.vibro.off()

GPIO

Baixar ferramenta