Рубрика «ассемблер» - 15

«Почему всем можно, а мне нельзя?» или реверсим API и получаем данные с eToken - 1

Привет!

Однажды, у нас на предприятии встала задача о повышении уровня безопасности при передаче ОЧЕНЬ ВАЖНЫХ ФАЙЛОВ. В общем, слово за слово, и пришли мы к выводу, что передавать надо с помощью scp, а закрытый ключ сертификата для авторизации хранить на брелке типа eToken, благо их у нас накопилось определенное количество.

Идея показалась неплохой, но как это реализовать? Тут я вспомнил, как однажды в бухгалтерии не работал банк-клиент, ругаясь на отсутствие библиотеки с говорящим именем etsdk.dll, меня охватило любопытство и я полез ее ковырять.

Вообще, компания-разработчик на своем сайте распространяет SDK, но для этого надо пройти регистрацию как компания-разработчик ПО, а это явно не я. На просторах интернета документацию найти не удалось, но любопытство одержало верх и я решил разобраться во всём сам. Библиотека – вот она, время есть, кто меня остановит?
Читать полностью »

Без реле, но и без Ардуины или Драка в песочнице - 1

Да простят меня читатели, но это реплика на реплику. А началось всё с интересной статьи, где автор познакомил нас со своей разработкой на базе ATMega8. Понятно, камень этот избыточен для той задачи, которая была на нем реализована, на что и обратил внимание оппонент.

Но теперь уже у меня засвербило… гм, в ладонях, и я не мог не попытаться вставить свои пять копеек. Я понимаю, настоящая моя заметка для комментария великовата, а на полноценную статью не тянет, но все же попробую.

Пересказывать содержание предыдущих серий смысла нет, кому интересно — я привел ссылки. Перейдем сразу к сути.
Читать полностью »

Доброго дня!

Как сообщает официальный сайт, вчера состоялся релиз первой стабильной версии операционной системы MenuetOS 64 — генетического родственника(можно даже сказать родителя) операционной системы KolibriOS, так же полностью написанную на ассемблере. Читать полностью »

Здравствуйте, уважаемые читатели Хабра.
После долгого перерыва с вами опять я и мы продолжаем копаться во внутренностях UEFI. На этот раз я решил показать несколько техник, которые позволяют упростить реверс и отладку исполняемых компонентов UEFI на примере устаревшего-но-все-еще-популярного PEI-модуля SecureUpdating, который призван защищать прошивку некоторых ноутбуков HP от модификации.

Предыстория такова: однажды вечером мне написал знакомый ремонтник ноутбуков из Беларуси и попросил посмотреть, почему ноутбук с замененным VideoBIOS'ом не хочет стартовать, хотя такой же точно рядом успешно стартует. Ответ оказался на поверхности — не стартующий после модификации ноутбук имел более новую версию UEFI, в которую добрые люди из HP интегрировали защиту от модификации DXE-тома (а там и находится нужный нам VideoBIOS вместе с 80% кода UEFI), чтобы злобные вирусы и не менее злобные пользователи ничего там не сломали ненароком. Тогда проблема решилась переносом PEI-модуля SecureUpdating из старой версии UEFI в новую, но через две недели тот же человек обратился вновь, на этот раз на похожем ноутбуке старая версия модуля работать отказалась, и моя помощь понадобилась вновь.
Если вас заинтересовали мои дальнейшие приключения в мире UEFI PEI-модулей с дизассемблером и пропатченными переходами — добро пожаловать под кат.
Читать полностью »

Все, наверное, знают, что в песочнице Minecraft можно делать абсолютно всё. Различные цифровые схемы и процессоры создают в Minecaft уже с давних пор. Но тот процессор, о котором я пишу, на самом деле уникален! Его название — DjCPU8.

Полноценный процессор в Minecraft: как он работает, как на нем программировать и для чего он? - 1

Почему он уникален? По многим причинам. Давайте по порядку:

1) Скорость работы. Это пока самый быстрый процессор такого уровня в Minecraft. Одна инструкция выполняется примерно 1 секунду.
2) Количество памяти. Оперативной памяти аж 256 байт. Не знаю других ЭВМ с таким объемом памяти.
3) Вычислительные способности. 42 инструкции. Работает с арифметикой, логикой, стеком, вводом/выводом, регистрами и т.д.
4) Ассемблер. В других процессорах нужно вводить программу в двоичном виде. Но в DjCPU8 можно вводить ее текстом.
5) Простота. Ни с какой другой ЭВМ невозможно так просто и приятно работать.
6) Широта применения. Порты ввода/вывода можно создавать в любом месте.
Читать полностью »

Шел мелкий и противный дождь. Настроение было гнусным.
Он лежал на обочине и тихо ржавел. Рядом на столбе сверкал огнями молодой собрат.
Я остановился и положил его в багажник.
Я уже не один.
И он не один.
Читать полностью »

image
(на картинке изображен великий математик и криптограф Алан Тьюринг).

Цель

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

Критический баг в CoreGraphics в iOS В этой статье мы ищем (и, что характерно, находим!) критический баг в CoreGraphics в iOS. Сразу скажу, что на полноценную уязвимость этот баг конечно не тянет — его эксплуатация не приводит, например, к arbitrary code execution. Однако этот баг позволяет аварийно завершать приложения которые используют WebKit: Mobile Safari, Google Chrome для iOS, всяческие почтовые клиенты и т.п., что тоже может быть полезно для хакера в некоторых ситуациях. Итак, приступим к поискам.Читать полностью »

Хочу рассказать о программировании дисплея на контроллере ST7920 с использованием ATtiny2313 контроллера.

Программирование дисплея на контроллере ST7920
Читать полностью »

Всем добрый вечер! Веду свою трансляцию из уютного мира, который называется «ассемблер». Сразу поясню что тема касается микроконтроллеров AVR — и я пока ещё не знаю, пригодится ли этот пост тем, кто хочет использовать ассемблер для любой другой задачи. Дело в том, что я буквально несколько дней назад начал учить ассемблер с нуля — нужно сделать одно устройство — и я решил сделать в нём всё самостоятельно. Так вот — в один прекрасный день понял, что учить ассемблер абсолютно бесполезно! Ассемблер можно только понять! То есть всем тем, кто хочет программировать на ассемблере я настоятельно рекомендую детально вникнуть в то, каким образом ФИЗИЧЕСКИ работает микроконтроллер, а затем уже изучать тонкости команд.
Так вот, я пожалуй начну небольшой цикл статей, в которых буду с самого начала рассказывать как именно я понял те или иные вещи в программировании на ассемблере — думаю для тех, кто вообще не понимает что такое асм я буду как раз таким «переводчиком» с языка тех, кто в этом деле очень хорошо шарит.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js