Logo

רד-בורד: ארכיון

ראשי > אבטחת מידע > בעיה בעריכת מחרוזות בקבצי EXE ע"י HEX EDITOR

28/12/2005 22:17:31 B-Nary
יש לי בעיה שמציקה לי הרבה זמן.
אז ככה הבעיה היא בעריכת מחרוזות שבקבצי EXE ע"י HEX EDITOR.
אין לי בעיה לשנות את המחרוזת, אבל אם אני מוסיף לה תוים (insert bytes) ע"י ה-HEX EDITOR אז התוכנה נדפקת, וזה די צפוי כי ב-HEADER יש גדלים לכל SECTION ויש גם CHECKSUM וכו’... ובכולם אני פוגע.
אז איך אני מתגבר על זה? ניסיתי לערוך את ה-RAW SIZE של ה-SECTION, לתקן CHECKSUM וכו’ (ע"י PE Editor) אבל שום דבר לא הצליח, אני בטוח שיש איזה שיטה קלה או משהו כזה.

תודה רבה.
29/12/2005 14:32:24 antivirus
אני לא מבין גדול בזה כן?..
אבל לפי מה שאני הבנתי פשוט אתה צריך למחוק 3 תווים ולשים במקומם רק 3...
כדי לא לפגוע בבדיקה..
אני בטוח שיש דרכים יותר אפקטיביות וטובות
אני אישית לא מכיר..
30/12/2005 05:47:02 cp77fk4r
B-Nary, אם אין שום בדיקה, אז הדרך היא פשוט ע"י שינוי הערכים בHEADER, אבל כמו שציינת, לפעמים יש את הבדיקות Checksum, אבל חוץ מהדברים האלה, יש גם את השלד של התוכנה, שבו אסור לפגוע, לכל תוכנה יש שלד, אם זה הHEADER והFOOTER, או אם מדובר בכלל בדברים שהקומפיילר מוסיף בכדי להקל על המעבד ודברים כאלה, אם התוכנה נדפקת לך למרות שאתה משנה את הבדיקות והHEADER, זה כנראה מפני שאתה פוגם בשלד התוכנה.
02/01/2006 00:29:57 B-Nary
cp - תודה, אז מה אני אמור לעשות אם זה פוגע בשלד?
אני ממש לא רוצה לבנות loader שמשנה את הערך מהזכרון, כי זה דיי נובי :\
02/01/2006 00:35:18 cp77fk4r
בבקשה, אבל גם לעשות מקטע שיטען את הערכים מהתאים האלה, ישנה אותם- ויציג אותם זה לא יעזור לך, כי לא יהיה לך אפשרות להציג את כל המחרוזת, שלא נדבר על לאכסן אותה (לא בגלל שהיא גדולה _מאוד_- אלה בגלל שהיא גדולה _מדי_ (כשאתה מנסה להכניס חמישה תווים בתא שיכול לאכסן רק ארבעה תווים אז המחרוזת גדולה _מדי_).

פשוט תנסה למצוא את הקטעים שאחראים על השלד של התוכנה ולערוך אותם, זה לוקח די הרבה זמן, תתחיל במציאת האנטרי-פויינט ושם לפי גודל הקובץ תבדוק לאיפה אתה ממשיך.

אתה יכול אפילו להשתמש בDebug.exe של Win32..[ההודעה נערכה על-ידי cp77fk4r ב-02/01/2006 00:38:59]
עמודים: 1