{"id":5234,"date":"2023-01-17T16:15:06","date_gmt":"2023-01-17T19:15:06","guid":{"rendered":"https:\/\/base4sec.com\/nao-categorizado\/analise-de-personalizada\/"},"modified":"2023-01-17T16:15:06","modified_gmt":"2023-01-17T19:15:06","slug":"analise-de-personalizada","status":"publish","type":"post","link":"https:\/\/base4sec.com\/pt-br\/pesquisar\/analise-de-personalizada\/2023\/01\/17\/","title":{"rendered":"An\u00e1lise de Personalizada"},"content":{"rendered":"<p><span class=\"subtitulo-nota\">Introdu\u00e7\u00e3o<\/span><\/p>\n<p>O principal objectivo deste trabalho era avaliar a seguran\u00e7a de um navegador exclusivamente para o sector banc\u00e1rio, baseado no Firefox. Este navegador \u00e9 utilizado por um grande n\u00famero de clientes banc\u00e1rios e \u00e9 importante assegurar que a sua utiliza\u00e7\u00e3o seja segura e protegida de poss\u00edveis riscos.<\/p>\n<p>Para a realiza\u00e7\u00e3o dos testes, foram utilizados o sistema operativo Windows 10 x64 e o compilador Visual Studio 2019. Com estas ferramentas, foram criados ficheiros DLL que foram utilizados para avaliar o navegador em diferentes cen\u00e1rios e situa\u00e7\u00f5es. Algumas das ferramentas utilizadas foram: IDA Pro, Process Monitor, e CFF Explorer.<\/p>\n<p>Nesta publica\u00e7\u00e3o mostraremos algumas vulnerabilidades comuns que podem ser encontradas em navegadores desenvolvidos \u00e0 medida, que s\u00e3o utilizados principalmente pelos bancos. Estes navegadores oferecem aos utilizadores alguma seguran\u00e7a de navega\u00e7\u00e3o, s\u00f3 porque s\u00e3o navegadores propriet\u00e1rios<\/p>\n<p>Algumas das suas vantagens incluem o seguinte:<\/p>\n<p><b>\u2022<\/b>\u00a0Instala\u00e7\u00e3o \u00fanica<br \/>\n<b>\u2022<\/b>\u00a0Actualiza\u00e7\u00e3o autom\u00e1tica<br \/>\n<b>\u2022<\/b>\u00a0Acesso controlado \u00e0s contas<br \/>\n<b>\u2022<\/b>\u00a0Melhorar a experi\u00eancia de navega\u00e7\u00e3o<\/p>\n<p>Funcionalidades permitidas pelo navegador:<\/p>\n<p><b>\u2022<\/b>\u00a0Bot\u00e3o Home para o website da empresa<br \/>\n<b>\u2022<\/b>\u00a0Recarregar bot\u00e3o do website<br \/>\n<b>\u2022<\/b>\u00a0Adicionar bot\u00e3o preferido<\/p>\n<p>Estes tipos de navegadores foram analisados para validar e verificar os poss\u00edveis riscos que est\u00e3o em desacordo com a seguran\u00e7a oferecida pelo navegador.<br \/>\n<img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4a.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p><span class=\"subtitulo-nota\">Sequestro de DLL<\/span><\/p>\n<p>A primeira vulnerabilidade encontrada \u00e9 o sequestro de DLL. Isto engana a aplica\u00e7\u00e3o leg\u00edtima e de confian\u00e7a para carregar uma DLL arbitr\u00e1ria. Os bin\u00e1rios respons\u00e1veis por chamar a DLL e as suas fun\u00e7\u00f5es s\u00e3o scpbradguard.exe e scpbradserv.exe, que funciona como um servi\u00e7o Windows.<\/p>\n<p>Este tipo de rapto permitiria alcan\u00e7ar tr\u00eas objectivos:<\/p>\n<p><b>\u2022<\/b>\u00a0Execu\u00e7\u00e3o de c\u00f3digo malicioso<br \/>\n<b>\u2022<\/b>\u00a0Obter Persist\u00eancia<br \/>\n<b>\u2022<\/b>\u00a0Escalada de privil\u00e9gios<\/p>\n<p><span class=\"subtitulo-nota\">Passemos ao que interessa!<\/span><\/p>\n<p>Primeiro identificamos os servi\u00e7os que correm ap\u00f3s a instala\u00e7\u00e3o do navegador. Para tal, usamos Process Monitor com alguns filtros, pelo que evitamos carregar informa\u00e7\u00e3o desnecess\u00e1ria. Com o filtro activado podemos identificar que existem duas DLLs n\u00e3o encontradas em VERSION.dll e WINHTTP.dll, vamos concentrar-nos na segunda.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4b.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p>Primeiro identificamos os servi\u00e7os que correm ap\u00f3s a instala\u00e7\u00e3o do navegador. Para tal, usamos Process Monitor com alguns filtros, pelo que evitamos carregar informa\u00e7\u00e3o desnecess\u00e1ria. Com o filtro activado podemos identificar que existem duas DLLs n\u00e3o encontradas em VERSION.dll e WINHTTP.dll, vamos concentrar-nos na segunda.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4c.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p>Com a informa\u00e7\u00e3o obtida, a DLL \u00e9 programada em C++ e compilada com Visual Studio 2019, depois a DLL \u00e9 copiada para o direct\u00f3rio raiz dos bin\u00e1rios ou simplesmente copiar o bin\u00e1rio para qualquer direct\u00f3rio Windows com a DLL.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4d.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p><span class=\"subtitulo-nota\">Evas\u00e3o Navegacional<\/span><\/p>\n<p>Na an\u00e1lise do navegador, a primeira coisa que foi verificada foi se este cumpria correctamente as suas pol\u00edticas de seguran\u00e7a na navega\u00e7\u00e3o e bloqueio de sites de terceiros.<\/p>\n<p>Em primeiro lugar, foi verificado que a barra de navega\u00e7\u00e3o est\u00e1 desactivada, evitando alterar o dom\u00ednio j\u00e1 definido pelo navegador. Para este tipo de restri\u00e7\u00e3o, foram feitas duas evas\u00f5es. O primeiro por HTML e o segundo por meio de par\u00e2metros execut\u00e1veis, que ser\u00e3o explicados a seguir.<\/p>\n<p>Para evitar ser longo e aborrecido, vamos directos ao assunto!<\/p>\n<p><span class=\"subtitulo-nota\">Abrir Redireccionar via ficheiro HTML<\/span><\/p>\n<p>Dos testes concluiu-se que, atrav\u00e9s da cria\u00e7\u00e3o de um ficheiro HTML, \u00e9 poss\u00edvel executar o redireccionamento do dom\u00ednio. Agora o \u00fanico problema que foi encontrado foi que o dom\u00ednio deve estar numa lista autorizada para que o redireccionamento seja executado, ou seja, o dom\u00ednio deve conter o nome da empresa.<\/p>\n<p>Para tal, utiliz\u00e1mos uma simples manobra de evas\u00e3o que consiste em acrescentar o nome de dom\u00ednio, seguido do protocolo HTTPS. Com isto excedemos a lista permitida e a interpreta\u00e7\u00e3o do redireccionamento tomaria o dom\u00ednio ap\u00f3s o car\u00e1cter &#8220;@&#8221;, pois o resto estaria no formato de username:password@domain.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4e.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p>Para executar o ficheiro \u00e9 suficiente carregar o HTML no browser usando &#8220;DragDrop&#8221;, mas isto n\u00e3o seria realista. O pr\u00f3prio navegador, quando instalado, permite mant\u00ea-lo como padr\u00e3o, o que facilitaria a sua execu\u00e7\u00e3o. Abaixo, podemos ver como o ficheiro \u00e9 carregado correctamente pelo navegador, permitindo executar o redireccionamento para um dom\u00ednio que est\u00e1 fora da lista permitida.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4f.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4g.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p><span class=\"subtitulo-nota\">Redireccionar via Par\u00e2metros<\/span><\/p>\n<p>Existe outra forma menos realista, mas que ainda permite escapar \u00e0 restri\u00e7\u00e3o, atrav\u00e9s de par\u00e2metros permitidos pelo navegador. Podemos encontrar os par\u00e2metros -url e -new-window que permitem abrir um dom\u00ednio arbitr\u00e1rio, mas tamb\u00e9m \u00e9 necess\u00e1rio manter o formato url para fugir \u00e0 lista permitida. Para mais informa\u00e7\u00f5es sobre as CommandLineOptions utilizadas:<\/p>\n<p><a href=\"https:\/\/wiki.mozilla.org\/Firefox\/CommandLineOptions\">https:\/\/wiki.mozilla.org\/Firefox\/CommandLineOptions<\/a><\/p>\n<p>Para levar isto a uma explora\u00e7\u00e3o real, \u00e9 necess\u00e1rio um bin\u00e1rio intermedi\u00e1rio (Malware) para activar o comando cada vez que o navegador \u00e9 chamado.<\/p>\n<p><span class=\"subtitulo-nota\">Fluxo de ataque de Phishing<\/span><\/p>\n<p>O fluxo seguinte representa como \u00e9 poss\u00edvel um ataque usando a vulnerabilidade Open Redirect que mant\u00e9m o navegador personalizado aos utilizadores que o usam. Para isso, o atacante envia o ficheiro por algum meio para o utilizador. O mais comum seria atrav\u00e9s de e-mail, depois o utilizador descarrega e executa o ficheiro e \u00e9 redireccionado para um s\u00edtio malicioso.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/wwww.base4sec.com\/assets\/images\/blog\/nota-4i.png\" alt=\"imagem ilustrativa\" \/><\/p>\n<p><span class=\"subtitulo-nota\">Conclus\u00e3o<\/span><\/p>\n<p>Em resumo, as provas de conceito do navegador dedicado do banco Bradesco mostraram que este cont\u00e9m vulnerabilidades que podem ser perigosas para os seus clientes. No entanto, estes aspectos poderiam ser melhorados e recomenda-se a implementa\u00e7\u00e3o de medidas de seguran\u00e7a adicionais para uma maior protec\u00e7\u00e3o dos utilizadores. Por conseguinte, \u00e9 importante continuar a trabalhar para melhorar a seguran\u00e7a do navegador e proteger os seus utilizadores.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introdu\u00e7\u00e3o O principal objectivo deste trabalho era avaliar a seguran\u00e7a de um navegador exclusivamente para o sector banc\u00e1rio, baseado no Firefox. Este navegador \u00e9 utilizado por um grande n\u00famero de clientes banc\u00e1rios e \u00e9 importante assegurar que a sua utiliza\u00e7\u00e3o seja segura e protegida de poss\u00edveis riscos. Para a realiza\u00e7\u00e3o dos testes, foram utilizados o [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":5028,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"footnotes":""},"categories":[96],"tags":[],"class_list":{"0":"post-5234","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-pesquisar"},"jetpack_featured_media_url":"https:\/\/base4sec.com\/wp-content\/uploads\/2024\/12\/blog_23.png","_links":{"self":[{"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/posts\/5234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/comments?post=5234"}],"version-history":[{"count":0,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/posts\/5234\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/media\/5028"}],"wp:attachment":[{"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/media?parent=5234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/categories?post=5234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/base4sec.com\/pt-br\/wp-json\/wp\/v2\/tags?post=5234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}