LINUX.ORG.RU
ФорумTalks

Можно ли сделать закладки в 8-битном процессоре?

 , , ,


1

1

И будет ли от них толк. До какого предела сложности можно условно считать процессор безопасным от закладок NSA и китайских товарищей? В ARM Cortex A есть TrustZone, в Cortex M часто бывает прошитый в ROM загрузчик, в который можно напихать много интересного.

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

★★★★★

Последнее исправление: Harald (всего исправлений: 1)
Ответ на: комментарий от Stremitelnyj

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

Я про это и говорю. Вопрос в цене.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от lenin386

И что мне мешает послать произвольный ICMP Echo пакет любому компу, подключённому через модем в интернет, зная его IP-адрес?

Harald ★★★★★
() автор топика
Ответ на: комментарий от Harald

Но как операционная система отдаст его процессору ? У вас же Линукс с открытыми кодами, это же не Венда, которая непонятно, что мутит.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

Это не из-за закладок, а просто из ненависти к врагу. Впрочем в последнее время многие арабы уже не так враждебны и всё больше ищут контакты с Израилем. У них появился общий с Израилем враг - Иран. А в Иране израильские закладки таки вывели из строя массу далеко неизраильского оборудования. Не из-за конденсаторов, разумеется :-)

bbk123 ★★★★★
()
Ответ на: комментарий от lenin386

Сетевая карта (модем?) положит пакет в память по DMA и дернет прерывание. Операционная система начнет читать содержимое пакета чтобы понять, как его обработать.

В этот момент закладка в процессоре может активироваться – ну, например, по совпадению содержимого кэш-линии с магическим числом.

Arrest
()
Последнее исправление: Arrest (всего исправлений: 1)
Ответ на: комментарий от lenin386

Зачем процессор? Закладку наверняка можно сделать в контроллере сетевой карточи или в свитче. Наверняка её можно встроить и в Intel ME, у которого вообще свой отдельный процессор спрятан в чипсете.

bbk123 ★★★★★
()
Ответ на: комментарий от Arrest

откуда у 8-битного кэш-линия

Harald ★★★★★
() автор топика
Ответ на: комментарий от bbk123

Вообще когда канал управления совмещен с каналом данных, это такой рай для закладок…

cvs-255 ★★★★★
()
Ответ на: комментарий от bbk123

я видела теракты по запаиванию танталовых конденсаторов наоборот: один такой кондёр с шипением взлетел, сделал красивую дугу, упал и прожёг дырку в коврике для мыши на моём столе :)

Iron_Bug ★★★★★
()
Ответ на: комментарий от lenin386

Ты не догоняешь, что закладка активируется на аппаратном уровне, когда волшебный пакет приходит на железо. ОС тут вообще не участвует. Эхо-пакетами можно компы включать, wake on lan называется. Ничто не мешает делать нечто другое.

InterVi ★★★★★
()

Постановка задачи неверная. Какой спектр угроз? Просаживание криптографии и превращение процессора в кирпич - несколько разные угрозы. Что-то проще, что-то легче.

InterVi ★★★★★
()
Ответ на: комментарий от InterVi

Просаживание криптографии

Harald ★★★★★
() автор топика

матрица же ж

ты можешь быть уверен, что покупая 8-битный процессор, ты покупаешь 8-битный процессор? или там внутри 64-битный процессор, эмулирующий 8-битный?

anto215 ★★
()
Ответ на: комментарий от Egor_

да ваще опасная вещь. как их ещё не запретили. а если дети их купят? и что за ограничение на полярность, нет ли здесь ущемления чуйств монтажников и нападок на многообразие.

Iron_Bug ★★★★★
()
Ответ на: комментарий от anto215

или там внутри 64-битный процессор, эмулирующий 8-битный?

битность тут ни при чём, наибольшую площадь кристалла занимает не ядро, а память.
фактически, если в обычном МК заменить 8-битное ядро на 64-битное, то площадь кристалла (а, значит, и стоимость) увеличится очень незначительно, но и МК от этого тоже почти не улучшится (ну что ты будешь делать с 64-битным ядром, имея те же самые 8 Кб ОЗУ и ту же самую тактовую частоту?)

