Pull to refresh
272
57.4
Send message

На UART тоже можно было бы FSM натянуть. ИМХО, было бы нагляднее и возможно по ресурсам по-приятнее.

Не. Это просто запись в VRAM. А установка видео-режима - пара команд IO. Так что без BIOS'a добавится с дюжину инструкций.

 много успешных глитчей микросхем этой серии (https://github.com/ggonzalez/ESP32_GLITCHER).

Это глитчер, базирующийся на esp32, а не глитчер самого esp32 :)

Тем не менее, да, есть известные атаки. Самые актуальные - https://courk.cc/breaking-flash-encryption-of-espressif-parts и https://www.usenix.org/system/files/woot24-delvaux.pdf. Но в обоих случаях речь не идёт о тривиальном voltage glitch (хотя первая атака и включает его).

Обращаю также Ваше внимание на то, что данный процессор глитчится по управлению питанием Flash памяти, а не питанием ядра.

Не так давно на CCC была интересная презентация про глитч через питание OTP - https://media.ccc.de/v/38c3-hacking-the-rp2350

Я не особо знаком с нутрянкой ECU (так, немножко ковырял старые ECM'ы), а больше писал про GP микроконтроллеры. К примеру, свежие ревизии esp32 имеют ряд защит против FI, в частности, прошивка валидируется несколько раз в разных местах:

      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      check_condCOUNTER$5995();
      ets_printf("wait uart download(secure mode)\n");
      memw();
      if ((_DAT_60004038 & 0xf) == 7) {
        uVar4 = uart_baudrate_detect(0);
        uart_div_modify(0,uVar4);
      }
      else {
        detect_uart_usb_spi_boot_mode(uVar4);
      }
      ets_uart_download(0);
      ets_printf(&DAT_3ff1ab19);
      uart_tx_flush(DAT_3fcef14c);
      goto LAB_40043c78;
    }
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();
    check_condCOUNTER$5987();

Чтоб успешно обойти эту проверку, нужно успешно сглитчить несколько раз подряд. Есть так же защита от clock glitch'ей. Некоторые МК имеют на борту блоки детектирующие voltage glitch. Кроме противодействия глитчам ещё и добавляют защиту от CPA (Correlation Power Analysis). Я к тому, что стандартная атака FI через питание/тактирующий сигнал известна уже давно и производители чипов добавляют механизмы, препятствующие её проведению.

Современные микроконтроллеры более-менее неплохо защищены от Fault Injection. А старые процы мало кому интересны.

Обычным "дремелем" до них можно добурить. Сам кристал же не нужен, а только контактные площадки/проводники.

Советую глянуть вот этот солвер - https://www.sudokuwiki.org/sudoku.htm

Существует ряд техник для решения судоку, включая jellyfish/swordfish, да и базовые x-wing/y-wing/раскраска парных цифр.

Круто. А почему не используете ультразвук для очистки?

Через PIO вполне реально, особенно если разогнать до 250-270МГц.

Со фьюзами и разблокированным risc-v ядром, ага. Хотя старались защититься от такого рода атак, но не шмогли.

Недавно провели интересную глитч-атаку на RP2350. Если эта статья заинтересовала, то советую посмотреть/почитать и про малинку :)

Есть такой нюанс. Я обычно стараюсь контролировать 2 стороны с помощью двух пинцетов или стоматологического зонда вместо второго пинцета. Тогда можно выставить микросхему приемлемо даже без микроскопа.

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

Я использовал оригинальный 8080 от Intel'a, а не клоны. Штатная частота Intel 8080A-1 как раз 3.125. Преобразователей накидал - уложился в 5 микросхем, с учётом отдельного чипа для конвертации уровней тактового сигнала в 12в (FPGA так же и тактирует 8080).

В статье упоминался термофен. Почему бы его сразу и не использовать? А потом пройтись паяльником для надёжности.

Я сразу FPGA начал использовать, чтоб был запас для 8080, который крутится на частоте 3.125 МГц. По моему опыту даже частота в 1МГц с трудом переваривается не самыми мощными микроконтроллерами.

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

Очень упрощено. Физика робота сильно влияет на алгоритм - к примеру, инерция и возможность движения по диагонали совсем не учитывается.

Ради чего люди вообще ходят в горы? У всех разные мотивы. Не всем нужны первовосхождения.

Я писал не конкретно по случаю автора, а по ситауации, когда группа разворачивается.

В теории можно было сходить на вершину и догнать группу, если уверен в своих силах

Information

Rating
157-th
Location
Красноярск, Красноярский край, Россия
Registered
Activity