Skip to content

itaiguli/Matzov-RoshNotTail

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

Matzov RoshNotTail | חידת מצו"ב

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

First Part | חלק ראשון

IDF site

תהליך הפתרון

בהתחלה זיהיתי שמדובר בהופמן, ואז בדקתי מה הקשר בין המשפט rosh not tail לטקסט lo olhottnisatnr ioohtrsltoi nh arsat.

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

לאחר מכן לקחתי את הטקסט lo olhottnisatnr ioohtrsltoi nh arsat

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

אותו דבר עשיתי במשפט השני וכך קיבלתי את ההודעה הסודית.

My solve

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

Second Part | חלק שני

לאחר פתרון החלק הראשון, קיבלתי במייל את החלק השני והאחרון של החידה

Second Part

מטרת התרגיל

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

תהליך הפתרון

כפי שניתן לראות במייל, הייתה לי בסך הכל יממה לפתור את החידה. במהלך היום הזה למדתי המון על מנגנון SEH וגם C++ Exceptions

לבסוף פתרתי את התרגיל בעזרת Stack Overflow Attack

שמכונה בעברית גלישת חוצץ

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

Second Part

וזוהי תגובת מצו"ב...

מתוך 46,008 ניסיונות, רק 21 הצליחו

IDF site

סיום

באופן אישי למדתי המון מהחידה ונהניתי מההצלחה, אז תודה למצו"ב :)

About

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

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published