8

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

Итак, чтобы сделать мой вопрос немного более общим:

Как запретить программе на моем компьютере доступ к некоторым ресурсам на моем компьютере?

Или наоборот:

Как открыть доступ некоторых ресурсов только к выбранным программам?

Или, казалось бы, непрактичная просьба:

Как заставить программы запрашивать разрешение, когда они хотят получить доступ к определенным ресурсам?


Хотя Windows 7 делает правило запрашивать административные привилегии при внесении изменений в системные файлы. Однако доступ к (я имею в виду, просто просмотр) ресурсам открыт для всех программ.

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

Я использую Windows 7 сейчас, но решения для любой ОС приветствуются.

4 ответа4

7

Что ж, позвольте мне сначала ответить на одну часть вашего более широкого вопроса: как это сделать. Мой непосредственный опыт связан с Linux, но вы сказали, что ответы на любой платформе приветствуются, так что здесь. Если бы вы работали в Linux, вам, вероятно, потребовался бы доступ с правами root для доступа к файлам cookie любым способом, кроме (в принципе) их удаления. Общая процедура будет выглядеть так:

  1. Измените права доступа к файлу, чтобы другие пользователи не могли его прочитать. chmod 600 <file> должен работать как правильный режим для этого.
  2. Убедитесь, что ваш браузер не сработал случайно.
  3. Создайте новую учетную запись пользователя для вашего браузера. Давайте назовем это foxy ради аргумента.
  4. Измените владельца файла cookie браузера на foxy , а также на все остальное, что браузеру может потребоваться записать. (На самом деле все в пользовательском каталоге браузера в принципе может быть затронуто.)
  5. Проверьте, чтобы убедиться, что ваш браузер все еще знает, где хранятся его куки при запуске в качестве foxy . При необходимости предоставьте foxy домашний каталог исключительно для таких вещей.
  6. Используйте visudo чтобы дать себе разрешение, но только при запуске браузера, чтобы изменить пользователей на foxy . Строка в файле sudoers будет выглядеть примерно так: <your user name> ALL = (foxy) NOPASSWD: /usr/bin/firefox . Это гарантирует, что у вас есть только разрешение на запуск этой конкретной программы от имени пользователя foxy .
  7. Напишите сценарий оболочки, который запускает ваш браузер с указанным именем пользователя, чтобы вы могли восстановить файлы .desktop ссылок, которые вы используете для открытия браузера. Допустим, вы поместили его в /usr/local/bin/browse ; он может просто содержать (после строки хеш-взрыва) sudo -u foxy /usr/bin/firefox или около того.

То, что Linux действительно хорошо делает, - это дополнительные опции. Я не очень разбираюсь в Windows 7, но я был бы несколько удивлен, если бы он мог сделать то же самое - если бы у него была система с замещающим пользователем, которая могла бы ограничить пользователя, которого вы заменяете на основе имени исполняемого файла. (Обратите внимание, что если я просто предоставлю себе произвольное разрешение на замену на « foxy , это не остановит выделенного злоумышленника; они просто подставят произвольную команду для считывания куки-файлов как « foxy .

Теперь позвольте мне объяснить, почему, возможно, это неправильный вопрос. В Gmail есть отличные опции, которые заставляют вас отправлять файлы cookie только по протоколу TLS/SSL (защищенные соединения для просмотра). Большинство сервисов на основе входа не. Это означает, что ваши куки в принципе доступны для просмотра всей интернет-инфраструктурой. Удивительно, но эта инфраструктура оказалась довольно пассивной и, как правило, не будет атаковать вас, за исключением, возможно, цензуры, хотя в некоторых частях Интернета, таких как Tor, это правило полностью нарушается.

Тем не менее, это все еще проблема, когда, скажем, вы используете чужое соединение WiFi. Они могут "слышать" все, что вы отправляете, но не TLS, и вы не можете их остановить, скажем, без использования безопасной схемы прокси-сервера. (Как Tor! ... упс.) Я говорю не только о безопасности беспроводной связи (хотя, если они не используют надлежащее шифрование, ваши куки могут также быть в опасности от любого, у кого есть ноутбук в той же комнате, что и вы). Это само учреждение. Возможно, ваш клерк в отеле оказался технологически подкованным и хочет подслушивать интернет-трафик в отеле, в котором он работает; как ты его остановил?

Вы также можете решить эту проблему в Linux, но для этого потребуется выделение небольшого количества денег для того, чтобы купить так называемый туннельный сервер SSH . Это удаленный прокси-сервер, который вы контролируете и который (надеюсь) имеет более безопасное подключение к Интернету, чем ваши ежедневные беспроводные рейсы; вы подключаетесь к нему через зашифрованное соединение. Безопасность остальной части Интернета по-прежнему зависит, но ваше непосредственное окружение может быть небезопасным. Установив файл ~/.ssh/authorized_keys на этом сервере, вы можете заставить туннель работать без предоставления пароля, хотя вы можете (или должны) настроить скрипт оболочки, чтобы добавить его в Firefox по умолчанию, как до.

1

Один из способов сделать это ...

  1. Создайте новую учетную запись пользователя и установите пароль
  2. Войдите в эту учетную запись и установите Chrome или запустите Firefox, чтобы создать папку% Appdata%
  3. Зашифруйте эту папку% AppData% с помощью EFS (щелкните правой кнопкой мыши -> Свойства -> Дополнительно -> Зашифровать ...)
  4. Переключитесь на свою основную учетную запись. Удерживайте Shift и щелкните правой кнопкой мыши ярлык браузера и выберите "Запуск от имени другого пользователя".
  5. Введите новые учетные данные и нажмите ОК

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

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

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

Изменить: только что протестировал его на виртуальной машине с Firefox и Chrome ... Firefox работал, но Chrome падает. Это может быть связано с песочницей, которую он использует, но я не уверен, и, возможно, есть простое решение.

Edit2: Да, это песочница. Если вы добавите --no-sandbox к ярлыку, он будет работать:\ Если у вас есть песочница, вы можете установить принудительное включение Chrome в песочницу, зашифрованную пользователем браузера.

0

Автоматическое удаление временных файлов Интернета может помочь, если вы используете Internet Explorer.

Если вы хотите сохранить файлы cookie, просто зашифруйте диски, удалите административные скрытые папки и ограничьте доступ к папкам, которые вы хотите защитить. Используйте комбинацию Win+L, назначьте пароль, когда компьютер вернется с заставки. Это то, чем я занимаюсь.

0

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

Более простым решением для Windows является использование системы обнаружения вторжений на основе хоста (HIDS), которая теперь включена во многие антивирусные программы. Обычно они позволяют вам устанавливать правила для каждого приложения, к каким ресурсам оно может получить доступ. Просто поместите папку с файлами cookie в список защищенных файлов (или личных файлов, или как они называются в вашем программном обеспечении A/V) и разрешите IE только доступ к ним. Некоторые антивирусные продукты не имеют защиты от повторного доступа для чтения, и в этом случае вам, возможно, придется вернуться к созданию пользователя только для доступа к этому приложению (IE).

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .