Angr инструкция пропуска вызова с символическим адресатом

Я работаю с Angr над символической казнью. Я хочу пропустить инструкцию вызова с символическим адресатом. Например, если есть инструкция:

call    qword ptr [rax + 8]

А в памяти (rax + 8) хранится символическое значение. Я хочу, чтобы angr пропустил эту инструкцию и установил rax на новое символическое значение. Это означает, что я хочу, чтобы angr возвращался без ограничений каждый раз, когда встречается символический вызов, вместо того, чтобы фактически переходить к вызову функции.

Я знаю, что мы можем сделать это с помощью хука, примерно так: project.hook(addr, SIM_PROCEDURES['stubs']['ReturnUnconstrained']. Проблема в том, что я не знаю адреса инструкций, вызывающих символический адрес, пока не дойду до этой инструкции.

Есть способ сделать это?

Большое спасибо:)

0 ответов

Другие вопросы по тегам