Comments 60
Если считать, что рабочая станция, на которой установлен KeePass, скомпрометирована, то простые защитные действия не помогут, т.к. кейлоггер — только одно направление атаки.
Гораздо проще подменить исполняемый файл (благо, программа опенсорсная), добавив закладку, которая сливает мастер-пароль + базы в нужное место.
Для защиты от такого рода атаки можно написать утилиту, которая контролирует:
- иконку запуска KeePass (положение в панели или рабочем столе и ссылку на файл);
- контрольную сумму файла KeePass;
- саму себя от изменений.
Возможно, такая утилита или функция в антивирусе уже есть, нужно исследовать.
И все равно, если компьютер скомпрометирован, то атакующий может заменить как сам keepass чтоы пароли сливать, так и эту проверяющую утилиту чтобы она ничего не замечала.
Однако, хорошую защиту ломать потребуется дольше.
Потребуется ещё узнать, что такая утилита есть и найти способ обхода её самоконтроля.
Да, если защита хитра, это займет больше времени или помешает злоумышленнику. Но только если он пользуется чем-то универсальным, скажем, обычным логгером. Если он нацелен именно на пароли, хранимые этой утилитой, то и софт его будет заточен под ее хитрости.
http://keepass.info/plugins.html → раздел «Integration & Transfer».
А не выглядел ли бы более логично плагин, который реализует в браузере весть функционал KeePass, по типу того, как LastPass работает? Какие там потенциальные дыры по сравнению с существующим подходом?
Если придерживаться вашей логики — можно сидеть без антивируса, FW и под Enterprise админом. Все равно ведь, если скомпрометирована — то поздно пить боржоми.
Вариант 1: Ты не заморачиваешься по дальнейшей защите. Допустим удалённо отключили АВ, psexec«ом подсунули keylogger как у автора в статье — все пароли шустро перегнали себе.
Вариант 2: Ты заморочился. Шустро перегнать не удалось. По логам АВ и системы удалось понять, что ты скомпрометирован — выдернул шнурок, почистил ПК (если грубо выражаться).
Так вот в варианте 1 злоумышленник уже имеет все пароли от всех твоих систем, даже если ты его обнаружил и отрубил.
В варианте 2 он может не успеть.
Понятно, что это всё очень абстрактно. Но это так работает — чем больше ты заморачиваешься по ИБ, тем больше ты уменьшаешь вероятности разных событий.
Не зря всё начинает строиться с модели угроз и анализа рисков. Что по сути есть оценка вероятностей того или иного события ИБ, и уменьшение этих вероятностей.
Допустим удалённо отключили АВ, psexec«ом подсунули keylogger как у автора в статье — все пароли шустро перегнали себе.
В реальности будет keylogger настроенный именно на KeyPass со всеми хитростями. И пароли шустро перегонят к себе. Почему вы расчитываете на использование взломщиком исключительно примитивных инструментов широкого профиля?
Вы предлагаете нарушителя, который уже провел разведку всех данных, до начала взлома.
Давайте уже тогда полные модели ситуации строить.
Я отталкивался от кейса, когда именно предложенное в статье автором может пригодиться.
Жду исследование безопасности lastpass, а также его сравнение с keypass. Благодарю.
Проприентарная программа, которая держит ваши пароли в своём облаке.
И её сервера уже взламывали, утащив пользовательские данные.
Просто из базы скопировать пароли нельзя, так как они все зашифрованы паролями пользователей, а возможно и чем-то ещё.
Но если в keypass есть возможность добавления новых записей прямо в браузере и запуск автозаполнения прямо на странице (Без выбора записи в программе), как в Lastpass, перейду на неё.
Благодарю за ответ.
Но если в keypass есть возможность добавления новых записей прямо в браузере и запуск автозаполнения прямо на странице (Без выбора записи в программе)
Это есть в плагинах. Для фаерфокса, например, это KeeFox.
Код кейлоггера помещен в цикл Timer, который обновляется каждые 10 ms
Что с загрузкой процессора в этот момент?
Не сработает ли «проактивная» защита антивируса в данный момент?
- Процессор (по данным диспетчера задач) во время работы кейлоггера на моём старом ПК загружен на 0%.
- Программа не делает «вредных» действий и, возможно, поэтому антивирусы на нее пока не реагируют. См. подробнее отчет VirusTotal. Антивирус на моем ПК тоже молчал.
Я работаю в действительно большой компании, конечно, у нас настроены все политики безопасности, но даже у нас айтишники не додумались до KeePass.
Кстати, погуглите — тут же на хабре/гиктаймс была статья, что корпоративные требования к сложности паролей приводят к обратному эффекту — сотрудники, не в силах запомнить неудобный пароль (который ещё и меняется по требованию раз в N месяцев), записывают его на бумажке, которую кладут под клавиатуру или клеят на монитор. Т.е., безопасность небезопасна.
Аргумент у них такой (он озвучен выше в комментариях): если система скомпрометирована, то ничего не поможет.
Люди с рациональным мышлением должны это понимать.
P.S. В таком раскладе пароль на бумажке под клавиатурой — секьюрнее. Тут хотя бы физический доступ нужен, и знание что этот пароль именно под клавиатурой, и для чего он.
По умолчанию считаю что хороший пароль менять смысла нет ровно до тех пор, пока он не скомпрометирован. В случаях если есть опасность подбора пароля перебором это необходимо исключать и минимизировать другими методами, а не пытаться бороться частой сменой пароля (например ограничивать число попыток ввода или увеличить длину).
Кроме того «хороший пароль» всё ещё прекрасно светится в mimikatz и WCЕ.
И есть шанс, что компрометация УЗ совпадёт с окончанием срока действия пароля — и злоумышленник временно потеряет полученный доступ, что может дать время на другие необходимые блокировки.
несколько иной вопрос, далёкий от IT-составляющей. Автор пишет, что фирма у него небольшая. Зачем в небольшой фирме такие ухищрения с безопасностью?
Это не ухищрения с безопасностью, это основы гигиены. Какая альтернатива-то? Запоминать десятки паролей? Надо быть или гением или пароли одинаковые. Записывать на бумажке/ноутпэде? Ну, так даже если не рассматривать вопртс безопасности, в кипассе это банально удобнее (при всей, кхм, "альтернативности" его интерфейса).
требования к сложности паролей приводят к обратному эффекту — сотрудники, не в силах запомнить неудобный пароль (который ещё и меняется по требованию раз в N месяцев), записывают его на бумажке, которую кладут под клавиатуру или клеят на монитор
И тут, внезапно(!), вы открываете для себя какой-нибудь из менеджеров паролей. Который как раз и решает проблемы бумажек. ;)
Какая альтернатива-то? Запоминать десятки паролей? Надо быть или гением или пароли одинаковые.
Можно формировать пароли по какому-то алгоритму, но разные, по контексту. взламываться они будут так же как и совершенно различные.
Если алгоритм простой (а сложный вы в уме вряд ли будете считать), то при компроментации одного вашего пароля, вы ставите под угрозу остальные. В этом случае разница с одинаковым паролем на все ресурсы не очень велика.
Во-первых, если хост скомпроментирован — там можно все что угодно сделать, даже Джигу сплясать.
Во-вторых, использовать автозаполнение напрямую — это плохо само по себе. Если очень хочется — нужно использовать мост, например в виде плагина для браузера.
В-третьих, если уж режим паранойи — используйте софтверную клавиатуру, и усиленные настройки KeePass и не использовать «послабления», добавляющие удобств, но снижающие безопасность.
Ну и самое главное — все это очень слабо связано с уязвимостью самого KeePass — если Вы сами используете «облегчающие средства», понижаете свою безопасность — пенять нужно только на себя.
линукс или макос + шифрование диска + дополнительное шифрование хом директории
хотел бы я посмотреть как кто-то без моего ведома установит кейлогер на такой компьютер
благо — средства разработки нынче не привязаны к форточкам (за исключением некоторых, но на них свет клином не сошелся)
Читал статью, думал о том как напишу коммент о том какая она плохая, но тут и так уже полно таких комментов.
Но всё же добавлю — программы для шифрованного хранения паролей защищают ровно в двух случаях:
1) у вас слили содержимое жёсткого диска (не важно как), но не смогли узнать мастер-пароль от базы паролей (с момента компрометации вы ни разу не работали за компом), вы об этом узнали и немедлено переставили систему на атакованном компе и на всякий случай сменили всё что было в базе
2) вас пытается атаковать нуб, который сам плохо понимает что он делает — тогда любое, даже незначительное, препятствие, может ему помешать добиться желаемого
Во всех остальных случаях это 100% тоже самое что хранить пароли в текстовом файле на рабочем столе.
Были протестированы:
- модуль KeePassHttp совместно с дополнением для браузера ChromeIPass;
- создание нового мастер пароля;
- виртуальная экранная клавиатура.
https://keepassxc.org/
Для устранения проблемы необходимо включить настройку Безопасности «Вводить основной пароль в защищенном режиме (подобно UAC в Windows Vista и выше)».
Только в окне ввода пароля не видно раскладки клавиатуры, к сожалению.
Простейший кейлоггер и безопасность в KeePass