
متعقّب الدوال
functrace هي أداة تساعد في تحليل ملف ثنائي باستخدام التتبع الديناميكي من خلال DynamoRIO (http://dynamorio.org/).
فيما يلي بعض الميزات المنفذة (استنادًا إلى DynamoRIO):
$ wget https://github.com/DynamoRIO/dynamorio/releases/download/release_7_0_0_rc1/DynamoRIO-Linux-7.0.0-RC1.tar.gz
$ tar xvzf DynamoRIO-Linux-7.0.0-RC1.tar.gz
أو
$ wget https://github.com/DynamoRIO/dynamorio/releases/download/cronbuild-7.91.18047/DynamoRIO-x86_64-Linux-7.91.18047-0.tar.gz
$ tar xvzf DynamoRIO-x86_64-Linux-7.91.18047-0.tar.gz
يمكنك أيضًا استنساخ وتجميع DynamoRIO مباشرة
$ git clone https://github.com/invictus1306/functrace
$ mkdir -p functrace/build
$ cd functrace/build
$ cmake .. -DDynamoRIO_DIR=/full_DR_path/cmake/
$ make -j4

$ drrun -c libfunctrace.so -report_file report -- target_program [args]
الخيارات التالية لـ [functrace](https://github.com/invictus1306/functrace) مدعومة:
-disassembly -> فك تجميع جميع الدوال
-disas_func function_name -> فك تجميع الدالة function_name فقط
-wrap_function function_name -> تغليف الدالة function_name
-wrap_function_args num_args -> عدد وسائط الدالة المغلفة
-cbr -> إزالة bb من ذاكرة التخزين المؤقت (في حالة القفز الشرطي)
-report_file file_name -> اسم ملف التقرير (مطلوب)
-verbose -> مطول
$ drrun -c libfunctrace.so -report_file report -verbose -- target_program [args]
$ drrun -c libfunctrace.so -report_file report -disassembly -- target_program [args]
$ drrun -c libfunctrace.so -report_file report -disas_func name_function -- target_program [args]
$ drrun -c libfunctrace.so -report_file report -wrap_function name_function -wrap_function_args num_args -- target_program [args]
$ drrun -c libfunctrace.so -report_file report -cbr -- target_program [args]
ثغرة في مكتبة خادم LIVE555 RTSP. هذا هو الوصف.

تم الاختبار على Ubuntu 16.04.5 LTS 64 بت