ISPmanager Busines 5 — Настройка безопасности CentOS -7

Apache

Первая настройка, которую желательно сделать, — это лишить злоумышленника возможности узнать версию Apache. Для этого существует две директивы, которые надо установить в следующие значения в основном файле конфигурации /etc/httpd/conf/httpd.conf:

ServerSignature Off

ServerTokens Prod


PHP

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



expose-php = Off //Скрывает версию PHP


Данный параметр можно установить в файлы php.ini или через интерфейс ISPmanagert





phpMyAdmin



CentOS 7

В файле /etc/phpMyAdmin/config.inc.php в строку
CODE: SELECT ALL
$cfg['blowfish_secret'] = '12345678901234567890123456789012';

надо ввести придуманный пароль длиной 32 символа.

Защита для NGINX: Как заблокировать, SQL Injections, File Injections, Spam, User Agents, Etc.

Измените свой Nginx Vhosts

Настройки, которые мы используем здесь, должен быть вставлены в каждый nginx vhost (в server {} контейнер), где Вы хотите использовать его. К сожалению, его нельзя использоваться в глобальном конфиге nginx, потому что директива набора не позволена в http {} контейнер.

Крутой .htaccess

Когда речь заходить про .htaccess, мы обычно вспоминаем перенаправление — redirect, который помогает редиректить с одного убитого урла на новый (когда статья поменяла фактический адрес) или редирект домена с www на без www Это наиболее распространенные ситуации, которые приходится решать начинающим вебмастерам, прибегая к помощи файла .htaccess. Между тем, не все знают, что это мощный инструмент для очень большого числа ситуаций: он может ускорить ваш сайт, отбивать атаки ботов, фильтровать трафик, обмениваться трафиком между сайтами и т.д. и т.п.

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

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

Блокируем ботов и пауков с помощью .htaccess
В интернете полно поисковых машин и разного рода сканеров, бесполезных для вашего сайта, но которые создают колоссальный трафик и нагрузку на ваш сайт. Особенно часто это прослеживается на дешевых тарифных планах. Вы наверное замечали такую ситуацию, что вроде бы и посещений нет на сайте, но техническая поддержка хостинга постоянно присылает письма о высокой нагрузке на вашем сайте?

Код ниже позволит запретить доступ бесполезным ботам на сайт:

RewriteCond %{HTTP_USER_AGENT} (Slurp|spider|Twiceler|heritrix|
Combine|appie|boitho|e-SocietyRobot|Exabot|Nutch|OmniExplorer|
MJ12bot|ZyBorg/1|Ask\ Jeeves|AskJeeves|ActiveTouristBot|
JemmaTheTourist| agadine3|BecomeBot|Clustered-Search-Bot|
MSIECrawler|freefind|galaxy|genieknows|INGRID|grub-client|
MojeekBot|NaverBot|NetNose-Crawler|OnetSzukaj|PrassoSunner|
Asterias\ Crawler|T-H-U-N-D-E-R-S-T-O-N-E|GeorgeTheTouristBot|
VoilaBot|Vagabondo|fantomBro wser|stealthBrowser|cloakBrowser|
fantomCrew\ Browser|Girafabot|Indy\ Library|Intelliseek|Zealbot|
Windows\ 95|^Mozilla/4\.05\ \[en\]$|^Mozilla/4\.0$) [NC]
RewriteRule ^(.*)$ - [F]
#
RewriteCond %{HTTP_USER_AGENT} ^Mozilla.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Opera.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Firefox.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Netscape.* [NC]
RewriteRule ^(.*)$ - [L]
RewriteRule ^(.*)$ - [F]

Безопасность Opencart | Как мы защищались от вируса и различных атак на сайт

Защита данных 13.03.2017 23:47
В продолжение нашей статьи про атаку на Самку чужого, наконец то появилось время подробно описать что мы сделали, чтобы история не повторилась.

1 — Поменяли абсолютно все пароли. Ftp, базы данных, администраторов магазина.

2 — Добавили в /system/logs файл .htaccess следующего содержания:

<FilesMatch ‘.(php) $’>
Order Allow,Deny
Deny from all
</FilesMatch>


3 — Проверили все права на папки файлы и дали минимальные

4 — Прошлись вручную поиском по всем папкам на которых было 777 нашли все подселенные эксплойты, и убрали их.

5 — Прошлись по всем папкам магазина и нашли входжения base64 и eval. Это позволило обнаружить еще вагон и тележку всякого хлама.

6 — Насобирали статистику айпи с которых были атаки и заблокировали их в корневом .htaccess

7 — Удалили контроллер admin/controller/tool/backup.php. Это не критичный функционал — без него жить можно.

8 — Запаролили админку через .htaccess как это сделать читаем здесь.

9 — Отключили показ ошибок на уровне сервера. И в настройках магазина.

Этого всего достаточно для того чтобы наш зловред не появился опять.

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

Надо развернуть боевой рабочий сервер с ограниченным доступом, а всю разработку вести на каком нибудь деве.
Нужен Suhosin, Mod-Security, какая нибудь система проверки целостности структуры файлов, в идеале GIT, закрытые доступы к админке и phpmyadmin только по ip, нормальный хостинг, никаких шаредов, и отсутствие в одном аккаунте с боевым магазином соседей типа сайтов на WP. Правильные настройки серверного окружения.

Также сервер должен быть с последними патчами безопасности.

Крайне не помешает SSL-сертификат.

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

PHP уязвимость и защита от PHP инъекций. Правила безопасного программирования на PHP

Защита данных 24.08.2016 21:46
Одним из наиболее значимых вопросов для web-программистов является безопасность php-скриптов. Все программисты в той или иной мере используют различные методы чтобы обезопасить свой проект, но, к сожалению, в большинстве случаев используется защита от нескольких уязвимостей, при этом остальные проблемные места даже не рассматриваются.
В данной статье перечислены основные виды уязвимостей PHP и рассмотрены способы защиты от них.

Виды уязвимостей PHP


  1. Демонстрация ошибок пользователю
    Смысл: при каких-либо ошибках в коде пользователю выводиться информация об произошедшей ошибке. Не является критичной уязвимостью, но поваляет взломщику получить дополнительную информацию о структуре и работе сервера.

16 рецептов защиты от DDOS-атак своими руками

Защита данных 07.06.2016 01:37
Борьба с DDoS-атаками — работа не только сложная, но и увлекательная. Неудивительно, что каждый сисадмин первым делом пытается организовать оборону своими силами — тем более что пока еще это возможно.

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