yourich911
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Из экспериментов можно сделать следующие выводы (без гарантий, что так будет во всех случаях): При запуске KeePass'а и открытии базы раскрываются заголовки всех записей, их логины, ссылки, заметки, а также дополнительные строковые поля, для которых не включена опция защиты в памяти. Пароли и защищенные строковые поля остаются скрытыми. (!) Если для какой-либо записи выполнить автонабор, копирование или перетаскивание пароля или какого-либо защищенного строкового поля, то вместе с ними могут раскрыться другие защищенные строковые поля этой записи. Если выполнить глобальный автонабор (вызвать список подходящих записей и выбрать нужную), то раскроются только данные выбранной записи. В прочих записях, предложенных KeePass'ом для глобального автонабора, пароли и защищенные строковые поля останутся скрытыми (если их отображение не включено в окне выбора). (!) Если открыть какую-либо запись для редактирования, то в памяти KeePass'а появятся ее защищенные строковые поля. (!) Если выполнить быстрый поиск через панель инструментов, то раскроются защищенные строковые поля всех записей. При этом пароли останутся скрытыми (если быстрый поиск по паролям не включен в настройке интерфейса программы). (!) Если при вводе мастер-пароля были отключены скрывающие его звездочки, то он раскрывается в памяти. (!) Если мастер-пароль был передан не клавиатурным вводом, а через командную строку (даже в зашифрованном виде) или через StdIn, то он раскрывается в памяти. (!) После экспорта базы в формат KeePass KDB (1.x) все данные, включая мастер-пароль, раскрываются в памяти. (!) Данные, раскрытые единожды, остаются в памяти KeePass'а даже после закрытия базы. Кроме того, даже «нераскрытые» данные нельзя считать полностью защищенными, если в памяти содержится ключ для их расшифровки. А если использовать плагины, которые передают данные в браузер (WebAutoType к ним не относится), то «поверхность атаки» увеличится: пароли осядут еще и в памяти браузера, причем не только использовавшиеся. Особая неприятность — вредоносные программы могут читать чужую память, даже если запускать их в песочнице Comodo или Sandboxie. Пароли в памяти KeePass Все эти проблемы можно счесть несерьезными, положив, что менеджеры паролей не обязаны гарантировать безопасность на зараженной машине. Однако важно избежать ложного чувства защищенности, например, запуская вредоносные программы в песочницах или предоставляя компьютер посторонним, когда на нем работает KeePass, пусть и с заблокированной базой. Также утечкой грозит отправка дампов памяти разработчикам различного ПО с целью отладки. Для защиты можно предпринять какие-либо из этих мер: включить опцию Всегда выходить вместо блокирования программы — тогда при блокировке базы будет выгружаться и сам KeePass (но станет невозможной быстрая разблокировка); отключить опцию Безопасность → Помнить зашифрованный мастер-пароль базы, пока она открыта (но станут невозможны некоторые специфические операции, вроде экспорта в формат KDB); запускать KeePass от администратора — тогда система запретит как изменение, так и чтение его памяти обычным ограниченным программам; задействовать DACL-защиту — тогда система защитит процесс KeePass'а, даже если не давать ему права администратора. |