ABA


"איך עושים קראק למשחק/תוכנה ?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #5287 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 5287
HwM

   20:30   05.03.03   
אל הפורום  
  איך עושים קראק למשחק/תוכנה ?  
 
   תודה רבה לעוזרים
http://planet.nana.co.il/g-man002/HWM.gif


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  פורצים תתוכנה Corona 05.03.03 21:22 1
  ראשית מספר שאלות dryice 05.03.03 22:38 2
     האמת שגם אני הייתי רוצה לדעת לבנות קראק GK2k 06.03.03 18:56 3
         הסבר, dryice 08.03.03 03:11 12
  אפ GK2k 07.03.03 11:30 4
     הרקע שלי בתיכנות הוא מצומצם מאוד אבל אני אנסה Fire_Bullet 07.03.03 15:26 5
         נכון חלקית... Dudenland 07.03.03 18:01 6
             בגלל זה אמרתי שאני לא משהו בתיכנות... Fire_Bullet 07.03.03 18:03 7
             אם איזה תוכנה אני עושה את זה ? HwM 07.03.03 20:04 8
                 כל תוכנה... Dudenland 07.03.03 21:51 9
                     אפשר שמות ? HwM 07.03.03 23:50 10
                         אם תשלח לי הודעה לפרטי אני אשאל את חבר שלי Fire_Bullet 07.03.03 23:53 11

       
Corona

   21:22   05.03.03   
אל הפורום  
  1. פורצים תתוכנה  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
dryice

   22:38   05.03.03   
אל הפורום  
  2. ראשית מספר שאלות  
בתגובה להודעה מספר 0
 
   האם אתה יודע לתכנת ברמה סבירה?
האם אתה יודע אסמבלי?
האם אתה מבין באופן כללי, איך תוכנה גדולה מבצעת דברים
מבחינת מחסנית ופסיקות. (למשל האם אתה מכיר את הC calling convention
ואת מנגנון הבקשות ממערכת הפעלה על המחשב שלך?)

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

DRYICE


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
GK2k

   18:56   06.03.03   
אל הפורום  
  3. האמת שגם אני הייתי רוצה לדעת לבנות קראק  
בתגובה להודעה מספר 2
 
   אני יודע אסמבלי ואני יודע מתי המחשב עוהש פסיקות ואני יודע איך מחסנית עובדת ....

אני ממש הייתי רוצה לדעת איך קראק עובד.

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


זאת מחשבה נכונה??


תודה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
dryice

   03:11   08.03.03   
אל הפורום  
  12. הסבר,  
בתגובה להודעה מספר 3
 
   (לחלוטין לא הבנתי מה אתה רוצה לעשות, זה לא נשמע נכון במיוחד)

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

בשביל לעשות כזה דבר אנחנו צריכים לשנות את הקובץ,
אנחנו יכולים לעשות לו reverse assembly אבל נקבל המון המון
מידע שלא פשוט לקרוא.
בשביל לאתר את המקום הרלוונטי אנחנו לרוב נשתמש בdebuger
נריץ את התוכנית דרכו לכשנקבל את ההודעה המעצבנת או הודעה
שהבדיקה נכשלה, אנו נסתכל בdebuger איפה נמצאת התוכנית
וכן נסתכל על המחסנית לראות את שרשרת הקריאות.
קל לראות שרשרת קריאות בגלל שלפי הC Calling convention
דוחפים בכל stack frame את הBP הקודם.
אז אנחנו קוראים רק את הקוד הרלוונטי, מזהים איפה יש את
הבדיקה ומבטלים אותה, יש לנו שני כלים עיקריים,
האחד הפיכת פקודות לNOP וסילוקן מהקוד,
השני החלפת je בjne אפשר כמובן לעשות שינויים יותר מורכבים,
אלו דורשים לרוב הבנה יותר עמוקה של הקוד אותו אנו משנים.
האילוץ המרכזי שלנו הוא שאנו לא יכולים לשנות את גודל הקובץ
זה הורס הכל, אנחנו לא יכולים לעשות שינוי שהוא לא החלפת
תוכן של חלק מסוים מהקוד במשהוא אחר באותו גודל בדיוק.

DRYICE


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
GK2k

   11:30   07.03.03   
אל הפורום  
  4. אפ  
בתגובה להודעה מספר 0
 
   אפ


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Fire_Bullet

   15:26   07.03.03   
אל הפורום  
  5. הרקע שלי בתיכנות הוא מצומצם מאוד אבל אני אנסה  
בתגובה להודעה מספר 4
 
   להסביר ואם משהו ממה שאני אומר לא נכון אז אנה תקן אותי (dryice).

*הייתה לי פעם תוכנת האקרים שהיה בה הסבר איך לפרוץ תוכנה (לא לעשות לה קראק) אבל
זה נתן לי רקע...

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

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

מקווה שעזרתי !


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Dudenland

   18:01   07.03.03   
אל הפורום  
  6. נכון חלקית...  
בתגובה להודעה מספר 5
 
   מה שעושים, באם התוכנה בעצם מלאה, אך מתפקדת כ-דמו, זה כזה דבר:
בודקים מהי ההודעה שקופצת כשמפעילים את התוכנה.
עושים disassembly לתוכנה, ומחפשים את השורה שבה מופיע הטקסט שהיה כתוב בהודעה.
בודקים אחרי הטקסט את התנאי, ומבטלים את ה-JMP (הפקודה), כך שההודעה תופיע, אך לא תקפוץ לקטע התוכנית שמריץ רק דמו.

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Fire_Bullet

   18:03   07.03.03   
אל הפורום  
  7. בגלל זה אמרתי שאני לא משהו בתיכנות...  
בתגובה להודעה מספר 6
 
   אתה אמרת את החלק המעשי אני יותר נתתי כיוון בחלק הרעיוני...
וההסבר שלך ממש מעולה!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
HwM

   20:04   07.03.03   
אל הפורום  
  8. אם איזה תוכנה אני עושה את זה ?  
בתגובה להודעה מספר 6
 
   http://planet.nana.co.il/g-man002/HWM.gif


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Dudenland

   21:51   07.03.03   
אל הפורום  
  9. כל תוכנה...  
בתגובה להודעה מספר 8
 
   שמסוגלת לעשות disassembly או debug לקובץ מורץ...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
HwM

   23:50   07.03.03   
אל הפורום  
  10. אפשר שמות ?  
בתגובה להודעה מספר 9
 
   http://planet.nana.co.il/g-man002/HWM.gif


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Fire_Bullet

   23:53   07.03.03   
אל הפורום  
  11. אם תשלח לי הודעה לפרטי אני אשאל את חבר שלי  
בתגובה להודעה מספר 10
 
   ששלחתי לו את התוכנה הזאת שמלמדת איך לפרוץ תוכנה... כי אני לא מוצא על המחשב שלי...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net