ANGR هو إطار تحليل ثنائي منصة واضحة. يتم تقديمه لك من قبل مختبر أمان الكمبيوتر في جامعة كاليفورنيا في سانتا باربرا ، و Sefcom في جامعة ولاية أريزونا ، وفريق CTF المرتبط به ، وشلفيش ، ومجتمع المصدر المفتوح ، ورينيلموت .
الصفحة الرئيسية: https://angr.io
مستودع المشروع: https://github.com/angr/angr
الوثائق: https://docs.angr.io
وثائق API: https://api.angr.io/en/latest/
Angr هي مجموعة من مكتبات Python 3 التي تتيح لك تحميل ثنائي والقيام بالكثير من الأشياء الرائعة:
تتمثل عملية ANGR الأكثر شيوعًا في تحميل ثنائي: p = angr.Project('/bin/bash') إذا قمت بذلك في REPLIST المحسّنة مثل ipython ، يمكنك استخدام tab-autocomplete لتصفح الأساليب التي يمكن الوصول إليها على المستوى الأعلى و docstrings.
الإصدار القصير من "كيفية تثبيت angr" هو mkvirtualenv --python=$(which python3) angr && python -m pip install angr .
ANGR يفعل الكثير من الأشياء التحليل الثنائي. لتبدأ ، إليك مثال بسيط على استخدام التنفيذ الرمزي للحصول على علامة في تحدي CTF.
import angr
project = angr . Project ( "angr-doc/examples/defcamp_r100/r100" , auto_load_libs = False )
@ project . hook ( 0x400844 )
def print_flag ( state ):
print ( "FLAG SHOULD BE:" , state . posix . dumps ( 0 ))
project . terminate_execution ()
project . execute ()