Pull to refresh

Comments 63

Как говорится, "был бы у меня такой кот...", я бы носил на ключах BT-свисток, а не велосипедил ESP. Почему-то не знал, что в таких программах есть поле, куда можно скопировать и отправить текст.

Телефон может прикидывается блютуз клавиатурой...

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

С рут правами можно и юсб клаву/мыш/флешку эмулировать

Эта идея лучше, но рутованный телефон требует изрядных приседаний, чтобы сохранить работоспособность всех приложений...

Это не очень жизнеспособно. Донгл требует прав админа на установку, может быть запрещен к подключению

Как и левая "клавиатура".

Если прикинуть, то: если система вам не подконтрольная и не доверенная, то вводить там пароли любым способом небезопасно, так как их очень легко перехватить, как с родной клавы руками, так и с любой эмулируемой. Если же наоборот - то проще просто установить менеджер паролей и не городить весь этот колхоз. Альтернатива по сути только 2-х факторная авторизация...

Этот же сетап не решает никаких вопросов по факту.

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

Если пароль на специфических сайт который не жалко потерять, то его можно и несложным сделать для набивания на клавиатуре и это будет быстрее чем выполнить весь этот ритуал, ну имхо конечно.

Его всё равно нужно где-то хранить, значит вбивать например с экрана телефона, потому что если он нужен раз в год он просто вылетит из головы, проходили уже. Да и как правило заранее не знаешь где и когда может понадобиться тот или иной пароль, не хочется специально делить пароли на простые и безопасные, плюс на сайтах обычно есть свои требования к паролям, минимальная длина символы итд

Это прям мои мысли. У меня пароли в телефоне в KeePass. И я перепечатывал их оттуда.

Найти бы тоже самое, но с хранением паролей внутри esp, как, к примеру мультипасс делает. Прям хоть пили... Ещеб ТОТР туда же...

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

Помотри ссылку на озон может подойдет?

А там есть какая-то аппаратная секьюрность уровня телефона?

Описание неплохое, но нет, пароли по подписке это через край. И подтверждение входа с смартфона тоже. Что то stand alone хотелось.

Standalone, это значит ее надо носить с собой, подключать/отключать каждый раз, мы же про пароли, а это же вроде как безопасность. Но если про безопасность не беспокоиться, то можно и standalone делать, но зачем если тогда и пароля 123 достаточно.

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

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

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

У каждого свои требования к безопасности, если для пароля нужен пин, то все сводится к получению пин, который даже по названию обычно цифровой, пином безопасность уже снижается, всегда будет какой-то компромисс, каждый выбирает себе тот который его устраивает.

Ваш сценарий тоже можно реализовать.

В предложенном варианте пароль и ключ разделены, удобство пользования телефона сложно переоценить, физическое устройство сложно удаленно сломать, из пк это устройство не сломать через HID.

Конечно у каждого свой. Мне нужен не хуже, чем у записанного на бумагу пароля...

Пин позволяет получить пароль если у вас есть физический доступ к токену. Если нет, то пин вам не поможет. Посмотрите как мультипасс сделан, там всё довольно нормально. База паролей зашифрована смарт картой, сама смарт картаа позволяет до окирпичивания ввести три неверных пароля, сами пароли будучи расшифрованными набираются только после нажатия на устройстве физической клавиши, т.е. вы видите на мониторе устройства пароль к какому ресурсу сейчас будете набирать.

В предложенном вами варианте сломают ваш телефон и сольют все ваши пароли.

Где они возьмут ключ для расшифровывания пароля? Он только в устройстве. И нет функции для его извлечения, при каждой смене пароля ключ генерируется заново.

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

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

Т.е. вариант, когда надо нажать кпопку, потом в течении 2-5секунд, отправить шифрованный пароль и только в таком сочетании вводить данные в пк, вы считаете улучшенным?

Я не очень понял что вы имеете ввиду.

