וִידֵאוֹ: Ferramentas | A partir de 5.ª 23/01 | Lidl Portugal (נוֹבֶמבֶּר 2024)
פורסטל הסביר כי על ידי פירוק, שינוי והרכבת האפליקציה, הם שינו את חתימת המפתח שלה. החתימה החדשה לא קיבלה רישיון לשימוש במפות Google ולכן היא נדחתה. המסע החדש שלהם; לשנות את הקוד מבלי לשנות את החתימה.
Forristal עברה על סדרת האירועים המפורטת המתרחשת כאשר אנדרואיד מאמת אפליקציה חתומה. כל שכבה מאמתת את הקודמת, החל מאימות שמודלי הקוד לא טופלו והסתיימה בחתימה דיגיטלית של החבילה כולה. הוא ניסה לתקוף את המערכת בכל שלב, בעיקר ללא מזל.
"פורמטים של APK, JAR ו- ZIP זהים למעשה", ציין פורסטל. "ל- JAR ו- APK פשוט יש רכיבים נוספים." ההצלחה הסופית שלו הייתה מינוף פורמט ZIP. כאשר הכניס קובץ "רשע" עם אותו שם לזה של קובץ תקף קיים, המאמת התנתק בקובץ התקף, אך הקובץ "הרע" התחיל.
למה? מכיוון שאנדרואיד משתמש בקוד ניהול קבצי ZIP שונה במאמת ובמתקין. "אי התאמה של ניתוח קבצי ZIP היא המקור לשגיאה זו", הסביר פורריסטל. "למעשה, יש שמונה יישומים לניתוח קבצי ZIP נפרדים בבסיס הקוד של אנדרואיד."
מתוך ארגז החול
"השתמשתי בטריק הזה לתמיד", אמר פורסטל. "עכשיו בואו ניקח את זה למדהים." בדומה ל- iOS, אנדרואיד מפעילה כל אפליקציה בארגז חול משלה, כך שאפליקציה לא יכולה לגשת למשאבים השייכים לאפליקציה אחרת. "הדרך היחידה לארגז החול היא להיות חתומה על ידי אותו מפתח, " הסביר. "זה מה שמאפשר עדכונים."
"המערכת כולה, מנויה לאותה רעיון", המשיך. "ארגז החול של המערכת אוכף את כל ארגזי החול האחרים. הוא שולט בכל ההגדרות שלך. זה לא שורש, אבל יש לו את כל הנתונים, האפליקציות, הסיסמאות וההגדרות שלך - מה נשאר? המערכת די חזקה." אפליקציות הניגשות לארגז החול של המערכת נחתמות בדרך כלל על ידי יצרנית הפלטפורמה. "פשוט הייתי צריך להשיג אפליקציה חתומה על פלטפורמה ולעשות את העבודה הקטנה שלי, והייתי צריך לקבל גישה ברמת המערכת. זה מגניב יותר ממפות FourSquare, " הוא סיכם.
מסתבר ש- VPN של צד שלישי צריכים להיות חתומים על פלטפורמה, וכבונוס הם כבר מבקשים גישה לארגז החול של המערכת. Forristal הציג את שלוש הפקודות הפשוטות בהן השתמש כדי להכניס את הקוד "הרע" שלו ל- VPN של צד שלישי, כשהוא מתבדח על "כלים לפריצת דרך". התוצאה? טרויאני עם גישה מלאה ברמת המערכת.
ניצול קל
טכנאי אבטחת המאסטר סאוריק (ג'יי פרימן) לקח את הרעיון לשלב הבא, הסביר פורריסטל. כלי ה- Cydia Impactor שלו פועל על OSX ו- Windows ומאפשר את השימוש בו אוטומטית. "חיבור מכשיר", אמר פורסטל, "הוא מגלה את האפליקציה הנכונה, בונה אותו, מוסיף את הפריצה המתאימה כדי לקבל גישה לשורש, ומספק אותו. התכוונתי לשחרר הוכחה קטנה וחצינית לאפליקציות קונספט, אבל זה מדהים."
פורסטל ציין כי סוג המעבד של המכשיר לא משנה. ההתקפה אינה מושפעת מ- ASLR (Randomization Layout System Address) או DEP (מניעת ביצוע נתונים). הוא הכין גרסה אחת שעובדת על ארבעה דורות של אנדרואיד, והמיומנות האמיתית היחידה הדרושה היא הכרת ג'אווה. "הגשתי את זה למען הכובע השחור כי זה קל להבין ולנצל אותו", אמר פורסטל.
מפתחות מאסטר נוספים
פורסטל הצליח להפיל מספר באגים אחרים שהתגלו לאחרונה שיכולים להיחשב "מפתחות אב". כאשר עברו על הקוד עבור תכונה בשם מאפיינים מאומתים, חוקרי Bluebox מצאו שורת התגובות וסומנה "TODO." כתוצאה מהקוד החסר, לא משנה אילו שינויים תבצעו את הקובץ באימות. לא הרבה קבצים משתמשים בתכונה זו, ציין פורריסטל. "אם אתה מוצא אחד, אתה יכול להעתיק ולהדביק את קובץ האישור ולהניח לזהות המפתח. אם חתמת על יישום עם מאפיינים מאומתים, חילקת את זהותך." מכיוון שאג זה תוקן לפני ש- Bluebox דיווח עליו, הם לא לוקחים קרדיט.
ההתקפה "הטרויאני הנסתר" שדיווחה על ידי חוקר סיני מתבררת כאל אחת מכמה דרכים אפשריות לניצול ניתוחי ריבוי הקבצים של אנדרואיד. התקפות אלה מנצלות את העובדה שמשתמשים מנתחים אחד חתמו על מספרים שלמים והשני משתמש במספרים לא חתומים.
"זה בכלל לא קשור להחלפת קובץ אחד", התלהב פורריסטל. "אתה יכול להשתמש בטריק הזה כדי להזין קובץ ZIP אחר לגמרי. האחד מאומת, השני פועל. כמה טריקים ותחבולות במרחב הזה עשויים להראות עוצמה רבה יותר לגישה זו."
אמנם תוכנות זדוניות המשתמשות בטכניקה זו כבר נראו בטבע, אך לא צריך להיות אפשרי לקבל קובץ טרויאני כמו אלה המתוארים כאן ל- Google Play. אתה בטח תהיה בטוח אם אתה תמיד ורק מתקין אפליקציות שעברו בדיקה רשמית. עם זאת, כדי להיות בטוח, הקפד להתקין מייד עדכוני Android זמינים.