Как защитить сайт от злоумышленников

Три приёма доступные для новичков, которые помогут на 100% защитить сайт от злоумышленников без плагинов.

Смена пароля для входа в админку

Чтобы создать непробиваемый пароль, введите в поиск запрос «Генератор паролей», и Вам откроются десяток онлайн сервисов генерирующих пароли из любых символов, и с любым количеством знаков.

Мало того. Вам нагенерируют десяток таких паролей — выбирай на вкус.

Чтобы не испытывать трудностей с вводом большого количества знаков, пароль можно сохранить на своём компьютере, например в папке «Документы».

А лучше создать отдельную папку с нейтральным названием на диске D.

Хитрость в том, что мы не будем использовать полный пароль.

Например Вам сгенерировали 50 символов, вы из них копируете первые 30, и используете, а остальные остаются для отвода глаз на случай проникновения злоумышленника на компьютер.

Главное запомнить, на каком символе заканчивается реальный пароль, и копировать только эту часть для входа в админку.

Как видите ничего сложного, и такую смену пароля можно делать раз в неделю. За это время ни одна вредоносная программа такое количество вариантов не прокрутит.

Только не стоит расслабляться и разрешать браузеру сохранить пароль. Безопаснее вводить при каждом входе. 

Сканирование файлов

Сканер файлов — доступный для новичка инструмент способный обеспечить контроль за изменениями произошедшими в коде сайта.

Один из таких сканеров — Санти, уже год обеспечивает мне спокойный сон, и не напрягает сайт.

Не являясь спецом по безопасности, я четко понимаю, что происходит на сайте и сразу узнаю, если в код внедрилось нечто вредное, и могу эту вредность убрать.

Подробнее о Санти Вы узнаете во вкладке Документация, если перейдёте по приведённой выше ссылке. Я же расскажу вкратце о главном.

Программа бесплатная, и принцип её работы прост, как и всё гениальное.

Санти устанавливается в корень сайта и не контролируется ни кем, кроме владельца сайта.

Он сканирует файлы, график Вы задаёте самостоятельно, делает копии, и отправляет на хранение в Ваш Яндекс Диск, не нагружая ими сервер.

Если в каком либо файле произошли изменения, то сканер отправляет Вам сообщение на эл. почту.

Получив уведомление, вы находите в базе бекапов копию этого файла, в которой нет никаких изменений, и заменяете ей повреждённый файл. Вот и всё.

Таким образом вы защитите сайт от злоумышленников находясь в курсе происходящего и делая чистку вручную, не надеясь на какую либо программу, и помешать этому не в силах ни какой вирус.

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

А вот искать и ломать маленький сканер делающий бекап, едва-ли кто додумается. 

Сканер сообщает обо всех изменениях в файлах, даже о тех которые делаете Вы.

Устанавливается или удаляется плагин, добавляется картинка, происходит обновление кеша, если стоит плагин Huper Ceche, это отражается в отчёте.

Поэтому не стоит сразу бросаться в панику при приходе сообщения от Санти. Посмотрите адреса указанных файлов, и подумайте — не ваших ли рук это дело.

А вот к плагинам стоит отнестись повнимательней. Дело в том, что есть такие, которые внедряют свой код в ядро движка, например MailPoet Newsletters или BulletProof Security, и этот код остаётся даже после удаления плагина.

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

Заодно попрактикуетесь в работе с файлами и познакомитесь со структурой движка. 

Это принцип работы. Для новичка конечно возникнут трудности с техникой исполнения.

На этот случай у сканера отзывчивая тех. поддержка, и этот пост, где в комментариях я подробно отвечу даже на «глупые» вопросы.

Защита через файл .htaccess

Оригинальный файл .htaccess WordPress имеет такой вид:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Для начала запретим доступ к самому файлу кому или чему либо, кроме себя любимого. Для этого добавим в него перед # END WordPress следующий код:

# protect .htaccess
<Files .htaccess>
order allow,deny
deny from all
</Files>

Затем возьмём Черный список всяческих пакостей и хакерских уловок известных в интернете и внесём их в файл, тем самым заблокировав им доступ на сайт.

Помимо всего прочего этот список снизит нагрузку на Ваш сервер и уменьшит показатель отказов в статистике.

