{"id":11702,"date":"2019-04-26T13:13:20","date_gmt":"2019-04-26T16:13:20","guid":{"rendered":"https:\/\/www.kaspersky.com.br\/blog\/?p=11702"},"modified":"2020-05-20T17:25:01","modified_gmt":"2020-05-20T20:25:01","slug":"tokens-on-github","status":"publish","type":"post","link":"https:\/\/www.kaspersky.com.br\/blog\/tokens-on-github\/11702\/","title":{"rendered":"Como evitar o vazamento de senhas do GitHub"},"content":{"rendered":"<p>Recentemente, pesquisadores da Universidade Estadual da Carolina do Norte <a href=\"https:\/\/www.zdnet.com\/article\/over-100000-github-repos-have-leaked-api-or-cryptographic-keys\/\" target=\"_blank\" rel=\"noopener nofollow\">descobriram mais de 100.000 projetos no GitHub<\/a> com <a href=\"https:\/\/encyclopedia.kaspersky.com\/glossary\/token\/?utm_source=kdaily&amp;utm_medium=blog&amp;utm_campaign=termin-explanation\" target=\"_blank\" rel=\"noopener\">tokens<\/a>, senhas criptogr\u00e1ficas e outros dados confidenciais armazenados de forma aberta. No total, mais de meio milh\u00e3o desses objetos foram encontrados em dom\u00ednio p\u00fablico dos quais mais de 200 mil s\u00e3o \u00fanicos. Al\u00e9m disso, estamos falando de grandes empresas como a Google, Amazon MWS, Twitter, Facebook, MailChimp, MailGun, Stripe, Twilio, Square, Braintee e Picatic.<br>\nO GitHub \u00e9 um recurso popular para desenvolvimento cooperativo de softwares. \u00c9 usado para armazenar c\u00f3digos em reposit\u00f3rios com acesso aberto e restrito, conectando colegas, envolvendo-os em testes de programas e utilizando c\u00f3digos abertos e prontos para suas tecnologias. Como ele simplifica muito e acelera a cria\u00e7\u00e3o de aplicativos e servi\u00e7os, muitos programadores est\u00e3o satisfeitos em utilizar a plataforma, assim como empresas que criam seus pr\u00f3prios softwares baseados em m\u00f3dulos de fonte aberta. Inclusive, empresas que buscam transpar\u00eancia tamb\u00e9m usam com frequ\u00eancia.<\/p>\n<p>Contudo, deve-se ter alguns cuidados especiais ao divulgar c\u00f3digos no GitHub \u2013 conselhos que nem sempre os desenvolvedores levam em conta.<\/p>\n<h3><strong>Quais dados foram a dom\u00ednio p\u00fablico?<\/strong><\/h3>\n<p>Descobriu-se que o GitHub hospedava c\u00f3digos abertos contendo tokens e senhas suficientes para conceder autoriza\u00e7\u00e3o e executar a\u00e7\u00f5es em nome dos usu\u00e1rios ou aplicativos. Entre essas informa\u00e7\u00f5es divulgadas erroneamente est\u00e3o:<\/p>\n<ul>\n<li>Credenciais de login de contas de administradores em sites importantes.<\/li>\n<li>Senhas ou tokens que habilitam fun\u00e7\u00f5es internas do <a href=\"https:\/\/encyclopedia.kaspersky.com\/glossary\/api-application-program-interface\/\" target=\"_blank\" rel=\"noopener\">API<\/a> das aplica\u00e7\u00f5es \u2013 um conjunto de ferramentas para intera\u00e7\u00e3o entre v\u00e1rios componentes do sistema, por exemplo, um programa e um site.<\/li>\n<li>Chaves criptografadas, muitas das quais s\u00e3o usadas para autentica\u00e7\u00e3o no lugar de senhas, e basta conhecer apenas uma para obter acesso de muitos recursos, incluindo redes privadas.<\/li>\n<\/ul>\n<h3><strong>Porque os vazamentos de senhas criptografadas e tokens s\u00e3o arriscados?<\/strong><\/h3>\n<p>O acesso desautorizado a suas contas, mesmo limitado, representa uma amea\u00e7a s\u00e9ria ao seu neg\u00f3cio. Alguns exemplos a seguir.<\/p>\n<p>Uma forma de usar os tokens publicados no GitHub para fins escusos \u00e9 distribuir e-mails e artigos supostamente como a empresa que fez a postagem original. Por exemplo, um intruso poderia ganhar acesso ao site corporativo ou conta do Facebook ou Twitter, e publicar um artigo com um link malicioso ou de phishing. J\u00e1 que sites oficiais e contas geralmente s\u00e3o consideradas fontes de informa\u00e7\u00e3o confi\u00e1vel, o risco que muitos leitores assumem que o link divulgado seja oficial \u00e9 alto.<\/p>\n<p>Al\u00e9m disso, cibercriminosos podem enganar pessoas a entrarem em sua lista de inscritos (por exemplo, no MailChimp). Como no cen\u00e1rio anterior, a expectativa \u00e9 que o usu\u00e1rio confiar\u00e1 cegamente no e-mail como se fosse de uma empresa honesta. Esses ataques podem ferir seriamente a reputa\u00e7\u00e3o de um neg\u00f3cio e causar diversos danos em termos de clientes perdidos e tempo gasto na restaura\u00e7\u00e3o das opera\u00e7\u00f5es.<\/p>\n<p>Por \u00faltimo, os criminosos podem simplesmente usar as fun\u00e7\u00f5es pagas do servi\u00e7o \u2013 por exemplo, Amazon AWS \u2013 \u00e0s suas custas. Por exemplo, o blogueiro <a href=\"http:\/\/vertis.io\/2013\/12\/16\/unauthorised-litecoin-mining.html\" target=\"_blank\" rel=\"noopener nofollow\">Luke Chadwik<\/a> uma vez recebeu uma mensagem da Amazon que dizia que sua senha foi publicada no GitHub. Uma pesquisa levou at\u00e9 um projeto antigo que por algum motivo ele esqueceu de fechar. Quando ele acessou sua conta na Amazon, descobriu mais de U$ 3 mil de taxas pendentes. No fim, um usu\u00e1rio n\u00e3o autorizado conseguiu suas credenciais e roubou criptomoedas. A Amazon reembolsou Chadwick. Mas lembre-se que o fim dessa hist\u00f3ria nem sempre \u00e9 feliz.<\/p>\n<h3><strong>Como dados privados acabaram no GitHub?<\/strong><\/h3>\n<p>Os resultados da an\u00e1lise da investiga\u00e7\u00e3o mostram que n\u00e3o s\u00e3o apenas os programadores iniciantes que deixam informa\u00e7\u00f5es confidenciais em dom\u00ednio p\u00fablico. Por exemplo, dados que fornecem acesso a sites de institui\u00e7\u00f5es governamentais importantes foram postados no GitHub por um desenvolvedor com mais de 10 anos de experi\u00eancia.<\/p>\n<p>Os motivos para publicar tokens e senhas no GitHub s\u00e3o variados. Por exemplo, as ferramentas de autoriza\u00e7\u00e3o podem ser necess\u00e1rias para integrar um app com um servi\u00e7o em particular. Quando o c\u00f3digo foi publicado para teste, alguns programadores usaram senhas v\u00e1lidas no lugar de depuradas, e esqueceram de remov\u00ea-las do acesso p\u00fablico.<\/p>\n<p>Outro caso, os analistas do Securosis e o CEO Rich Mogull postaram no GitHub um aplicativo desenvolvido para uma confer\u00eancia. O programa fez chamadas para o Amazon AWS, e ele armazenou todos os dados localmente. Contudo, a depura\u00e7\u00e3o individual dos blocos de c\u00f3digo permitiu que ele criasse um arquivo de teste contendo diversas senhas de acesso. Depois da depura\u00e7\u00e3o, Mogull simplesmente esqueceu de remov\u00ea-los do arquivo. Foram subsequentemente encontrados por intrusos que gastaram U$ 500 em servi\u00e7os da Amazon antes de serem notados.<\/p>\n<p>Al\u00e9m disso, desenvolvedores podem simplesmente n\u00e3o saber do risco de abandonar tokens v\u00e1lidos nos reposit\u00f3rios do GitHub e a necessidade de apontar e deletar (ou substituir) antes de deixar o c\u00f3digo ali.<\/p>\n<h3><strong>Como proteger seus recursos <\/strong><\/h3>\n<ul>\n<li>Torne seus desenvolvedores conscientes que o upload de tokens v\u00e1lidos e senhas para abrir repositores \u00e9 perigoso. Programadores devem entender isso antes de inserir seus c\u00f3digos, eles devem confirmar a presen\u00e7a de dados secretos.<\/li>\n<li>Fa\u00e7a com que o gerente do produto audite o projeto da sua empresa no GitHub para ver se esse cont\u00e9m informa\u00e7\u00f5es confidenciais, e se sim, seja respons\u00e1vel pela exclus\u00e3o correta; note que isso deve ser removido no projeto inteiro, nada deve ficar no hist\u00f3rico de mudan\u00e7as.<\/li>\n<li>Se qualquer dado armazenado no GitHub por sua empresa possuir uma senha, altere-a. n\u00e3o h\u00e1 como saber se algu\u00e9m j\u00e1 a viu e salvou.<\/li>\n<li>Trabalhe na conscientiza\u00e7\u00e3o de seus colaboradores frequentemente, de forma que usem responsavelmente o GitHub e outras ferramentas para tornar essa forma de pensar como algo natural em todos processos. Nossa <a href=\"https:\/\/k-asap.com\/?utm_source=kdaily&amp;utm_medium=blog&amp;utm_campaign=gl_KASAP_nv0092_organic&amp;utm_content=link&amp;utm_term=gl_kdaily_organic_nv0092_link_blog_KASAP\" target=\"_blank\" rel=\"noopener\">plataforma <\/a>o ajudar\u00e1 a fazer isso<a href=\"https:\/\/www.kaspersky.com\/blog\/building-cybersecurity-culture\/25729\/\" target=\"_blank\" rel=\"noopener nofollow\"> de forma eficiente e praticamente sem qualquer interrup\u00e7\u00e3o nas opera\u00e7\u00f5es. <\/a><\/li>\n<\/ul>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"kasap\">\n","protected":false},"excerpt":{"rendered":"<p>Centenas de milhares de tokens e senhas criptografadas do GitHub foram descobertas. Explicamos o porqu\u00ea isso \u00e9 ruim e como evitar o vazamento.<\/p>\n","protected":false},"author":2484,"featured_media":11703,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1119,1655,14],"tags":[1185,1952,53,40,1954,1953,1763,1703],"class_list":{"0":"post-11702","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-business","8":"category-enterprise","9":"category-news","10":"tag-business","11":"tag-github","12":"tag-privacidade","13":"tag-seguranca","14":"tag-senhas-api","15":"tag-senhas-criptografadas","16":"tag-tokens","17":"tag-vazamentos"},"hreflang":[{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/tokens-on-github\/11702\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/tokens-on-github\/15529\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/tokens-on-github\/13075\/"},{"hreflang":"en-us","url":"https:\/\/usa.kaspersky.com\/blog\/tokens-on-github\/17453\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/tokens-on-github\/15602\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/tokens-on-github\/14281\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/tokens-on-github\/18148\/"},{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/tokens-on-github\/17116\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/tokens-on-github\/22522\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/tokens-on-github\/5831\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/tokens-on-github\/26238\/"},{"hreflang":"ja","url":"https:\/\/blog.kaspersky.co.jp\/tokens-on-github\/22922\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/tokens-on-github\/18205\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/tokens-on-github\/22383\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/tokens-on-github\/22319\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.com.br\/blog\/tag\/business\/","name":"Business"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/posts\/11702","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/users\/2484"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/comments?post=11702"}],"version-history":[{"count":4,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/posts\/11702\/revisions"}],"predecessor-version":[{"id":15391,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/posts\/11702\/revisions\/15391"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/media\/11703"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/media?parent=11702"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/categories?post=11702"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.com.br\/blog\/wp-json\/wp\/v2\/tags?post=11702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}