למה Lua executors הם בעיה מיוחדת
רוב הצ'יטים לפייבאם חיים ב-DLL-ים של C/C++ ואפשר לזהות אותם בסריקות חתימה מסורתיות של מודולים מוזרקים. Lua executors שונים: הם מריצים Lua שרירותי בתוך סביבת הסקריפטים החוקית של פייבאם, אז הם נראים זהים לסקריפטים לגיטימיים של המשחק לרוב הבדיקות הסטטיות. סריקת חתימה על הבינארי של ה-executor עוזרת, אבל הבינארי קטן, נכתב מחדש לעיתים קרובות וקל לארוז אותו מחדש. הזיהוי חייב לקרות גם בשכבת הריצה.
זיהוי חתימות על הלואדר
קו ההגנה הראשון הוא זיהוי חתימות על תהליך הלואדר ועל כל DLL שהלואדר ממפה לתוך פייבאם. חבילת החתימות של Raven עוקבת אחרי משפחות הלואדרים הפעילות ביותר ומתרעננת בקצב של 1-7 ימים. זה תופס את ה-executors העצלים מיד ומכריח את השאר לארוז מחדש בין כל גרסה, וזה קונה זמן.
בדיקות שלמות בזמן ריצה
מעבר לחתימות הלואדר, Raven מאמת את שלמות סביבת ה-Lua עצמה. הוא מנטר אילו native handlers עברו פאץ', אילו רישומי אירועים קיימים והאם מצב ה-Lua הגלובלי הועשר בטבלאות זרות. executors בדרך כלל צריכים להכניס לפחות אחד מאלה כדי להעביר את המטען שלהם, אז השכבה הזאת מרימה דגל גם כשהבינארי של הלואדר עצמו לא מוכר.
אימות בצד השרת כרשת ביטחון
גם אם גם חתימת הלואדר וגם בדיקת הריצה נעקפו, ה-executor עדיין צריך לעשות משהו עם הגישה שלו, ובדרך כלל זה אומר להפעיל אירועי שרת שסקריפטים לגיטימיים לא היו מפעילים. שכבת אימות האירועים בצד השרת (ראה /how-it-works/event-validation) חוסמת אירועים ממקורות לא מורשים ודוחה מטענים מחוץ לגבולות סבירים. מתן כסף, שכפול פריטים, הצפת ספאון רכבים וטלפורטים של שחקנים שמונעים מ-Lua פוגעים כולם באותו שער אימות.
למה זיהוי Lua executors אף פעם לא “נגמר”
כותבי ה-executors כותבים מחדש את הלואדרים שלהם כל הזמן, כי כל חתימה שיוצאת נגדם עולה להם בכל בסיס הלקוחות של אותה גרסה. הזיהוי הוא רציף: executor שעובד היום הוא executor מזוהה בתוך 1-7 ימים, והמשתמשים שלו נמצאים אז במסד הבאנים הגלובלי. הודעת האבטחה מ-2026-04-21 ב-changelog מכסה דוגמה עדכנית, דפוס הפעלת אירועים של Redengine שנסגר בצד השרת בחוק שרץ גם אם כל בדיקה בצד הלקוח נעקפה.