תוכן Aviv C - HWzone פורומים
עבור לתוכן
  • צור חשבון

Aviv C

משתמש רשום
  • מספר הודעות

    343
  • הצטרפות

  • ביקר לאחרונה

    אף פעם

הודעות שנפתחו על-ידי Aviv C

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

    הדרך שמשתמשים בה היא debugging בעזרת gdb.

    עברתי 5 מתוך 6 שלבים ונתקעתי פה:

    08048bf7 <phase_6>:
    8048bf7: 55 push %ebp
    8048bf8: 89 e5 mov %esp,%ebp
    8048bfa: 57 push %edi
    8048bfb: 56 push %esi
    8048bfc: 53 push %ebx
    8048bfd: 83 ec 3c sub $0x3c,%esp
    8048c00: 8d 45 dc lea 0xffffffdc(%ebp),%eax
    8048c03: 89 44 24 04 mov %eax,0x4(%esp)
    8048c07: 8b 45 08 mov 0x8(%ebp),%eax
    8048c0a: 89 04 24 mov %eax,(%esp)
    8048c0d: e8 53 06 00 00 call 8049265 <read_six_numbers>
    8048c12: bb 00 00 00 00 mov $0x0,%ebx
    8048c17: 8b 44 9d dc mov 0xffffffdc(%ebp,%ebx,4),%eax
    8048c1b: 83 e8 01 sub $0x1,%eax
    8048c1e: 83 f8 05 cmp $0x5,%eax
    8048c21: 76 05 jbe 8048c28 <phase_6+0x31>
    8048c23: e8 fb 05 00 00 call 8049223 <explode_bomb>
    8048c28: 8d 7b 01 lea 0x1(%ebx),%edi
    8048c2b: 83 ff 06 cmp $0x6,%edi
    8048c2e: 0f 84 9a 00 00 00 je 8048cce <phase_6+0xd7>
    8048c34: 8d 74 9d dc lea 0xffffffdc(%ebp,%ebx,4),%esi
    8048c38: 89 fb mov %edi,%ebx
    8048c3a: 8d 45 dc lea 0xffffffdc(%ebp),%eax
    8048c3d: 89 45 c0 mov %eax,0xffffffc0(%ebp)
    8048c40: 8b 55 c0 mov 0xffffffc0(%ebp),%edx
    8048c43: 8b 44 ba fc mov 0xfffffffc(%edx,%edi,4),%eax
    8048c47: 3b 46 04 cmp 0x4(%esi),%eax
    8048c4a: 75 05 jne 8048c51 <phase_6+0x5a>
    8048c4c: e8 d2 05 00 00 call 8049223 <explode_bomb>
    8048c51: 83 c3 01 add $0x1,%ebx
    8048c54: 83 c6 04 add $0x4,%esi
    8048c57: 83 fb 05 cmp $0x5,%ebx
    8048c5a: 7e e4 jle 8048c40 <phase_6+0x49>
    8048c5c: 89 fb mov %edi,%ebx
    8048c5e: eb b7 jmp 8048c17 <phase_6+0x20>
    8048c60: 8b 49 08 mov 0x8(%ecx),%ecx
    8048c63: 83 c0 01 add $0x1,%eax
    8048c66: 3b 44 95 dc cmp 0xffffffdc(%ebp,%edx,4),%eax
    8048c6a: 7c f4 jl 8048c60 <phase_6+0x69>
    8048c6c: 89 4c 95 c4 mov %ecx,0xffffffc4(%ebp,%edx,4)
    8048c70: 83 c2 01 add $0x1,%edx
    8048c73: 83 fa 05 cmp $0x5,%edx
    8048c76: 7f 0c jg 8048c84 <phase_6+0x8d>
    8048c78: b9 fc a5 04 08 mov $0x804a5fc,%ecx
    8048c7d: b8 01 00 00 00 mov $0x1,%eax
    8048c82: eb e2 jmp 8048c66 <phase_6+0x6f>
    8048c84: 8b 4d c4 mov 0xffffffc4(%ebp),%ecx
    8048c87: 8b 45 c8 mov 0xffffffc8(%ebp),%eax
    8048c8a: 89 41 08 mov %eax,0x8(%ecx)
    8048c8d: 8b 55 cc mov 0xffffffcc(%ebp),%edx
    8048c90: 89 50 08 mov %edx,0x8(%eax)
    8048c93: 8b 45 d0 mov 0xffffffd0(%ebp),%eax
    8048c96: 89 42 08 mov %eax,0x8(%edx)
    8048c99: 8b 55 d4 mov 0xffffffd4(%ebp),%edx
    8048c9c: 89 50 08 mov %edx,0x8(%eax)
    8048c9f: 8b 45 d8 mov 0xffffffd8(%ebp),%eax
    8048ca2: 89 42 08 mov %eax,0x8(%edx)
    8048ca5: c7 40 08 00 00 00 00 movl $0x0,0x8(%eax)
    8048cac: 89 cb mov %ecx,%ebx
    8048cae: be 00 00 00 00 mov $0x0,%esi
    8048cb3: 8b 53 08 mov 0x8(%ebx),%edx
    8048cb6: 8b 03 mov (%ebx),%eax
    8048cb8: 3b 02 cmp (%edx),%eax
    8048cba: 7d 05 jge 8048cc1 <phase_6+0xca>
    8048cbc: e8 62 05 00 00 call 8049223 <explode_bomb>
    8048cc1: 8b 5b 08 mov 0x8(%ebx),%ebx
    8048cc4: 83 c6 01 add $0x1,%esi
    8048cc7: 83 fe 05 cmp $0x5,%esi
    8048cca: 74 13 je 8048cdf <phase_6+0xe8>
    8048ccc: eb e5 jmp 8048cb3 <phase_6+0xbc>
    8048cce: b9 fc a5 04 08 mov $0x804a5fc,%ecx
    8048cd3: b8 01 00 00 00 mov $0x1,%eax
    8048cd8: ba 00 00 00 00 mov $0x0,%edx
    8048cdd: eb 87 jmp 8048c66 <phase_6+0x6f>
    8048cdf: 83 c4 3c add $0x3c,%esp
    8048ce2: 5b pop %ebx
    8048ce3: 5e pop %esi
    8048ce4: 5f pop %edi
    8048ce5: 5d pop %ebp
    8048ce6: c3 ret

    חשבתי על זה כבר כמה זמן אבל אין לי מושג מה הולך פה.

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

    אני עד כדי כך נואש עד שחשבתי לנסות את כל האפשרויות לסידור שזה 720 אפשרויות.

    מישהו יודע את התשובה ויכול לעזור לי להבין מה קורה פה?

  2. ניסיתי את כל מה שאמרתם אבל זה לא עזר.

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

    כשאני מריץ עמוד עם phpinfo() הוא לא טוען לי את ה- php.ini שאני שיניתי.

    הוא טוען סתם איזה הגדרות בסיסיות.

    אני למשל שיניתי את המאפיין memory_limit ל- 8M אבל כשאני מריץ עמוד עם phpinfo() הוא עדיין מראה לי 128M.

    גם ה- extension_dir שונה ממה שאני כתבתי.

  3. אני חייב שתעזרו לי כי אני כבר מחפש פיתרון במשך שבוע.

    יש לי מערכת הפעלה XP SP2 Pro ושרת IIS.

    רציתי ללמוד PHP ולכן הורדתי את החבילה המתאימה ל- גירסה 5.2.5 (אחרונה).

    התקנתי את החבילה על שרת ה- IIS.

    ה- PHP עובד מצויין והכל בסדר.

    עכשיו רציתי להשתמש במסד נתונים MySQL.

    הורדתי את הגירסה האחרונה של MYSQL והתקנתי אותה בלי בעיות.

    גם היא עובדת נהדר.

    כשניסיתי להתחבר ל- MySQL דרך PHP זה לא עבד.

    הבנתי שצריך לעשות משהו עם ה- PHP ועם הקבצים libmysql.dll, php_mysql.dll, php_mysqli.dll ו- php_pdo_mysql.dll.

    ניסיתי להעתיק אותם לתקיית ה- System אבל זה לא עזר.

    ניסיתי עוד הרבה דברים אבל זה לא עוזר.

    בבקשה אם למישהו יש פיתרון בשבילי או לפחות מה עושים עם הקבצים האלה שיביא אותו כאן.

  4. זה נורא פשוט אבל זה תלוי איזה ביוס יש לך.

    אם יש לך את החוברת של הלוח אם אז תקרא שם על הביוס.

    בכל מקרה הנה הסבר כללי:

    1. תחפש בביוס תפריט שנקרא BOOT Priority (אל תחפש רק בתפריטים הראשיים אלא גם במשניים).

    2. שם כתוב לך מה הסדר שממנו המחשב מנסה לעשות BOOT. פשוט תסדר אות התפריט כרצונך (תעיף את ה- Floppy).

×
  • צור חדש...