А теперь плохие новости
А теперь плохие новости
Существует большая загвоздка, так что не будьте так легко внушаемы ложным чувством безопасности. Несуществующие объекты не являются защищенными. Любой пользователь, имеющий доступ к базе данных, может создать любой допустимый объект базы данных - включая объявления внешних функций и таблиц, связанных с внешними таблицами - которые потенциально могут быть использованы в комбинации с установкой и выполнением хакерского кода на сервере.
С возможностью при инсталляции Firebird 1.5 ограничивать местоположение внешних объектов, к которым может обращаться сервер, ситуация несколько улучшается. При этом риски не устраняются полностью- вы должны выполнить конкретные шаги по реализации этой возможности и созданию ограничений файловой системы операционной системы. Доступ по умолчанию к внешним файлам в инсталляторе установлен в NONE, и каталоги внешних функций ограничены деревом UDF. Ваша задача - позаботиться о системных ограничениях.
Системные таблицы, где Firebird хранит все метаданные, включая сами привилегии SQL, вовсе не защищены привилегиями SQL.
Совет, как наказать идиотов-пользователей и плохих парней
Мой уважаемый коллега Павел Цизар (Pavel Cisar) предложил прием устранения недостатка привилегий SQL по защите метаданных Firebird, когда идиоты- пользователи, минуя DDL, пытаются изменять метаданные в системных таблицах, внося в них беспорядок. Это также отражает злонамеренные попытки разрушить ваши метаданные с помощью скрипта. Вот данное решение.
Хотя кажется, что PUBLIC (т. е. все) имеют доступ ALL К системным таблицам, тем не менее существует таинственный черный ход в управлении правами SQL, который может легко исправить ситуацию. Вы можете ограничить доступ к системным таблицам, так же, как и к любым другим таблицам базы данных, предоставив, а затем отменив полномочия. При этом права предоставляются только для того, чтобы быть отмененными.
Все, что нужно сделать, - это просто установить управление доступом к системным таблицам путем выполнения серии операторов GRANT ALL <системная таблица> то PUBLIC. После этого мы можем отменить любые права.
Я не знаю точного технического объяснения, каким именно образом это работает, но это мой совет. Оператор GRANT создает управляющий список доступа (Access Control List, ACL) для системной таблицы, который проверяется в коде. Какая-то ветвь в этом коде означает "предоставить всем все привилегии, если элемент ACL не найден для системной таблицы, иначе использовать ACL".
Следует помнить некоторые вещи.
• Эта установка не сохраняется после восстановления базы данных из резервной копии, следовательно, напишите скрипт, который вы будете использовать каждый раз для только что восстановленной базы данных.
• Вам нужно быть внимательным по поводу удаления прав SELECT у PUBLIC К некоторым системным таблицам, потому что функции API isc_biob_iookup_desc() и isc_array_iookup_bounds() зависят от этой возможности. От этого также могут зависеть некоторые инструментальные средства и библиотеки.
• Удаление прав записи в системные таблицы не ограничивает возможность их изменения обычным нормальным способом с использованием команд DDL. Предотвращается только бесполезная прямая корректировка системных таблиц.
Привилегия дает возможность пользователю иметь некий вид доступа к объекту в базе данных. Она предоставляется с помощью оператора GRANT и убирается с использованием оператора REVOKE.
Синтаксис разрешения доступа:
GRANT <привилегия> ON <объект>
ТО <пользователь>;
привилегия, предоставленная пользователю к объекту, создает разрешение. Синтаксис для удаления разрешений:
REVOKE <привилегия> ON <объект>
FROM <пользователь>;
Доступны некоторые варианты "центрального" синтаксиса. Мы рассмотрим их несколько позже.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
10.8.3.1. Плохие родители: полное игнорирование потомков
10.8.3.1. Плохие родители: полное игнорирование потомков Простейшим действием, которое вы можете сделать, является изменение действия для SIGCHLD на SIG_IGN. В этом случае завершившиеся потомки не становятся зомби. Вместо этого статус их завершения отбрасывается, и они полностью
А теперь добавим к звуку изображение
А теперь добавим к звуку изображение На Всемирной выставке 1939 г., проходившей в районе Нью-Йорка Квинс, Дэвид Сарнофф раскрыл свой план сделать RCA лидером американского телевидения. Для выставки компания воздвигла павильон площадью почти 850 квадратных метров,
Кандинский и Воннегут теперь друзья
Кандинский и Воннегут теперь друзья Зная, как легко в Сети формируются группы, просто ошибиться, приняв количество за качество. “Фейсбук” уже способствует процессам, которые не требуют социальных скреп. Истина в том, что людям свойственно собираться в группы. Социальным
Плохие хакеры
Плохие хакеры Плохие («черные») хакеры – это тоже профессиональные компьютерщики, знающие свое дело не хуже «белых», однако использующие знания в преступных целях. «Черные» хакеры взламывают программы и компьютерные системы с целью похищения информации.Но тут следует
§ 86. Плохие дизайнеры и плохие заказчики
§ 86. Плохие дизайнеры и плохие заказчики 24 марта 2002Низкий уровень культуры современных дизайнеров (непростительный с точки зрения заказчика), а также низкий культурный уровень заказчиков (простительный с точки зрения дизайнера) способствуют появлению на свет
Теперь собственно сборка
Теперь собственно сборка Если конфигурация завершилась удачно, вам будет предложено запустить программу make, она читает получившиеся мэйкфайлы и исполняет инструкции в них. В MinGW32 ее функцию выполняет mingw32-make.exe, выполните эту программу.Процесс компиляции и сборки
1.3.3.4. А теперь — все вместе
1.3.3.4. А теперь — все вместе Комбинация описанных достаточно простых вещей позволяет построить окно с дыркой, имеющей изменяемые размеры.Для начала объявим несколько констант, которые нам потребуются при вычислении размеров дырки и т. п. (листинг 1.51).Листинг 1.51. Константы
На полпути: что теперь?
На полпути: что теперь? После блуждания в поисках достижения поставленной цели читатель наконец обнаружит себя в конечной точке, к которой он все это время предпринимал попытки проложить туннель. И что, считать теперь спорный вопрос решенным? Другими словами, уместно
Ненадёжные инстинкты, или Почему среди людей встречаются плохие матери Дмитрий Шабанов
Ненадёжные инстинкты, или Почему среди людей встречаются плохие матери Дмитрий Шабанов Опубликовано 16 апреля 2013 Инстинкты по своей природе не являются чем-то смутным и неопределённым, а представляют собой специфически организованные
Глава 6 Эволюция мозга: где мы теперь?
Глава 6 Эволюция мозга: где мы теперь? Человек по-прежнему самый удивительный из всех компьютеров. Джон Ф. Кеннеди Достичь равновесия между эффективным использованием высоких технологий и живым общением — это способ ликвидировать пропасть между «цифровыми
8. Компьютерные игры и плохие оценки
8. Компьютерные игры и плохие оценки Игровая приставка (или карманная игровая консоль) — один из самых распространенных подарков для детей. Речь идет о рынке с миллиардным оборотом, где всемирно известные фирмы, такие как Sony, Nintendo или Microsoft, буквально сражаются за
Плохие отметки в подарок
Плохие отметки в подарок Чтобы разобраться, являются ли компьютерные игры причиной школьных неудач учащихся мужского пола или это отсутствие успехов в учебе заставляет школьников уходить с головой в игры, необходимы так называемые лонгитюдные исследования[21]. Несмотря