идея вспомнить про 8-битные МК немного о другом: если МК выполнен по «грубому» техпроцессу, занимает малую площадь кристалла и стоит менее 1$, то есть надежда, что впихнуть туда дополнительное «левое» ядро для выполнения рассылаемых через интернет «закладок» невозможно.

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

Egor_
()
Последнее исправление: Egor_ (всего исправлений: 1)
Ответ на: комментарий от bbk123

интересно, а в консоли они тоже задом наперёд печатают?

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

Iron_Bug ★★★★★
()

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

XVIII_vek
()
Ответ на: комментарий от Iron_Bug

Фигня. У меня прикольнее было, заказ погружных датчиков давления 10 шт. (подчеркиваю десять штук). В процессе межуправленчиской передачи документов, это стало 100 (сто!) кто-то случайно нолик добавил. Отыграли конкурс (важный момент, конкурс отыграли, никакая падла даже на сумму не посмотрела что она превышает все лимиты), а когда началась поставка все офигели. Нам это не на 3 года с запасом, а на 50-т и то не известно надо ли будет через 50-т лет.

anc ★★★★★
()
Ответ на: комментарий от anc

это как у нас Грозный сортировщики закупал. заказали 120 штук. обычно даже крупные банки заказывают ну 10, ну 20, если ну очень крупные и бабла там вагоны, считать-не пересчитать. а тут сразу 120. мы всем составом разработчиков собирали эти сортировщики. столько за раз никто никогда вообразить не мог :) какая-то совершенно астрономическая сумма за заказ. и, главное, куда их столько? обычно в крупных хранилищах ставят один-два сортировщика и этого хватает за глаза.

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от bbk123

Читают ли? Доки на фастфуде, зачем на перевод тратиться

TooPar
()
Ответ на: комментарий от lenin386

Подтверждаю. Недавно менял потекшие кондеры на первом xbox’е. Оказалось что полного аналога японских электролитов nichicon HM не так просто купить даже сейчас. Они что 15 лет назад, что сейчас являются все таким же хайтеком. Другое дело что на деле в итоге вместо них заработал тайваньский хлам от jamicom с импедансом в два раза хуже. Это было лучшее что я смог быстро найти в продаже.

DawnCaster ★★
()
Ответ на: комментарий от Egor_

если МК выполнен по «грубому» техпроцессу, занимает малую площадь кристалла и стоит менее 1$, то есть надежда, что впихнуть туда дополнительное «левое» ядро для выполнения рассылаемых через интернет «закладок» невозможно

А «закладка» выполняется по более тонкому техпроцессу и без труда влезает...

Вообще сколько раз говорили: Без модели угроз оценивать что-либо бессмысленно. А то получается что угрозы исходят постоянно, отовсюда и от всех. При таком раскладе только в бункер закапываться. И там же помереть, потому что тушняк отравят.

atrus ★★★★★
()
Ответ на: комментарий от atrus

А «закладка» выполняется по более тонкому техпроцессу и без труда влезает…

… в 1$ ???
Я ж куплю эти МК в обычном магазине, поэтому им придётся патчить вообще все выпускаемые МК, а не только одну мелкую серию.

угрозы исходят постоянно, отовсюда и от всех

Модель угроз: исходный код твоего проекта открыт, твой код работает на МК или процессоре, злоумышленник может надавить на производителей МК/проца с целью вставить свой backdoor, чтобы менять поведение твоей программы.
Если проц - современный интел, то проблем со вставкой универсального бэкдора нет: процессор усложняется лишь на 0.1%.
А если ты используешь МК за 10 центов в транзисторном корпусе, то при попытке вставить бэкдор возникнут проблемы: либо технические (какую самую сложную схему удавалось запихнуть в SOT-23-6?), либо финансовые (добавление бэкдора в МК может удорожить его в десятки раз).
Хочешь незаметно усложнить внутренность МК в 10 раз? Придётся заплатить производителю МК сумму, превышающую общую «капитализацию рынка» этих МК.

Образно выражаясь, 10-центовая стоимость МК - это узкая щель, в которую толстая зараза не пролезет.

Egor_
()
Последнее исправление: Egor_ (всего исправлений: 3)

