בדיקת אבטחת מידע למשחק של Yellow:
http://www.yellow.co.ilבמשחק צריך להבקיע עשרה שערים בזמן המהיר ביותר, אפשר לשלוח את התוצאה רק פעם אחת ביום.
שלושת הגולשים בעלי הדירוג היומי הגבוה ביותר זוכים בכדורגל נבחרות.
פירוט התקשורת בין השרת למשחק:א. קריאה לקבלת נתונים לפני התחלת המשחק
ב. התחלת המשחק
ג. עדכון השרת בכל פעם שהגולש מבקיע גול
ד. סיום המשחק
ה. שליחת פרטים אישיים (אפשרי רק פעם אחת ביום)
כמו שהראיתי בבדיקות הקודמות אפשר לחקות את השאילתות שנשלחות לשרת ולבצע אוטומציה למשחק.
מכיוון שיש 15 שאילתות שצריכות להיבנות (כולל פונקציות הצפנה ופיענוח), אני אסביר על טכניקה אחרת, פשוטה וקצרה יותר:
יצירת קובץ SWF חדש שיטען את קובץ המשחק ויקרא לפונקציות בתוך קובץ המשחק. לדוגמא: במהלך המשחק הגולש בועט את הכדור והשוער יכול לעצור אותו או שלא, במידה והיה שער אז נקראת פונקציה מסויימת במשחק, למה לא לקרוא לפונקציה הזאת מה-SWF החיצוני שטען לתוכו את המשחק?
בנוסף למשחק יופיע כפתור בצד שמאל למעלה, בלחיצה עליו תיקרא הפונקציה במשחק שנקראת כאשר הגולש מבקיע גול. לאחר עשרה לחיצות על הכפתור המשחק ימשיך לפעול כרגיל ויאפשר לגולש לשלוח את פרטיו האישיים (במידה והגולש לא עשה זאת במהלך היום).
Using actionscript Syntax Highlighting
System.
security.
allowDomain("*");
var Counter =
0;
var Container =
_root.
createEmptyMovieClip("Container",
_root.
getNextHighestDepth());
Container.
loadMovie("http://www.yellow.co.il/flash/thegamework.swf");
GoalButton.
onRelease =
function()
{
Counter++;
_root.
Container.
scoreCount("in");
if (Counter == 10
) GoalButton.
enabled =
false;
}Parsed in 0.014 seconds, using
GeSHi 1.0.8.4
קישור לאפליקציית הדוגמא:
http://www.sendspace.com/file/x76t5qכדי שקוד הדוגמא יעבוד, צריך להיות מוגדר במחשב Cookie, ה-Cookie מוגדר בכניסה לאתר
http://www.yellow.co.ilה-Cookie משמש לבדיקה, האם הגולש שיחק במהלך אותו יום, אם קובץ ה-Cookie יימחק, השרת ייתייחס לגולש כאל גולש חדש ויאפשר לו לשלוח את פרטיו האישיים בסיום המשחק שוב.