ABA


"פחות או יותר, כושלה נוספת, בסימן קצת אחר |חלק 5|"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #15975 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 15975
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   15:11   10.07.10   
אל הפורום  
  פחות או יותר, כושלה נוספת, בסימן קצת אחר |חלק 5|  
 
   קישור עם הסברים לחלק הראשון, לטובת אלו שמצטרפים אלינו בפעם הראשונה:
https://rotter.name/nor/prog/15952.shtml
חלק #2:
https://rotter.name/nor/prog/15956.shtml
חלק #3:
https://rotter.name/nor/prog/15965.shtml
חלק #4:
https://rotter.name/nor/prog/15974.shtml

----------------------------------------------------------------

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

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


#include <iostream>

using namespace std;


/* Copies buffer up to 10 bytes long */
void copy(char *buf, int len){
char outBuf[10];

if(len > 10){
cout << "Error! Too long..." << endl;
return;
}

memcpy(outBuf, buf, len);
cout << "Copied successfuly!" << endl;
}


int main() {
char a[] = { "Hello world... I have nothing to write here" };
cout << "Hello, welcome to this smart application." << endl;
cout << "The daily string is: " << a << endl;
cout << "How many char's would you like to copy from it? (up to 10)" << endl;

int len;
cin >> len;

copy(a, len);
return 0;
}

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  די קל הפעם אני אשאיר לאחרים :) Net_Boy  10.07.10 16:06 1
     באמת? O: זה אחד הדברים שאני רואה הכי הרבה.. Sn00py  10.07.10 17:32 2
         יכול להיות אז שאנחנו לא מדברים על אותו הדבר Net_Boy  10.07.10 18:08 3
  תוספת קטנה: תניחו, שאת המחרוזת a Sn00py  10.07.10 18:23 4
  יש פה כמה דברים ששמתי לב אליהם. Zippo  10.07.10 21:28 5
     לא - ולא Sn00py  10.07.10 23:03 6
         שאלה: Zippo  11.07.10 03:41 8
             strcpy באמת מעתיק תוך התחשבות ב NULL TERMINATOR Sn00py  11.07.10 05:55 9
  לא קראתי את התגובות אבל הדבר הראשון שבלט לי ronen333  10.07.10 23:47 7
  ===בקשר ל memcpy=== Sn00py  11.07.10 05:57 10
     זה לא הקטע של החצי מחרוזת שאין \0 ronen333  11.07.10 11:05 11
     אני מקווה שאתה לא מתכוון לזה- ronen333  11.07.10 11:09 12
         בגלל שלירן לא פה אני אענה במקומו Net_Boy  11.07.10 19:30 14
  אתה לא בודק אם LEN גדול מ0 ^^? ג'וני הקטן 11.07.10 17:46 13
     LOL ronen333  11.07.10 20:26 15
     אתה בכיוון אבל זו לא תשובה מלאה - מה יכול לקרות ? Net_Boy  11.07.10 21:05 16
         תלוי איך memcpy עובד.. ג'וני הקטן 12.07.10 00:44 17
             +1 ronen333  12.07.10 00:59 18
                 יזרוק? קשה לי להאמין שMEMCPY זורק EXCEPTION ג'וני הקטן 12.07.10 07:10 19
                     לא אקספשן.. ronen333  12.07.10 07:43 20
                         תלוי איך זה ממומש... ג'וני הקטן 12.07.10 10:02 21
  שיט של signed/unsigned, אם יתנו בlen ערך שלילי, הכל יתפוצץ DLN 13.07.10 23:53 22
     ואהבתי את הרמז בכותרת :) DLN 13.07.10 23:54 23
     יפה. :) Sn00py  15.07.10 21:21 24
  בואו נסגור את זה Sn00py  15.07.10 21:35 25
     איך אתה לא במסניק תאמין לי DLN 15.07.10 22:26 26
         חח right Sn00py  15.07.10 22:47 28
     ידעתי שזה זה =] רק לא טרחתי לחפש איזה סוג משנה זה... ג'וני הקטן 15.07.10 22:40 27
         לא Sn00py  15.07.10 22:49 29
     מגניב ביותר, תודה רבה :) ronen333  15.07.10 23:00 30

       
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   16:06   10.07.10   
אל הפורום  
  1. די קל הפעם אני אשאיר לאחרים :)  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   17:32   10.07.10   
