?

Log in

No account? Create an account
Закладки и свинство в Калифорнии - Юрий Панчул [entries|archive|friends|userinfo]
Money can buy bandwidth. Latency requires bribing God.

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Закладки и свинство в Калифорнии [Aug. 3rd, 2015|10:35 pm]
Yuri Panchul
Вчерашний день я провел с товарищем abelits и товарищем из одной очень закрытой конторы, порядки в которой гораздо тоталитарнее любого советского ящика (можете погадать в комментах какой. Подсказка: изделиями этой конторы помахивают российские креаклы в качестве символа Свободы, когда они сидят в московском Жан-Жаке).

Зашла речь о критике широкого профиля prof_killjoy, который в частности критиковал MIPSfpga за плоские лабы. Мы решили придумать лабы более объемные, которые были бы еще и популярны в российских условиях. Одна из идей - сделать серию лаб "сконструируй закладку в процессор". Эта лаба опровергает креаклов из Жан-Жака, так как они (по крайней мере гуманитарно-журналистская часть этой социальной группы) считают, что закладок не бывает.

Первая закладка, которую я уже обсуждал с raygo - когда процессору попадаются данные, в которых есть ключевая строка "Слава Украине", он должен приостанавливать нормальное выполнение программы и генерировать транзакции на шине, передавая в memory-mapped регистр, подсоединенный к UART-у строчку текста "Гэроям Слава!" Ключевую строку можно определять в трех местах - сканируя шину, сканируя данные во время записи в кэш и сканируя загрузку данных в регистры общего назначения.

Откуда может взяться строка? Ну например она может взяться, когда пользователь получает емейл из Министерства Культуры Украины или просто просматривает сайт в зоне .UA.

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

Все это можно реализовать на верилоге и засинтезировать с MIPSfpga.

А у вас какие мысли?















Как вы считаете, этот пост скорее креакловский или скорее ватнический?

100% креакловский
5(15.6%)
80% креакловский 20% ватнический
1(3.1%)
50% креакловский 50% ватнический
14(43.8%)
20% креакловский 80% ватнический
7(21.9%)
100% ватнический
5(15.6%)

Какую бы сделать лабу с закладкой в процессоре?

Идея первой лабы неплоха, но нудно сделать политически корректно, например "ассаламу алейкум" / "уаалейкум ассалям"
6(20.0%)
Мне больше понравилась лаба с привилегированным режимом, но вместо Путина стоит взять Цоя или Гребенщикова
3(10.0%)
Закладку надо сделать более разрушительной - с врубанием мотора с пропеллером или громкого звука
12(40.0%)
Это невозможно! Закладок включаемых данными не бывает! Только исполняемые команды могут включать закладку!
2(6.7%)
Из-за бугра плюете?
7(23.3%)
LinkReply

Comments:
[User Picture]From: fabless
2015-08-04 05:43 am (UTC)
Контора - Apple. А DPI технологии и так в промышленных масштабах используются. Зачем их в FPGA инкапсулировать? Интересен FPGA, который позволит расширить конвейер MIPS, типа как у ARC'ов.
(Reply) (Thread)
[User Picture]From: panchul
2015-08-04 05:52 am (UTC)
Вы говорите про модификацию а-ля CorExtend или чего-нибудь более существенное?

Screenshot 2015-08-03 22.50.08.png


(Reply) (Parent) (Thread) (Expand)
[User Picture]From: dobr_i_trezv
2015-08-04 05:48 am (UTC)
а) Лучше оторваться от политики и организовать утечку при встречи не "слава украине" или "путин", а "/etc/passwd" .
б) лабу raygo лучше переориентировать на подсовывания своих случайных чисел.
в) как поднять объемность лабы. Организовать счетчик ключевых слов, и действия а) и б) после определенного числа холостых оборотов. Что бы при тестировании сразу после покупки по методу "черного ящика" действия закладки были не видны.
(Reply) (Thread)
[User Picture]From: panchul
2015-08-05 02:29 am (UTC)
C /etc/passwd - ценная идея. После наблюдения обработки данной строчки найти момент выхода из функции, после чего несколько тысяч циклов процессора сливать все, что появляется на регистрах и и в декодере.

И с холостыми оборотами учту
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: freedom_of_sea
2015-08-04 05:54 am (UTC)

Лаба хорошая.
Каким образом целая строка может попасть в процессор? Всякие strncpy делаются над отдельными байтами

(Reply) (Thread)
[User Picture]From: panchul
2015-08-04 06:02 am (UTC)
1. Если чтение из uncached области памяти, поставить конечный автомат, который ловит последовательность на шине данных , проверяя что адреса последовательные: xxxС xxлx xаxx ... (хотя между ними могут находится fetches)

