Bug Bounty: como funciona o mundo do Hacking Ético e a caça às vulnerabilidades | WeLiveSecurity

Bug Bounty: como funciona o mundo do Hacking Ético e a caça às vulnerabilidades

O que são os programas de bug bounty? Confira alguns dados sobre a busca de vulnerabilidades, bem como dicas e recursos para aqueles que estão dando os primeiros passos.

O que são os programas de bug bounty? Confira alguns dados sobre a busca de vulnerabilidades, bem como dicas e recursos para aqueles que estão dando os primeiros passos.

Dentro de um ambiente corporativo, a realização de testes de penetração é uma prática usada para auditar a segurança dos aplicativos e da rede. Embora esses tipos de atividades geralmente sejam realizados no âmbito de um emprego em um relacionamento de dependência ou consultoria e com a assinatura de um contrato há muito anos, e com mais e mais frequência, é comum que as empresas publiquem programas de recompensa, mais conhecidos como Bug Bounty, através de plataformas como HackerOne ou BugCrowd, entre outras.

Por meio dessas plataformas, as empresas interessadas em auditar seus serviços conseguem se conectar com hackers éticos de qualquer lugar do planeta, dispostos a testar a segurança de serviços. Qualquer pessoa pode se inscrever e participar desses programas de Bug Bounty, como um hobby ou como uma atividade lucrativa. As empresas, quando abrem seus programas, detalham o escopo dessa atividade e definem prêmios diferentes para quem encontrar falhas, geralmente de acordo com o nível de gravidade de cada uma delas.

O pagamento médio para vulnerabilidades críticas em 2018 foi de US$ 3.384, com um aumento de 48% em relação ao ano anterior. Neste cenário, o portal HackerOne desembolsou, em 2018,  um total de US$ 19 milhões aos seus membros para o pagamento de recompensas. Embora, além do fator econômico, exista uma motivação para aprender e pelos próprios desafios, de acordo com dados de uma pesquisa realizada pelo HackerOne em 2018, os hackers éticos que estão principalmente envolvidos em programas de bug bounty conseguem obter até 2,7 vezes mais dinheiro do que o salário de um engenheiro de software em tempo integral. De fato, no início de 2019, um jovem argentino de 19 anos se tornou a primeira pessoa a ganhar mais de um milhão de dólares através do HackerOne.

Em relação ao número de usuários do HackerOne, em 2019, foram registrados mais de 300.000 hackers, número que representa um aumento de 100% em relação ao ano anterior.

Como referência às somas de dinheiro que são pagas em alguns casos, o Google anunciou um programa de Bug Bounty para seus telefones Pixel, que oferece até 1,5 milhão de dólares para aqueles que encontram vulnerabilidades críticas. De qualquer forma, se você está apenas começando com essa atividade, não espere que seus ganhos se aproximem desses números em curto prazo.

Vantagens dos programas de Bug Bounty

Os programas de bug bounty permitem que qualquer pessoa, com ou sem conhecimento técnico prévio, aumente seu nível de experiência em hacking ético. Por sua vez, permite que profissionais de outras áreas obtenham uma perspectiva diferente dos problemas que podem afetar os aplicativos, a partir de uma estrutura prática.

É uma ferramenta de aprendizado muito boa e, em geral, tem sido uma grande ajuda para gerar maior conscientização sobre a importância do desenvolvimento de aplicativos seguros. Também inspirou a entrada de muitas pessoas no campo da segurança digital e ajuda a aumentar a segurança em geral, uma vez que milhares de falhas de segurança foram resolvidas por meio dessas atividades.

Dicas para quem está dando os primeiros passos em programas de bug bounty

Pouco a pouco: Se você não tem experiência com esses programas, pode ser uma boa ideia começar com um único tipo de vulnerabilidade, por exemplo, XSS, incorporando novas habilidades. É importante encontrar uma vulnerabilidade que realmente seja do seu interesse. 

Não pense apenas em dinheiro: Muito provavelmente, não será possível ganhar dinheiro a princípio. Se você tiver isso em conta, poderá perder alguns detalhes importantes e não gastar tempo para fazer as coisas da melhor maneira. O ideal é poder dedicar tempo suficiente para aprender e aproveitar a atividade.

Prepare relatórios claros: Se você descobriu uma vulnerabilidade, é importante que saiba como reportá-la corretamente. Algo com o qual as pessoas de ambos os lados concordam (bug hunters e empresas) é sobre a importância de produzir relatórios claros, que indiquem passo a passo como a vulnerabilidade pode ser reproduzida e que expliquem como o atacante pode se aproveitar da falha, considerando que essas informações influenciam os resultados a serem levados em consideração.

Aproveite o tempo para se aprofundar: Se você descobriu uma vulnerabilidade, o ideal é tentar ver todos os caminhos que a falha pode abrir para um atacante. Por exemplo, se a vulnerabilidade foi introduzida por uma equipe de desenvolvimento de uma determinada empresa, ela pode ser repetida em outros sites. Pesquisar todas as possibilidades aumenta as chances de conseguirmos convencer a empresa sobre as possíveis consequências do problema.

Siga a rota menos usada: Se você está apenas começando no mundo Bug Bounty, é improvável que encontremos vulnerabilidades em grandes aplicativos corporativos, que certamente já passaram por vários estágios de pentesting e que já foram submetidos à auditoria de muitos outros caçadores de bugs. O ideal é evitar frustrações e começar por onde outros ainda não tenham observado.

Estude e prátique: A única maneira de progredir no mundo Bug Bounty é gastando tempo. É necessário praticar, ler relatórios que outras pessoas prepararam e estudar as diferentes metodologias. Felizmente, existem muitas pessoas na comunidade que estão dispostas a compartilhar o que sabem e isso é algo que você definitivamente deve aproveitar. De acordo com um dos relatórios do HackerOne, 81% dos caçadores que participam desses programas disseram ter aprendido sozinhos na Internet, enquanto apenas 6% disseram ter feito um curso formal.

Realizar bug bounties pode ser uma experiência de aprendizado muito importante. Ver vulnerabilidades em aplicativos reais nos dará uma ideia de quais são os erros comuns que os desenvolvedores de software cometem. Pouco a pouco, forçará você a aprender sobre novas tecnologias com as quais talvez nunca tivesse lidado antes, expandindo sua base de conhecimento. Se você é um pentester, isso lhe dará uma nova perspectiva que será útil para o seu trabalho.

Para aprender sobre hacking ético

Sites:

  • Hacker 101: página HackerOne que oferece recursos educacionais 100% gratuitos.
  • Hacksplaining: um projeto que oferece treinamento de segurança voltado para desenvolvedores.
  • Hack This Site!: uma iniciativa que oferece um campo de treinamento para os usuários testarem e explorarem suas habilidades.

Livros:

Discussão