שאלה

coolel

New member
שאלה

אני רוצה לעשות שכשמשתמש עושה LOGIN לאתר אז גם פעם הבאה שהוא ייכנס המשתמש ישמר לו. COOKIE הכי מתאים, לא? איך כדאי לעשות? רק COOKIE שבו יהיה שם המשתמש או אולי גם COOKIE עם סיסמה שיהיה יותר בטוח ואז כל פעם לבדוק את שניהם? ואז לא כדאי להצפין/לקודד את הסיסמה שבCOOKIE? איך מצפינים/מקודדים בPHP? איך מחזירים אחורה את הקידוד/הצפנה?
 

coolel

New member
מה לגבי MD5?

אפשר לעשות COOKIE שבה תהיה הסיסמה בMD5 ואז לבדוק אם מה שבCOOKIE שווה לMD5 של הסיסמה בדאטאבייס, איך זה? או שיש דרך יותר טובה?
 

shanor

New member
מממ...

טוב, אז ככה, אם אתה רוצה שתהיה לך אפשרות לשמור לוגאין של משתמש מסויים משמע שהוא לא יצטרך לעשות לוגאין לתוך האתר שלך אחרי הלוגאין הראשון שלו, אין דרך אחרת לעשות את זה פרט לעוגיות. אתה חייב לשמור את המידע על המחשב שלו... בקשר להצפנה, כמו שאתה עצמך כתבת, כן רצוי ומומלץ שהרי אם לא תצפין את הסיסמה של המשתמש שלך כל מי שיודע מה זה קוקי יוכל לראות את הסיסמה של המשתמש שלך. בקשר לקידוד... MD5... תזכור שזה קידוד חד כיווני (אלא אם אתה הולך לבנות סקריפט שלם רק כדי לנעול ולפתוח את ה- MD5...) ואז מהרגע שאתה מקודד את הסיסמה בקידוד הזה, הדרך היחידה שלך להמשיך ולעבוד עם זה מול הדאטה בייס שלך היא בהשוואה ישירה של הסטרינג שיש אצל המשתמש שלך בקוקי עם מה שרשום אצלך.... דרך יותר טובה... מממ... ברגע שאתה לוקח את הלוגאין והסיסמה של המשתמש שלך ושם אותם על קוקי, זה כמו בדיוק לשים קוקי ובתוכה לשים סתם נתון כל שהוא כמו שם המשתמש של היוזר שלך עם ערך של נגיד LOGIN=TRUE, וזהו שהרי, כל עוד יש לו את הקוקי על המחשב (או על כל מחשב אחר יש לו גישה לתוך האתר) אז למה בכלל מראש לאכסן את השם משתמש ואת הסיסמה (אפילו שהיא מוצפנת) על המחשב של המשתמש? תיקח קוקי, שים בה למשל את מספר ID של המשתמש שלך עם אישור כניסה למערכת וזהו. ברגע שהמשתמש שלך לא רוצה את הלוגאין הקבוע, תמחק את הקוקי או תאפס את המשתנה וזהו, לא יהיה לו לוגאין אוטומטי... נראה לי שקצת סיבכתי כאן עם הסבר שאמור להיות פשוט אבל מקווה שעזרתי ולו בקצת. בכל אופן אני (ואני בטוח שגם אחרים) אשמח לדעת מה עשית לבסוף ואיך. בברכת הצלחה שנאור.
 

coolel

New member
מה שעשיתי הוא:

את הסיסמה בCOOKIE הצפנתי בMD5. ואז כל דף שחשוב שעושה שימוש בשם משתמש הוספתי קוד שמתחבר למסד נתונים מוציא את הסיסמה של היוזר מהמסד נתונים ואז משווה אם הסיסמה שבCOOKIE(שכבר מוצפנת בMD5) שווה לMD5 של הסיסמה שבמסד נתונים תודה על העזרה...
 

תמר,

New member
ניתן להשתמש גם ב-sessions

ואז אין צורך לשמור את הסיסמה ב-cookie
 

באפט

New member
עוד שאלה על login

במידה והעוגיה כוללת רק ID, מה מונע מאדם זדוני לבנות עוגיה שכוללת ID של משתמש אחר וכך להכנס לאתר במקומו? אם הסיסמה תכלל בעוגיה, אז לא יהיה ניתן לעשות זאת. תקן אותי אם אני טועה, כי לא מזמן שידרגתי את מערכת ה-login באתר שלי כך שתהיה יותר בוטחה ותכלול סיסמה מוצפנת (לאו דווקא הסיסמה של המשתמש, אולי איזשהו hash על השם שלו, עם sand סודי).
 

shanor

New member
מממ...

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

באפט

New member
הכוונה שלי הייתה..

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

shanor

New member
מממ...

אוקיי אז תמיד אפשר לתת ב- ID משהו רנדומלי עם 15 ספרות (או תווים) ולא להיות סידרתיים (כמו 1,2,3), זה יצמצם את האפשרויות אם כי לא ימנע אותם. אבל שוב, ברגע שמישהו נרשם לאתר הוא יקבל את הקוקיה, ואז הוא יכול לערוך אותה, מה שאומר לשנות את שם המשתמש ואת הסיסמה, בהנחה כמובן שיש לאותו משתמש זדוני את הסיסמה. אם אין לו אז יופי נפתרה הבעיה... כמעט (שוב עדיין יש את העניין של הצפנה, אבל בקוקי ברגע שהצפנת את הסיסמה, אפשר לקרא את הסטרינג המוצפן... וזו בעיה בפני עצמה). לסיכומו של דבר מה שאתה אומר הוא נכון, ולצערי אני לא יכול לתת לך פתרון מושלם, אני לא בטוח שיש אחד כזה... תחשוב על זה ככה, אפילו כרטיסי אשראי פורצים (יחסית בקלות בעזרת הציוד המתאים והידע הדרוש)... בברכה שנאור.
 

באפט

New member
אבטחה

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