Madrock

Financial Transaction Processing

por Derek em Jul.02, 2008, sob Banca e Eftpos

Fui recentemente a trabalhar dentro de um dos maiores bancos da Austrália.
Através deste trabalho fui olhar os controles e mecanismos que envolvem o processamento de cartões de crédito e débito ao redor da Ásia-Pacífico.

Recebo realizar muitas arquitectura de segurança e das avaliações dos sistemas de pagamento.
Ao longo dos anos, tenho sempre em consideração a proteção dos dados do cartão como uma das principais considerações.

Até ontem eu nunca tinha visto um CVV ou ferramentas de descodificação PVV. Acho que alguns scripts uso dessas ferramentas pode ser muito interessante.
O hziggurat29.com site

Muitas das outras ferramentas neste site são também muito original e vale uma olhada.
Big thanks to ziggurat29 para fornecer tais ferramentas impressionantes.

Como muitos desses sites são desta natureza são difíceis de encontrar e muitas vezes parecem desaparecer ao longo dos anos, optei por reproduzir o texto a partir desta página e fornecer cópias locais dos arquivos.
Vale a pena visitar periodicamente o site ziggurat29 e agora cada vez para ver se todas as ferramentas adicionais foram postadas.

Um dos arquivos mais extraordinário é o Atalla Hardware Security Module (HSM) e BogoAtalla para Linksys emulação (simulação) ferramentas. Então eu pergunto se Eracom e Thales estão agitando em suas botas. De alguma maneira eu não penso assim. ;-)

--- --- Ziggurat29 Texto

Estes são todos os comandos do Windows utilitários de linha (exceto quando indicado); executar com a opção-ajuda
para determinar o uso.

DUKPT Decrypt (<- o arquivo para download)

Este é um utilitário que irá descriptografar criptografados PIN blocos que foram produzidos através do método DUKPT triple-DES. Eu usei isso para testar a saída de algum software PIN Pad eu tinha criado, mas também é útil para fins de depuração outros.

VISA PVV Calculator (<- o real
arquivo para download)

Este é um utilitário que irá calcular e verificar PIN Verification valores que tenham sido produzidos utilizando a técnica de VISA PVV. Tem um monte de funções auxiliares, tais como a verificação e fixação de uma PAN (Luhn computações), a criação de blocos e criptografando PIN, e desencriptar extração de PINs blocos PIN criptografado, etc

VISA CVV Calculator (<- o arquivo para download)

Este é um utilitário que irá calcular de Verificação valores que tenham sido produzidos utilizando a técnica de VISA CVV. MasterCard CVC usa o algoritmo CVV, por isso vai trabalhar para isso também. Ele irá calcular CVV, CVV2 CVV3, iCVV, cavv, desde Estes são apenas variações sobre o serviço eo código
formato da data de expiração. verificação é simplesmente o valor calculado comparando com o que você recebeu, portanto, não há verificação de função explícita.

Atalla AKB Calculator (<- o arquivo para download)

Este é um utilitário que irá gerar e decodificar os criptogramas Atalla AKB. Você vai precisar do MFK texto simples para executar essas operações. Quando desencriptar, o MAC também será verificado e os resultados mostrados.

BogoAtalla (<- o arquivo de reais
download)

Este é um emulador de Atalla (ou simulador). Este emulação de software (simulação) do conhecido Atalla Hardware Security Module (HSM) que é usado por bancos e processadores para operações criptográficas, tais como a verificação / traduzir blocos de PIN, que autoriza operações por verificando
Números CVV / CSC, e realização de procedimentos de troca de chaves, foi produzido para fins de teste. Essa implementação não é do conjunto completo de comandos HP Atalla, mas o justo
parcelas que eu mesmo necessário. Dito isto, é bastante completo, se você estiver realizando a aquisição e / ou funções de processamento de emissão, e estão a utilizar sistemas mais modernos, tais como a Visa, PVV e DUKPT, e precisa fazer geração, verificação e tradução.

