כיצד להשתמש בכלי הפריצה הטובים ביותר של לינוקס

מערכות הפעלה מבוססות לינוקס ו-Unix היו בליבת התחומים של אבטחת מידע, אבטחת רשת, קריפטוגרפיה וכו'. הן מגיעות עם מגוון רחב של כלים שנועדו למטרות אבטחת סייבר.

הבה נסתכל על שלושה כלים כאלה: Aircrack-ng, Jack The Ripper ו-Radare2.

סוויטת Aircrack-ng

חבילת Aircrack-ng היא אולי הסט הנפוץ ביותר של כלים להרחת רשתות WiFi ולכידת סיסמאות. הוא נועד לפצח סיסמאות רשת אלחוטיות בפרוטוקול IEEE 802.11, המוגנות לרוב על ידי תקני Wifi Protected Access (WPA) או Wifi Protected Access 2 (WPA2) ומאומתות על ידי שיטת אימות Pre-Shared Key (PSK).

הוא מציע תוכניות נפרדות לניטור מצב התקני רשת, לכידת מנות והשלכת קבצים, פיצוח סיסמאות וכו'.

שימו לב שפיצוח WPA/WPA2 באמצעות אלגוריתמי קריפטו נמצא על ידי חוקרים ככמעט בלתי אפשרי. לפיכך, הדרך לפצח WPA/WPA2 על ידי תוכניות כמו aircrack-ng, היא Brute Force ודורשת מילון סיסמאות כדי לפצח אותה. זה אומר שהוא יכול לפצח את הסיסמה רק אם הסיסמה היא מילה במילון.

אתה יכול בקלות להתקין את Aircrack-ng במערכת שלך באמצעות סקריפט ההתקנה המסופק על ידי packagecloud.io. פתח את הטרמינל והפעל את הפקודות הבאות בהתבסס על סוג מערכת ההפעלה Linux שלך.

בהפצות מבוססות דביאן, הפעל את הפקודה הבאה:

curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.deb.sh | סודו בש

עבור Red-hat Package Manager (RPM), הפעל את הפקודה הבאה:

curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.rpm.sh | סודו בש

עכשיו בואו ננסה לפצח סיסמה של רשת Wi-Fi מקומית באמצעות Aircrack-ng.

קודם כל, הרץ פקודה iwconfig כדי למצוא את שם ממשק הרשת האלחוטית שלך.

iwconfig

כאן, wlp2s0 זה השם של הממשק האלחוטי שלי. ESSID, כלומר, שם הרשת הוא "tmp", שזה השם של רשת ה-Wifi שאליה אני מחובר.

נשתמש ב- airmon-ng פקודה להפעלת ממשק צג רשת wlp2s0.

sudo airmon-ng התחל wlp2s0

חפש את הקו בקצה כדי למצוא את ממשק מצב הצג. בדוגמה למעלה, זה כן יום שני. כעת נתחיל לתפוס מנות רשת על ידי הפעלת ה airdump-ng עַל יום שני.

sudo airodump-ng mon0 -w log

הוא מציג צג של מנות רשת שנתפסו מרשתות שונות. ה -w יומן החלק נועד לשמירת מנות הרשת בקובצי יומן. הקידומת של קבצי היומן תהיה החלק שצוין אחרי -w, במקרה זה 'log'.

כדי שהתוכנית תתפוס את מפתח ה-hash של ביטוי הסיסמה, חייבת להתבצע לחיצת יד של WPA ברשת, כלומר, משתמש צריך לנסות להתחבר אליה. המשתמש יכול בעצמו לנתק את ה-Wifi שלו ולהתחבר אליו מחדש. בפינה הימנית העליונה כעת, הוא מודיע כי נתפסה לחיצת יד של WPA.

עכשיו, לחץ Ctrl + C להפסיק את המזבלה. אתה יכול לראות את קובצי היומן שנוצרו בתיקייה הנוכחית.

השלב הבא והאחרון הוא להפעיל את aircrack-ng עם מילון כדי לראות איזו מילה מתאימה למפתח ה-hash שיירט מלחיצת היד.

aircrack-ng log-01.cap -w tmpdict.txt 

כאן log-01.cap הוא קובץ היומן שנוצר על ידי airdump-ng פקודה ו tmpdict.txt הוא קובץ המילון. מספר מילונים גדולים זמינים באינטרנט, אותם ניתן להוריד ולהשתמש כאן.

כדי לבחור רשת יעד, הזן את מספר האינדקס עבור הרשת מרשימת הרשתות המוצגות על המסך.

אם מפתח תואם מתוך המילון, הוא יפסיק ויציג את ההודעה הבאה.

ברור שבמקרה של קבצי מילון גדולים יותר, לתוכנית ייקח יותר זמן לפעול, מכיוון שהיא בודקת כל ערך במילון.

כאמור, ניתן לפצח את הסיסמה רק אם היא קיימת בקובץ המילון. אבטחת WPA חזקה מספיק כדי ששימוש בכל אלגוריתם קריפטו לא יאפשר פיצוח של סיסמה. לפיכך, זה נוהג טוב להחזיק סיסמה ארוכה וחזקה עם מספר תווים מיוחדים במכשיר ה-Wifi שלך, כך שכל סוג של פעילות פיצוח סיסמאות לעולם לא תצליח.

