WordPress: удаляем имя админа из CSS-классов в комментариях

Одной из рекомендаций, касаемых безопасности WordPress-сайта, является замена имени админа (admin), которое устанавливается системой по умолчанию.

Я удивляюсь тому, как долго разработчики движка шли к следующему – лишь в 3-й версии WordPress появилась возможность при установке указать свое имя.

Так вот, суть в том, что имя админа содержится в исходном коде комментариев, в виде имени CSS-класса comment-author-admin. Вот так это выглядит:

Имя админа в CSS-классах комментариев

Видя этот класс, сразу понятно, что логин админа – admin. Остается только подобрать пароль.

Чтобы усложнить задачу хакерам, необходимо удалить этот класс путем добавления следующей функции в файл functions.php вашей темы:

function remove_comment_author_class( $classes ) {
	foreach( $classes as $key => $class ) {
		if(strstr($class, "comment-author-")) {
			unset( $classes[$key] );
		}
	}
	return $classes;
}
add_filter( 'comment_class' , 'remove_comment_author_class' );

В результате мы избавились от одной из возможных подсказок для взломщиков.

P.S. Плюсом к вышеописанному рекомендую заблокировать отображение ошибок на странице авторизации.

Комментарии (3)

  1. Ярослав
    2 февраля 2015 г. в 10:48

    В исходном коде также отображается ID автора сайта, вот в такой строке

    <body class="archive author author-admin author-1 custom-background">

    И тут уже меняй – не меняй ID автора, он всё равно на виду.

    Может быть вы знаете, как в functions.php запретить также и вывод этого класса в исходном коде страниц?

    1. 2 февраля 2015 г. в 11:36 / ответ на коммент Ярослав

      В файле header.php найдите строку с тегом body и замените ее на <body>. Вот и все дела.

      1. Ярослав
        2 февраля 2015 г. в 16:47 / ответ на коммент Dimox

        Это сработало!! Спасибо!! ))

Ваш комментарий

Жирный текст

Ссылка

Цитата

Внутристрочный код

CSS-код

HTML-код

JavaScript-код

PHP-код