Symboli c исполнение с Firefox с использованием ангр - PullRequest
0 голосов
/ 04 февраля 2020

Я новичок в символическом c исполнении. Я хочу выполнить символическое c над Firefox, начиная с определенной точки. Например, я хочу запустить Firefox в GDB с точкой останова, установленной в место, с которого я хочу начать выполнение symboli c. Когда наступит точка останова, я хочу, чтобы выполнение Symboli c началось с наследованными значениями регистров.

Как это можно сделать?

Я нашел angrgdb . Что я не уверен, так это то, что: когда я запускаю gdb ./path/to/my/firefox/binary и внутри экземпляра gdb продолжаю выполнение символов c с помощью angrgdb, это фактически переходит сборку кода Firefox внутри некоторой библиотеки?

Я видел, что auto_load_libs имеет значение false в load_options где-то внутри кодовой базы angrdbg, поэтому не уверен, что он просто использует какое-то значение symboli c, представляющее возвращаемое значение любой функции, не входящей в firefox двоичный файл (./firefox-63.0.3/objdir-ff-asan/dist/bin/firefox).

Другая вещь, которую я нашел, это Symboin . Но, похоже, он просто запускает программу, используя gdb, пока не будет достигнут какой-либо адрес, и запустит выполнение символов c. Однако мне нужно начать выполнение Symboli c, когда более сложная логика c удовлетворена, что означает, что мне нужно взаимодействовать с GDB, прежде чем решить, что выполнение Symboli c может начаться.

...