Хорошее устройство показывает на экране что оно собирается вводить (пароль от какого логина) и вводит его после того, как вы на этом устройстве нажимаете кнопку подтверждения. Какие-то дополнительные таймауты обычно отсутствуют. При этом это устройство - это не сотовый телефон. Оно не имеет сетевого доступа и к нему никакого доступа без подтверждения той же кнопкой на нём нету.

В нормальном случае оно их само генерит и набирает...

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

Есть ссылка на мультипасс?

Гугл mooltipass. В первых версиях была проблема с колесом, в следующих с аккумулятором.

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

я тебе больше скажу. куча готовых библиотек от "маститых" контор типа адафрут с кучей багов. всё приходится перепроверять и, порой, переписывать

Минус такого подхода в том, что в результате не остается глубокого понимания работы компонентов. :(

Абсолютно согласен. Но если эти знания нужны условно раз в жизни, - круто, что через три часа можно получить работающее устройство, а не изучать java ради одного приложения.

Всё-таки макет работающего устройства.

С потенциально суровыми и непредсказуемыми багами, и не всегда работающий как надо. Для прототипирования пойдет. Для паролей.... вы очень смелый человек :).

Делал такое на Lilygo токене. Все бы хорошо, но аппаратные косяки умножают идею на ноль. Оно банально перегревается, и помирает дерьмовая паленая spi-флешка - зачем мне менеджер паролей, который в случайный момент перестает работать, или, еще хуже того, втихаря глючит на посыпавшемся флеше... И перепаять чтобы, надо, во-первых, экранчик отклеить - что не очень просто из-за его хрупкости, и, во-вторых, найти в рознице не поддельную industrial-grade флешку, что в наше время тот еще квест.

О, да, отличная заготовка под нормальный автономный девайс. А заранее залить каким-нибудь термоинтерфейсом жидким не вариант ? Или алюминиевый корпус ей сделать?

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

Я заливал несколько штук эпоксидкой в металлическом корпусе - не помогает, все сдохли где-то к 50-60 перепрошивке. Флешку там под перепай однозначно, на высокотемпературную. А так да, очень вкеусный девайс.

Надо тогда брать самум примитивную ESP32-S3 Zero(или вообще ESP32-C3 Zero, хотя там уже разница в цене не такая уж прям большая что бы экономить, тем более если нужны возможности S3), вон как автор этой статьи, там на борту по сути ничего кроме одного чипа и нет, а если надо больше ПЗУ, просто припаять отдельно модуль под микросд по spi, а потом уже получившийся бутерброд заливать в эпоксидку, ну или не заливать :) Это будет раз в 5 дешевле, а главное, скорее всего не будет иметь тех проблем про которые вы говорите...

Хотя у S3 4МБ ПЗУ, под любую базу паролей этого точно хватит...

Ну, после провала с Lilygo я для себя сделал прототитп на LuckFox Pico - тоже не без косяков, но они исправимы, так как материнка под SoM моя. Выходит чуть дороже esp32, но там и сенсорный экран навешивается без проблем, и ридер отпечатков, и mass storage там быстрый - можно запароленную флешку сделать... И самое главное, что там линукс, в котором вся железная часть уже реализована и протестирована сообществом - пишешь простой приклад и вперед. А корпус делается на фотополимернике, работы на полчаса-час во фрикаде...

Интересная платка, надо будет прочитать... Можно было ещё наверное вообще rpi zero 2W взять, но это уже явный оверхед:) Хотя она тоже может спокойно питаться от любого юсб порта - проверено.

Теплопроводность эпоксидки под вопросом. Они точно перегреваются ? Если через прокладку к радиатору прислонить - тоже ? Или флеш такой, что десятки перепрошивок и "всё"?

Всё в комплексе. Там флешка нонейм или подделка под winbond - уже ресурс мизерный. А ее еще и нагревают до 80 градусов в работе - типовая температура S3... Понятно дело, что она кончается моментально.

