No mercado de teste de software, é comum lidarmos majoritariamente com o mundo virtual em algumas aplicações. Ou seja, se tem algo de errado no seu código, o bug pode afetar “apenas” um erro no layout do site, que pode ficar fora de proporção em um celular.

Coloco as aspas pois todo tipo de erro é importante e deve ser corrigido; neste post, por exemplo, explicamos que teste de software é gestão de risco. Há muito a se analisar antes de planejarmos do que nós queremos nos proteger ao fazer testes.

No entanto, não é raro que sistemas que usamos na vida real, como metrô, reservas de avião, hotel ou até mesmo operações financeiras passem por apuros em algumas operações pela falta de testes. Nesses casos, a atenção deve ser redobrada, já que podem afetar milhões de pessoas na vida real e até criar caos em certas situações.

São Francisco sem metrô por um dia

Por exemplo, imagina o transporte público inteiro de uma cidade dar problema de um dia para o outro? Pois é. Foi o que aconteceu com São Francisco, uma cidade de quase 1 milhão de habitantes no estado da Califórnia (Estados Unidos). Neste caso, o transporte público ficou gratuito por 24 horas.

Mas não foi por bondade da Prefeitura: um hacker deixou os terminais de compra da cidade fora de serviço e instalou um ransomware nas máquinas ― o tipo de malware que criptografa os dados do computador e exige alguma quantia em dinheiro pelo resgate. Na ocasião, o hacker pedia US$ 250 mil.

sanfran-muni

Para não atrasar os passageiros, a Agência de Transportes Municipais de São Francisco liberou as catracas até descobrirem o que exatamente tinha acontecido. Logo depois, eles disseram que a situação havia sido controlada e que estavam conseguindo restaurar o sistema normalmente.

Para você ter uma ideia, 725 mil pessoas usam todos os dias o metrô da cidade, San Francisco Municipal Railway (Muni), segundo o site da empresa. A tarifa do transporte público é de US$ 2,50. Por cima, sem considerar os passageiros que pagam o pacote mensal (US$ 91 por mês) e de jovens/idosos (US$ 36 por mês), eles perderam cerca de US$ 1,8 milhão de dólares. Quanto será que não teria custado em investimentos de segurança para prevenir esse problema?

Liberando passagem para 725 mil pessoas que usam o metrô todos os dias, o transporte de São Francisco perdeu cerca de US$ 1,8 milhão de dólares. Quanto será que não teria custado em investimentos de segurança para prevenir esse problema?

O que mais assusta nesse caso é que o metrô de São Francisco não foi um alvo direto: o IP das máquinas caiu em um scan de falhas de segurança que procurava por empresas aleatórias. Depois da ação, o hacker disse que fez essa checagem pois acredita que as empresas crescem, mas não investem muito na segurança dos seus sistemas.

Podemos ver que há um ponto a ser levantado aqui: o alvo, em específico, não necessariamente era o transporte público da cidade. Poderia ter sido qualquer outra empresa a cair em um ransomware, o que é preocupante. Melhor investir em aprimorar a segurança de sistemas que precisar pagar um “resgate” para hackers mal-intencionados.

Falha no software de metrô no Brasil

Aqui no Brasil, o transporte público também já agiu fora do normal ― mas não teve ação de hackers. Em outubro de 2016, um trem da linha 15-Prata do monotrilho saiu da estação com as portas abertas (!). Por ser um monotrilho, o trem estava a 15 metros do chão, colocando em risco possíveis passageiros descuidados. Imagina se alguém cai dessa altura?

433338-970x600-1

Segundo o jornal Estado de S. Paulo, a falha ocorreu por conta de uma pane no sistema, fazendo com que as portas fossem abertas e fechadas repetidas vezes, fora do normal para o padrão de embarque e desembarque. Pouco tempo depois, um funcionário que estava dentro do trem percebeu que havia algo de errado e acionou os freios de emergência, causando paralisação na linha por algumas horas até a resolução do caso.

Em nota, o Metrô disse que a falha já havia acontecido antes e foi decorrente de uma falha nos sistemas da empresa, que estava em fases de testes. Em comunicado, a fabricante do trem disse que “implementou uma nova versão do sistema de controle de portas que elimina este tipo de falha em todos os trens do monotrilho”.

