Технологии Linux в 366 байтах. Конкурс обфусцированного Cи показал, на что способна простота

weaver

Make zeroday easy.
Admin
Регистрация
06.10.25
Сообщения
471
Реакции
569
Депозит
0.00
Один конкурсный эксперимент неожиданно вышел далеко за рамки развлечения.



Даже намеренно запутанный код иногда приносит практическую пользу, и результаты 29-го Международного конкурса обфусцированного кода на C (IOCCC) Для просмотра ссылки Войди или Зарегистрируйся такой редкий случай. Жюри выбрало 23 работы, а одной из самых заметных стал эмулятор архитектуры Subleq, который Адриан Кейбл Для просмотра ссылки Войди или Зарегистрируйся всего в 366 байтах.

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

Проект Для просмотра ссылки Войди или Зарегистрируйся ранее уже создал для Subleq компилятор C на базе LLVM, перенёс Linux и добавил библиотеки для C и C++. Миниатюрный эмулятор Кейбла же показал цветное множество Мандельброта, игру Pong, Linux и несколько приложений. Для вывода графики программа использует SDL, но весь её основной код занимает девять строк.

Среди других победителей оказался Ник Крейг-Вуд, который Для просмотра ссылки Войди или Зарегистрируйся рабочий эмулятор оригинальной Nintendo Game Boy в 66 строках C. Ещё одна его программа Для просмотра ссылки Войди или Зарегистрируйся эмуляцию Commodore 64 с языком FRACTRAN, а третья Для просмотра ссылки Войди или Зарегистрируйся Forth и строила вращающееся изображение множества Мандельброта.

Юсукэ Эндо получил сразу три награды и довёл число своих побед в конкурсе до 23. Одна работа имитировала индикаторные лампы, подсвечивая цифры прямо в собственном исходном коде. Другая постоянно переписывала и заново собирала себя, чтобы вывести код инструмента сравнения файлов.

Самую необычную игровую механику Для просмотра ссылки Войди или Зарегистрируйся Йона Улленберг. Его Pong одновременно служит программой, игровым экраном и собственным исходным кодом. После каждого нажатия клавиши программа меняет расположение символов и создаёт новую версию себя, которую нужно снова скомпилировать для следующего кадра.

Конкурс IOCCC проводят с 1984 года, а работы оценивают по изобретательности и необычному использованию языка C. Итоги конкурса показали, что намеренно непонятный код способен не только развлекать, но и демонстрировать практические идеи для эмуляции и сохранения программ.

Источник: securitylab.ru
 

bootledger

Experienced
Local User
Регистрация
13.01.26
Сообщения
175
Реакции
59
Вот это настоящие шедевры. Не то что ужасающие несуразные портянки на питонах, растах и голангах-)
 
Реакции: weaver