DeFi. Безопасность. Кейлоггеры
Одна из самых жутких атак, а точнее - целый сонм таковых. Осуществляться они могут по разным векторам:
Кейлоггер - это что?
Для начала - визуализация атаки: https://youtu.be/j878CBcTeqU?feature=shared
Теперь - посмотрим в Wiki: “Кейлогер, кейлоггер, клавиатурный шпион (англ. keylogger, правильно читается «ки-логгер» — от англ. key — клавиша и logger — регистрирующее устройство) — программное обеспечение или аппаратное устройство, регистрирующее различные действия пользователя — нажатия клавиш на клавиатуре компьютера, движения и нажатия клавиш мыши и т. д.”.
Отсюда возникает понимание его признаков:
- Регистрация неких событий;
- Путём слежения за пользователем;
- Разными способам: визуальными, аудиальными и другими.
Кстати, если кто-то думает, что ему кейлоггеры не страшны, то вот вам ещё пример: “В инциденте с LastPass кейлоггер, установленный через уязвимость удаленного выполнения команд (RCE), позволил хакерам украсть учетные данные и расшифровать данные облачного хранилища”. А Lastpass - это не самое последнее ПО в этом мире. Так что - думайте сами, но я лично всегда себя ставлю на место профана в безопасности и предпочитаю учиться, учиться и ещё раз учиться, нежели думать, что уже всё знаю и умею. К тому же, купить кейлоггер-как-сервис или простое ПО стоит не дорого: от десятков баксов.
А ещё: “Кейлоггер Phoenix способен отключить более 80 защитных продуктов… (В частности), специалисты компании Cybereason изучили малварь Phoenix, появившуюся летом текущего года и представляющую собой гибрид кейлоггера и инфостилера. Вредонос распространяется по модели MaaS (malware-as-a-service, «малварь как услуга») и уже ответственен за 10 000 заражений”. Так что само по себе защитное ПО - не панацея.
И да, кейлоггер может быть где угодно:
- На сайте: любом;
- В браузерном расширении;
- В умных часах;
- На ПК в гостиницах;
- В украденном ПО (реже - в лицензионном и совсем уж экзотика - в open source);
- В видео-камерах разного типа;
- В левых аппаратных кошельках;
- В разъёме для флэшки;
- На самой флэшке;
- Где угодно ещё.
Чтобы вам стало понятнее словосочетание “Где угодно ещё” - пример: “Эксперты из Университета Огасты (США) опубликовали технический документ, в котором подробно описали созданную ими side-channel атаку. Хотя эффективность этого метода в среднем составляет 43% (что значительно ниже, чем у других похожих атак), в данном случае потенциальному злоумышленнику не требуется создавать контролируемые условия для записи аудио, и он не привязан к конкретной платформе в вопросе набора текста. Атака строится на использовании характерных звуков, издаваемых клавишами при нажатии, и паттернов набора текста, присущих каждому пользователю, которые фиксируются специализированным ПО для сбора датасетов.
То есть перед проведением атаки важно собрать несколько аудио-образцов набора текста, чтобы можно было соотнести конкретные нажатия клавиш со звуковыми колебаниями”. То есть сказать, что вы от этого застрахованы, если у вас есть 10, а то и 100 BTC, тем паче - больше, нельзя. И да, если нету - то тоже нельзя: дешёвые кейлоггеры - см. выше.
Этому можно противостоять? Да
Поскольку кейлоггер следит за вами, то вы можете сделать буквально следующее:
- Внедрить ханипоты и понять момент, когда началась слежка;
- Уничтожить его и тем самым - уничтожить слежку;
- Ввести случайные элементы для авторизации/верификации и подобных операций: например, с помощью Oauth 2.0 (рекомендую сразу же вот этот цикл от Xakep, который прочитал намедни);
- Использовать виртуальную клавиатуру и иные классические средства защиты от кейллогеров;
- И, конечно же, стандартные методы: антивирус для Win, например: не забывайте, что кейлоггер должен что=то и куда-то отправлять, поэтому даже анализ трафика в этом случае - хорошая идея, другое дело, насколько продвинутый кейлоггер вам попался: он ведь может “молчать”, пока не узнает нужных вводных и будет замаскирован: это как снайпер, который может сутками лежать в лесу и ничего не делать, а шанс распознать его будет лишь после первого выстрела (да и то, если не вы попали в обзорный вид его прицела). Вот здесь нашёл интересный пример, когда малварь оживая, гасит экран смартфона и пока пользователь мучается с включением - происходит кража. Хотя это не прямой пример, но зато вполне понятный.
Но давайте разберёмся по порядку…
Аппаратные кошельки - лучшее решение из простых
Собственно, Trezor, Ledger и другие имеют встроенную виртуальную клавиатуру, которая как раз делает опыт работы с кошельками куда более безопасной. Проблемы базовые здесь две, а вот пунктов по ним - множество:
- Пароль (пин-код) должен быть достаточно сложным и точно не в 4-5 символов, чтобы его нельзя было перебрать за разумное время;
- Помимо пароля хорошо бы использовать пасс-фразу;
- Самое ПО всё равно зависит от компаний, поэтому помимо обновлений - стоит ещё следить, а не вложили ли они вам своих шпионов, как это было с лАжером, а заодно - не взломан ли их ресурсы;
- Клавиатура не спасёт вас от внешнего наблюдателя, в том числе - такого же кейлоггера, но встроенного в камеру, например: хотя такой вектор атак - экзотика и применим разве что к китам индустрии.
Как быть тем, у кого нет аппаратных кошельков?
Даже не знаю…, но, очевидно, что:
- Не нарушать общие подходы к безопасности: обновлять ПО, не ходить по “левым” ссылкам и сайтам, использовать не Win, а Мак или Линух, использовать антивирусы и иное защитное ПО с проактивной защитой и базами сигнатур по кейлоггерам;
- Распределять активы по разным кошелькам: горячим, холодным и т.д.
- Если нужно использовать звук, то - отключать приём динамиками (что не всегда работает);
- Попробовать аппаратные средства защиты: хотя я такие, признаться, использовал один раз для тестов, да ещё и до эпохи криптовалют, поэтому советовать что-либо права не имею.
В любом случае - вам сложнее, а потому - постарайтесь быть осторожней. И помните цитату из одной важной ссылки выше: “также сложно разобрать, что пишут профессионалы, которые печатают очень быстро”. Можно ли этому научиться всем и каждому? Не уверен (точнее - уверен ровно в обратном), но это тоже способ.
У меня всё?
- Двухфакторная авторизация работает: ведь вы вводите код разовый, а потому, если его даже снял кейлоггер - то через несколько секунд он будет иным, а атаки за секунды - не миф, но большинства из нас они не касаются;
- Расширения в браузере - норма для многих DeFi-щиков, но “если есть расширения, установку которых вы не помните, отключите их, потому что они могут быть кейлоггерами”.
- Если у вас есть автозапуск с флешек и других носителей - отключите его: в целом - любые автоматические действия: будь то загрузка картинок в мессенджерах или что-то ещё.