Роль входа в SQL Server для удаленного управления базой данных - PullRequest
0 голосов
/ 24 сентября 2011

Мой сценарий - блог MVC (funnelweb), установленный на сервере с именем WEB. SQL Server 2005 работает на DB. Сайт FunnelWeb требует доступа к собственной базе данных. Я создал новую базу данных с помощью SQL Server Management Studio и назвал ее FunnelWeb. Я хочу использовать аутентификацию SQL, поэтому я решил создать учетную запись SQL FunnelWebAdmin. В сопоставлениях входа в систему я сопоставил базу данных FunnelWebAdmin с FunnelWeb и предоставил ему разрешение dbowner для базы данных. Я не предоставил логин никаких серверных ролей.

Аутентификация SQL включена для сервера.

Мой вопрос:

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

1 Ответ

0 голосов
/ 24 сентября 2011

Если я не пропустил что-то, установка этого пользователя в роли DBAdmin даст ему право на вход в систему. Это даст ему полные права и контроль над базой данных.

Убедитесь, что вы заблокировали это веб-приложение. Предоставление прав администратора для БД из веб-приложения в лучшем случае опасно. Это оставляет вас открытыми для SQL-инъекций, которые могут открыть двери для всех видов проблем. Хороший злоумышленник (или посредственный, имеющий доступ к Google) может использовать атаку SQL Injection и получить полный контроль над операционной системой, если сервер не заблокирован должным образом. http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf

Даже если они не могут получить контроль над ОС, вам все равно нужно беспокоиться о краже данных, вставке сценариев XSS или XSRF или любом количестве атак.

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

Я действительно понятия не имею, каков ваш уровень опыта, так что простите меня, если я скажу вам кое-что, что вы уже знаете. Ваш вопрос указывает на то, что вы больше в конце "новичка" спектр, но я могу ошибаться.

Однако, предположив, что я прав, я действительно предупреждаю вас, чтобы вы проводили много времени на этих сайтах, изучая все, что можете. Они недостаточно учат этому в школе или на ресурсах "Обучение программированию" (книги, веб, видео и т. Д.).

OWASP Top 10

Написание безопасного кода (Microsoft)

Даже если сам веб-сайт не доступен в Интернете (скажем, он работает в корпоративной интрасети и имеет доступ только вошедшие в систему пользователи), вам все равно следует проявлять осторожность. Статистика показывает, что недовольные коллеги, имеющие доступ, представляют такую ​​же угрозу, как и внешние злоумышленники. Просто что-то иметь в виду.

...