Перейти к основному содержимому
  1. Блог/

Как подружить IDA Pro с инструкциями RISC-V P Extension

·1 минута·
До и после применения нашего расширения

За последние несколько лет рынок наполнился огромным количеством новых процессорных чипов из Поднебесной — в частности, на базе стандарта RISC-V, со своими собственными реализациями ядер и расширениями.

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

Поэтому пришлось:

— пройти квест по определению, что это за инструкции; оказалось, что они относятся к расширению P Extension (оно же Packed SIMD Extension);

— на основе раннего черновика спецификации P Extension написать декодер для этих инструкций и подружить его с IDA Pro;

— разработать лифтер для правильной генерации псевдокода (без ассемблерных вставок и пропущенных операций).

Подробности этого приключения по улучшению инструментария — в статье “От скалярной тоски к SIMD-эйфории: как подружить IDA Pro с инструкциями RISC-V P Extension”.

Related