Foi registado um número recorde de vulnerabilidades em 2017 nas aplicações web, incluindo categorias bem conhecidas, como xss, mas também novas categorias, como descerialização insegura. O número de vulnerabilidades na IoT também cresceu descontroladamente e com um impacto extremamente severo. Também o PHP e o WordPress continuam de mãos dadas no que toca a vulnerabilidades em CMS e server-side. Por fim, uma vulnerabilidade de dia zero (zero day vulnerability) afetou o Apache Struts e que contou com uma das maiores violações de segurança do ano.
Vulnerabilidades Web 2016-2017
A seguinte imagem mostra o crescimento das vulnerabilidades web na forma mensal, entre o ano de 2016 e 2017. É possível observar um crescimento em 2017 (14,082), nomeadamente 212%, relativamente ao ano de 2016 (6,615). Estima-se ainda que, mais de 50% das vulnerabilidades possuem um exploit público para a sua exploração por parte de indivíduos mal intencionados. Além disso, mais de um terço (30%) não possuem uma resolução imediata, como por exemplo, uma atualização ou um remendo de software. Como é previsivel, a injeção de código mantem-se no top de vulnerabilidades.
OWASP Top 10 de Vulnerabilidades
Depois de 2013, a OWASP concretizou mais um relatório relativo as vulnerabilidades web. O que mudou desde 2013 até 2017?
Existem duas novas entradas na tabela, nomeadamente:
- Descerialização Insegura; e
- Monitorização e Logging Insuficiente.
Descerialização Insegura
Serialização é o processo de traduzir estruturas de dados ou o estado do objeto em um formato que possa ser armazenado (por exemplo, em um arquivo ou buffer de memória) ou transmitido (por exemplo, através de um link de conexão de rede) e reconstruído posteriormente (descerialização). Serialização é amplamente utilizada em RPC, HTTP, bases de dados, etc.
Aplicações e APIs podem estar vulneráveis se descerializarem objetos hostis ou adulterados fornecidos por um atacante sem sanitização apropriada.
O gráfico de vulnerabilidades do TOP 10 de 2017 é o seguinte:
Legenda: (XSS; Authentication; Data Expousure; Access Control; Misconfiguration; XXE; Deserialization; Injection; Third party vulnerability)
A descerialização contou com um aumento diminuto, enquanto que o XSS, Data Expousure e a injeção aumentaram de forma significativa. Este gráfico é a prova que existe uma necessidade imediata para combater os problemas de segurança em 2018!
Monitorização e Logging Insuficiente
Os atacantes contam com a falta de monitorização e resposta atempada para alcançar seus objetivos sem serem detetados. Não foi detetada nenhuma vulnerabilidade publicada em 2017 que esteja diretamente relacionada a esta categoria. Será interessante monitorizá-la e ver se isso mudará em 2018.
O crescimento da IoT
Atualmente, quase tudo na nossa vida tem um endereço de IP e está ligado a uma rede de computadores e à Internet, p.ex.: o nosso figorífico, as luzes da sala, a smart TV, as portas de casa (casas inteligentes), fechaduras, e até mesmo a roupas que usamos no dia a dia. Como estes dispositivos foram projetados para receber e enviar pedidos (receber ordens e dar feedback), precisam de uma ligação à Internet. Por isso, constituem um recente horizonte de ataque! Em muitos casos, os fornecedores destes dispositivos denominados inteligentes negligenciam a segurança adequado ou mesmo a “backdoor” de forma propositada, com a finalidade de obter acesso oculto, para monitorizar o sistema, ou até para fins de suporte. Posto isto, não deixa de ser uma backdoor.
A prova do que a IoT começa a ser um horizonte de ataque fácil do ponto de vista do atacante é o gráfico acima, que regista um aumento de 104 vulnerabilidades em 2017 relativamente ao ano anterior. É indiscutível que, em 2018 o número de vulnerabilidades neste landscape continue a aumentar, pois é uma nova tendência, e o número de dispositivos ligados à rede não para de aumentar.
Uma das vulnerabilidades mais populares são as credenciais de acesso às paginas de configuração destes dispositivos (35%), que na maioria das vezes são as mesmas trazidas de fabrica, e o consumidor, ou por desconhecimento ou preguiça, não toma quaisquer medidas. Um dos maiores ataque conhecidos foi o Mirai, que usou esta vulnerabilidades para se espalhar na rede e causa um enormíssimo ataque DDoS.
Content Managment System (CMS)
Em seguida é apresentado um gráfico com o volume de vulnerabilidades detetadas em 2017 relativamente aos CMs mais usados na indústria (60% do market share): WordPress, Joomla, Drupal e Magento.
WordPress
Como era de suspeitar, o WordPress continua a bater records no que a vulnerabilidades diz respeito. Comparativamente a 2016, no ano de 2017 teve um aumento de 418 novas vulnerabilidades, um aumento de 400%.
De notar que, 75% das vulnerabilidades de 2017 dizem respeito a plugins de terceiros (third-party vendor plugins).
Este crescente no que ao número de vulnerabilidades diz respeito está diretamente relacioando com o número de plugins concebidos. Muitos deles com falhas de conceção, falta de testes de segurança, etc. De notar que o número de vulnerabilidades de uma peça de software está inteiramente ligada ao número de linhas de código (LoC – Lines of Code).
Tecnologias Server-side
O PHP continua a ser a linguagem mais usada do lado do servidor em aplicações web. Notavelmente, o número de vulnerabilidades em 2017 diminui 143% relativamente a 2016. O grande número apresentado em 2016 pode ser explicado pelo seguinte: —em 2015 o PHP lancou a versão 7.0, e esteve quase 1 ano e meio sem atualizações. No ano passado (dezembro 2016) lançou a versão 7.1, com pequenas mudanças que podem explicar a diminuição drástica em 2017.
Apache Structs
Embora 2017 tenha menos vulnerabilidades na estrutura da Apache Struts, o seu impacto foi enorme, pois alguns deles incluíram a execução de código remoto não autenticado (RCE), o que basicamente significa que qualquer um pode piratear e assumir o servidor, aceder informações privadas e muito mais.
Previsões para 2018
Em seguida ficam algumas previsões sobre possíveis vulnerabilidades para 2018:
- XSS e injeção, continuarão a liderar devido ao aumento de tecnologias que continuam a utilizar tecnologias como Javascript do lado do servidor (Node.JS).
- IoT, também este horizonte irá crescer exponencialmente em 2018, devido ao aumento dos dispositivos ligados a Internet e à sua variedade (tudo tem um endereço de IP …). Este alvo é muito apreciado no que a DDoS diz respeito.
- Também vulnerabilidades posicionadas na blockchain irão ser uma tendência em 2018. Já o foram em 2017, e estima-se que 2018 seja um alvo muito apetecível pelos atacantes. Este tópico está demasiado hyped, as empresas correm desesperadamente a implementar sistemas na cadeia porque acaba por ser “cool” e têm visibilidade na indústria, no entanto, são cometidas muitas falhas de segurança durante a conceção do software. Em 2017 existiram muitos desastres. Vejamos a seguir.
Desastres e hacks na blockchain em 2017
1. CoinDash ICO Hack
O ethereum address foi alterado por um hacker e o prejuízo foi de 7.3$ milhões.
2. Parity Wallet Breach
150,000 ethers foram roubados das carteiras dos utilizadores.
3. Enigma Project Scam
Foi lançada uma token falsa em agosto, defraudando potenciais investidores em mais de 1.500 ethers.
4. Parity Wallet Freeze
Um bug encontrado no código congelou mais de 275$ milhões.
5. Tether Token Hack
31$ milhões de Thethers foram roubados.
6. Bitcoin Gold Scam
As forks são confusas e um problema? Pouco depois do lançamento de uma fork da bitcoin chamado bitcoin gold, por exemplo, alguns utilizadores de bitcoins tiveram suas carteiras criptográficas “vazias” depois de usar um serviço aparentemente alavancado pela equipea de desenvolvimento do projeto.
E a lista não para de crescer. 2018 is coming …
Como proteger as aplicações/sistemas
Existem inúmeras soluções disponíveis no mercado. Um exemplo disso são os IDSs (Intrusion Detection Systems) e as WAFs (Web Application Firewalls). Elas podem ser combinadas com a Cloud, dependendo de como a infraestrutura está posicionada.
Por exemplo, a Amazon Web Services proporciona aos seus clientes uma panóplia de soluções impecável, com segurança, report, e monitorização on demand. Exemplo disso são: Cloud Watch, Guard Duty, VPC Logs, AWS Inspector, AWS WAF, AWS Shield, AWS Macie, AWS Cognigo (para aplicações móveis), entre outras.
Também novas WAFs como o Sqreen, que monitorizam e bloqueiam pedidos maliciosos em tempo real começam a ganhar alguma adoção neste contexto.
Referências
[1] https://www.owasp.org/images/7/72/OWASP_Top_10-2017_%28en%29.pdf.pdf[2] https://www.imperva.com/blog/2017/12/the-state-of-web-application-vulnerabilities-in-2017
[3] https://www.coindesk.com/hacks-scams-attacks-blockchains-biggest-2017-disasters/
Pedro Tavares is a professional in the field of information security working as an Ethical Hacker/Pentester, Malware Researcher and also a Security Evangelist. He is also a founding member at CSIRT.UBI and Editor-in-Chief of the security computer blog seguranca-informatica.pt.
In recent years he has invested in the field of information security, exploring and analyzing a wide range of topics, such as pentesting (Kali Linux), malware, exploitation, hacking, IoT and security in Active Directory networks. He is also Freelance Writer (Infosec. Resources Institute and Cyber Defense Magazine) and developer of the 0xSI_f33d – a feed that compiles phishing and malware campaigns targeting Portuguese citizens.
Read more here.