2. Если чтение из cacheable области памяти, при загрузке строки кэша на данном ядре заглатывается сразу 16 байт - 4 слова по 4 байта.

3. strncpy к вашему сведению в наши дни сурово оптимизируется и программно (компиляторами и библиотеками), и - на некоторых процессорах - аппаратно, и происходит не побайтно, но это тема другого поста.

Edited at 2015-08-04 06:09 am (UTC)
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: norka_0
2015-08-04 06:04 am (UTC)

Веселые идеи закладок. Понравилась майка со схемой московского метро

(Reply) (Thread)
[User Picture]From: panchul
2015-08-04 06:07 am (UTC)
Да, надо будет в этой майке на какой-нибудь митинг у украинского консульства в Сан-Франциско сходить
(Reply) (Parent) (Thread)
[User Picture]From: ramlamyammambam
2015-08-04 06:19 am (UTC)

Хорошую ты ложку дегтя придумал

Всякая ли версия MIPSfpga будет содержать вышеупомянутые закладки?
Или только вариант для российских университетов?
(Reply) (Thread)
[User Picture]From: 1500py470
2015-08-04 07:40 am (UTC)

Re: Хорошую ты ложку дегтя придумал

Ну мне кажется, что каждый у кого на диске есть Ой Маричка в любом исполнении, или Океан Эльзи и Вопли Видоплясова будет защищён тобой от этой напасти :)) Контр меры наверное уже продуманы и вовреднены. Зато мне теперь понятно как мощный ИИ в МИПСах заведётся.
(Reply) (Parent) (Thread)
[User Picture]From: abbat81
2015-08-04 06:32 am (UTC)
Оставьте в покое Украину с ее славой!

Пусть украинцы отправляют свое "Слава Україні" на UART, а россияне отправляют свое на RURT...

Edited at 2015-08-04 06:33 am (UTC)
(Reply) (Thread)
From: korolev_dweller
2015-08-05 11:07 am (UTC)
Хорошо бомбануло.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: sergegers1
2015-08-04 06:36 am (UTC)
Ну 100% закладку лучше делать так: периодически опрашивая страницу https://www.whitehouse.gov/start_nuclear_war.html. И лучше, конечно, заложить это в винду, а то в процессоре придётся держать жирный кусок ОС.
(Reply) (Thread)
[User Picture]From: andrey_yurin
2015-08-04 07:13 am (UTC)

А вот по поводу закладок

Не, ну ок. Закладки на уровне микрокода. Такое хорошо отработает, когда я читаю Unian-style, пишу туда коммент и сия закладка транслирует коммент через UART в ВГТРК-style. Наблюдая лютое количество срача в сети невольно закрадывается мысль, что таких закладок - в каждом процессоре. Но это нужно зайти на Unian-ВГТРК и оставить коммент. Короче нужно подключение к внешнему миру через порт. А ежели компьютер стоит у Вовы Киселёва в комнате, обитой поролоном и алюминиевой фольгой и не имеет портов во внешний мир? Тогда Вова набивает в блокноте тесты во славу кровавому режиму и никто не может их видоизменить или выкрасть (где порт во внешний мир-то?).

Тогда на помощь приходит закладка из второго случая. Но тут тоже полно нюансов. Вот работает закладка на слово "Путин", ищет любой текст с его упоминанием и даёт сбой при его упоминании. Но вот две разные ситуации. Первая - фраза "Если не Путин, то кто", а вторая "Путин, уходи". Смысл диаметрально разный, а работа застопорится. Причём как в кабинете у Вовы Киселёва, так и в кабинете у Обамы. Это что же получается, надо партию процессоров делать отдельно для РФ, а отдельно для США? А ну как в США "наши парни" закрадутся? А завтра вместо Путина будет Бубубутин. Это что же, отзывать партию процессоров что ли? Да и с первой закладкой те же самые проблемы получаются, вообщем-то.

Гораздо интереснее, когда процессор стоит где-нибудь в недрах РЛС или сонара какого. Вот тормознуть его работу - очень заманчиво. Но как тогда в него запихнуть строку "Слава Украине"?
(Reply) (Thread)
From: riseofdeath
2015-08-04 10:02 am (UTC)

Re: А вот по поводу закладок