Ее бы просто отодвинуть на 1см от чипа и всё было бы хорошо, но нет.

Можно прислонить к алюминиевому корпусу через термоинтерфейс(или даже напрямую) и греться не будет.

Но, похоже надо просто заказать своё из нормальных комплектующих. Надо подумать...

Такие платки есть, но и габариты у них побольше, а вообще хз зачем контроллеру все эти объемы ОЗУ и ПЗУ, там где это реально нужно и правда проще уже микрокопьютер с линуксом поставить. А для таких вот поделок, хватит того флеша и ОЗУ что есть уже в чипе S3.

Тут применение такое, что лучше микрокомпьютеры не использовать. Неизвестно что с линуксом получишь в плане функциональности (что-нибудь закешируется некстати, к примеру)...

Надо что-то достаточно минималистичное но при этом с монитором и кнопкой...

Речь изначально шла про излишнюю память для контроллера, которая там по большому счету не нужна для реализации большинства задач имеющих смысл на нем реализовывать. Если мы по прежнему обсуждаем устройство которое реализовывал автор статьи, то он собственно и взял платку с минимальным обвесом без излишних spi flash и внешних psram. Если же вы хотите с кнопкой и экраном, то можно дополнительно купить маленький экранчик 0.9 дюйма по-моему с 4 кнопками, видел такой на алике когда недавно пересматривал. Хотя если поискать, возможно найдется даже что то почти готовое, только в корпус засунуть и прошивку написать. А памяти которая есть у esp32-s3 на самом чипе в целом достаточно для того что бы там разместить и прошивку и всю вашу базу паролей впридачу.

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

Я по этой теме мини-исследование провел. Оно скорее не менеджер паролей даже, а админский мультитул.

  1. Нужен сенсорный экран. Натыкивать кнопочками в списке нужный пароль - боль и унижение для кожаного, привыкшего к мнговенному потреблению. На сеносрнике при должном UI ситуация волшебным образом исправляется, доступ почти моментальный. Причем сенсорник емкостный, да. Прототипы я собрал кнопочные, но они не зашли ни мне, ни тому, кому я давал на тест - все хотят сенсор. Следующий девайс сделаю с круглым сенсорным экраном от часов, нашел дешевые, качественные и паябельные.

  2. Нужно хранение с избыточностью. Я цепляю паровозиком 2 eeprom + 1 fram - даже если сдохнет 1, ключевая инфа не будет потеряна. Да, тут потенциальная дыра безопасности, но удобство важнее.

  3. Поскольку у нас есть флешка, хотелось бы иметь защищенный накопитель. Микроконтроллеров с полным USB2.0 на рынке почти нет - все с обрезком FS. Зато линуксовые чипы дают отличную скорость.

  4. К флешке добавляем доверенную загрузку - комп полностью зашифрован, а /boot с ключами сидит в нашем устройстве и разблокируется отпечатком.

  5. Еще на флешке размещается раздел с iso, и образы полключаются из меню - оно уже реализовано и чертовски удобно.

  6. Нужна защита от использования посторонними. Пинкод набирать на экране в дюйм - увольте. Вводить с телефона гемор - открой приложение, дождись соединения, ... боль и страдание. Потому я поставил сенсор отпечатков от hi-link - там дока на протокол открыта, модули самодостаточны, то есть вся математика внутри.

  7. Хотелось бы реализацию pkcs11, подходящую под дефотные либы в линуксе. Но это пока только хотелка.

  8. Еще хотелось бы подружить это с проектом chamelion, что было бы вообще пушкой. Но это опять же хотелка.

  9. Сразу должен предупредить, что мы не защищаемся от шпионов, спецслужб и прочих хайлевелов. Устройство бытовое, с соответствующими требованиями.