אל הפורום  
  2. באמת? O: זה אחד הדברים שאני רואה הכי הרבה..  
בתגובה להודעה מספר 1
 
  

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   18:08   10.07.10   
אל הפורום  
  3. יכול להיות אז שאנחנו לא מדברים על אותו הדבר  
בתגובה להודעה מספר 2
 
   אני אשלח לך בפרטי תגיד לי אם לזה התכוונת


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   18:23   10.07.10   
אל הפורום  
  4. תוספת קטנה: תניחו, שאת המחרוזת a  
בתגובה להודעה מספר 0
 
   שהכרזתי עליה ב main, היינו מקבלים מהמשתמש(ונניח והיא הגיעה במינימום גודל של 10 תווים).

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Zippo 
חבר מתאריך 26.5.02
7921 הודעות
   21:28   10.07.10   
אל הפורום  
  5. יש פה כמה דברים ששמתי לב אליהם.  
בתגובה להודעה מספר 0
 
1- נדמה לי ש-a הוא const char
ולא char, ולכן אולי תהיה בעיה כשאתה שולח אותו לפונקציה copy

2- אתה מגדיר את outBuf בגודל 10, כלומר, תוכל להכניס לתוכה מחרוזת באורך 9 + NULL. ואם המשתמש ירצה להעתיק 10 תווים, אז זה תלוי באיך memcpy עובדת, ומעולם לא ניסיתי, אבל או שתהיה חריגה בכתיבה לזיכרון שלא שייך לך, כלומר NULL במקום ה-11, או שלא יהיה NULL, כלומר בהדפסה עד NULL תהיה חריגה בקריאה מזיכרון שלא שייך לך.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   23:03   10.07.10   
אל הפורום  
  6. לא - ולא  
בתגובה להודעה מספר 5
 
   1. הוא לא const char
2. memcpy פשוט מעתיק זכרון, הוא לא יודע מה זה null terminator וכאלה אין בעיה פה..

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Zippo 
חבר מתאריך 26.5.02
7921 הודעות
   03:41   11.07.10   
אל הפורום  
  8. שאלה:  
בתגובה להודעה מספר 6
 
מה ההבדל בין memcpy ל- strcpy?
תמיד השתמשתי ב-strcpy...


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   05:55   11.07.10   
אל הפורום  
  9. strcpy באמת מעתיק תוך התחשבות ב NULL TERMINATOR  
בתגובה להודעה מספר 8
 
  

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   23:47   10.07.10   
אל הפורום  
  7. לא קראתי את התגובות אבל הדבר הראשון שבלט לי  
בתגובה להודעה מספר 0
 
   זה שאתה שולח לMEMCOPY מערך, ולא מחרוזת. על מנת להפוך מערך למחורזת הוא חייב להיות עם NULL TERMINATOR.

אערוך אם אמצא עוד.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   05:57   11.07.10   
אל הפורום  
  10. ===בקשר ל memcpy===  
בתגובה להודעה מספר 0
 
   אני יודע שאנחנו מעתיקים פה חצי מחרוזת, ואז אין \0 כתו אחרון.
עזבו את זה, נניח והמטרה היא באמת להעתיק חצאי מחרוזת וכו' - אני הרי לא משתמש בשום מקום בקוד שלי במחרוזת אחרי זה.

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

שיהיה בהצלחה, נתראה בסופ"ש.

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   11:05   11.07.10   
אל הפורום  
  11. זה לא הקטע של החצי מחרוזת שאין \0  
בתגובה להודעה מספר 10
 
   כי לזה הפונקציה דואגת. הבעיה היא במערך שאתה שולח שאילו הוא מיועד להעתיק.

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   11:09   11.07.10   
אל הפורום  
  12. אני מקווה שאתה לא מתכוון לזה-  
בתגובה להודעה מספר 10
 
   ערכתי לאחרונה בתאריך 11.07.10 בשעה 11:12 בברכה, ronen333
 
