Вопрос Как защитить пароли и куки браузера от утечки

tau334

Новый пользователь
Сообщения
10
Реакции
0
Собственно, сабж. Есть, конечно, шифровалка паролей от файрфокса, но шифрует она только пароли, но не куки. Проверил лично, создал виртуалбокс с линуксом, поместил в него куки с сессией gmail - сессия открылась. А значит, любая программа, запущенная от того же пользователя, от которого запущен браузер, может залезть в папку браузера, и переслать злоумышленнику куки и пароли. Возможно, тот же gmail, увидит, что заходят с подозрительного ip, и заблокирует попытку входа. Но не хотелось бы на это полагаться. Хочется ограничить права доступа других программ к браузеру. Мне могут сказать, что устанавливай программы только из проверенных источников. Но мне, как обычному пользователю компьютера, не всегда получается следовать этому правилу. Хочется разными программками пользоваться, порой не вызывающими доверия. И вообще, доверять нельзя никому. Даже известной, популярной программе, с наличием подтвержденного сертификата, ничего не мешает украсть мои данные. Есть еще вариант пользоваться разнообразными песочницами, но все программы в песочницу не засунешь. А мне нужно, грубо говоря, все программы запускать в песочнице, кроме браузера. Ладно, посмотрим, какие есть стандартные средства windows для ограничения прав. Можно подумать в сторону того, чтобы назначить права чтения папке браузера только администратору, и запускать браузер от админа. Но это не выход, эксплоит, который взломает браузер, получит права админа. Ок, попробуем создать еще одного обычного пользователя windows (назовем пользователя X), чтобы от его имени запускать браузер. Программы не могут читать домашний каталог другого пользователя X. Вроде все хорошо, но есть значительное неудобство - каждый раз при запуске браузера от X нужно вводить пароль этого пользователя. Думается мне, что сохранять пароль пользователя X в учетных данных windows не выход, потому что, по идее, программа, запущенная от основного пользователя, может запустить свою копию от пользователя X, используя пароль, сохраненный в учетных данных windows. Тут у меня возникает вопрос, почему бы не сделать аутентификацию запуска от пользователя X не через ввод пароля, а через подтверждение UAC? Ну чтоб такой запускаешь браузер от пользователя X, выскакивает окно подтверждение, аналогичное тому, которое выскакивает, когда какая либо программа запрашивает права администратора. Только выдаются не права администратора, а пользователя X. Может, такая возможность существует, а я о ней не знаю? Думаю, свою проблему понятно описал. Также, хочется узнать, как с этой проблемой обстоят дела в linux системах. Если создал тему не в подходящем разделе, прошу направить в нужный (а может быть, на другой форум, или место в интернете, где смогут помочь).
 
Да, это выход. Мне сейчас только на него и приходится полагаться. Допустим, от кражи паролей он защищает. А как же защищать историю и закладки браузера? Про них я, конечно, не упоминал, но все же. И кстати, когда я перенес куки от сессии gmail в другую ос на виртуалке, то сессия открылась сразу, не спрашивая меня код от MFA.
 
С этим сложнее, антивирусное решение поможет, но не в 100% случаев. Тут скорее всего нужно смотреть в сторону BitLocker, Encrypting File System (EFS), и других возможностях шифрования важных данных
 
С этим сложнее, антивирусное решение поможет, но не в 100% случаев. Тут скорее всего нужно смотреть в сторону BitLocker, Encrypting File System (EFS), и других возможностях шифрования важных данных
Это все вспомогательные методы, основная задача - разграничить права доступа на уровне ос, и чтобы было удобно в использовании. Погуглил, полазил в интернете, насколько я смог понять, для винды таких решений нет. Единственный рабочий метод - логиниться под другим пользователем, и запускать из под него браузер (даже контекстным меню "запустить от пользователя x" пользоваться опасно, пароль вводится не на защищенном рабочем столе, а значит, элементарно считывается кейлоггером). Мда, чем больше разбираюсь в ИБ, тем больше понимаю, что никакой безопасности нет для простых пользователей. По поводу шифрования, известные мне методы не защищают. Битлокер же вроде шифрует весь диск, и защищает данные при выключенном компьютере, но не при запущенной системе. Если засунуть данные в контейнер truecrypt, то для работы с данными контейнер все равно надо монтировать, а значит, все другие программы получают доступ к содержимому контейнера. Вот если б было такое решение, по принципу работы менеджеров паролей: вводишь пароль, и содержимое базы расшифровывается в озу, но я о таких решениях не знаю.

Пользуйтесь портабл-браузером с флешки, не будет проблем
Опять же, на время работы содержимое папки браузера доступно другим программам. Другие программы никогда, ни на какой промежуток времени не должны иметь права доступа к защищаемым данным.
 
Последнее редактирование:
Так запретите программам доступ к флешке.
Программы просто не найдут папки браузера, их нет на компьютере, а на флешке искать они не будут. Даже ярлыки URL при попытке их открыть будут спрашивать чем их открыть, браузер на флешке система не видит.
 
Последнее редактирование:
Позволю себе спросить, как именно запретить? Ограничить права через групповые политики? Это должно запретить доступ для всех программ, включая, разумеется, браузер на флешке.

Нашел статью, подтверждающую мои опасения Защита личных данных пользователя в браузерах – Official Russian – Medium . Может, будет полезно другим.
 
Последнее редактирование модератором:
Извиняюсь, не так выразилась. И всё же попробуйте, проверьте портабл-браузер. Вы увидите, что программы на компьютере его не увидят в упор.
 
