Советы по безопасности сайта - PullRequest
4 голосов
/ 02 марта 2010

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

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

Однако мы обеспокоены тем, что физическая машина будет захвачена с помощью некоторого эксплойта. Мы будем работать с веб-сервером (Windows Server 2008 с пакетом обновления 2 (SP2) и IIS7) в демилитаризованной зоне с только портами 80 и 443, открытыми для Интернета. В настоящее время сервер sql находится на компьютере веб-сервера, но мы рассматриваем, является ли это угрозой безопасности. Поможет ли размещение сервера sql на машине во второй DMZ в безопасности?

Мы также рассмотрели возможность использования коробки Ubuntu с Apache с mod_proxy в одной DMZ, которая будет «перенаправлять» запросы 80 или 443 на отдельную машину Windows во второй DMZ, которая будет выполнять веб-обслуживание и хостинг сервера sql.

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

Какие еще вещи мы должны искать в безопасности?

Спасибо

Ответы [ 2 ]

3 голосов
/ 02 марта 2010

Разрешение только 80 и 443 - очень хорошая идея. DMZ расшифровывается как Демилитаризованная Зона, это означает, что машина на NAT должна быть доступна для всего трафика, и этого следует избегать. Разрешение SQL Server и порт 445 сделает вас взломанным, после того, как вы запустите Windows, и это только вопрос времени, когда появится еще одна уязвимость RPC.

Самое важное, что вы должны сделать, это ПРОВЕРЬТЕ СВОЮ БЕЗОПАСНОСТЬ . Недостаточно сказать, что вы предотвращаете инъекцию xss и sql. Все защищенные системы должны быть доказаны, что они могут остановить атаки.

Как вы тестируете свою систему? Мне нравится Acunetix, но он переоценен, но есть бесплатный тестер xss . Для SQL-инъекций и других уязвимостей я рекомендую использовать Wapiti , который является бесплатным. Я рекомендую использовать OpenVAS , который является новой версией Nessus с открытым исходным кодом, которая теперь является коммерческим продуктом. OpenVAS сообщит вам, если ваш сервер настроен неправильно или вы используете старое программное обеспечение. Вам следует выполнить полное сканирование портов системы, чтобы протестировать брандмауэр, эта команда будет работать nmap -sT -p 1-65535 domain.com, это также можно сделать из OpenVas.

После тестирования вашей системы. Затем установите брандмауэр веб-приложений, mod_ secuirty - хороший выбор для Apache, вы можете использовать обратный прокси-сервер, чтобы mod_security работал с IIS. Aqtronix - это WAF с открытым исходным кодом, созданный для IIS, но я его не использовал.

0 голосов
/ 02 марта 2010

1- Критические данные должны быть зашифрованы в ваших таблицах.

2 - Берегитесь всех типов SQL-инъекций.

3 - зашифровать строку подключения в файле web.config

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