{"id":9400,"date":"2018-02-13T18:52:11","date_gmt":"2018-02-13T21:52:11","guid":{"rendered":"https:\/\/www.ethicalhacker.com.br\/site\/?p=9400"},"modified":"2019-10-19T23:33:25","modified_gmt":"2019-10-20T02:33:25","slug":"vulnerabilidade-dos-afeta-site-wordpress","status":"publish","type":"post","link":"https:\/\/www.ethicalhacker.com.br\/site\/2018\/02\/exploits\/vulnerabilidade-dos-afeta-site-wordpress\/","title":{"rendered":"Vulnerabilidade DoS afeta site WordPress"},"content":{"rendered":"<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><a name=\"tw-target-text\"><\/a><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Uma vulnerabilidade de nega\u00e7\u00e3o de servi\u00e7o (DoS) de n\u00edvel de aplica\u00e7\u00e3o simples foi descoberta na plataforma do WordPress CMS que poderia permitir que qualquer pessoa derrubasse a maioria dos sites do WordPress, mesmo com uma \u00fanica m\u00e1quina sem necessitar de uma enorme quantidade de largura de banda, conforme exigido na rede para ataques DDoS de n\u00edvel, afim de alcan\u00e7ar o mesmo prop\u00f3sito.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Uma vez que a empresa negou corrigir o problema, a vulnerabilidade CVE-2018-6389) permanece sem precedentes e afeta quase todas as vers\u00f5es do WordPress lan\u00e7adas nos \u00faltimos nove anos, incluindo a \u00faltima vers\u00e3o est\u00e1vel do WordPress (Vers\u00e3o 4.9.2).<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Descoberto pelo pesquisador de seguran\u00e7a israelense Barak Tawily, a vulnerabilidade reside na forma como &#8220;load-scripts.php&#8221;, um script embutido no WordPress CMS, que processa solicita\u00e7\u00f5es definidas pelo usu\u00e1rio.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Para aqueles que n\u00e3o sabem, o arquivo load-scripts.php foi projetado para que os usu\u00e1rios de administra\u00e7\u00e3o ajudem um site a melhorar o desempenho e carregar a p\u00e1gina mais rapidamente ao combinar (no servidor) v\u00e1rios arquivos JavaScript em uma \u00fanica solicita\u00e7\u00e3o.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\">No entanto, para fazer o &#8220;load-scripts.php&#8221; funcionar na p\u00e1gina de login do administrador (wp-login.php) antes do login, os autores do WordPress n\u00e3o mantiveram qualquer autentica\u00e7\u00e3o no lugar, tornando o recurso acess\u00edvel a qualquer pessoa.<\/span><\/span><\/p>\n<div class=\"separator\" style=\"clear: both;\"><a style=\"margin-bottom: 0px; margin-left: 0px;\" href=\"https:\/\/1.bp.blogspot.com\/-sAlnbLJC_XI\/Wng5JcjIdGI\/AAAAAAAAvrU\/-6aqLSL85h8y6A9QcS3ZgMIvW_DxVX0wwCLcBGAs\/s1600-e20\/wordpress-dos-attack.png\" class=\"gallery_colorbox\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" title=\"wordpress dos attack\" src=\"https:\/\/1.bp.blogspot.com\/-sAlnbLJC_XI\/Wng5JcjIdGI\/AAAAAAAAvrU\/-6aqLSL85h8y6A9QcS3ZgMIvW_DxVX0wwCLcBGAs\/s1600-e20\/wordpress-dos-attack.png\"  alt=\"wordpress dos attack\" width=\"600\" height=\"313\" border=\"0\" data-original-height=\"380\" data-original-width=\"728\" \/><\/a><\/div>\n<div class=\"separator\" style=\"clear: both;\"><\/div>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><a name=\"tw-target-text11\"><\/a><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Dependendo dos plugins e m\u00f3dulos que voc\u00ea instalou, o arquivo load-scripts.php seletivamente chama arquivos JavaScript necess\u00e1rios passando seus nomes para o par\u00e2metro &#8220;load&#8221;, separados por uma v\u00edrgula, como na seguinte URL:<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">https:\/\/sua-wordpress-site.com\/wp-admin\/load-scripts.php?c=1&amp;load=editor,common,user-profile,media-widgets,media-gallery<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Ao carregar o site, o &#8220;load-scripts.php&#8221; (mencionado no cabe\u00e7alho da p\u00e1gina) tenta encontrar cada nome de arquivo JavaScript fornecido no URL, anexar seu conte\u00fado em um \u00fanico arquivo e depois envi\u00e1-lo para a web do usu\u00e1rio navegador.<br \/>\n<\/span><\/span><\/span><\/p>\n<p id=\"tw-target-text\" class=\"tw-data-text tw-ta tw-text-medium\" style=\"height: 72px; text-align: justify;\" data-placeholder=\"Tradu\u00e7\u00e3o\"><span lang=\"pt\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Como funciona o ataque de DoS no WordPress<\/span><\/span><\/span><\/span><\/p>\n<div class=\"separator\" style=\"clear: both;\"><a style=\"margin-bottom: 0px; margin-left: 0px;\" href=\"https:\/\/1.bp.blogspot.com\/-_zBmctBiLsE\/Wng6iewHjLI\/AAAAAAAAvrg\/D74oBcCC0hgto8XF6w1O99w7jgYddvMgACLcBGAs\/s1600-e20\/wordpress-dos-attack-tool.png\" class=\"gallery_colorbox\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" title=\"wordpress-dos-attack-tool\" src=\"https:\/\/1.bp.blogspot.com\/-_zBmctBiLsE\/Wng6iewHjLI\/AAAAAAAAvrg\/D74oBcCC0hgto8XF6w1O99w7jgYddvMgACLcBGAs\/s1600-e20\/wordpress-dos-attack-tool.png\"  alt=\"wordpress-dos-attack-tool\" width=\"607\" height=\"317\" border=\"0\" data-original-height=\"380\" data-original-width=\"728\" \/><\/a><\/div>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span class=\"main-article-info\">\u00a0<\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><a name=\"tw-target-text21\"><\/a><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">De acordo com o pesquisador, pode-se simplesmente for\u00e7ar o load-scripts.php a chamar todos os arquivos JavaScript poss\u00edveis (ou seja, 181 scripts) de uma vez passando seus nomes para o URL acima, tornando o site segmentado ligeiramente lento ao consumir CPU do servidor, desta forma elevando o consumo de mem\u00f3ria.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span class=\"main-article-info\">\u00a0<\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">&#8220;Existe uma lista bem definida ($wp_scripts), que pode ser solicitada pelos usu\u00e1rios como parte do par\u00e2metro load []. Se o valor solicitado existe, o servidor executar\u00e1 uma a\u00e7\u00e3o de leitura de E\/S para um caminho bem definido associado ao valor fornecido pelo usu\u00e1rio &#8220;, diz Tawily.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Embora um \u00fanico pedido n\u00e3o seja suficiente para derrubar todo o site para seus visitantes, utilizou um script Python de prova de conceito (PoC), doer.py, o que faz um grande n\u00famero de solicita\u00e7\u00f5es simult\u00e2neas para o mesmo URL em uma tentativa para usar o m\u00e1ximo poss\u00edvel de recursos de CPU dos servidores alvo e derrub\u00e1-lo.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">O Hacker verificou a autenticidade da explora\u00e7\u00e3o DoS com \u00eaxito em um dos nossos sites de demonstra\u00e7\u00e3o WordPress executado em um servidor VPS de tamanho m\u00e9dio.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">&#8220;\u00c9 hora de mencionar novamente que o load-scripts.php n\u00e3o exige nenhuma autentica\u00e7\u00e3o, um usu\u00e1rio an\u00f4nimo pode faz\u00ea-lo. Ap\u00f3s aproximadamente ~ 500 solicita\u00e7\u00f5es, o servidor n\u00e3o respondeu mais ou retornou o status 502\/503\/504 erros de c\u00f3digo &#8220;, diz Tawily.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">No entanto, o ataque de uma \u00fanica m\u00e1quina, com alguma conex\u00e3o de 40 Mbps, n\u00e3o foi suficiente para derrubar outro site de demonstra\u00e7\u00e3o rodando em um servidor dedicado com alto poder de processamento e mem\u00f3ria.<\/span><\/span><\/span><\/p>\n<div class=\"separator\" style=\"clear: both; text-align: left;\"><a style=\"margin-bottom: 0px; margin-left: 0px;\" href=\"https:\/\/1.bp.blogspot.com\/-4H5a_XhfNEg\/Wng7caVf41I\/AAAAAAAAvro\/Cdir_lO6o58ocoRigxOM7g6kVkSLF1YrwCLcBGAs\/s1600-e20\/wordpress-hacking.png\" class=\"gallery_colorbox\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" title=\"wordpress-hacking\" src=\"https:\/\/1.bp.blogspot.com\/-4H5a_XhfNEg\/Wng7caVf41I\/AAAAAAAAvro\/Cdir_lO6o58ocoRigxOM7g6kVkSLF1YrwCLcBGAs\/s1600-e20\/wordpress-hacking.png\"  alt=\"wordpress-hacking\" width=\"634\" height=\"331\" border=\"0\" data-original-height=\"380\" data-original-width=\"728\" \/><\/a><\/div>\n<div class=\"separator\" style=\"clear: both; text-align: left;\"><\/div>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><a name=\"tw-target-text31\"><\/a><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Mas isso n\u00e3o significa que a falha n\u00e3o seja eficaz contra os sites do WordPress que funcionam em um servidor pesado, pois o ataque no n\u00edvel da aplica\u00e7\u00e3o geralmente requer muito menos pacotes e largura de banda para alcan\u00e7ar o mesmo objetivo de tirar um site do ar.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Ent\u00e3o, os atacantes com mais largura de banda ou alguns bots podem explorar essa falha para segmentar sites grandes e populares da WordPress.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><a name=\"tw-target-text41\"><\/a><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Juntamente com a divulga\u00e7\u00e3o completa, Tawily tamb\u00e9m forneceu uma demonstra\u00e7\u00e3o de v\u00eddeo para o ataque do WordPress Denial of Service. Voc\u00ea pode assistir o v\u00eddeo para ver o ataque em a\u00e7\u00e3o.<\/span><\/span><\/span><\/p>\n<p>&nbsp;<\/p>\n<p><iframe loading=\"lazy\" src=\"https:\/\/www.youtube.com\/embed\/nNDsGTalXS0\" width=\"600\" height=\"363\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p>&nbsp;<\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Sabendo que as vulnerabilidades do DoS est\u00e3o fora do escopo do programa de recompensas de inscri\u00e7\u00f5es do WordPress, foi relatato de forma respons\u00e1vel esta vulnerabilidade DoS \u00e0 equipe do WordPress, atrav\u00e9s da plataforma HackerOne.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">No entanto, a empresa se recusou a reconhecer o problema, dizendo que esse tipo de bug &#8220;deveria realmente ser mitigado no final do servidor ou no n\u00edvel da rede, em vez do n\u00edvel do aplica\u00e7\u00e3o&#8221;, que est\u00e1 fora do controle do WordPress.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">A vulnerabilidade parece ser bem s\u00e9ria porque o WordPress det\u00e9m quase 29% da Web, colocando milh\u00f5es de sites vulner\u00e1veis a crackers e tornando-os indispon\u00edveis para seus usu\u00e1rios leg\u00edtimos.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Para sites que n\u00e3o podem pagar servi\u00e7os que oferecem prote\u00e7\u00e3o DDoS contra ataques de camada de aplicativo, o pesquisador forneceu uma vers\u00e3o bifurcada do WordPress, que inclui mitiga\u00e7\u00e3o contra essa vulnerabilidade.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">No entanto, eu pessoalmente n\u00e3o recomendaria que os usu\u00e1rios instalassem o CMS modificado, mesmo que provenha de uma fonte confi\u00e1vel diferente do autor original.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Al\u00e9m disso, o pesquisador tamb\u00e9m lan\u00e7ou um simples script bash que corrige o problema, caso voc\u00ea j\u00e1 tenha instalado o WordPress.<\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Link do script bash: <a title=\"bash\" href=\"https:\/\/github.com\/Quitten\/WordPress\/blob\/master\/wp-dos-patch.sh\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/github.com\/Quitten\/WordPress\/blob\/master\/wp-dos-patch.sh<\/a><\/span><\/span><\/span><\/p>\n<p class=\"western\" lang=\"pt-PT\" style=\"text-align: justify;\"><span style=\"font-family: Courier,monospace;\"><span style=\"font-size: large;\"><span lang=\"pt-PT\">Fonte: <a title=\"DoS\" href=\"https:\/\/thehackernews.com\/2018\/02\/wordpress-dos-exploit.html?m=1\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/thehackernews.com\/2018\/02\/wordpress-dos-exploit.html?m=1<\/a><br \/>\n<\/span><\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uma vulnerabilidade de nega\u00e7\u00e3o de servi\u00e7o (DoS) de n\u00edvel de aplica\u00e7\u00e3o simples foi descoberta na plataforma do WordPress CMS que poderia permitir que qualquer pessoa derrubasse a maioria dos sites do WordPress, mesmo com uma \u00fanica m\u00e1quina sem necessitar de uma enorme quantidade de largura de banda, conforme exigido na rede para ataques DDoS de [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":9410,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[89,100,21,105,99],"tags":[],"class_list":["post-9400","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-basico","category-diversos","category-exploits","category-noticias","category-novidades"],"_links":{"self":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/9400","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/comments?post=9400"}],"version-history":[{"count":14,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/9400\/revisions"}],"predecessor-version":[{"id":10260,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/posts\/9400\/revisions\/10260"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media\/9410"}],"wp:attachment":[{"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/media?parent=9400"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/categories?post=9400"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ethicalhacker.com.br\/site\/wp-json\/wp\/v2\/tags?post=9400"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}