שְׁאֵלָה:
IDA Pro / IDAPython אוטומציה באמצעות IDAPython
user3119546
2013-12-30 23:38:03 UTC
view on stackexchange narkive permalink

ניסיתי להשתמש ב- IDA Pro (עם bindiff) באמצעות IDAPython כדי להפוך את תהליך הניתוח של קובץ bios.dump לאוטומטי תוך הוצאת התוצאות לקובץ .txt / .asm. מכאן אני רוצה להשתמש בפונקציות bindiff כדי להשוות מסד נתונים זה עם מסד נתונים אחר ולהפיק הבדלים לקובץ. יש המלצות?

שתיים תשובות:
tmr232
2016-10-12 01:23:11 UTC
view on stackexchange narkive permalink

עם BinDiff 4.2 בחינם כעת, אתה יכול לבצע ניתוח אצווה עם מעט עבודה.

בספריית ההתקנה של BinDiff ( zynamics / BinDiff 4.2 ), תמצא bin / differ.exe ו- bin / differ64.exe . אלה קבצים בינאריים להבדל אצווה של קבצי IDB ו- .BinExport .

השימוש הבסיסי יהיה:

  different --primary = <directory- with-IDBs> --output-dir = <output-directory>  

למרבה הצער, זה לא עובד (לפחות במחשב שלי) מכיוון ש- differ.exe לא מצליח למצוא ההפעלה של IDA ומנסה לבצע את הספריה במקום זאת.

כדי לפתור זאת, נצא ייצוא IDB באמצעות הפקודה הבאה:

  "<path-to-idaq.exe>" - A -OExporterModule: <result-directory> -S "<path-to-export-script>" "<path-to-idb>"  

סקריפט הייצוא הוא .idc עם הקוד הבא:

  #include <idc.idc>static main () {אצווה (0); לַחֲכוֹת(); יציאה (1 - RunPlugin ("zynamics_binexport_8", 2));}  

ברגע שיש לך את כל הקבצים .BinExport שלך בספרייה אחת, הפעל את הפקודה differ.exe באותה ספרייה (תן לה את הספריה עם קבצי .BinExport במקום קבצי .idb ) ותקבל .BinDiff קבצים לכל ההבדלים האפשריים. ניתן לפתוח אותם ב- IDA, או לנתח אותם ידנית (הם מסדי נתונים של SQLite).

joxeankoret
2013-12-31 00:17:42 UTC
view on stackexchange narkive permalink

אם אתה שואל לגבי שימוש ב- BinDiff במצב אצווה: מצטער, אינך יכול. זה מוגבל בכוונה.

מאיזו סיבה זה מוגבל?
VxClass, אני מניח. אבל אני לא יודע את הסיבה, מצטער.
האם אתה מכיר תוכנה אחרת שאוכל לחקור שניתן לקרוא לה מרחוק כדי להשוות בין שני קבצי בינארי / BIOS?
יש הרבה כלים שונים (kdiff וכו '...), אבל אלה לא כמו BinDiff.
האם בכל מקרה אוכל לייצא את תוצאות ה- bindiff לקובץ טקסט קריא (.txt)? נראה לי שרק אני רואה את התוצאות דרך IDA GUI ו- .BinExports הם לא מה שאני מחפש בעת שליחת דוחות.


שאלה ותשובה זו תורגמה אוטומטית מהשפה האנגלית.התוכן המקורי זמין ב- stackexchange, ואנו מודים לו על רישיון cc by-sa 3.0 עליו הוא מופץ.
Loading...