А собственно зачем вам, мамкиным какерам, что-то скрывать от мирового правительства?
Вы педофилы, террористы или, того хуже - либералы, Власть не любите?
Наверно вам марсиане приплачивают?

Anonymous ★★★★★
()
Ответ на: комментарий от Anonymous

Вы педофилы, террористы или, того хуже - либералы, Власть не любите?

Всё вместе

Harald ★★★★★
() автор топика
Ответ на: комментарий от Harald

полезность 10-центового МК тоже ограничена

Дюжины таких МК достаточно, чтобы собрать девайс, умеющий без дополнительных «умных» микросхем работать с USB/SD/VGA и даже с 10 Мбитовым эзернетом. Правда, какая-нибудь микросхема последовательного внешнего ОЗУ всё же потребуется, но закладки в ней не страшны, т.к. всё содержимое внешнего ОЗУ можно шифровать ключём, лежащим во внутреннем ОЗУ.
В принципе, можно написать для такого девайса простенький браузер, умеющий в https. Что ещё для счастья надо?
Ах, вам же онтопик туда непременно нужно засунуть… С этим сложнее.

Egor_
()

Смотря что считать закладкой. Если самовыполняющийся код, то в любой можно добавить. Проще его добавить в тот, где есть свои генератор часов, чтобы он не работал постоянно.

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

alexmaru
()
Ответ на: комментарий от Iron_Bug

В консоле всё на английском, там такой проблемы нет. Хотя раньше были консольные, вернее досовские программы на иврите, например для бухгалтеров. Иврит и арабский - это не только выравнивание справа, но и вообще направление письма. В HTML это align=«right» dir=«rtl». Иногда это создаёт проблемы форматирования.

bbk123 ★★★★★
()
Ответ на: комментарий от bbk123

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

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 2)
Ответ на: комментарий от anc

Фигня. У меня прикольнее было, заказ погружных датчиков давления 10 шт. (подчеркиваю десять штук). В процессе межуправленчиской передачи документов, это стало 100 (сто!) кто-то случайно нолик добавил.

Один нолик - это мало ) Была у нас история - попали в нашу лабораторию списки продаваемой комплектации какого-то крупного завода. Полупроводники - микросхемы, транзисторы, диоды. Попали не напрямую, а через «верхнюю» приемную с пометкой «отметьте требуемое количество по каждой позиции». Ну мы написали потребные нам пару десятков и отдали. А через пару месяцев состоялось ЧП. «Приемная» девочка, оформлявшая заказ, смотрела на цифры не из колонки заказа, а из колонки предлагаемого к продаже. А цифры там были такого вида - 156000 по одной позиции, 159000 по другой, ну и пару десятков позиций по мелочи - десятками тысяч. Вместо посылочного ящика пришел объем порядка товарного вагона. Начальство всплакнуло, девочку винить рука не поднялась, деньги наскребли из других программ, а поскольку хранить подобные объемы было негде - ящики с детальками раздали в ближайшие вузы, имеющие хоть какое-то отношение к РЭА, где их просто выставили в коридоры - в надежде, что студенты их просто потырят и проблема рассосется. Но даже процесс «рассасывания» комплектации студентами занял больше года :)

vaddd ★☆
()
Ответ на: комментарий от vaddd

Душевно! Хоть погружные датчики и стоят убер дофига. Но разница в виде «пару десятков» и «156000» (много раз по каждой позиции) хоть и по небольшой стоимости за единицу, имхо должны превосходить результат по деньгам. Дааа... классный пример :)

anc ★★★★★
()
Ответ на: комментарий от burato

чойта не засунуть когда уже засунули

Harald ★★★★★
() автор топика
Ответ на: комментарий от Stremitelnyj

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

Не нужно. Всё это можно свалить на контроллер расширенной памяти и получать через один единственный 8-битный порт.

no-such-file ★★★★★
()
Ответ на: комментарий от LittleKawaiiNeko

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

Iron_Bug ★★★★★
()
Ответ на: комментарий от no-such-file

Все равно эта память будет либо страничной либо сегментной, потому регистры процессора z80 (BC, DE, HL указатель стека, счетчик команд, индексные регистры) упорно не способны адресовать больше 64Kб. Какие к черту контроллеры? Это ограничение самого процессора.

Stremitelnyj
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.