מה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?
-
פה https://docs.microsoft.com/en-us/windows-server/security/kerberos/passwords-technical-overview?redirectedfrom=MSDN
זה המקור הכי רשמי.
אם אני מבין טוב, במחשב שאיננו בתחום (מחשב רגיל פרטי) מתבצע גיבוב מסוג ML, שמתואר שמה האלגוריתם שלו, אני מתרגם:
א. ביטוי הסיסמה מקוצץ ל14, או מרופד ל14 באמצעות תווים ריקים.
ב. כל האותיות מומרות לרישיות
ג. מפצלים את המחרוזת לשני מחרוזות בנות 7 תווים כל אחת ומשלימים כל אחת בתו ריק כדי שהאורך יהיה 64 ביטים.
ד. מצפינים באלגוריתם DES מחרוזת קבועה מראש ("KGS!@#$%") עם כל מפתח בנפרד, מה שנותן שתי תוצאות בינאריות של 8 בתים כל אחת (שוב 64 ביטים).
ה. משרשרים את שני התוצאות, ונהיה לנו 16 בתים של האש.הנה המחשה ויזואלית יותר עם הסבר איך לתקוף (אבל מ2010...):
https://techgenix.com/how-cracked-windows-password-part1/
ויקיפדיה:
https://en.wikipedia.org/wiki/LAN_Managerאני בשוק רציני שככה זה עובד, ועוד עד היום בWIN10.
אני בטוח מפספס פה משהו. -
@אף-אחד-3 כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
עכשיו אני רוצה לנסות דבר דומה אבל שיחשב את ההאש שבו ווינדוס משתמש כדי לגבב את הסיסמה של המשתמש
-
@מתכנת-לפעמים אני לא מבין את השאלה, האם אתה מתייחס לדבר שאני כתבתי?
-
@מתכנת-לפעמים לא יודע מה הצלחת להבין בינתיים, אבל בגדול, הרעיון הוא שאין אלגוריתם בעולם שיכול להיות מוגן נגד מתקפת brute force. אז אי אפשר לומר שאין רברס ל-DES (נראה לי ש-DES נחשב היום ממש חלש, יש את 3DES שיותר טוב)
ובמימוש המסויים של מייקרוסופט עשו כמה טעויות שמקלים מאוד על ה-brute force כמו ההמרה לאותיות רישיות והפיצול לשני חלקיםבכל מקרה התכוונתי שזה גיים אובר מטעם אחר, כי יש לו גישה (כמעט) לכל גם בלי הסיסמה
מישהו העיר לי שצריך את הסיסמה כדי לפענח קבצים מוצפנים באמצעות EFS (הצפנה מובנית של ווינדוס על קבצים יחידים), אז אכן לכאורה זה יכול להיות השלכה אמיתית לעובדה שההצפנה של הסיסמה חלשה -
אני מסכים עם דברי @yossiz כי ברגע שיש לפורץ גישה ל-Hash אז משמע שהוא כבר עם הרשאת מנהל. כי למשתמש רגיל אין גישה (לכאורה) למקום הזה.
אבל בכל אופן זה באמת נראה שיטה גרועה למדי, אבל מיקרוסופט כותבים שהם משתמשים ב-LM לצורכי שמירה על תאימות לאחור עם חומרה ותכנה ישנים שלא יכולים בדרכים יותר חדשות.
The LM OWF algorithm is included in Windows for backward compatibility with software and hardware that cannot use newer algorithms.
-
@קומפיונט כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
כי למשתמש רגיל אין גישה (לכאורה) למקום הזה
אכן צריך הרשאת מנהל כדי לגשת לתיקיה שבה מאוחסן הקובץ
עם דיסק טכנאים וכדו' אפשר לגשת בקלילות לקובץ אא"כ הכונן מוצפן -
@קינג-קומפיוטר כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
עם דיסק טכנאים וכדו' אפשר לגשת בקלילות לקובץ אא"כ הכונן מוצפן
גישה פיזית חיצונית לאחסון זה גישה כבר מוחלטת להכל, וזה בדיוק מה ש@yossiz וגם @קומפיונט התכוונו.
שום מערכת הפעלה לא מוגנת בברירת מחדל במקרה של גישה פיזית, וזה הגיוני: אם אתה מחזיק את המחשב ביד אתה כנראה בעלים שלו. המיעוט שצריך הגנה בכאלה מקרים יכול להשתמש עם תוכנה ייעודית. ההגנה של המערכת הפעלה נועדה למקרה שאין לך גישה פיזית, כלומר או גישה מרוחקת או שהמחשב נעול בכספת ואתה עם גישת משתמש לא מנהל, שם אמור להיות מצב בלתי פריץ.
כעת אני קולט שבמקרה כזה של גישת משתמש לא מנהל אולי Windows מונעת גם גישה לקבצים מוצפנים, אז אין שמה חשש של כח גס. -
@קינג-קומפיוטר כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
אכן צריך הרשאת מנהל כדי לגשת לתיקיה שבה מאוחסן הקובץ
אתה מתכוון לקובץ ה-SAM כנראה, זה הקובץ שמאחסן בתוכו חלק הרג׳יסטרי שמכיל את ההאש
מי שיש לו הרשאות מנהל יכול לבחור אם לגשת ישירות לקובץ ה-SAM ולפענח אותו בכוחות עצמו, או להסלים להרשאות SYSTEM ולגשת דרך הממשקים הרגילים של הרג׳יסטרי@dovid כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
כעת אני קולט שבמקרה כזה של גישת משתמש לא מנהל אולי Windows מונעת גם גישה לקבצים מוצפנים, אז אין שמה חשש של כח גס.
אני לא חושב שזה נכון, (אם לא הייתי עצלן הייתי בודק...) וגם זה לא מתרץ את הטענה, כי ההגנה של ההצפנה מיועד בדיוק עבור מצב שיש לו גישה אופליין (דיסק טכנאים) אחרת היה מספיק הרשאות NTFS
-
@אף-אחד-3 כתב במה האלגוריתם ליצירת ההאש לסיסמה בווינדוס ?:
@קומפיונט התחיל מכאן והמשיך בשביל האתגר
אבל אני עדין לא מבין מה התועלת ברשימה של האשים?
אם נגיד רוצים לבדוק ערך מסוים במהלך brute force אז לוקחים את הערך, מחשבים את ההאש שלו ואז עושים השואה.
מדוע צריך רשימה מוכנה של כל ההאשים?! -
@קומפיונט למה לא מבין ? חיפוש ברשימה אמור להיות (ככה אני חושב בכל אופן) הרבה יותר מהיר מאשר חישוב של כל ההאשים לסטרינגים אפשריים בכל פעם מחדש
חוץ מזה, שלא בהכרח שמה שיווצר מזה יהיה מאגר, יכול להיות שאני יצור מזה סוג של ספריה שתשמש בין היתר גם לסיסמאות של ווינדוס אבל גם לעוד דברים מהסוג הזה או סתם סקריפט שיקבל כקלט את ההאש וינסה לפענח אותו
בכל מקרה, זאת לא תהיה מתקפת brute force אלא מתקפת מילון -
@קומפיונט נראה שזה היה באמת המפתח אבל בשנות ה80
כיום יש דרכים אחרות לגמרי
https://anunay-bhatt.medium.com/introduction-to-hashing-and-how-to-retrieve-windows-10-password-hashes-9c8637decaef
https://medium.com/@petergombos/lm-ntlm-net-ntlmv2-oh-my-a9b235c58ed4