שְׁאֵלָה:
IDA Pro שינוי שם היבוא
IChooseYou
2014-08-25 22:33:56 UTC
view on stackexchange narkive permalink

קובץ PE זה הורס את טבלת כתובות הייבוא ​​שלו. עם זאת, כל כתובות הפונקציות נמצאות בקטע _rdata כאן:

rdata_segment

איזו דרך ישירה לשנות את שם הפונקציות הללו?

שְׁלוֹשָׁה תשובות:
Jason Geffner
2014-08-25 22:36:21 UTC
view on stackexchange narkive permalink

לפני שתזרוק את זיכרון התהליך לדיסק, השתמש בכלי כמו Scylla כדי לשחזר את טבלת הייבוא.

Scylla

Igor Skochinsky
2014-08-25 22:47:39 UTC
view on stackexchange narkive permalink

בזמן איתור באגים, בחר בטבלת הייבוא ​​והפעל idc\renimp.idc.

התגובה העליונה מהקובץ:

  / * שינוי שם היבוא. סקריפט זה משנה את שם הערכים של טבלת ייבוא ​​בנויה באופן דינמי. לדוגמה, מטבלה ככה: dd לקזז ntdll_NtPowerInformation dd לקזז ntdll_NtInitiatePowerAction dd לקזז ntdll_NtSetThreadExecutionState dd לקזז ntdll_NtRequestWakeupLatency dd לקזז ntdll_NtGetDevicePowerState dd לקזז ntdll_NtIsSystemResumeAutomatic dd לקזז ntdll_NtRequestDeviceWakeup dd לקזז ntdll_NtCancelDeviceWakeupRequest dd לקזז ntdll_RtlQueryRegistryValues ​​היא תיצור טבלה כמו זו: NtPowerInformation dd לקזז ntdll_NtPowerInformation NtInitiatePowerAction dd אופסט ntdll_NtInitiatePowerAction NtSetThreadExecutionState dd לקזז ntdll_NtSetThreadExecutionState NtRequestWakeupLatency dd לקזז ntdll_NtRequestWakeupLatency NtGetDevicePowerState dd לקזז ntdll_NtGetDevicePowerState NtIsSystemResumeAutomatic dd לקזז ntdll_NtIsSystemResumeAutomatic NtRequestDeviceWakeup dd לקזז ntdll_NtRequestDeviceWakeup NtCancelDeviceWakeupRequest dd לקזז ntdll_NtCancelDev iceWakeupRequest RtlQueryRegistryValues ​​קיזוז dd ntdll_RtlQueryRegistryValues ​​שימוש: בחר בטבלת הייבוא ​​והפעל את הסקריפט. בעיות ידועות: אם שם ה- dll מכיל קו תחתון, ייתכן ששמות הפונקציות שגויים. יש לנקוט בזהירות מיוחדת ב- ws2_32.dll אך ל- dll אחרים יהיו שמות פונקציות שגויים. * /  
user19438
2017-03-09 07:21:30 UTC
view on stackexchange narkive permalink

ככל הנראה אתה משתמש במזבלה של תהליך. כתובות אלה תלויות בגירסת Windows ובחבילת השירות. אם הייתה לך הזדמנות להריץ אותו ב- VM, נסה לתנודתיות. תעשה פרוקדומפ ואז אימפה. impscan יכול לתת לך מזהה שמשנה את השמות של כתובות אלה לשמות ה- API שלהם.

שיטה זו עובדת היטב גם עם קודים שאינם מוזרקים על ידי PE.

https: // github .com / volatilityfoundation / volatility / wiki / Command% 20Reference% 20Mal # impscan



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