Точно так! Это значение SysTick (разница до инструкции и после), один такт на останов, второй на запуск и один на передачу управления DBG арбитру внутри кристалла соотв. вычитаем 3.
20 лет назад, если не больше, Igor Cesko реализовал программный USB на AT90U1200 уместившись в 1кб кода (правда в оригинальной статье он предлагал слегка разогнать AVRку до 12MHz), у AVR почти все команды в один такт, и кстати, это Вы к чему про AVR?
Статья про ARM-M0, как-то сравнивать странно…
В данной реализации (скажем прием) применительно к Data Watchpoint, к сожалению, процессор должен не просто ждать, а выполнять арифметические операции в процессе ожидания.
Да, есть стандартная тема TIMER+DMA, так сперва и задумал сделать, взводим таймер на 32 (TIMx->CR = 31) и цепляем к RELOAD таймера DMA из GPIO в память, пускаем таймер по спаду фронта на линии D+ в прерывании и останавливаемся кода обе линии D+ и D- «0» (EOP), только первое, времени не хватает чтобы получить первый бит в пакете (можно в принципе пожертвовать, старт всегда это 7 «0» и одна «1»), второе, на выходе получается буфер который ещё нужно обработать, а времени между SETUP пакетом и DATA всего то 156 тактов (на 75 MHZ)…
Да и вообще, программный USB это дичь, сразу первое что вырывается, есть же 042 или 070? Но в Российском бизнес сегменте оч часто, к сожалению, аргумент босса, — «Эт нельзя, у нас договор на поставку 030 на ближайшие 2 года по цене в 3 раза ниже чем 070 и в 4 чем 042!». А я такой, не, — договор на разработку рву ибо не собираюсь походить на ардуинщика?
Спасибо!
Но если я правильно понял дельфиньчик не умеет 868, 915Mhz то есть все что значительно выше 434Mhz. И опять таки если я правильно понимаю то что я видел на гите, приложение для IOS у флиппера до сих пор в зачаточном состоянии.
Отчасти вы правы, но можно в программе добавить новый контроллер. В статье использован PicKit3, хотя база данных называется так же как и во второй версии 3-я использует режим совместимости.
Можно просто другу (те частому гостю) просто выдать брелок, вписанный в ворота ))) Дешевле, безопасней, проще и всегда можно надежно отозвать )
Есть брелок CAME, можно китайских накупить по 3$, а есть HOERMANN BS, по 60$ за штуку.
Тут вроде как, не обязательно ж отдавать ключи, все брелки можно объединить и пользовать их в одном приложении, на сервере они зашифрованы личным сертификатом, бахнул приложение и всё, ключи превратились в набор байтов, минус конечно существенный в том что навсегда.
И да :), друг про которого я говорю выше меня ростом, и тяжелее килограмм эдак на 20. Если он мне отдаст брелок, то норм, а вот если я… задумает противостоять отзыву, думаю отозвать не получиться ))).
Прошу прощения если внезапно обидел Вас в чем-либо в своих комментариях, цели такой не преследовал.
Предложу вам альтернативную идею — но с оговоркой — если иcпользуете — выплачиваете мне вознаграждение:
У человека есть модуль — GATOR — один, или несколько — не важно.
Он прописывает телефон друга в него (через приложение, например), сопоставляет ему нужные коды и когда приезжает друг — он просто кидает смс/сообщение в мессенджер/звонит на телефон друга — и если он есть в базе по номеру телефона — идет команда на открывание ворот. В этом случае и ключи никуда не улетают — с безопасностью порядок, и GATOR другу не уперся.
Правда, такие системы уже есть )
Мда, у нас подобная функция уже есть в приложении…
1. друг дал ключ от своего брелока
2. друг открыл/закрыл своим брелоком n раз — он ведь живет там
3. тут приехал я с GATOR-ом и? Там хранится старая последовательность из п.1, как генерить будете?
Да, вы верно уловили суть, чудес не бывает, брелок не связан с системой, он OFFLINE, но и друг не сможет отправить код, если у него нет GATOR'а. Поэтому предлагается в динамических системах использовать следующую модель поведения, генерировать используя приложение новый ключ для системы от которой брелок, он не будет ни чем отличаться от ключа в брелке, кроме как серийным номером, вписать его в шлагбаум и пользоваться брелком и GATORO'м совместно, коллизий счетчика не будет по факту брелки разные. Или, если нет доступа к системе, скопировать брелок и пользоваться только GATORO'м.
Респект! Приятно услышать об удачной реализации.
И плата проекта на фото, это обработчик интерфейса MAPLE BUS (переферия для Dreamcast).
Кстати, подобный проект есть у китайцев под чип PIC18F14K50.
Граббер надо купить, уметь им пользоваться и дажеко не все легкопродающиеся грабберы умеют в периодичный код.
Можно даже не пересобирать приложение — достаточно просто прокси.
То есть Вы хотите сказать что нажимать кнопки на код грабере сложнее чем проксировать шифрованный трафик?
В банке не так, они сдают пентесты, там гораздо более квалифицированные кадры и т.д. Вероятность есть, но в сотни раз ниже чем у вас.
То есть не зная ни кого из нас, Вы утверждаете что наша команда в целом является низкоквалифицированными кадрами?
у которого масса проблем с безопасностью
В конце статьи написано, — реализацию серверной части и приложений опишу в следующих постах, каким образом Вы смогли оценить vulnerability системы в целом? По внешнему виду прибора?
Отсутствие пантеста не является доказательством слабой защищенности системы. Отсутствие пантеста является показателем отсутствия пантеста.
и главное — полезностью
В первом вашем комментарии было написано «ИМХО», теперь вы это объявляете как установленный факт? Это называется «предвзятое мнение».
1. Шлагбаум встаки это не дверь в квартиру. GATOR для удобства, а открыть шлагбаум, если сильно нужно, можно хоть отломив «палку» от него. Вы прям так набросились на «защищенность», хотя сейчас есть масса «код граберов» которые умеют повторять и могут из радиоэфира воровать ключи на расстоянии 100 метров. И тут GATOR вообще не угроза.
Пардон, доступ к инфраструктуре получил и да, прощай ключики, а в банке не так? Получил доступ и всё… прощай. Взломать можно всё что угодно, я тут не спорю, вопрос целесообразности.
2. Вы можете конечно «скормить» GATOR'у ключ из пересобранного приложения и GATOR, разумеется, его повторит. Но открыть шлагбаум таким образом удастся только со статическим кодом и таких устройств сейчас уйма, которые брутфорсят коды шлагбаумов, они копейки стоят, да и есть примеры бесплатной реализации, зачем тратиться на GATOR если можно собрать бесплатно? А вот если внутри шлагбаума установлен приемник с динамическим кодом, то приемник проигнорирует повторяющийся код, потому как понимает что его обманывают. И да, без сервера и интернета тут никак, ибо как консолидировать счетчики в динамических системах кодирования. И как считать состав след. посылки для динамических систем. И если вам сервер ключ не дает пересчитанный, что вы скармливать GATOR'у будете? Код со старым счетчиком? Его приемник в шлагбауме как я писал выше проигнорирует.
3. И вот самый важный вопрос, однако же это не тема статьи, статья о том как «начинку» делали. Вообще не ожидал такой негативной реакции. Набросились и «накидали минусов», Вам не понравились статья? Я её плохо написал? Тогда так и пишите, написано плохо, неинтересно, плохие изображения, не читаемо.
Они проходят через инфраструктуру GATOR-а? Ну значит все.
А расшифровывать — а зачем, если у злоумышленника будет модуль GATOR-а?
Метод атаки опишите? Доступа у вас нет, сервер вам не дает ключ.
О чем говорите не имеете вообще представления, в статье описана общая информация, никаких отсылок на инфраструктуру, поэтому и сколь угодно качественных методов атаки и возникнуть не может. Это уже балаболка получается, вы гнете мысль о том что идея плохая, я вас понял и в первом комментарии. Спасибо, я вас услышал.
Да, точно, там де ещё RTC!!!
Да. Поддерживает.
Статья про ARM-M0, как-то сравнивать странно…
Да и вообще, программный USB это дичь, сразу первое что вырывается, есть же 042 или 070? Но в Российском бизнес сегменте оч часто, к сожалению, аргумент босса, — «Эт нельзя, у нас договор на поставку 030 на ближайшие 2 года по цене в 3 раза ниже чем 070 и в 4 чем 042!». А я такой, не, — договор на разработку рву ибо не собираюсь походить на ардуинщика?
… и PICKit3 с китайской площадки, древний жесть, ничего от Вас не утаишь! :)
И да, в серии Q41 например CP бит уже «один на всех»! :)
Спасибо!
Но если я правильно понял дельфиньчик не умеет 868, 915Mhz то есть все что значительно выше 434Mhz. И опять таки если я правильно понимаю то что я видел на гите, приложение для IOS у флиппера до сих пор в зачаточном состоянии.
Отчасти вы правы, но можно в программе добавить новый контроллер. В статье использован PicKit3, хотя база данных называется так же как и во второй версии 3-я использует режим совместимости.
Есть брелок CAME, можно китайских накупить по 3$, а есть HOERMANN BS, по 60$ за штуку.
Тут вроде как, не обязательно ж отдавать ключи, все брелки можно объединить и пользовать их в одном приложении, на сервере они зашифрованы личным сертификатом, бахнул приложение и всё, ключи превратились в набор байтов, минус конечно существенный в том что навсегда.
И да :), друг про которого я говорю выше меня ростом, и тяжелее килограмм эдак на 20. Если он мне отдаст брелок, то норм, а вот если я… задумает противостоять отзыву, думаю отозвать не получиться ))).
Прошу прощения если внезапно обидел Вас в чем-либо в своих комментариях, цели такой не преследовал.
Мда, у нас подобная функция уже есть в приложении…
Да, вы верно уловили суть, чудес не бывает, брелок не связан с системой, он OFFLINE, но и друг не сможет отправить код, если у него нет GATOR'а. Поэтому предлагается в динамических системах использовать следующую модель поведения, генерировать используя приложение новый ключ для системы от которой брелок, он не будет ни чем отличаться от ключа в брелке, кроме как серийным номером, вписать его в шлагбаум и пользоваться брелком и GATORO'м совместно, коллизий счетчика не будет по факту брелки разные. Или, если нет доступа к системе, скопировать брелок и пользоваться только GATORO'м.
И плата проекта на фото, это обработчик интерфейса MAPLE BUS (переферия для Dreamcast).
Кстати, подобный проект есть у китайцев под чип PIC18F14K50.
То есть Вы хотите сказать что нажимать кнопки на код грабере сложнее чем проксировать шифрованный трафик?
То есть не зная ни кого из нас, Вы утверждаете что наша команда в целом является низкоквалифицированными кадрами?
В конце статьи написано, — реализацию серверной части и приложений опишу в следующих постах, каким образом Вы смогли оценить vulnerability системы в целом? По внешнему виду прибора?
Отсутствие пантеста не является доказательством слабой защищенности системы. Отсутствие пантеста является показателем отсутствия пантеста.
В первом вашем комментарии было написано «ИМХО», теперь вы это объявляете как установленный факт? Это называется «предвзятое мнение».
На какой из Ваших вопросов я не ответил?
Пардон, доступ к инфраструктуре получил и да, прощай ключики, а в банке не так? Получил доступ и всё… прощай. Взломать можно всё что угодно, я тут не спорю, вопрос целесообразности.
2. Вы можете конечно «скормить» GATOR'у ключ из пересобранного приложения и GATOR, разумеется, его повторит. Но открыть шлагбаум таким образом удастся только со статическим кодом и таких устройств сейчас уйма, которые брутфорсят коды шлагбаумов, они копейки стоят, да и есть примеры бесплатной реализации, зачем тратиться на GATOR если можно собрать бесплатно? А вот если внутри шлагбаума установлен приемник с динамическим кодом, то приемник проигнорирует повторяющийся код, потому как понимает что его обманывают. И да, без сервера и интернета тут никак, ибо как консолидировать счетчики в динамических системах кодирования. И как считать состав след. посылки для динамических систем. И если вам сервер ключ не дает пересчитанный, что вы скармливать GATOR'у будете? Код со старым счетчиком? Его приемник в шлагбауме как я писал выше проигнорирует.
3. И вот самый важный вопрос, однако же это не тема статьи, статья о том как «начинку» делали. Вообще не ожидал такой негативной реакции. Набросились и «накидали минусов», Вам не понравились статья? Я её плохо написал? Тогда так и пишите, написано плохо, неинтересно, плохие изображения, не читаемо.
Метод атаки опишите? Доступа у вас нет, сервер вам не дает ключ.
О чем говорите не имеете вообще представления, в статье описана общая информация, никаких отсылок на инфраструктуру, поэтому и сколь угодно качественных методов атаки и возникнуть не может. Это уже балаболка получается, вы гнете мысль о том что идея плохая, я вас понял и в первом комментарии. Спасибо, я вас услышал.