מעבדות האקינג
איך ליצור רשת Docker מבודדת למעבדה שלך
בניית רשת Docker בלי גישה לאינטרנט, הרצת OWASP Juice Shop עליה ופרסום עותק לדפדפן רק על 127.0.0.1, עם אימות של כל שלב.
מודל שכותב את ה-exploit לאתגר שלכם ומסביר למה הוא עובד, triage סטטי לבינארי, ו-solve שרץ במעבדה שלכם, לא אצלנו.
capture the flag או מעבדה ביתית הם המקום שבו לומדים דרך עשייה, ומודל שמסרב לכתוב את ה-exploit לאתגר pwn על המכונה הווירטואלית שלכם לא עוזר בכלל. NotHoly מקבלת את האתגר, מסבירה למה הבאג הוא באג, וכותבת את סקריפט ה-solve שרץ במעבדה שלכם. זה מורה שלא נעצר בחלק המעניין. abliteration היא הסיבה שהסירוב לא בדרך, ושאר הדברים כאן הם איפה זה מתאים ל-CTF ולמעבדה.
הדביקו קטע פגיע, תיאור אתגר או בקשה שנלכדה, והמודל נוקב במחלקת הבאג, מסביר את ה-primitive, ומתווה גישה: format string שדולף, overflow מעבר למצביע שמור, פרמטר web שמגיע ל-template, nonce חלש. בקשו ממנו ללכת רחוק יותר והוא כותב את ה-solve: סקריפט pwntools, exploit קטן, payload לשלב ה-web, בדיקת Python לקריפטו. מכיוון שהמודל קורא בחיפוש החולשה בלי הטפה, משימת rev, pwn, web או crypto מעובדת כמו כל קוד אחר, ואפשר לבקש ממנו להסביר כל צעד כדי לסיים את האתגר ולדעת למה זה עבד. הוא שומר את כל האתגר בשיחה אחת, אז ה-leak שמצאתם בשלב אחד עדיין שם כשאתם צריכים אותו בשלב שלוש.
צרפו את הבינארי של האתגר והכלים הסטטיים נותנים לכם את ה-SHA-256, האנטרופיה, הפורמט, ה-sections, ה-imports, ה-strings ותצוגה מקדימה של disassembly, מספיק כדי לתכנן לפני שפותחים את ה-debugger. בסיס הידע מביא טכניקה מ-PayloadsAllTheThings, מ-GTFOBins ומהמדריכים של OWASP עם מקור בכל קטע, אז טריק שאתם זוכרים חצי מגיע עם הפניה. גרסת שירות באתגר הולכת ל-lookup של CVE עם CVSS והפניות. מדריך הקבצים מפרט את הפורמטים. לאתגר web או crypto אין בינארי לצרף, אז אתם מדביקים את ה-handler, את ה-token או את ה-ciphertext והמודל עובד מזה, ומילון של CWE ו-CAPEC בבסיס הידע עוזר לנקוב במחלקת החולשה שאתם מסתכלים עליה במקום לנחש, עם הודעת זכויות היוצרים ש-MITRE דורשת שמורה בקטע.
notholy analyze ./challengeה-exploit רץ היכן שהמעבדה רצה: המכונה שלכם, המכונה הווירטואלית שלכם, ה-container שלכם. השרתים של NotHoly לעולם לא מריצים כלום ולא שולחים תעבורה לשום מקום, אז סקריפט ה-solve שהמודל כתב הוא שלכם להריץ מול המטרה שלכם. מהטרמינל הסוכן קורא את הקבצים, מריץ את הסקריפט וקורא את הפלט, שואל לפני כל פקודה, אז אתם רואים כל צעד. ה-CLI והצ׳אט חולקים אותו חשבון, אז אתם עוברים מקריאה להרצה בלי להחליף כלי. קרדיטים שלא פגים ומבצע שלפעמים הופך מודל לחינמי מתאימים לאיך שסטודנטים ושחקנים סולו עובדים, בפרצים סביב אירוע.
checksec ./challenge | notholy "explain each protection and sketch a solve approach for the overflow"הוא יכול לטעות ולשלוח אתכם לדרך ללא מוצא, אז דרך מוצעת היא השערה לבדיקה, לא התשובה. לתת לו לפתור הכול מלמד פחות מלהיאבק קודם ולשאול אחר כך, וזו הנקודה של מעבדה. חלק מה-CTF אוסרים כלים חיצוניים או AI במהלך האירוע, וזה הכלל של המארגן שצריך לקיים, לא שלנו לעקוף. אין decompiler ואין גרף זרימת בקרה אצלנו, אז reversing כבד עדיין צריך את הכלים שלכם. החשבון צריך אימייל, וצ׳אט שמור שומר את ה-write-up אלא אם תהפכו אותו לחולף.
השתמשו בזה כדי להבין את האתגר, לא כדי לדלג עליו. קרדיטים לא פגים וטעינה בתמחור קטנה, אז תקציב של סטודנט מחזיק מעמד.
מעבדות האקינג
בניית רשת Docker בלי גישה לאינטרנט, הרצת OWASP Juice Shop עליה ופרסום עותק לדפדפן רק על 127.0.0.1, עם אימות של כל שלב.
מעבדות האקינג
מבנה של דוח פנטסט וכתיבת ממצא אחד שמישהו אחר יכול לשחזר, עם ראיות, השפעה, וקטור CVSS v4.0 ותיקון.
מעבדות האקינג
בונים מעבדה ביתית שמותר לתקוף: קובץ סקופ, פורטים של Docker שקשורים ל-loopback, רשת מבודדת, יומן עבודה ופירוק נקי.