Ну выже понимаете, что "Путин" тут лишь для хохмы. В реальности будет у вас где-нибудь в страничке скрыт какой-нибудь текст типа DEADBEEF, который выглядеть случайно. Ну и, к тому же, кто мешает действительно поставлять в разные страны процессоры с разными закладками.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: ammosov
2015-08-04 07:34 am (UTC)
import from processor zakladka
redalert = ('слава украiне','хероям слава')

def trigger(i)
....if i in redalert:
........zakladka.power(off)
....else:
........none
(Reply) (Thread)
[User Picture]From: fadeev
2015-08-04 08:31 am (UTC)
который в частности критиковал MIPSfpga за плоские лабы. Мы решили придумать лабы более объемные, которые были бы еще и популярны в российских условиях.

а что такое: "лабы"?
(Reply) (Thread)
[User Picture]From: dimaviolinist
2015-08-04 09:25 am (UTC)
Лабораторные работы для студентов, мне кажется :)
(Reply) (Parent) (Thread)
[User Picture]From: fareastener
2015-08-04 08:42 am (UTC)
Я ничо не понял - но замысел о-го-го. Панчул - это голова! Нет - даже две головы!!! :)
(Reply) (Thread)
[User Picture]From: techwork
2015-08-04 04:17 pm (UTC)
три и уже горыныч - лучше бы он добритрезв послушал. просто шутки шутками а практичность важнее - кроме того - а как это будут делать студенты в других русскоязычных вузах ? А ещё веселее было бы если бы не просто выдавал доступ а ещё и иницировал в тестовой программе на линухе иное её исполнение. Хотя бы краный цвет вместо зеленого.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: oppad1
2015-08-04 12:32 pm (UTC)
в функционал (RTL код) закладку не спортивно - это будет не закладка, а фича.
вата бздит от закладок в GDS-е, поэтому и покупаются бессмысленные фабрики и т.п.
вот такое задание (внести закладку в лейоут) было бы не плоским, для продвинутых - внести закладку так, чтобы ее не обнаружить реверс инжинирингом - то есть микроскопом и напильником
(Reply) (Thread)
[User Picture]From: panchul
2015-08-04 02:42 pm (UTC)
Помимо RTL и GDSII закладку можно сделать в synthesis тулах и даже в place & route.
(Reply) (Parent) (Thread) (Expand)
[User Picture]From: sir66
2015-08-04 02:36 pm (UTC)
Прибыл в Msk вместе с Basys3.
(Reply) (Thread)
[User Picture]From: panchul
2015-08-04 02:41 pm (UTC)
Круто. Я к тебе направлю товарищей чтобы использовать Basys3 и DE0-CV для тестирования инсталляций в вузах.
(Reply) (Parent) (Thread)
[User Picture]From: red_army_1917
2015-08-04 03:37 pm (UTC)

Сон в руку

Представлен новый вариант вируса Thunderstrike 2

В отличии от оригинала (Thunderstrike) он способен заражать компьютеры Mac даже не подключенные к сети, например через Ethernet адаптер для продуктов Apple. Переустановка ОС не поможет, вирус сохраняет себя в прошивках периферийных устройств, например, внешних накопителей, контроллеров RAID и прочих.

Вирус Thunderstrike 2 эксплуатирует уязвимости найденные специалистами LegbaCore и TSI еще в 2014, которые выяснили, что данный тип уязвимостей коснулся 80% исследуемых устройств Dell, Lenovo, Samsung и HP. Впоследствии эксперты обнаружили, что пять из шести найденных ими уязвимостей проявляются и на компьютерах Mac от Apple, которые считаются более безопасными, чем обычные ПК.



Исследователи предлагают несколько способов массового заражения

1. путем продажи недорогих инфицированных переферийных устройств через интернет магазины по привлекательно низким ценам (например Ethernet адаптеров)

2. или при помощи вредоносного кода, отправленного в виде фишингового сообщения через электронную почту

Вполне возможно, что используемые уязвимости, которые эксплуатирует Thunderstrike, на самом деле являются следствием наличия закладок или намеренно допущенных ошибок проектирования на аппаратном уровне.
(Reply) (Thread)
[User Picture]From: techwork
2015-08-04 04:20 pm (UTC)

Re: Сон в руку

во ! что надо попросить - точно.
Юрий научите наших студентов как это делать :) .
(Reply) (Parent) (Thread)
[User Picture]From: mussasi
2015-08-08 11:12 am (UTC)
Панчул, такое ощущение что ты скоро лопнеш как мыльный пузырь, эк тебя раздула то за последние пару лет. Но я тебя могу успокоить, это все из-за Радуловой, ты её троллил раньше ужас как, вот тебе на карму и прилетело наказание бггг)))
(Reply) (Thread)