Desta vez, o personagem principal é o cartão de água pobre da escola (cartão de água quente)
Verificando com o MCT (Mifare Classic Tool) instalado no telefone NFC, o cartão de água é realmente do tipo Mifare Classic 1k
As ferramentas usadas nessa fissura são: um computador, um ACR122U, um celular com função NFC e um cartão de água
Antes de quebrar, precisamos construir um ambiente correspondente para o computador, e você precisa instalá-lo no computador. NET Farmwork 4 e Java, por favor, baixe e instale online, e o software usado posteriormente depende dessas duas bibliotecas de runtime.
Após instalar o runtime, você precisa instalar o driver ACR122U (o artigo está anexado ao link do software) e, para facilitar o desenvolvimento subsequente, também instalei o SDK.
Depois de instalar o driver e o SDK, conecte o ACR122U ao computador e o dispositivo funcionará normalmente. Colocamos nosso cartão de água e o buzina de ACR122U vai disparar e a cor do LED vai mudar
O programa para verificar que vulnerabilidades podem ser exploradas é mfoc, e a versão para Windows do mfocgui se chama mfocgui, mas o mfocgui é um pouco problemático para estudantes que são novos em segurança RFID, então desta vez ele usa diretamente o programa de serviço de cartão M1 (na verdade, uma versão simplificada do mfocgui).
Após abrir, a interface do programa é muito simples, com apenas um botão, que é começar a quebrar. Já vi meu ACR122U na lista de leitores de cartões, então é só apertar para começar a abrir
Depois, espere o programa quebrar a chave sozinho.
Não demorou para perceber que todos os setores estavam marcados e rachados.
Após o sucesso da quebra, o diretório raiz gera o arquivo de dump dessa placa, cujo tamanho é 1kb, e a placa inteira é lida.
No entanto, o mfoc originalmente rodava no ambiente Linux, e o arquivo de dump gerado pelo mfocgui portado para Windows não pode ser usado diretamente, sendo necessário um fixdump de ferramenta de reparo (download fixdump) para reparar o arquivo dump de 1kb em um arquivo de dump de 4kb.
fixdump é uma operação de linha de comando e deve ser instalado com . NET Farmwork 4, para facilitar a operação dos comandos, copiamos o arquivo de despejo para o diretório fixdump e abrimos o cmd para repará-lo. O comando é simples, basta "fixdump", e o arquivo gerado vai sobrescrever diretamente o arquivo fonte.
Depois que o reparo for concluído, abra com um editor hexadecimal como UltraEdit ou WinHex e você poderá ver os dados do arquivo dump.
Vê os dados que emoldurei na caixa na foto acima? Este é o segmento de controle do setor de cartão, do qual os primeiros 6 bytes e os últimos 6 bytes de FFFFFFFFFFFF são a senha desse setor, e o FF078069 no meio é o bit de controle.
Depois de saber a senha, importei a senha para o MCT e comecei a ler os dados do cartão.
Devido à função do MCT com o realce de dados, podemos ver claramente que há duas linhas de blocos de valor nos 4 setores, e o saldo atual do meu cartão é 32,31. O valor do bloco de valor é invertido duas vezes e invertido uma vez, sendo armazenado no endereço mais baixo. Vendo o primeiro bloco de valores, 0C9F, como os dados do computador são armazenados em ordem inversa, os dados reais são 9F0C, que é 3231 em ordem decimal. O 60F3 na seção do meio está invertido, e a ordem reversa do 60F3 é F360, que é 1111001101100000 quando invertido, é 0000110010011111 quando invertido, e é 3231 quando é alterado para decimal. O último parágrafo, assim como o primeiro, não é pego e preservado. O 11 e o EE no final são os endereços, que podem ser ignorados, desde que os endereços sejam consistentes depois. Até esse ponto, os dados do cartão foram quebrados porque não houve criptografia, agora vou modificar o valor do cartão para 999,99 para tentar, 999,99 yuans devem ser decimais 99999, hexadecimal é 01869F, o resultado em ordem inversa é 9F8601, os outros bits são calculados no mesmo princípio, ou podemos usar a própria ferramenta de cálculo de blocos de valor da MCT para calcular e, finalmente, calcular o resultado como mostrado na figura abaixo.
Anote os dados no cartão, agora é hora de ir para a prática de máquinas.
|