Извиняюсь, не так выразилась. И всё же попробуйте, проверьте портабл-браузер. Вы увидите, что программы на компьютере его не увидят в упор.
Не знаю, что вы имеете ввиду, разберем по порядку. Итак, мы подключаем флешку, открываем ее в проводнике. Если мы можем открыть флешку в проводнике (а проводник - это такая же программа, как и другие), значит, и другие программы видят эту флешку. Это легко проверить, запускаем, например, блокнот, пишем что нибудь в него и пробуем сохранить файл на флешку. Убеждаемся, что блокнот тоже видит флешку. И так любая другая программа, запущенная из под текущего пользователя, видит флешку, и вирусы, которые могут самостоятельно передать файлы в флешке по сети создателю вируса.
 
Я НИЧЕГО не писала про флешку.
попробуйте, проверьте портабл-браузер. Вы увидите, что программы на компьютере его не увидят в упор.
 
Последнее редактирование модератором:
Я НИЧЕГО не писала про флешку.
Пользуйтесь портабл-браузером с флешки, не будет проблем

Впрочем, не имеет значения, флешка это, или что то еще. Программы, запускаемые от одного пользователя, всегда имеют одинаковый набор прав доступа, если портабл браузер запускается и видит свою папку, значит, любая другая программа, запущенная от того же пользователя, от которого запущен портабл браузер, видит эту папку.
 
Последнее редактирование модератором:
Я смотрю вам наплевать на вашу же тему, вы тут просто троллите. Удачи вам в вашем нелёгком труде.
Если вы не понимаете разницы в доступе к флешке и в доступе к файлам программы на ней, то мне с вами не о чем говорить.
 
Вредоносному ПО все равно, где находятся файлы браузера и является ли он портативным. Там ведь тоже не дураки сидят и знают, куда пишутся куки в портативной сборке, если они им вообще нужны, а так делают инжект в сам процесс и читают данные из браузера напрямую. А найти среди процессов целевой или отследить запускаемые процессы это вообще не проблема. Сложнее при запуске под другим пользователем, но только пока вредонос не получил повышенные привилегии, а с дырками винды это делается просто.

(даже контекстным меню "запустить от пользователя x" пользоваться опасно, пароль вводится не на защищенном рабочем столе
Если уровень UAC выставить на максимальный, то будет на защищённом.

Ваш вариант - работать, например, под VMWare или на изолированном ПК посредством удалённого подключения. Безопасность всегда была противоположностью удобства.

Ну а для погружения можете изучить эти проекты:
PaulSec/awesome-windows-domain-hardening
securitywithoutborders/hardentools
 
Вредоносному ПО все равно, где находятся файлы браузера и является ли он портативным. Там ведь тоже не дураки сидят и знают, куда пишутся куки в портативной сборке, если они им вообще нужны, а так делают инжект в сам процесс и читают данные из браузера напрямую. А найти среди процессов целевой или отследить запускаемые процессы это вообще не проблема. Сложнее при запуске под другим пользователем, но только пока вредонос не получил повышенные привилегии, а с дырками винды это делается просто.


Если уровень UAC выставить на максимальный, то будет на защищённом.

Ваш вариант - работать, например, под VMWare или на изолированном ПК посредством удалённого подключения. Безопасность всегда была противоположностью удобства.

Ну а для погружения можете изучить эти проекты:
PaulSec/awesome-windows-domain-hardening
securitywithoutborders/hardentools
Можно ли сделать инжект в процесс, не имея прав администратора? Мне кажется, даже инжектиться необязательно, права на чтение профиля браузера все равно ведь есть.
Сейчас проверил - даже если выставить максимальный uac, в windows 10 запуск программы от другого юзера не происходит на безопасном рабочем столе.
Поясните пожалуйста про работу на изолированном пк посредством удаленного подключения? Т.е. браузер находится на хосте, и хост подключается по rdp к другому на компу, на котором все остальные недоверенные програмы, или как?
 
Сейчас проверил - даже если выставить максимальный uac, в windows 10 запуск программы от другого юзера не происходит на безопасном рабочем столе.
Значит, подзабыл.

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

Можно ли сделать инжект в процесс, не имея прав администратора?
админ => админ/юзер. Юзер => Юзер. Но все браузеры по умолчанию запускаются с ограниченными правами.
 
Вы ничего не путаете? А как же менеджеры паролей? Они ведь запускаются от обычного пользователя. И если можно прочитать их память, не имея прав админа, зачем они тогда нужны, менеджеры? Кажется, все таки процесс, запущенный от обычного юзера, не может читать память других процессов. Даже вот проги, которые взламывают игры, artmoney, cheatengine, все они требуют прав админа для работы.
 
Вы ничего не путаете?
Нет, ничего не путаю.

А как же менеджеры паролей? Они ведь запускаются от обычного пользователя. И если можно прочитать их память, не имея прав админа, зачем они тогда нужны, менеджеры?
У менеджеров паролей эти самые пароли хорошо зашифрованы.
Кроме того нормальные менеджеры ещё и имеют всякие защиты от внедрения, например, те что идут в комплекте с антивирусами.
У браузеров тоже есть зачатки этого, но до сих пор в контексте процессов браузеров находят способы выполнить произвольный код.
Кажется, все таки процесс, запущенный от обычного юзера, не может читать память других процессов.
Память процессов запущенных тем же юзером с теми же или более низкими правами, может.
Аналогично с выполнением кода в пространстве чужих процессов.
Да и какая разница с какими правами, если их можно получить через дыру системы.
 
Да, и вправду, убедился (с помощью keefarce) в том, что процесс юзера может читать память других процессов, запущенных от этого же юзера, с помощью dll инъекции. Спасибо, не знал об этом.

У менеджеров паролей эти самые пароли хорошо зашифрованы.

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