אתה מדבר על זה שאתה מעתיק למערך והפונקציה היא בעצם VOID.
ואז אין לך עותק? :|


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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   19:30   11.07.10   
אל הפורום  
  14. בגלל שלירן לא פה אני אענה במקומו  
בתגובה להודעה מספר 12
 
   לא לזה הוא מתכוון
אין מהבחינה הזאת של ההעתקה שום בעייה.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ג'וני הקטן
חבר מתאריך 24.6.10
1166 הודעות
   17:46   11.07.10   
אל הפורום  
  13. אתה לא בודק אם LEN גדול מ0 ^^?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   20:26   11.07.10   
אל הפורום  
  15. LOL  
בתגובה להודעה מספר 13
 
   חחחח יש מצב


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   21:05   11.07.10   
אל הפורום  
  16. אתה בכיוון אבל זו לא תשובה מלאה - מה יכול לקרות ?  
בתגובה להודעה מספר 13
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ג'וני הקטן
חבר מתאריך 24.6.10
1166 הודעות
   00:44   12.07.10   
אל הפורום  
  17. תלוי איך memcpy עובד..  
בתגובה להודעה מספר 16
 
   אם הוא בודק את זה אז כלום... אם הוא לא אז הוא עלול ללכת אחורה ולהגיע לזכרון שאנחנו לא רוצים שהוא יגיע


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   00:59   12.07.10   
אל הפורום  
  18. +1  
בתגובה להודעה מספר 17
 
   אני מתקשה להאמין שהם לא טיפלו בזה.
סביר להניח שהם עשו שזה יזרוק אותך מהתוכנית.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ג'וני הקטן
חבר מתאריך 24.6.10
1166 הודעות
   07:10   12.07.10   
אל הפורום  
  19. יזרוק? קשה לי להאמין שMEMCPY זורק EXCEPTION  
בתגובה להודעה מספר 18
 
   לדעתי זאת פונקציה של C... ככה שאין שם EXCEPTIONS בכלל
אנערף... הזוי אם לא בדקו את זה...
מילא ערך מקסימלי ואז זה יגלוש מעבר למה שמותר לו, לגיטימי כי קשה עד בלתי אפשרי לבדוק את זה..
אבל ערך מינימלי? ת'אמת שבC נתנו המון חופש למפתחים אז שחושבים על זה, יש מצב


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   07:43   12.07.10   
אל הפורום  
  20. לא אקספשן..  
בתגובה להודעה מספר 19
 
   ערכתי לאחרונה בתאריך 12.07.10 בשעה 07:53 בברכה, ronen333
 
התכוונתי לזרוק לא במובן של אקספשן..
עם errno.h או assert.h למשל..

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ג'וני הקטן
חבר מתאריך 24.6.10
1166 הודעות
   10:02   12.07.10   
אל הפורום  
  21. תלוי איך זה ממומש...  
בתגובה להודעה מספר 20
 
   אנערף אולי זה פשוט ממומש בלולאה אז היא תמשיך עד אינסוף (אם זה עם UNSIGNED) או שתעשה לופ שלם של INT לפני שהיא תגיע לשם? אנערף צריך לבדוק ת'מימוש


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   23:53   13.07.10   
אל הפורום  
  22. שיט של signed/unsigned, אם יתנו בlen ערך שלילי, הכל יתפוצץ  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   23:54   13.07.10   
אל הפורום  
  23. ואהבתי את הרמז בכותרת :)  
בתגובה להודעה מספר 22
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   21:21   15.07.10   
אל הפורום  
  24. יפה. :)  
בתגובה להודעה מספר 22
 
  

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   21:35   15.07.10   
אל הפורום  
  25. בואו נסגור את זה  
בתגובה להודעה מספר 0
 
   אגב, אני מבסוט על אלון(DLN) שהבין את הבדיחה הסופר-דופר-שנונה בכותרת של ההודעה(בסימן קצת אחר...)
אח, רואים שהוא ***ניק 3>

ולעניין:
כמו שאלון כתב, אנחנו נפלנו על קטע של signed/unsigned mismatch.
הפונקציה שכתבתי מקבלת את האורך המחרוזת כ int. כלומר, אורך המחרוזת
שלי יכול להיות מיוצג גם כמספר שלילי וגם כמספר חיובי.
אם נסתכל על הprototype של memcpy, נראה את הדבר הבא:


