| Prezado usuário do Otimizador de website,
Estamos escrevendo para informá-lo sobre um possível problema com o Otimizador de website. Ao explorar a vulnerabilidade no script de controle do Otimizador de website, um invasor pode executar um código malicioso em seu site usando um ataque Cross-Site Scripting (XSS). Esse ataque só pode acontecer em um website ou navegador que já tenha sido comprometido por um ataque diferente. Enquanto a probabilidade imediata deste ataque é baixa, recomendamos que você tome providências para proteger seu site.
Reparamos o bug e todas as experiências novas não estão suscetíveis. No entanto, quaisquer experiência que você esteja fazendo precisa ser atualizada para que o bug seja reparado em seu site. Além disso, se você tiver algum script do Otimizador de website de experiências pausadas ou interrompidas que foram criadas antes do dia 3 de dezembro de 2010, será necessário remover ou também atualizar esse código.
Há duas maneiras de atualizar seu código. Você pode interromper as experiências atuais, remover os scripts antigos e criar uma experiência nova ou atualizar o código de seu site diretamente. É altamente recomendável criar uma nova experiência, uma vez que se trata do método mais simples.
Como criar uma nova experiência
- Interrompa todas as experiências atualmente em execução no Otimizador de website
- Remova todos os scripts do Otimizador de website de seu site
- Crie uma nova experiência normalmente. As novas experiências não são vulneráveis.
Como atualizar diretamente o Script de controle do Otimizador de website
- Localize o script de controle em seu site. Ele terá esta aparência:
Script de controle de teste A/B <!-- Google Website Optimizer Control Script --> <script> function utmx_section(){}function utmx(){} (function(){var k='XXXXXXXXXX',d=document,l=d.location,c=d.cookie;function f(n){ if(c){var i=c.indexOf(n+'=');if(i>-1){var j=c.indexOf(';',i);return c.substring(i+n. length+1,j<0?c.length:j)}}}var x=f('__utmx'),xx=f('__utmxx'),h=l.hash; d.write('<sc'+'ript src="'+ 'http'+(l.protocol=='https:'?'s://ssl':'://www')+'.google-analytics.com' +'/siteopt.js?v=1&utmxkey='+k+'&utmx='+(x?x:'')+'&utmxx='+(xx?xx:'')+'&utmxtime=' +new Date().valueOf()+(h?'&utmxhash='+escape(h.substr(1)):'')+ '" type="text/javascript" charset="utf-8"></sc'+'ript>')})(); </script><script>utmx("url",'A/B');</script> <!-- End of Google Website Optimizer Control Script -->
Script de controle de teste multivariável <!-- Google Website Optimizer Control Script --> <script> function utmx_section(){}function utmx(){} (function(){var k='XXXXXXXXXX',d=document,l=d.location,c=d.cookie;function f(n){ if(c){var i=c.indexOf(n+'=');if(i>-1){var j=c.indexOf(';',i);return c.substring(i+n. length+1,j<0?c.length:j)}}}var x=f('__utmx'),xx=f('__utmxx'),h=l.hash; d.write('<sc'+'ript src="'+ 'http'+(l.protocol=='https:'?'s://ssl':'://www')+'.google-analytics.com' +'/siteopt.js?v=1&utmxkey='+k+'&utmx='+(x?x:'')+'&utmxx='+(xx?xx:'')+'&utmxtime=' +new Date().valueOf()+(h?'&utmxhash='+escape(h.substr(1)):'')+ '" type="text/javascript" charset="utf-8"></sc'+'ript>')})(); </script> <!-- End of Google Website Optimizer Control Script -->
- Localize o seguinte trecho no script de controle:
return c.substring(...
- Altere a linha a seguir conforme mostrado:
ANTES: return c.substring(i+n.length+1,j<0?c.length:j) CORRIGIDO: return escape(c.substring(i+n.length+1,j<0?c.length:j)) Não se esqueça de incluir o parêntese final ")"
Script de controle de teste A/B corrigido <!-- Google Website Optimizer Control Script --> <script> function utmx_section(){}function utmx(){} (function(){var k='XXXXXXXXXX',d=document,l=d.location,c=d.cookie;function f(n){ if(c){var i=c.indexOf(n+'=');if(i>-1){var j=c.indexOf(';',i); return escape(c.substring(i+n.length+1,j<0?c.length:j))}}} var x=f('__utmx'),xx=f('__utmxx'),h=l.hash; d.write('<sc'+'ript src="'+ 'http'+(l.protocol=='https:'?'s://ssl':'://www')+'.google-analytics.com' +'/siteopt.js?v=1&utmxkey='+k+'&utmx='+(x?x:'')+'&utmxx='+(xx?xx:'')+'&utmxtime=' +new Date().valueOf()+(h?'&utmxhash='+escape(h.substr(1)):'')+ '" type="text/javascript" charset="utf-8"></sc'+'ript>')})(); </script><script>utmx("url",'A/B'); </script> <!-- End of Google Website Optimizer Control Script -->
Script de controle de teste multivariável corrigido <!-- Google Website Optimizer Control Script --> <script> function utmx_section(){}function utmx(){} (function(){var k='XXXXXXXXXX',d=document,l=d.location,c=d.cookie;function f(n){ if(c){var i=c.indexOf(n+'=');if(i>-1){var j=c.indexOf(';',i); return escape(c.substring(i+n.length+1,j<0?c.length:j))}}} var x=f('__utmx'),xx=f('__utmxx'),h=l.hash; d.write('<sc'+'ript src="'+ 'http'+(l.protocol=='https:'?'s://ssl':'://www')+'.google-analytics.com' +'/siteopt.js?v=1&utmxkey='+k+'&utmx='+(x?x:'')+'&utmxx='+(xx?xx:'')+'&utmxtime=' +new Date().valueOf()+(h?'&utmxhash='+escape(h.substr(1)):'')+ '" type="text/javascript" charset="utf-8"></sc'+'ript>')})(); </script> <!-- End of Google Website Optimizer Control Script -->
A linha k=XXXXXXXXX nos exemplos de script de controle acima é um marcador de posição.
Sua experiência continuará normalmente depois que você fizer essa atualização. Não é necessário pausar ou reiniciar a experiência.
Temos o compromisso de manter o Otimizador de website seguro, e sentimos muito por esse problema. Continuaremos trabalhando muito para evitar vulnerabilidades futuras.
Atenciosamente, Trevor Equipe do Otimizador de website do Google
|