Acontece que o trem estava circulando mesmo com a falha já conhecida pela empresa, tanto que o funcionário estava dentro dos trens, que são autônomos, justamente para intervir se alguma coisa desse errado. Imagina-se que, ainda que o sistema estivesse em fase de testes, a falha não foi corrigida por despreocupação com timing e em investigar o que estava ocorrendo. Logo depois deste incidente, o sistema da empresa foi devidamente atualizado com a correção.

Prefeitura com sistema fora do ar

Ainda no Brasil, mas voltando para ataques de ransomware, uma Prefeitura passou por algo parecido que a operadora do transporte público de São Francisco. O município de Pratânia, no interior de São Paulo, teve seu sistema bloqueado e todos os dados criptografados, com hackers exigindo US$ 3 mil para fazer tudo voltar ao normal.

hacker gives key to victim to restore the personal data on laptop computer

O incidente se agravou pois o momento da invasão coincidiu com o dia de pagamento dos servidores, que ficaram sem receber salário. Nenhum dos 214 funcionários da Prefeitura conseguiu gerenciar os serviços administrativos da cidade. Sem ter como movimentar o caixa, foi criada uma reação em cadeia, uma vez que fornecedores do comércio também precisam ser pagos para manter os estoques abastecidos.

A situação é especialmente preocupante quando considera-se as vidas afetadas, em diversas situações: 214 funcionários sem receber pagamento, sem contar os fornecedores. Uma quitanda que fornece alimentos para a merenda escolar precisava de uma quantia de R$ 5 mil, que não foi depositada. Outro estabelecimento, de materiais de construção, precisava do depósito da Prefeitura para pagar os funcionários.

No final, a Prefeitura contratou um especialista na área para resolver o problema. Eles também estavam trabalhando com a Polícia Federal para encontrar o criminoso, já que o ransomware pode dar cadeia com pena de até dois anos. Não houve mais informações nos noticiários sobre o caso.

“Sequestro” virtual de um hotel inteiro

Ainda falando de ransomware, um caso semelhante aconteceu com o hotel luxuoso Romantik Seehotel Jaegerwirt, que fica na Áustria. sistema inteiro foi bloqueado quando o hotel estava em sua capacidade máxima, impossibilitando os funcionários de consultar qualquer informação, adicionar reservas ou fazer modificações.

Entering hotel room

O que deixou a situação ainda mais delicada foi que o hotel usava um sistema de autenticação do quarto por chaves eletrônicas, então com o sistema parado os hóspedes também não conseguiam entrar nos quartos (!). O hacker pedia US$ 1,8 mil para liberar tudo, e o valor dobraria se o resgate não fosse pago até o final do dia.

Eles acabaram pagando a quantia aos hackers, informa o The Verge. Depois, de arrependimento, o dono do hotel disse que vai voltar a usar as fechaduras tradicionais. “O jeito mais seguro para não ser hackeado é ficar offline”, disse ele ao site.

Especialmente nestes dois últimos casos, vemos situações preocupantes porque a falha aconteceu justamente em um momento decisivo: quando o hotel estava em capacidade máxima, quando a prefeitura precisava pagar os funcionários.

A importância dos testes

Especialmente nestes dois últimos casos, vemos situações preocupantes porque a falha aconteceu justamente em um momento decisivo: quando o hotel estava em capacidade máxima, quando a prefeitura precisava pagar os funcionários. Seria o equivalente a você fazer uma campanha de marketing enorme, anunciar algum site em todos os lugares possíveis, e ele acabar ficando indisponível logo depois devido ao tráfego mais alto que esperado.

Como destaquei ao longo do post, é muito importante que a atenção seja redobrada em sistemas que envolvem o mundo real. Até casos simples, como o sistema de algum comércio ou organização, podem criar verdadeiras dores de cabeça para qualquer empresa.

Por isso, é bom analisar o que poderia dar errado em seu sistema, além de averiguar quais riscos você está disposto a correr, seguindo nosso modelo de análise de risco.

Tem um produto e quer saber quais os testes ideais a serem feitos? Fique à vontade para entrar em contato com a gente. Pode ser diretamente comigo pelo meu e-mail: bruno.abreu@sofist.com.br. Você também consegue falar conosco no (19) 3291-5321.