Никуда пока не выкладывал, поскольку все платы так или иначе были косячные. Как исправлю все идиотские косяки и добьюсь работоспособности железа без допайки проводков лол - выложу куда-нибудь на гитхаб это дело.

Круглые экраны есть прям корпусированные для часов, уже с есп внутри итп. Причем демо работает довольно неплохо на них.

Отпечаток в отличии от пароля проверяет ваш факт владения чьим-то пальцем(а зачастую фотографией этого пальца), а не факт знания пароля :). Тут еще вопрос, что лучше палец или пинкод и три попытки...

Про устройство непонятно, база паролей как-то закриптована ?

Да, экраны в составе модулей есть на любой вкус.

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

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

Отпечаток в отличии от пароля проверяет ваш факт владения чьим-то пальцем(а зачастую фотографией этого пальца), а не факт знания пароля :). Тут еще вопрос, что лучше палец или пинкод и три попытки...

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

Кстати есть похожие модули и без spi flash вот например - https://a.aliexpress.com/_EJ65Npu

Правда конкретно эта не S3, а C6, но если поискать можно найти точно такую же но с перламутровыми пуговицами S3. Есть ещё вариант с type-a разъемом, аля флешка.

У меня вопрос - а зачем отклеивать дисплей чтобы перепаять флешку??
Дисплей не вплотную к плате, под дисплеем дисплейный разъем под плоский кабель, чтобы перегреть дисплей в такой конфигурации паяльником надо сильно постараться.
Феном да, можно перегреть.

Я как раз феном выпаивать пробовал :) и потом дисплей "плывет" от перегрева.

Можно аккуратно паяльником отпаять - тогда не надо снимать дисплей.

прикинуться клавиатурой, и с телефона отправить текст.

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

Mooltipass гораздо лучше, но с аппаратными проблемами. С пастилдой рано или поздно наберешь невовремя мастер-пароль и он попадет в ПК. Ну и в целом "такое себе", все эти попытки сделать управление от клавиатуры только безмерно всё усложняют. Совершенно не везде будет работать итд итп.

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

Наверное каждый должен написать свой менеджер паролей :) Потому что доверять продукту какой-то компании в этом деле не хочется. Есть конечно опенсорс решения но судя по отзывам в комментариях они имеют свои недостатки. Может дойдут руки сварганить что-нибудь на black pill и ble модуле. Раньше останавливала необходимость писать под андроид но с теперешними нейронками действительно минимальное приложение сварганить должно быть проще

Тоже недавно загорелся такой штукой.

Но за основу взял esp32 2432s028. Там esp32, сенсорный цветной дисплей и слот sd карты на одной плате. Плюс из мелочей: фоторезистор, rgb светодион и пара распаянных коннекторов.

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

Сам смотрел на эти платки не раз, но мне тут люди говорят, что они говно редкое, это все перегревается и "расклеивается" очень быстро. Короче прикольно компоновка плотная, маленькая платка, но... Работать нормально не может...

При включении расшифровывать файл вводом пин кода на экране, выбирать необходимый пароль и отправлять по блютусу.

Это все можно реализовать на смартфоне, лишнее устройство как скрипач - ненужно! :)

На смартфоне можно конечно. Если ты согласен отдать все бабки когда этот смартфон взломают, то тебе всё это вообще не нужно. Можно пароль использовать везде один 111111, его легко запомнить и быстро набирать.

Ну штош, делай тогда на китайской платке, которая в любой момент сгорит, а главное нигде больше кроме нее его не храни! Вдруг сломают!

Спасибо за совет. Однако если хочешь я тебе базу моих паролей пришлю за 1000руб. Сможешь расшифровать - всё твое.

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

ЗЫ. Иногда лучше жевать ей богу...

я бы смотрел в сторону более компактного, хтя ввод пароля с экрана будет затруднён

https://m.media-amazon.com/images/I/61xCcUlX35L._AC_UF1000,1000_QL80_.jpg

Sign up to leave a comment.

Articles