void * memcpy ( void * destination, const void * source, size_t num );

ומה הוא הטיפוס size_t?

typedef unsigned long size_t;

(ספציפית, אגב, זה תלוי קומפיילר - יכול להיות שאצלכם בקומפיילר זה יוגדר כ- unsigned int).

מה שחשוב הוא לשים לב שsize_t הוא תמיד unsigned! כלומר, אין לו סימן.
מה יקרה אם ננסה לעשות cast מ- int שלילי ל unsigned int? לדוגמה, אם
נעשה cast מ int שמכיל -1, לunsigned - נקבל 4294967295.
מבינים את ההגיון? הוא לא יודע להתמודד עם מספרים שלילים - אז הוא פשוט מתחיל לספור שוב מה"סוף" של הסקאלה.

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

אני מקווה שאתם רואים כמה קשה לעלות על זה - וזה אחד הבאגים הנפוצים
בעולם. במקרה אמיתי לדוגמה ראיתי מאמר שמישהו פרסם על חולשה שהוא מצא ב ftp server כלשהו, שפשוט עבד בצורה דומה -
הגודל התקבל בבייט הראשון של איזשהו סטרים של מידע, ואכן הגודל נבדק
(ככה שהמתכנת חשב שהוא כתב קוד בטוח, כן בטח ), אבל הוא חטא ב signed/unsigned mismatch.

לסיכום - תשימו לב טוב לדברים האלה. תכתבו קוד בטוח. זה חשוב

תגובות יתקבלו בברכה
לירן.

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   22:26   15.07.10   
אל הפורום  
  26. איך אתה לא במסניק תאמין לי  
בתגובה להודעה מספר 25
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   22:47   15.07.10   
אל הפורום  
  28. חח right  
בתגובה להודעה מספר 26
 
   ערכתי לאחרונה בתאריך 15.07.10 בשעה 23:01 בברכה, Sn00py
 
שלא תבכה לי חח

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ג'וני הקטן
חבר מתאריך 24.6.10
1166 הודעות
   22:40   15.07.10   
אל הפורום  
  27. ידעתי שזה זה =] רק לא טרחתי לחפש איזה סוג משנה זה...  
בתגובה להודעה מספר 25
 
   ערכתי לאחרונה בתאריך 15.07.10 בשעה 22:47 בברכה, ג'וני הקטן
 
חשבתי שזה SIGNED...
כן והייתי טיפה שיכור/האנגאובר שאמרתי שזה הולך אחורה >.<

ד"א הקומפיילר לא מביא לך WARRNING שאתה מבצע השמה של ערך SIGNED לUNSIGNED? הוא אמור להעיר לך על כאלה דברים מה שהופך את ה"תקלה" הזאת ליחסית קלה לאיתור...

כל מקרה נעזוב את הטמטום הרגעי שלי חח

מה שבאמת מעניין אותי בתשובה שלך:
סבבה אני יכול לגרום להעתקה ענקית של הזיכרון למקום שלא אמור להיות מועתק...
איך המעבר מהBUFFER OVERFLOW עובר ללגרום לתוכנית להריץ מה שאני רוצה?
מה? אם אני כותב מספיק רחוק אני יכול להגיע לחלק של הCODE בזיכרון? זאת הכוונה?

מחכה לחלק השישי :P ישקיע יותר שם ;)


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות
   22:49   15.07.10   
אל הפורום  
  29. לא  
בתגובה להודעה מספר 27
 
   אתה מוקצה על ה stack.
זאת אומרת, שאתה יכול לכתוב על ה return address שלך, על ה exception handler שלך, מלא דברים

תקרא על buffer overflows, יש על זה המון חומר באינטרנט.
זה מעניין מאוד(עם זאת נעשים מאמצים כבירים מצד מיקרוסופט לצמצם את התופעה, בדמות DEP ו ASLR. הם פחות או יותר מוצלחים ברוב הפעמים...)

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות
   23:00   15.07.10   
אל הפורום  
  30. מגניב ביותר, תודה רבה :)  
בתגובה להודעה מספר 25
 
   מקווה שתמשיך להפציץ


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

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

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



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