Respuestas:
La ofuscación es un medio de "oscurecer" el significado real y la intención de su código javascript. Algunos sitios lo usan como un obstáculo para las personas que desean copiar / tomar prestado su código. Otros sitios lo usan como un medio para ocultar la intención real del código.
Algunas formas de oscurecimiento:
El oscurecimiento no es en sí mismo malvado, pero se puede usar para tratar de ocultar una mala intención y eso es probablemente a lo que AVG se oponía. Detectó tanto oscurecimiento que no pudo determinar si el JavaScript intentaba hacer algo que intentaba evitar. Como tal, declaró el código como inseguro por defecto ya que no puede verificar que el código parece estar bien.
1
y 2
también se realizan mediante compresores javascript. Los compresores ofuscan el código como un efecto secundario, pero ese no es su objetivo principal; su propósito principal es hacer que el javascript sea más pequeño, para reducir el ancho de banda.
La ofuscación se refiere a ocultar el significado deseado de algo.
En este caso, un fragmento de JavaScript claramente legible, como
window.onload = function() { alert("Hello " + username) };
puede ser sustituido por
var _0xc5b2=["\x6F\x6E\x6C\x6F\x61\x64",
"\x48\x65\x6C\x6C\x6F\x20"];window[_0xc5b2[0]]=
function (){alert(_0xc5b2[1]+username);} ;
o incluso
eval(unescape("var%20_0xc5b2%3D%5B%22onload%22%2C%22Hello%20%22%5D%3Bwindow"+
"%5B_0xc5b2%5B0%5D%5D%3Dfunction%20%28%29%7Balert%28_0xc5b2%5B1%5D+username"+
"%29%3B%7D%20%3B"));
Los tres fragmentos de código hacen exactamente lo mismo, pero solo leer el primero le permitirá comprender fácilmente sus intenciones.
Aparentemente, AVG intenta comprender el propósito del código JavaScript antes de permitir su ejecución. Cuando el código se ofusca, AVG probablemente fallará. De ahí la advertencia.
Dicho esto, algunos sitios web ofuscan su JavaScript no por malas intenciones, sino por dificultar el robo de su trabajo. La ofuscación generalmente es inútil si se usa para este propósito, pero el punto es que la ofuscación no significa necesariamente malas intenciones.