{"id":163792,"date":"2026-03-10T23:11:57","date_gmt":"2026-03-10T21:11:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy"},"modified":"2026-03-10T23:11:57","modified_gmt":"2026-03-10T21:11:59","slug":"uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy","title":{"rendered":"Vulnerabilidades no projeto Pingora permitindo infiltra\u00e7\u00e3o em solicita\u00e7\u00f5es externas","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A empresa Cloudflare anunciou a corre\u00e7\u00e3o de tr\u00eas vulnerabilidades no framework Pingora, sendo duas delas classificadas como cr\u00edticas (9,3 de 10). O framework Pingora \u00e9 escrito na linguagem Rust e \u00e9 destinado \u00e0 cria\u00e7\u00e3o de servi\u00e7os de rede de alto desempenho e seguran\u00e7a. Constru\u00eddo com o Pingora, o proxy \u00e9 usado na rede de entrega de conte\u00fado da Cloudflare e processa mais de 40 milh\u00f5es de solicita\u00e7\u00f5es por segundo. As vulnerabilidades foram corrigidas na vers\u00e3o 0.8.0 do Pingora.    <\/p>\n<p>As duas vulnerabilidades mais perigosas permitem ataques do tipo \u2018HTTP Request Smuggling\u2019, que podem contornar sistemas de restri\u00e7\u00e3o de acesso e infiltrar-se no conte\u00fado de solicita\u00e7\u00f5es de outros usu\u00e1rios, processadas no mesmo fluxo entre o frontend e o backend (por exemplo, para injetar c\u00f3digo JavaScript malicioso na sess\u00e3o de outro usu\u00e1rio com o site). Os problemas foram identificados por um participante do programa Bug Bounty, que oferece recompensas por encontrar vulnerabilidades.        <\/p>\n<p>No esquema de chamada ao backend atrav\u00e9s de um proxy reverso, solicita\u00e7\u00f5es de clientes s\u00e3o recebidas por um n\u00f3 adicional que estabelece uma conex\u00e3o TCP de longa dura\u00e7\u00e3o com o backend, que efetua o processamento direto das solicita\u00e7\u00f5es. Atrav\u00e9s dessa conex\u00e3o comum, geralmente s\u00e3o transmitidas solicita\u00e7\u00f5es de diferentes usu\u00e1rios, que seguem encadeadas uma ap\u00f3s a outra com separa\u00e7\u00e3o por meio do protocolo HTTP. Ataques do tipo HTTP Request Smuggling surgem devido a interpreta\u00e7\u00f5es diferentes dos cabe\u00e7alhos HTTP e das especifica\u00e7\u00f5es do protocolo HTTP nos frontends e backends, por exemplo, quando o frontend usa o cabe\u00e7alho HTTP \u2018Content-Length\u2019 para determinar o tamanho da solicita\u00e7\u00e3o, enquanto o backend usa \u2018Transfer-Encoding: chunked\u2019.     <\/p>\n<p>A primeira vulnerabilidade CVE-2026-2835 est\u00e1 presente no c\u00f3digo de an\u00e1lise de solicita\u00e7\u00f5es HTTP\/1.0 e \u00e9 causada pelo manuseio incorreto do cabe\u00e7alho \u2018Transfer-Encoding\u2019 com m\u00faltiplos valores, al\u00e9m do uso do fechamento da conex\u00e3o como sinal do fim do corpo da solicita\u00e7\u00e3o (close-delimited). O Pingora verificava apenas a variante \u2018Transfer-Encoding: chunked\u2019 e ignorava esse cabe\u00e7alho se houvesse m\u00faltiplos valores. Nesta situa\u00e7\u00e3o, o Pingora n\u00e3o considerava o tamanho no cabe\u00e7alho \u2018Content-Length\u2019 e tratava como corpo da solicita\u00e7\u00e3o todos os dados recebidos at\u00e9 o fechamento da conex\u00e3o.    <\/p>\n<p>Por meio da especifica\u00e7\u00e3o de m\u00faltiplos valores no cabe\u00e7alho \u2018Transfer-Encoding\u2019, um atacante poderia criar condi\u00e7\u00f5es nas quais uma solicita\u00e7\u00e3o redirecionada ao backend teria um tamanho real que n\u00e3o corresponde ao tamanho da cadeia chunked, calculado com base no cabe\u00e7alho \u2018Transfer-Encoding\u2019. O Pingora redirecionava todos os dados recebidos como uma \u00fanica solicita\u00e7\u00e3o, enquanto o backend, por exemplo, o Node.js, calculava a solicita\u00e7\u00e3o com base em \u2018Transfer-Encoding: chunked\u2019 e tratava o restante como o in\u00edcio de outra solicita\u00e7\u00e3o. GET \/ HTTP\/1.0 Host: example.com Connection: keep-alive Transfer-Encoding: identity, chunked Content-Length: 29 0 GET \/admin HTTP\/1.1 X:      <center><img decoding=\"async\" alt=\"Vulnerabilidades no projeto Pingora permitindo infiltra\u00e7\u00e3o em solicita\u00e7\u00f5es externas\" src=\"\/wp-content\/uploads\/2026\/03\/6a4654a05c9ff8c64cc4cb4773bf4ec9.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>A segunda vulnerabilidade CVE-2026-2833 \u00e9 causada pelo processamento inadequado do cabe\u00e7alho HTTP 'Upgrade' em requisi\u00e7\u00f5es HTTP\/1.1. Quando um cabe\u00e7alho 'Upgrade' est\u00e1 presente na requisi\u00e7\u00e3o, o proxy imediatamente passa para o backend os dados da requisi\u00e7\u00e3o que se seguem ao cabe\u00e7alho 'Upgrade', sem esperar pela resposta do backend com o c\u00f3digo 101 (Switching Protocols). Isso resultava em uma sincroniza\u00e7\u00e3o quebrada entre o proxy e o backend, fazendo com que o backend tratasse os dados enviados ap\u00f3s o cabe\u00e7alho 'Upgrade' como uma requisi\u00e7\u00e3o separada, enviando a resposta de execu\u00e7\u00e3o dessa requisi\u00e7\u00e3o em resposta a uma requisi\u00e7\u00e3o subsequente de outro usu\u00e1rio. GET \/ HTTP\/1.1 Host: example.com Upgrade: foo GET \/admin HTTP\/1.1 Host: example.com      <center><img decoding=\"async\" alt=\"Vulnerabilidades no projeto Pingora permitindo infiltra\u00e7\u00e3o em solicita\u00e7\u00f5es externas\" src=\"\/wp-content\/uploads\/2026\/03\/f86f840431a9be00c4cfd74cc6b4c89b.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <center><img decoding=\"async\" alt=\"Vulnerabilidades no projeto Pingora permitindo infiltra\u00e7\u00e3o em solicita\u00e7\u00f5es externas\" src=\"\/wp-content\/uploads\/2026\/03\/8b23d0642fc0b783c2027b91078607e4.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Os problemas se manifestam ao usar o Pingora na forma de proxy reverso (ingress proxy), retransmitindo as requisi\u00e7\u00f5es dos usu\u00e1rios para os backends utilizando os protocolos HTTP\/1.0 ou HTTP\/1.1. A configura\u00e7\u00e3o do Pingora na rede de entrega de conte\u00fado Cloudflare n\u00e3o permitia a explora\u00e7\u00e3o de vulnerabilidades, pois o Pingora no CDN n\u00e3o \u00e9 utilizado na fun\u00e7\u00e3o de proxy ingress, redirecionando requisi\u00e7\u00f5es apenas com o protocolo HTTP\/1.1, bloqueia requisi\u00e7\u00f5es com valores incorretos de Content-Length, redireciona somente um valor do cabe\u00e7alho 'Transfer-Encoding: chunked' e insere um cabe\u00e7alho adicional 'Connection: close' em requisi\u00e7\u00f5es com o cabe\u00e7alho 'Upgrade:', que impede o envio de requisi\u00e7\u00f5es adicionais na mesma conex\u00e3o.          <\/p>\n<p>A terceira vulnerabilidade CVE-2026-2836 (n\u00edvel de severidade 8.4 de 10) leva \u00e0 contamina\u00e7\u00e3o de cache (cache poisoning) devido \u00e0 gera\u00e7\u00e3o da chave de armazenamento de dados em cache (CacheKey) apenas com base no caminho do URI, ignorando o conte\u00fado do cabe\u00e7alho 'Host'. Essa falha resulta na forma\u00e7\u00e3o de chaves de cache id\u00eanticas para caminhos HTTP iguais em hosts diferentes. A vulnerabilidade pode ser utilizada para substituir o conte\u00fado do cache ao usar o modo de cache para m\u00faltiplos hosts. No Pingora, o cache \u00e9 uma fun\u00e7\u00e3o experimental, n\u00e3o recomendada para implementa\u00e7\u00f5es em produ\u00e7\u00e3o.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64957\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0442\u0440\u0451\u0445 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432\u043e \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0435 Pingora, \u0434\u0432\u0443\u043c \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (9.3 \u0438\u0437 10). \u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a Pingora \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0437\u0430\u0449\u0438\u0449\u0451\u043d\u043d\u044b\u0445 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432. \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 Pingora \u043f\u0440\u043e\u043a\u0441\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0441\u0435\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 Cloudflare \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 40 \u043c\u043b\u043d \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":163793,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-163792","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0442\u0440\u0451\u0445 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432\u043e \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0435 Pingora, \u0434\u0432\u0443\u043c \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (9.3 \u0438\u0437 10).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Pingora, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u0432\u043a\u043b\u0438\u043d\u0438\u0442\u044c\u0441\u044f \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0442\u0440\u0451\u0445 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432\u043e \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0435 Pingora, \u0434\u0432\u0443\u043c \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (9.3 \u0438\u0437 10).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-03-10T21:11:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-03-10T21:11:59+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Vulnerabilidades no projeto Pingora que permitem intercep\u00e7\u00e3o de solicita\u00e7\u00f5es externas | ProHoster","description":"A empresa Cloudflare anunciou a corre\u00e7\u00e3o de tr\u00eas vulnerabilidades no framework Pingora, sendo que duas delas receberam um n\u00edvel cr\u00edtico de gravidade (9,3 em 10).","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 Pingora, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u0432\u043a\u043b\u0438\u043d\u0438\u0442\u044c\u0441\u044f \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u043e\u0431\u044a\u044f\u0432\u0438\u043b\u0430 \u043e\u0431 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0442\u0440\u0451\u0445 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0435\u0439 \u0432\u043e \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0435 Pingora, \u0434\u0432\u0443\u043c \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (9.3 \u0438\u0437 10).","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/uyazvimosti-v-proekte-pingora-pozvolyayushhie-vklinitsya-v-storonnie-zaprosy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-03-10T21:11:59+00:00","article:modified_time":"2026-03-10T21:11:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/163792","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=163792"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/163792\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/163793"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=163792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=163792"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=163792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}