Isto funciona como um servidor de soquete de escuta e manipula o comando Atalla nativo definido. Tomei algumas liberdades com os valores de retorno de erro e não tenham lutado para alta-fidelidade existe (ou seja, você pode obter uma resposta de erro diferente do hardware nativo), mas definitivamente positiva deve receber idêntico
respostas. Algumas funcionalidades implementadas aqui, normalmente, exigem a compra comandos superiores, mas todos os comandos executados estão disponíveis aqui. Exemplos estão gerando valores PVV e criptografar / descriptografar plaintext PIN valores.

BogoAtalla para Linksys (<- o arquivo para download)

Este é o emulador Atalla portado para Linux e construir para a instalação de um sistema OpenWRT. Faz de um dispositivo de teste realmente barato ($ 60 USD) / desenvolvimento.

Arquivos Locais

bogoatalla002
atallaakbcalc
bogoatalla_10-1_mipsel
dukptdecrypt
visacvvcalc
visapvvcalc

: ,

22 Comentários para esta entrada

  • Steve Vasilakos

    Alguém sabe se este suporta BogoAtalla (ZMK Zone Master Keys)? Temos vindo a querer usar este emulador com nosso processador de ATM. Mas todos os processadores com que lidamos deseja usar chaves de 64 caracteres para o HSM trocar HSM. Nós construímos nossos próprios reduzida comutador ATM com base na ISO8583 e estamos a interface com outro processador de ATM que acontece com quem usa uma Postillion (não que isso importe). Eu acredito que entender como usar o LMK ou KSK, mas não posso determinar a forma de teste de uma Zona de chave mestre.

  • Dave

    Sim, ele faz. A ZMK é uma troca de chaves Key (KEK). Em Atalla AKB existem algumas maneiras de criar a KEK dependendo do que o formulário de entrada é fundamental. Se você estiver recebendo as chaves AKB, você talvez faça o seu ZMK com 1KDNE000 e use o comando 13. Se você estiver importando chaves não AKB (o caso mais comum), você usaria um cabeçalho como 1PUNN0I0 em seu ZMK, com 11B comando. Ambos estes parecem ser implementado.

    Você disse uma chave de 64 caracteres, embora, assim que é um pouco surpreendente porque DES único é uma chave de 16 caracteres, 2-TDES chave é de 32 caracteres, e 3-TDES chave é 40 caracteres. Assim que é 64?

  • tim

    Can you pls me ajudar como conseguir iskn e BDK? ive causar conseguir ter EPB e oviously e eu o pan.I 've dukptdecrypt uso quiser obter uma assits PIN.Pls.

  • Dave

    o IKSN eo BDK não fazem parte do Atalla per se, mas são parte de sua criação para trabalhar com DUKPT PIN Pads. Especificamente, a BDK é algo que você criar aleatoriamente, como qualquer outra tecla (e esta é uma peça muito importante). O IKSN é construído a partir de um identificador que indica qual BDK você está usando, e um número de série do dispositivo gerados por sua facilidade de injeção chave. Você transmitir o BDK para a instalação de injecção, juntamente com um prefixo para o IKSN, e que atribuem o número de série e injetar a ambos (bem, na verdade, eles derivam um 'Initial PIN Encryption Key "e que injectar). Sooo ...
    * Você terá a BDK na mão, porque você gerou para começar
    * O IKSN é o top 59 bits do KSN, que é transmitido a você em cada transação DUKPT

  • Wilf

    Alguém tentou atallaakbcalc? Ela não aparece para trabalhar em conjunto.

  • Dave

    Eu uso ele, é uma ferramenta muito simples, realmente. Quando você diz 'não funciona em todos ", que parte de" todos os "você está sentido especificamente? Se você usar a opção de ajuda, há alguns comandos de exemplo.

  • Conta

    Qual seria o comando para importar uma parte 0 KEK duas variantes, em seguida, o comando a ser usado para descriptografar um cyrptograms contendo CVV Keys? Parece ser nos moldes do 11B.

  • Dave

    OK, normalmente eu não faria isso, mas evidentemente eu tive muito café esta manhã.

    Você precisa de comando 11b para este cenário.

    Então, você menciona os "dois componentes ', então você deve então estar a trabalhar a partir de componentes para o seu KEK? Você precisará construir seu KEK dos componentes com a SCA, ou você pode usar a ferramenta atallaakbcalc se isto é para fins de teste. Você deve especificar um cabeçalho de magia, mas que neste caso é 1CDNN0I0. Além disso, sua política de segurança deve incluir C na E0 opção.

    Então, é preciso inventar o comando 11b, com o criptograma CVV chave eo KEK. Você vai então receber seu AKB criptograma da chave CVV importados, e os dígitos de verificação.

    Com isso você pode continuar com as operações de CVV.

    Aqui está um exemplo concreto:

    optE0 contém C

    2ABC3DEF4567018998107645FED3CBA20123456789ABCDEF MFK
    1CDNN0I0 hdr kek
    kek c1 11111111222222223333333344444444
    kek c2 88888888888888888888888888888888
    08D7B4 chk kcvv
    kcvv cryp 1A79047AE419985DE830024C358E3B4A

    (o texto original é kek 99999999aaaaaaaabbbbbbbbcccccccc, com dígitos de verificação de 820.638, ea chave CVV plaintext é 0123456789abcdeffedcba9876543210. você não tem essa informação, normalmente, é claro).

    faça o seu KEK Atalla quer com o real, ou a ferramenta

    atallaakbcalc-calcakb-2ABC3DEF4567018998107645FED3CBA20123456789ABCDEF MFK-1CDNN0I0 HDR-componente 11111111222222223333333344444444-componente 88888888888888888888888888888888
    1CDNN0I0, C2B3A07827006C490B1BF5A5D0D8B6BBFA470D1386CDB4B9, 87CD9133B3E8B593

    importar o criptograma com o ATALLA:

    Você pode ver os dígitos de verificação corresponder, então você está OK.

  • Dave

    (o suporte HTML hosed o comando Atalla, que usa colchetes. Aqui está o comando ea resposta que obteve retirado da mensagem)

    <11B # 0 # 1A79047AE419985DE830024C358E3B4A # 1CDNN0I0, C2B3A07827006C490B1BF5A5D0D8B6BBFA470D1386CDB4B9, 87CD9133B3E8B593 #>
    <21B # 1CDNN000, 64A883D036BBEF32BF146E43A1BC6DF0B1264D674A68E267, 88D88EA266E7D54F # 08D7 #>

  • Conta

    Infelizmente, ele se parece com o Atallaakbcalc não suporta a opção de componentes.

  • Conta

    Estou testando isso em preparação para o A8150 para ser entregue.
    Existe uma transferência para o atallaakbcalc que suporta as opções do componente que você mencionou? Se assim for, onde posso encontrá-lo?

  • Tim

    Dave,

    Eu sei que todos neste fórum é muito bem informados sobre este assunto. Eu gostaria apenas de saber uma coisas, onde posso obter uma explicação simples do comando conjunto Atalla que mesmo um leigo pode usar. Basicamente, eu quero ser capaz de comunicar eficazmente com o HSM virtual (Bogo Atalla) e obter o coloca para fora o que eu desejo, please help!

  • Colin Cummins

    Oi tudo,
    Minha pergunta é sobre o regime de gestão DUKPT chave.
    O meu entendimento é que este é o método recomendado para proteger dados sensíveis sobre operações financeiras e atualmente é superior a sessão mestre / porque um diferente (derivada) de chaves é usado para cada transacção.
    Eu só estou querendo entender como muito mais seguro este método é.
    Se um hacker foram para registrar transações para, digamos, um mês por cheirar uma rede, por exemplo, e depois foi capaz de quebrar a chave para uma das transacitons - ele poderia então calcular a chave para cada transacção seguinte, se ele tem conhecimento de Como a derivação DUKPT chave nas obras do terminal? Estou assumindo esse conhecimento estaria disponível para qualquer pessoa que tenha acesso à norma DUKPT.
    Eu também estou assumindo que seria quase impossível de calcular as chaves para operação antes da uma cortada porque o método de derivação DUKPT utiliza uma transformação não-reversível. Será que este direito de som - quaisquer comentários seriam apreciados - graças, Colin Cummins

  • Dave

    Tim: sobre os comandos Atalla. O manual é bastante completo, e você vai precisar dele, se você estiver indo para um código de interface. (Você também precisa se você estiver indo para cozinhar até comandos de si mesmo e inseri-los via telnet.) O super-leigo breve descrição é esta:

    * Message-oriented protocolo textual
    * Mensagens são delimitados por,
    campos dentro são delimitadas por #. Os dados são codificados em hexadecimal (raramente não).
    * O primeiro campo é o comando. O resto são dados dependendo do comando.
    * A resposta é estruturado como os comandos, mas o primeiro campo é o código de erro.
    * Os comandos de retorno de erro indicando 00, ou um número feito por incrementando o primeiro dígito do comando id. Assim comando 10 tem um código de retorno de 20, e 9A comando tem um código de retorno de AA.
    * Comandos não são terminar com CRLF, mas opcionalmente pode incluir crlf na resposta se isso te faz feliz.

    And that's it. Por mais que você vai precisar do manual.

  • Dave

    Colin: suas crenças são corretas. Há algumas outras coisas no caminho DUKPT é feito para limitar ainda mais o âmbito da utilidade de um ataque.

    Aqui está um rápido resumo:
    * Cada xactn tem uma chave única.
    * As chaves são derivadas de chaves anteriores e do contador de operação, e um pouco de número de série do aparelho. Praticamente, é como um hash de uma maneira.
    * A seqüência de teclas é diferente para cada unidade.
    * A tecla super-secreta - a base de derivação de chaves - nunca toca um dispositivo. Em vez disso, _another_ chave é derivado dele, exclusivo para cada dispositivo, e é colocado na unidade para iniciar o processo de geração da chave, e então imediatamente descartado. Este é o 'Initial PIN chave de criptografia ".

    Assim, se você cheirou, você não iria comprometer as operações anteriores. Em alguns casos particulares que poderiam comprometer as chaves no futuro, mas apenas para o bloco de PIN (s) no ataque. 'Caes especial ", porque a geração de chaves não é seqüencial, mas sim o keyspace é representada como uma árvore, e todos os filhos ficariam comprometidos. (Note-se que esta construção da árvore não é feito para a segurança, mas por praticidade). Você precisaria de despejo para fora todos os internos de um PIN pad para fazer a árvore inteira.

  • Maq

    Oi,

    Eu sou bastante novo para Atalla, fazendo alguns exercícios com ele.

    Então, eu tenho um conhecimento básico de chaves e outras coisas, por isso aqui está uma pergunta que provavelmente é muito fácil e pode fazer-me ver como eu sou burro:

    Onde posso obter a KEK? ou gerar a KEK?. Eu tenho um MFK e um PMFK, mas não tenho idéia por onde começar o KEK eo manual sempre assumir que tenho um KEK (ou uma chave criptografada sob o KEK em formato AKB).

    Obrigado!

  • Mark

    Oi Derek

    Poderia, por favor me ajudar com um link para onde eu possa baixar o software do 8000 Thales HSM. Tenho Bogo Atalla e não ter o seu manual ou conjunto de comandos. Poderia, por favor, quer me enviar o Bogo Atalla manual ou conjunto de comandos ou o Thales 8000 software HSM. Ou é o Thales 8000 HSM comando conjunto da mesma Bogo Atalla?

  • Tim

    Oi Derek
    Estou bastante clued um pouco sobre Atalla boga, mas só gostaria de saber mais sobre a im Atalla Bogo mesmo dispostos a ir a qualquer lugar no mundo para estudar os usos comando Bogo Atalla. Can you please advice me para onde ir ou mesmo de começar a estudar os comandos Atalla.

  • Dean

    Oi Derek,

    Quer esclarecer os não-reversíveis (NR) processo de descriptografia DUKPT - ou seja, a ANS X9 indica a NR dois processos estão relacionados, mas diferentes. Precisamente, como eles diferem? Eu sei descriptografia realiza um ciclo de NR para cada bit 1 no contador de criptografia, utilizando a saída do ciclo NR como a chave para o próximo mas que é exatamente o processo de NR no backend?

    Obrigado.

Deixe uma Resposta