# 6G:[QUERY STRINGS]
<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteCond %{QUERY_STRING} (eval\() [NC,OR]
	RewriteCond %{QUERY_STRING} (127\.0\.0\.1) [NC,OR]
	RewriteCond %{QUERY_STRING} ([a-z0-9]{2000}) [NC,OR]
	RewriteCond %{QUERY_STRING} (javascript:)(.*)(;) [NC,OR]
	RewriteCond %{QUERY_STRING} (base64_encode)(.*)(\() [NC,OR]
	RewriteCond %{QUERY_STRING} (GLOBALS|REQUEST)(=|\[|%) [NC,OR]
	RewriteCond %{QUERY_STRING} (<|%3C)(.*)script(.*)(>|%3) [NC,OR]
	RewriteCond %{QUERY_STRING} (\\|\.\.\.|\.\./|~|`|<|>|\|) [NC,OR]
	RewriteCond %{QUERY_STRING} (boot\.ini|etc/passwd|self/environ) [NC,OR]
	RewriteCond %{QUERY_STRING} (thumbs?(_editor|open)?|tim(thumb)?)\.php [NC,OR]
	RewriteCond %{QUERY_STRING} (\'|\")(.*)(drop|insert|md5|select|union) [NC]
	RewriteRule .* - [F]
</IfModule>

# 6G:[REQUEST METHOD]
<IfModule mod_rewrite.c>
	RewriteCond %{REQUEST_METHOD} ^(connect|debug|delete|move|put|trace|track) [NC]
	RewriteRule .* - [F]
</IfModule>

# 6G:[REFERRERS]
<IfModule mod_rewrite.c>
	RewriteCond %{HTTP_REFERER} ([a-z0-9]{2000}) [NC,OR]
	RewriteCond %{HTTP_REFERER} (semalt.com|todaperfeita) [NC]
	RewriteRule .* - [F]
</IfModule>

# 6G:[REQUEST STRINGS]
<IfModule mod_alias.c>
	RedirectMatch 403 (?i)([a-z0-9]{2000})
	RedirectMatch 403 (?i)(https?|ftp|php):/
	RedirectMatch 403 (?i)(base64_encode)(.*)(\()
	RedirectMatch 403 (?i)(=\\\'|=\\%27|/\\\'/?)\.
	RedirectMatch 403 (?i)/(\$(\&)?|\*|\"|\.|,|&|&?)/?$
	RedirectMatch 403 (?i)(\{0\}|\(/\(|\.\.\.|\+\+\+|\\\"\\\")
	RedirectMatch 403 (?i)(~|`|<|>|:|;|,|%|\\|\s|\{|\}|\[|\]|\|)
	RedirectMatch 403 (?i)/(=|\$&|_mm|cgi-|etc/passwd|muieblack)
	RedirectMatch 403 (?i)(&pws=0|_vti_|\(null\)|\{\$itemURL\}|echo(.*)kae|etc/passwd|eval\(|self/environ)
	RedirectMatch 403 (?i)\.(aspx?|bash|bak?|cfg|cgi|dll|exe|git|hg|ini|jsp|log|mdb|out|sql|svn|swp|tar|rar|rdf)$
	RedirectMatch 403 (?i)/(^$|(wp-)?config|mobiquo|phpinfo|shell|sqlpatch|thumb|thumb_editor|thumbopen|timthumb|webshell)\.php
</IfModule>

# 6G:[USER AGENTS]
<IfModule mod_setenvif.c>
	SetEnvIfNoCase User-Agent ([a-z0-9]{2000}) bad_bot
	SetEnvIfNoCase User-Agent (archive.org|binlar|casper|checkpriv|choppy|clshttp|cmsworld|diavol|dotbot|extract|feedfinder|flicky|g00g1e|harvest|heritrix|httrack|kmccrew|loader|miner|nikto|nutch|planetwork|postrank|purebot|pycurl|python|seekerspider|siclab|skygrid|sqlmap|sucker|turnit|vikspider|winhttp|xxxyy|youda|zmeu|zune) bad_bot
	<limit GET POST PUT>
		Order Allow,Deny
		Allow from All
		Deny from env=bad_bot
	</limit>
</IfModule>

# 6G:[BAD IPS]
<Limit GET HEAD OPTIONS POST PUT>
	Order Allow,Deny
	Allow from All
	# uncomment/edit/repeat next line to block IPs
	# Deny from 123.456.789
</Limit>

Чёрный список собирается обновляется на сайте Perishable Press, так что советую взять его в закладки и не реже раза в год вносить обновления в файл.

Проверка на вирусы онлайн

Раз уж Вы занялись веб программированием, то Вам неизбежно придётся черпать инфу из интернета. Это могут быть и архивы и просто ссылки.

Хорошо если на компе стоит надёжный лицензионный антивирусник типа Каспера или ESET, но если такой защиты нет, то любой скачанный, или пришедший на почту файл надо перед распаковкой проверить.

Сделать это быстро и бесплатно можно на сервисе VirusTotal.

Сервис прогоняет введёный в него архив или ссылку по вирусным базам 54-х антивирусов, среди которых и DrWeb и Каспер и ESET.

Результат выдаётся подробнейший, в чём Вы сможете убедиться посетив этот сервис.

И ещё о плагинах.

Я прекрасно понимаю начинающих веб мастеров, так как сам недавно из таких. Хочется сделать такой сайт, что и «Ах!!!» и «Ух-ты!!!» с первого взгляда.

Но языки программирования пока тёмный лес, а тут вам россыпь плагинов. Устанавливай и радуйся.

Так вот, не стоит так радоваться потому, что для молодого сайта плагины — неподъёмная гиря, продвигаться с которой в десятки раз тяжелее.

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

Так что уменьшите число плагинов до разумного минимума, и загружайте необходимые только с сайта разработчика.

Для молодого сайта главные показатели — скорость загрузки, которую плагины тормозят, и качество предлагаемой информации и текста, а так же изображений, на которое они ни как не влияют.

Вот над этими показателями стоит усиленно работать. А красоту навести можно и потом, когда люди начнут интересоваться содержанием сайта.

Желаю безопасной работы.

Перевод сайта с Денвера на хостинг Бегет < < < В раздел > > > Сайт в интернете, что дальше? Оптимизация сайта

Запись опубликована в рубрике WordPress. Добавьте в закладки постоянную ссылку.

9 комментариев на «Как защитить сайт от злоумышленников»

  1. stariс говорит:

    Так ведь для Джумлы то же самое. Возможно установка сканера делается немного по другому, но это объяснят в тех.поддержке. Разработчик даже готов помочь с установкой бесплатно. А смена паролей для всех CMS актуальна.

    Вот с файлом .htaccess возможно что-то по другому, но такая инфа есть в гугле.

  2. Наим говорит:

    Ещё бы про защиту джумлы написали. Было бы здорово 🙂

  3. stariс говорит:

    Удобная штука. Постоянно обновляется. Команда отзывчивая.

  4. виталий говорит:

    Ого, я только здесь узнал о Системе безопасности сайтов. Ранее ручками делал копии, сейчас посмотрю, что предлагают люди и технологии.

  5. Sergei говорит:

    Всем Привет,хорошая статья,спасибо за такие новости.

  6. stariс говорит:

    Хорошие советы. В .htaccess новичкам лезть конечно надо с осторожностью, так как можно заблокироватьи себя самого (пункт 6 при динамическом IP). А вот с получением знаний при помощи этого файла чудеса можно творить.

    Кстати файлов .htaccess в Wodpress много.

  7. bekcil говорит:

    Вот еще методы!!!
    1- Не пользоваться на компе взломанными прогами и виндой.
    2- Не сохранять в браузере и ftp клиенте пароли.
    3- Сменить вход в админку. Те admin.php должен называться по другому хотя бы fisdt.php.
    4- Сменить страницу авторизации стандартную также.
    5- В htaccess сделать, чтобы писало, что этот файл не существует. А также admin.php, чтобы писало, что он не существует.
    6- Так же в htaccess ставим, чтобы вход в админку пускало только со своего ip адреса, те другие айпишники уже пропускать не будет.
    Вот, вроде то, что я вспомнил.

  8. stariс говорит:

    Согласен и про вёрстку, и про хостера, но ведь блог то для самых начинающих, для тех кто на ошибках и учится. Вы почитайте комментарии к статьям. Такие вопросы!!! Но если вспомнить свои первые шаги…

    Качественная вёрстка и анализ работы сервера — это уже профессионализм. Дай бог, чтоб все мои посетитель к нему пришли.

    Спасибо что зашли. Знающий человек у меня редкий гость.

  9. Александр говорит:

    Здравствуйте!
    …мне особенно понравилось об «…А красоту навести можно и потом…» — логично!
    И контент можно — потом! Вот сайт будет летать…
    (серьёзно) — это всё seo-коррупция, когда телегу пытаться перекрасить в самолёт……….
    На мой взгляд, нужно верстать сайт по возможности без ошибок (что нелегко) и требовать от хостера и провайдера интернета соответствующей скорой работы. Вот и весь секрет.
    Возможно ошибаюсь, но — ИМХО)
    …и про защиту понравилось — реальная проблема.
    Удачи.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *