זוהי הפקודה ragg2 שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS
תָכְנִית:
שֵׁם
ragg2 - כלי עזר radare2 להפעלת תוכניות בסביבות אקזוטיות
תַקצִיר
ragg2 [-a קשת] [-b ביטים] [-k גרעין] [-f פוּרמָט] [-o פילה] [-i קוד מעטפת] [-I נתיב]
[-e קוֹדַאִי] [-B צמדי משושה] [-c k=v] [-C פילה] [-d off:dword] [-D off:qword]
[-w off:hexpair] [-p רפוד] [-FOLsrxvh]
תיאור
ragg2 הוא חזית r_egg, קומפלור תוכניות לבינאריים זעירים עבור x86-32/64 ו-arm.
כלי זה הוא ניסיוני והוא שכתוב של התוכניות הישנות rarc2 ו-rarc2-tool בתור
ספרייה ומשולבת עם r_asm ו-r_bin.
תוכניות שנוצרו על ידי r_egg ניתנות למיקום מחדש וניתן להזריק אותן בתהליך פועל או על-
קובץ בינארי של דיסק.
ragg2-cc הוא כלי נוסף שמגיע עם r2 והוא משמש ליצירת קודי מעטפת מ-C
קוד. ניתן לקשר את הקוד הסופי ל-rabin2 והוא ניתן למיקום מחדש, כך שניתן להשתמש בו
להזריק אותו בכל תהליך מרוחק.
ragg2-cc מבוסס קונספטואלית על shellforge4, אבל רק פלטפורמות linux/osx x86-32/64
נתמך.
הוראות
קובץ התצורה rr2 (ragg2) מקבל את ההנחיות הבאות, המתוארות כמפתח=ערך
ערכים והערות המוגדרים כשורות המתחילות ב-'#'.
-a קשת סט ארכיטקטורת x86, זרוע
-b ביטים 32 או 64
-k גרעין windows, linux או osx
-f פוּרמָט בחר פורמט בינארי (pe, elf, mach0)
-o פילה קובץ פלט לכתיבת תוצאת הידור
-i קוד מעטפת
ציין את שם קוד המעטפת שיש להשתמש בו (ראה -L)
-e קוֹדַאִי ציין את שם המקודד לשימוש (ראה -L)
-B צמד משושה ציין קוד מעטפת כצמדי משושה
-c k=v הגדר אפשרות תצורה עבור מקודד ה- shellcode. הארגומנט חייב להיות מפתח=ערך.
-C פילה לכלול את תוכן הקובץ
-d off:dword
תיקון מאגר סופי עם dword נתון בהיסט שצוין
-D off:qword
תקן מאגר סופי עם qword נתון בהיסט שצוין
-w off: hexpairs
תיקון מאגר סופי עם צמדי משושה נתונים בהיסט שצוין
-p רפוד ציין ריפודים גנריים עם מחרוזת פורמט.
-F זיהוי אוטומטי של פורמט קובץ מקורי (osx=mach0, linux=elf, ..)
-O השתמש בקובץ פלט ברירת מחדל (שם קובץ ללא סיומת או a.out)
-I נתיב הוסף כולל נתיב
-s הצג קוד אסמבלר
-x לבצע (בדיוק בזמן)
דוגמא
$ חתול הי.ר
/* שלום עולם ב-r_egg */
לִכתוֹב@סיסקאל(4);
יְצִיאָה@סיסקאל(1);
רָאשִׁי@גלוֹבָּלִי(128) {
.var0 = "היי!\n";
write(1,.var0, 4);
יציאה(0);
}
$ ragg2 -O -F hi.r
$ ./היי
היי!
$ חתול הי.ג
main() {
write(1, "שלום0, 6);
יציאה(0);
}
$ ragg2 hi.c
$ ./hi.c.bin
שלום
השתמש ב-ragg2 באינטרנט באמצעות שירותי onworks.net