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
RFIDIOt — Biblioteca Python e ferramentas para explorar etiquetas e leitores RFID/NFC: leia, grave, clone e analise hardware serial ACG compatível para pesquisa e testes de segurança. | Kitploit
Ferramentas/GitHubGitHub/adamlaurie/rfidiot
Segurança de Sistemas EmbarcadosSegurança IoTFerramentas RFID/NFCSegurança Sem FioHacking de HardwareSegurança de HardwareSegurança de Hardware e IoTTop em Ferramentas RFID/NFC nº16
GitHubadamlaurie/rfidiot

RFIDIOt

1.1k24068há 4 diasRevisado 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

Biblioteca Python e ferramentas para explorar etiquetas e leitores RFID/NFC: leia, grave, clone e analise hardware serial ACG compatível para pesquisa e testes de segurança.

Ver RepositórioSite

/* RFIDIOt.py - RFID IO tools for python *

  • Adam Laurie [email protected]
  • http://rfidiot.org/
  • This code is free software; you can redistribute it and/or modify
  • it under the terms of the GNU General Public License as published by
  • the Free Software Foundation; either version 2 of the License, or
  • (at your option) any later version.
  • This code is distributed in the hope that it will be useful,
  • but WITHOUT ANY WARRANTY; without even the implied warranty of
  • MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  • GNU General Public License for more details. */

Copyright (c) 2006-2026 Adam Laurie [email protected]

*** Esta é a versão Python 3 do RFIDIOt. ***

Execute tudo com python3. O código original em Python 2.7 está preservado no branch 'python2.7' e marcado com a tag 'v1.0-python2.7' - ele não será executado no python3, e esta versão não será executada no python2.

Com enormes agradecimentos a Pete Shipley (evilpete), que fez a maior parte do port para Python 3 e contribuiu imensamente para o branch python3 que se tornou esta versão.

p: O que é o RFIDIOt? r: Uma coleção de ferramentas e bibliotecas para explorar a tecnologia RFID/NFC, escrita em python.

p: Por que RFIDIOt? r: Eu gosto de trocadilhos bobos. Além disso, estou abordando isso do ponto de vista de um idiota: não sei nada sobre tags RFID, e ainda menos sobre python. Assim, senti-me um completo idiota quando comecei. :)

p: Como posso contribuir? r: Envie-me patches, informações, novas ferramentas, café, dinheiro, drogas e/ou uma música do Miles Davis :)

p: Quais hardwares são suportados? r:

  • leitores libnfc (baseados em PN53x: ACR122U, SCL3711, etc.) - use '-R READER_LIBNFC' ou '-f ', e veja '-N' para listá-los. O libnfc deve ser instalado separadamente.
  • leitores PC/SC via pyscard + pcscd ('-R READER_PCSC', detecta automaticamente o subtipo: ACS / OMNIKEY / SCM). Este é o padrão. Cartões T=0 e T=1 são tratados. Nota: o slot de contato do OMNIKEY CardMan 5321 funciona com o driver libccid aberto, mas sua interface contactless (13,56 MHz) precisa do driver proprietário OMNIKEY da HID (ifdokccid) - o libccid expõe apenas o slot de contato. Com o driver da HID instalado, a interface contactless aparece como um segundo slot PC/SC, ou seja, índice de leitor 1 ('-r 1').
  • os leitores seriais originais ACG e Frosch ('-R READER_ACG' / '-R READER_FROSCH', porta serial via '-l', por exemplo /dev/ttyUSB0). Consulte docs/readers.md para comandos de inicialização por modelo (SCL3711, ACR122U / Touchatag, ACR122U-WB-R via '-f ccid', OMNIKEY 5321, Chameleon Ultra, ...). Execute qualquer ferramenta com '-h' para a lista completa de opções.

p: Como faço para instalá-lo? r: pip install -r requirements.txt # pycryptodome, pyscard, Pillow, ... (passiveauth usa o CLI openssl) sudo python3 ./setup.py install Pacotes do sistema: instale o libnfc para leitores libnfc; para leitores PC/SC instale o daemon e o driver CCID e certifique-se de que o daemon está em execução, por exemplo no Debian/ Ubuntu: sudo apt install pcscd libccid pcsc-tools Algumas ferramentas têm necessidades extras: mrpkey.py usa PIL/Pillow para exibir fotos de passaporte e openssl para manipulação de certificados; jcoptool.py precisa do pyasn1.

p: Há algo novo na versão Python 3? r: Além do próprio port:

ChAP.py ("Chip And PIN") é um leitor EMV por contacto/contactless que funciona tanto sobre PC/SC como sobre libnfc (escolha o leitor com as opções padrão - por exemplo, '-f 0' para libnfc, '-r 1' para uma ranhura contactless PC/SC). Percorre o cartão (PPSE -> AID -> GPO -> registos), descodifica o BER-TLV EMV (AIP, AFL, lista CVM, CDOL/DDOL, Track 2 dividido em PAN / validade / código de serviço, informação de criptograma, etc.) e lê o registo de transações do cartão (montante / data / hora / moeda / ATC por entrada). Com '-c' realiza autenticação de dados offline completa - recupera a cadeia de certificados CA -> Emissor -> ICC (uma tabela incluída de 26 chaves CA de esquemas: Visa, Mastercard, Amex, CB, JCB, Discover, UnionPay, RuPay, cada uma verificada contra o seu checksum CAPK do EMVCo) e depois verifica a assinatura do cartão pelo método que o cartão suportar:

  • SDA - Signed Static Application Data (tag 93)
  • DDA - INTERNAL AUTHENTICATE com um desafio aleatório (contacto)
  • fDDA - a assinatura fast-DDA devolvida no GPO (contactless)
  • CDA - a assinatura combinada com o criptograma ('-g' envia GENERATE AC; intrusivo - incrementa o ATC do cartão) Aplicações complementares/alias (por exemplo, LINK) verificam sob a CA do esquema principal. A recuperação é auto-validável, pelo que uma chave errada ou em falta falha de forma limpa. Execute sem argumento PIN para permanecer apenas de leitura; um argumento PIN envia um VERIFY offline (em texto simples, ou cifrado com RSA com '-E'), que atualiza o Contador de Tentativas do PIN.

mrpkey.py lê ePassports e passiveauth.py realiza Autenticação Passiva (integridade dos grupos de dados + confiança DS/CSCA) contra uma lista mestra CSCA pública, sinalizando um passaporte como SAFE / TAMPERED / UNTRUSTED. rfidiot-cli.py também lê EMV contactless.

q: Então o que está exatamente aqui? a: Consulte http://www.rfidiot.org/documentation.html

Baixar ferramenta