ג'ון המרטש

ג'ון המרטש הוא כלי המשמש לפיצוח סיסמאות יוניקס חלשות. זהו כלי קל מאוד לשימוש המופעל על קבצי סיסמאות. הוא פועל בשלושה מצבים.

מצב יחיד

בודק את כל שדות GECOS עבור סיסמה, כלומר, בדוק אם יש סיסמה בפרטי חשבון המשתמש; שם משתמש, שם פרטי, שם משפחה וכו'.

sudo john --single /etc/shadow

מצב רשימת מילים

בודק סיסמה עם כל ערך מקובץ רשימת מילים (מילון).

sudo john --wordlist=passlist.txt /etc/shadow

כאן, הסיסמה של המשתמש 'user3' היא "admin". ג'ון הצליח לפצח את זה מכיוון שהביטוי 'אדמין' היה קיים בקובץ passlist.txt.

מצב אינקרמנטלי

בדוק את כל השילובים האפשריים עבור טווח מוגדר. כברירת מחדל הוא מחשיב את כל התווים בערכת התווים ASCII ואת כל האורכים מ-0 עד 13. מיותר לציין, בהתאם לטווח המוגדר, מצב זה יכול לקחת פרק זמן עצום לרוץ.

ניתן לשנות את התצורה של זה /etc/john/john.conf קוֹבֶץ.

sudo john --incremental /etc/shadow

Radare2

Radare2 (כינוי r2) הוא כלי הנדסה לאחור עבור לינוקס. זה יכול לפרק, לנפות באגים בקובץ בינארי הניתן להפעלה, עם רשימה ענקית של אפשרויות לתמרן נתונים בזמן ריצה.

הבה נראה כיצד לפרק תוכנית C קטנה מאוד באמצעות r2. שים לב שדרושה הבנה בסיסית של שפת ההרכבה כדי להשתמש בכלי.

ראשית, צור תוכנית C קטנה ב-vim או בכל עורך שתבחר.

/*test.c*/ #include int main() { int i = 0; printf("%d\n", i); החזר 0; }

כפי שאתה יכול לראות, כל מה שתוכנית זו עושה הוא לאחסן את הספרה 0 במשתנה, ולגשת למשתנה כדי להדפיס אותו.

כעת נרכיב את התוכנית.

gcc test.c -o test

קובץ הפעלה נוצר בספרייה הנוכחית עם השם 'בדיקה'. הפעל אותו כדי לראות פלט '0'.

./מִבְחָן

בוא נתקין את r2 עכשיו. שם החבילה באובונטו ובהפצות דומות הוא radare2.

sudo apt להתקין radare2

הערה: עבור גרסאות ישנות יותר של אובונטו (גרסה 14.04 ומטה), עליך להשתמש apt-get יש להשתמש במקום מַתְאִים.

כעת נתחיל את שורת הפקודה r2 עם קובץ ההפעלה שלנו, 'בדיקה'.

מבחן r2

כדי לקבל רשימה של פקודות משנה, הזן ?. לְמָשָׁל. כדי לקבל רשימה של פקודות משנה לפקודה א, להיכנס א?

א?

נריץ את הפקודת המשנה aa, שינתח את הקובץ הבינארי המלא. זה לא יוציא שום דבר. אבל לאחר ניתוח הבינארי, נוכל להשתמש ב- p? פקודות משנה לפירוק הקוד.

לאחר מכן, נעבור ל- רָאשִׁי פונקציה של התוכנית. לכל תוכנית C הניתנת להפעלה יש את רָאשִׁי לתפקד כנקודת ההתחלה שלו.

s הראשי

אתה יכול לראות שהקידומת של ההנחיה שינתה את כתובת הזיכרון הנוכחית, כלומר, התוכנית מחפשת כעת לכתובת הפונקציה רָאשִׁי.

לאחר מכן אנו משתמשים בפקודה המשנה pdf, אשר ידפיס פירוק של פונקציה. אנחנו קוראים לזה עם sym.main, שהוא שמה של הפונקציה הראשית בשפת ההרכבה.

pdf sym.main

כפי שאנו יכולים לראות בצילום המסך למעלה, יש לנו את הפירוק המלא של תוכנית C שלנו. כעת נוכל לנתח מה התוכנית עושה על ידי קריאת האסיפה.

לדוגמה, mov dword [rbp-0x4], 0x0 הוא הקצאת ערך (0) למיקום זיכרון rbp - מצביע בסיס, 0x4 - גודל הזיכרון הנדרש עבור מספר שלם.

יש לנו התקשר ל-sym.imp.printf, אשר ידפיס את תוכן הרישום אקס, כלומר הערך 0.

ישנן אפשרויות רבות נוספות למניפולציה וניפוי באגים בזרימת תוכנית ב-r2. אתה יכול לנסות אפשרויות אחרות המוצגות עם ? פקודה. כדי לשמור כל פלט יומן או פירוק לקובץ, אתה יכול לצרף את הפלט כדלקמן:

pdf main > main.s

זו הייתה הסקירה הכללית של כמה מכלי הפריצה הנפוצים ביותר בלינוקס. אם מצאתם את הדף הזה מועיל, הקפידו לשתף אותו בקהילות המקוונות המועדפות עליכם.