Um ponto de venda, também conhecido como PDV ou PoS (do Inglês, Point of Sale) é um sistema importante que gerencia as transações de vendas em empresas.
Embora possa parecer complexo à primeira vista, na verdade, é bastante simples.
Agora, vamos explicar com mais detalhes o que é um PDV e como ele funciona. PDV é uma abreviação derivada das iniciais da expressão “Ponto de Venda”.
Este sistema facilita e registra transações de vendas entre clientes e vendedores. Um sistema de PDV inclui tanto componentes de hardware quanto de software.
Componentes de Hardware: Um sistema de PDV geralmente inclui componentes de hardware, como um computador ou tablet, leitor de códigos de barras, gaveta de dinheiro, impressora e tela.
Esses dispositivos são usados para realizar transações e fornecer recibos ou faturas aos clientes.
Componentes de Software: O software de PDV é usado para gerenciar transações, controlar o estoque, processar pagamentos e gerar relatórios.
Esse software permite que os clientes criem seus carrinhos de compras, façam pagamentos e recebam recibos.
Como Funciona uma Transação de PDV?
Passo A: O Cliente Usa o Cartão
O cliente inicia o processo de pagamento inserindo seu cartão no dispositivo de ponto de venda (POS) e digitando seu código PIN confidencial.
Passo B: Início da Transação pelo Dispositivo PDV
O dispositivo PDV inicia a transação transmitindo de forma segura os detalhes do cartão e o código PIN, de forma criptografada, para o servidor do Switch ATM. O Controle de Acesso à Rede (NAC) garante o acesso seguro.
Passo C: Verificação do Cartão
Se o cartão pertencer ao mesmo banco, a chave do ATM verifica o PIN usando o servidor do Módulo de Segurança de Hardware (HSM). Após a verificação bem-sucedida, o pedido de transação é encaminhado para o servidor do CBS.
Passo D: Cenário de Banco Diferente
Se o cartão pertencer a um banco diferente, a transação é encaminhada para o servidor NFS. O servidor NFS encaminha a transação para o servidor HSM do outro banco para verificação do PIN. Após a verificação bem-sucedida, a transação é enviada para o servidor do CBS.
Passo E: Verificação de Conta e Transferência de Fundos
O servidor do CBS verifica o saldo na conta do titular do cartão e deduz o valor da compra. O valor deduzido é transferido para a conta do vendedor.
Passo F: Conclusão da Transação
Quando a transação é concluída com sucesso, o servidor do CBS gera uma resposta. A chave do ATM criptografa e envia essa resposta de volta para o dispositivo POS. A transação está completa.
Como faço para realizar um Teste de Segurança de Dispositivo de Ponto de Venda (PDV)?
A. Revisão de Configuração Segura
Esta etapa envolve garantir que o dispositivo de ponto de venda (PDV) esteja corretamente configurado e tenha as configurações de segurança apropriadas.
Isso pode incluir verificar se o dispositivo está executando versões atualizadas de software e firmware, alterar senhas padrão, desativar conexões de rede desnecessárias e revisar as configurações do firewall.
Os dispositivos PDV vêm geralmente com configurações padrão, e é necessário alterar essas configurações padrão antes de implantá-los em um ambiente de produção.
As configurações padrão podem abranger o gerenciamento de acesso ao dispositivo, métodos de criptografia e configurações padrão para serviços como FTP e SSH.
Ao conduzir uma revisão de segurança da configuração de um dispositivo POS, é crucial examinar cuidadosamente todas as configurações padrão e outros parâmetros essenciais para garantir que estejam devidamente configurados.
Por exemplo, o seguinte exemplo destaca a senha padrão do administrador, que pode variar dependendo da marca e do modelo do dispositivo:
“Um passo crítico para a segurança de dispositivos de ponto de venda (POS) é modificar as configurações padrão. Essas configurações padrão podem representar um risco potencial para a segurança do dispositivo.
Por exemplo, configurações críticas, como a senha do administrador, podem facilitar o acesso de atores maliciosos ao dispositivo.
Portanto, revisar todas as configurações padrão e usar senhas fortes é essencial para uma configuração segura.”
a. Avaliação de Segurança Física
Nesta seção, diversos componentes, como portas USB, portas LAN, leitores de cartão NFC, entre outros, são frequentemente encontrados em um dispositivo de Ponto de Venda (POS).
É essencial proteger o dispositivo POS de tal maneira que o acesso não autorizado a essas áreas seja impedido. Se o acesso não autorizado for possível, atores maliciosos podem conectar unidades flash, incluindo aquelas que se assemelham ao BAD USB, o que pode permitir o acesso remoto ao terminal do dispositivo POS.
Para mitigar tais ataques, tanto a segurança física quanto a segurança da porta USB devem ser garantidas para os dispositivos POS.
b. Skimming em POS
Outra forma de ataque físico é o skimming em POS, onde um dispositivo é colocado secretamente no mecanismo de passagem do cartão para roubar informações do cartão a partir das faixas magnéticas.
Portanto, a inspeção regular do mecanismo de passagem de cartão do dispositivo POS é crucial.
Nesse contexto, um testador de penetração pode usar um método de skimming portátil para colocar um dispositivo skimmer nos dispositivos POS numa organização, potencialmente capturando detalhes do cartão, números PIN e vários outros dados.
Isso serve como um teste significativo no âmbito das camadas de segurança física.
c. Manipulação do Teclado PIN
Atacantes podem manipular o Teclado PIN para capturar os PINs dos cartões dos clientes. Eles podem usar uma sobreposição falsa que se assemelha ao teclado de um dispositivo de ponto de venda real para realizar esses ataques.
Portanto, é essencial revisar periodicamente o teclado do dispositivo de ponto de venda e verificar a presença de dispositivos de registro de teclas. Isso é crucial para garantir a segurança dos dados dos cartões dos clientes e a proteção contra atividades fraudulentas.
d. Conexão de Rede do POS
Um aspecto crítico de nossa avaliação envolve examinar a conexão de rede do dispositivo POS. A rede do POS deve permanecer isolada, garantindo que nenhum outro usuário possa se conectar à mesma rede Wi-Fi ou LAN.
Realizaremos um teste de penetração na rede local para verificar a segurança da rede do POS. Nosso objetivo aqui é avaliar a resistência da rede contra acessos não autorizados e possíveis intrusões.
Identificaremos quaisquer vulnerabilidades que possam expor o sistema POS a ameaças externas e forneceremos recomendações para remediação.
e. Credenciais Padrão no Dispositivo
Como parte de nossa avaliação, investigaremos o uso de credenciais padrão no dispositivo POS, especialmente no que diz respeito à gestão de hardware.
Nomes de usuário e senhas padrão são alvos comuns para ataques. Vamos examinar o dispositivo para identificar casos em que credenciais padrão são utilizadas.
Nosso objetivo é garantir que mecanismos adequados de autenticação sejam empregados para a gestão do dispositivo e eliminar possíveis riscos de segurança associados às credenciais de login padrão.
f. Criptografia
A transmissão de dados por canais Wi-Fi ou LAN é um aspecto crítico da segurança do dispositivo POS. Para verificar a segurança dos dados em trânsito, examinaremos as configurações de criptografia no dispositivo POS.
É essencial garantir que a criptografia esteja ativa e configurada corretamente para proteger dados sensíveis durante a transmissão.
Nossa avaliação se concentrará em avaliar a robustez dos protocolos de criptografia em uso e identificar quaisquer vulnerabilidades que possam comprometer potencialmente a segurança dos dados.
g. Armazenamento Inseguro de Dados
O dispositivo pode armazenar dados no cartão de memória ou internamente. Verificamos se os arquivos de configuração estão criptografados para a segurança desses dados. Se os dados não estiverem criptografados, a segurança de informações sensíveis pode estar em risco.
h. Serviços em Texto Puro
Verificamos se há serviços em texto puro ativados no dispositivo, como FTP, que baixa o firmware do servidor para atualizações de firmware. Desativar serviços em texto puro no dispositivo é essencial.
i. Logs
Examinamos os logs do dispositivo. Os logs são cruciais para detectar e monitorar possíveis violações de segurança.
j. Patches (atualizações de coreeção) Ausentes
Atualizações ausentes abordam vulnerabilidades que poderiam permitir execução de código remoto não autenticado, escalonamento de privilégios, negação de serviço e divulgação de informações confidenciais. Verificamos as atualizações mais recentes.
k. Exposição Não Autorizada de Dados Sensíveis Sem Autenticação
O dispositivo POS pode imprimir relatórios contendo informações sensíveis, como detalhes do dispositivo e transações. Tentamos acessar esse recurso sem autenticação.
l. Configurações de Atualização do Dispositivo
Verificamos as configurações do dispositivo e confirmamos as últimas atualizações.
m. Política de Senhas
Revisamos a política de senhas aplicada ao dispositivo e avaliamos sua conformidade com as melhores práticas que promovem o uso de senhas fortes.
n. Portas do Dispositivo POS: Inspecionamos todas as portas periféricas (Ethernet, telefone, RS-232 e portas USB) para garantir que as portas não utilizadas estejam desativadas.
B. Teste de Aplicação
O teste de aplicação é uma fase crítica na segurança de dispositivos de POS, uma vez que a aplicação SoftPay desempenha funções essenciais, como vendas online e offline, reembolsos e outras transações de pagamento.
Durante esta etapa, é importante identificar e abordar as vulnerabilidades de segurança que podem existir nos níveis de aplicação e lógica.
a. Análise de Tráfego em Texto Claro
Primeiramente, conectamos nosso laptop ao segmento de rede do POS e garantimos que o endereço IP do laptop corresponda ao endereço de gateway do dispositivo POS.
Em seguida, editamos as configurações de endereço de gateway do dispositivo POS, iniciamos uma solicitação de tráfego em texto claro e usamos ferramentas como o Wireshark em nosso laptop para capturar o tráfego.
b. Tentativa de Reembolso
Em segundo lugar, tentamos efetuar um reembolso de um valor superior ao montante da compra. Isso nos ajuda a testar se a aplicação lida de forma segura com transações de reembolso.
c. Teste de Elevação de Privilégio
A aplicação possui diferentes níveis de privilégio, como Operador, Gerente e Superusuário. Simulamos um ataque de elevação de privilégio utilizando uma conta de Operador para tentar acessar funções ou dados de nível de Gerente.
d. Verificação de PIN
Tentamos inserir um PIN inválido durante a compra de um produto para verificar se a verificação do PIN é aplicada corretamente durante as transações.
e. Tentativa de Manipulação de Dados
Tentamos manipular dados interrompendo ou alterando o fluxo de tráfego. Isso nos ajuda a observar como as aplicações vulneráveis lidam com dados.
f. Avaliação de Divulgação de Informações Sensíveis
O dispositivo de ponto de venda (POS) gera recibos de transações quando um produto ou serviço é pago com sucesso.
É imperativo examinar esses recibos de transação gerados quanto à presença de dados sensíveis, como números de conta e detalhes do cartão.
O aspecto crucial é garantir que qualquer informação do cartão presente no recibo de transação seja efetivamente mascarada para proteger os dados do cliente.
g. Transação de POS sem PIN
Como parte de nossa avaliação, temos o objetivo de realizar uma transação de teste dentro do sistema POS sem a necessidade de um código PIN.
Esse procedimento nos permite examinar como o dispositivo POS lida com transações sem autenticação por PIN, fornecendo insights sobre possíveis vulnerabilidades de segurança.
h. Tentativa de Venda Offline sem Código de Autorização
Nossa estratégia de teste inclui uma tentativa de executar uma transação de venda offline sem a presença de um código de autorização ou utilizando um código incorreto.
Esse cenário de teste específico nos permite avaliar a resiliência do sistema POS e as medidas de segurança em relação a transações offline na ausência dos códigos de autorização necessários.
C. Avaliação de Vulnerabilidades e Teste de Invasão
a. Segurança da Rede do Dispositivo POS
A conexão dos dispositivos POS ao servidor isolado do banco é de importância crítica para avaliar vulnerabilidades de segurança no nível de rede.
Esses testes são conduzidos para avaliar a segurança da conexão de rede do dispositivo POS e identificar riscos potenciais.
b. Verificação da Conexão de Rede
Para começar, obtemos os detalhes de IP do dispositivo POS e conectamos nosso laptop à rede POS. Isso nos permite simular o acesso à rede.
Posteriormente, examinamos a conexão de rede.
Dica: Esse processo nos proporciona a oportunidade de examinar o sistema operacional do dispositivo POS.
c. Identificação de Portas Abertas
Utilizando ferramentas como o Nmap, é crucial escanear portas TCP e UDP abertas no dispositivo POS. Isso nos ajuda a determinar quais serviços estão em execução e quais portas estão expostas ao mundo externo.
Procuramos por vulnerabilidades potenciais de segurança dentro desses serviços.
Exemplo de Configuração de Terminal TCP POS e Aplicação TCP
d. Escaneamento de Vulnerabilidades
Para identificar de maneira mais abrangente as vulnerabilidades de segurança no dispositivo POS, utilizamos ferramentas de escaneamento de vulnerabilidades de segurança, como o Nessus.
Este escaneamento abrange uma ampla gama, começando pela versão do sistema operacional e estendendo-se a possíveis vulnerabilidades de segurança dentro de serviços como FTP e SNMP.
É importante destacar que processos automatizados podem negligenciar certas vulnerabilidades, portanto, o esforço manual é essencial para detectar e explorar vulnerabilidades, especialmente aquelas relacionadas a falhas lógicas, designs inseguros e outras vulnerabilidades não automatizadas.
e. Exame de Serviços
Dispositivos POS geralmente executam um número limitado de serviços. O exame desses serviços inclui:
- Versão do Sistema Operacional
Tentamos identificar a versão do sistema operacional e a inspecionamos em busca de vulnerabilidades de segurança.
- Serviço FTP
O serviço FTP é usado para baixar atualizações e enviar arquivos para o dispositivo. Examinamos este serviço em busca de vulnerabilidades de segurança.
- Serviço SNMP
O serviço SNMP é utilizado para a gestão centralizada do dispositivo POS. Avaliamos o SNMP em busca de vulnerabilidades de segurança.
- Portal de Gerenciamento
Verificamos o acesso ao portal de gerenciamento. Além disso, instalamos o SDK API do POS em nosso laptop, que é utilizado para personalizar a aplicação POS. Tentamos acessar o dispositivo POS através de uma conexão USB.
- Aplicação POS
Verificamos a versão da aplicação POS e investigamos as vulnerabilidades de segurança associadas a esta versão.
Os testes de segurança para dispositivos PoS são de extrema importância para empresas e instituições financeiras.
Esses testes são necessários para proteger tanto os dados operacionais quanto os dados dos clientes, garantir a segurança das transações financeiras e evitar possíveis vulnerabilidades de segurança.
Os testes de segurança conduzidos avaliam a segurança da rede, segurança física, segurança da aplicação e outros aspectos dos dispositivos PoS.
Esses testes ajudam a detectar ameaças potenciais e proporcionam uma oportunidade para intervenção precoce. Além disso, os testes regulares de segurança ajudam a aprimorar as medidas de segurança para se defender contra ameaças e métodos de ataque atuais.
Creditos: Alperen Ugurlu
Achou este artigo interessante? Subscreva em nossa newsleter ou siga-nos em nossas redes sociais para ler mais conteúdos exclusivos que publicamos.
Obtenha mais coisas como esta
Inscreva-se em nossa newsletter e receba conteúdos interessantes e atualizações em sua caixa de entrada de e-mail.
Obrigado por se inscrever.
Algo correu mal.