Удаляем имя админа из 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. Плюсом к вышеописанному рекомендую заблокировать отображение ошибок на странице авторизации.

  1 Мне понравилось!

Koммeнтapии (3):

  1. хм, если я всё правильно понял, то этот класс никак не указывает на логин админа, а лишь позволяет через css выделить комментарий, если его написал админ.
    Будь то логин админа vasya-vasya, к примеру, и отображался бы он как Василий, то в структуре html всё равно было бы ….comment-author-admin…, а не …comment-author-vasya-vasya….

    ПРосто так получилось, что до 3й версии логином по умолчанию был admin.

    • Нет, я же не от винта все это написал. Когда я менял логин на другой, то в названии этого класса отображался именно новый логин, а не admin.

  2. Получается возможность ввести свой логин пользы не приносит. Что раньше требовалось подобрать только пароль, что сейчас… Спасибо, буду знать, сохраню-ка я в блокнот материальчик..

Oтпpaвить кoммeнтapий

Облако тегов