אבטחה - באימות דו שלבי / דעתכם... 🪪💂🏻
-
עד היום היינו נכנסים עם כתובת URL הכוללת שם מערכת וסיסמה בטקסט פתוח – מה שמהווה סיכון אבטחתי, מכיוון שכל מי שיש לו גישה לשרת או ל-API יכול לראות את הסיסמה בקלות.
מה שונה עכשיו?
בדיוק כמו שנהוג במערכות אחרות, כמו לדוגמה "נדרים פלוס" – המערכת דורשת אימות מבוסס מזהה גישה (Token) שאינו חשוף ולא עובר בטקסט גלוי.לדוגמה בתיעוד של נדרים פלוס (ראו צילום מסך מצ"ב), כדי לקבל גישה צריך לשלוח מייל ממייל מורשה כדי לקבל קוד אימות (ApiValid או ApiPassword).
למה זה טוב?
- מאפשר להחליף סיסמה בלי לשבור את כל ה-API
- זו סטנדרט אבטחתי מקובל ומומלץ
המהלך הזה בא להגן עלינו ועל המידע שלנו. תודה רבה ל @ימות-המשיח @שמואל !
-
@שמואל כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
יהיה בעזרת השם אפשרות באתר להגדיר כתובות IP שלא יצטרכו לבצע אימות דו-שלבי. ואז הם יוכלו לבצע Login - לקבל טוקן - ולרוץ איתו. גם באתר הניהול הם יהיו פטורים מאימות דו-שלבי. רשימת ip לבנה ברמת הפיתוח זה בוצע, אבל צריך עוד לאפשר את זה באתר להגדיר את זה ולסגור פינות.
ומה יהיה עם
תוכנה
מבצעת חיבור api עם טוקן תקין (כלומר, לא מערכת וסיסמה). - איך הוא יזכור אותו?
הרי זה לא רץ ברמה של שרת, אלא בלחיצה על כפתור (לדוגמא) מוריד דו"ח וכדומה. -
@שמואל אם באמת יהיה APIKEY שיהיה אפשר לרוץ איתו בלי לשנות כל חודש (הוא עוקף את האימות דו שלבי, נכון?), זה כבר קצת נחמה. אבל עדיין אני לא יודע מה זה הMFA אבל נשמע שזה כבר לא פשוט לשנות מספר:סיסמא לטוקן, זה כבר קצת יותר מורכב, אתה מסכים איתי, גם אם אתה מתכנת סופר מסודר וכל הקוד שלך מסודר ומתוייק במקום ואתה יודע מה יש ואיפה, ועוד יותר בעייתי - לאנשים שקנו קוד לא תהיה דרך לעשות את זה.
טוב, כמו שאני רואה את הדברים, להתבכיין לא יעזור גם להתעצבן לא, סביר להניח שאנחנו לא נצא לרחובות להפגין (יש מספיק על מה לעשות את זה גם בלי זה), כדאי להתמקד בהלאה, למצוא כלים שיקלו עלינו את המעבר.
האימות דו שלבי באתר לא מענין אותי, זה תקין ומי שיש לו בעיה בפרטי יצירת קשר זה הזמן לרוץ ולשנות (ו @שמואל יש פתרון לכל החברות שפתחו קוים ונעלמו?), מה שמשנה זה שיטת ההזדהות בAPI, אני מניח שיש כלים שיודעים לסרוק את הקבצים של הקוד מקור, מי שיש לו גישה ממש לשרת בSSH אני מניח שיוכל להריץ משהו על לינוקס כדי למצוא את המקומות הנכונים ושם לשנות, נכון שזה יקח זמן אבל זה יקל יל הענין. מי שאין לו כזו גישה, טוב, זה כבר הרבה יותר בעיה, אולי זה המקום להציע פתרונות...בהזדמנות, נבקש לשחרר את התיעוד של התקן החדש שהולך להיות כמה שיותר מהר כדי שנוכל להיערך גם לזה ואולי גם לזה למצוא פתרון.
-
@שמואל כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
טענת "בניתי ללקוח משהוא, ושמתי את המספר מערכת והסיסמה בקריאות API עצמם, ויש לי את זה בערך 80 פעמים בשרת, ואני אפילו לא יודע איפה" היא טענה שלמעשה היא הסיבה הכי גדולה אולי אפילו להקדים את התאריך.
כשאתה בונה מערכת לחיידר עם פונקציות מתקדמות אתה חייב להכניס במספר מקומות את ההתחברות,
וכשיש לך 5 מוסדות כאלה
וכשיש לך לכל אחד כמה שינויים מהסטנדרט
וכשאתה כבר לא זוכר למי עשית API בסקריפט, ולמי במשיכה רגילהזה לא טענה, "בעיה שלך, היית צריך קודם ללמוד בצורה מקצועית איך כותבים קוד נקי מסודר ושקל לתחזק אותו",
כי אם כן אני יכול לשאול אתכם באותה מידה, מדוע לא למדתם על אבטחה קודם, ואיך לסדר את כל זה מראש.
רוב המקימים כאן לומדים תוך כדי התקדמות, ממערכות רגילות משתדרגים לידיעות בAPI אח"כ מתמקצעים יותר, וכן הלאה
ובפרט שפעם היו צריכים דווקא טוקן, אח"כ הוסיפו התחברות בשם משתמש:סיסמה, מה שאומר שזה היה הקלה יותר, ולא להיפךחברת ימות המשיח שאמנם נותנת פלטפורמה מדהימה ובחינם [בדרך כלל], אבל היא נבנתה איתנו מהשעות שהשקענו ליצור תוכן להעלות אותו ולהפעיל את הקו, ומכאן הגיעו סכומי הכסף להפעיל את זה, ולהקים את זה,
כמובן איני טוען לבעלות או שותפות, אבל התחשבות נכונה, אני לא יכול לגמור את כל השעות שלי על שינויים מפליגים.רק לדוגמא
אני בניתי למישהו מערכת, האבטחה והמייל שיחזור הם שלי כמובן
אבל כעת הוא מתקשר אלי שהוא יותר לא יוכל להתחבר למערכת בלי אימות
אני צריך מעכשיו בכל חודש לתת לו אימות בשביל שיוכל להמשיך להתחבר למערכת...
ויש לי כעשרים כאלה [שנתתי להם שם משתמש וסיסמה והם מנהלים יחסית לבד]וכמבון הAPI, נכון אני לא מתכנת מקצועי
אבל השקעתי, למדתי, ובניתי, כעת לבנות שוב זה שעות של עבודה
לעבור מערכת אחרי מערכת, לבדוק בכל אחת היכן יש API, ולסדר שיעבור לאופציה החדשה.
אין סקריפט שרץ על כל הקבצים שיש לי בגוגל שיטס, ובשרת הפרטי ומוצא את החיבורים ומחליף אותם לבדרק לדוגמא, השבוע פנה אלי מישהו עם מערכת שבניתי לו לפני שלוש שנים שרוצה איזה דבר שם, אני כבר לא זכרתי בכלל שבניתי לו.
כמובן שהוא שילם על העבודה החדשה, שאני ייכנס , יבדוק מחדש מה קורה שם, ויעדכן מה שצריך, לקח לי כשעה, והוא שילם.
אבל כעת הוא לא ירצה לשלם, כי הוא לא מבין בזה, ולהסביר לו יקח עוד זמן
אני לא עובד עם לקוחות טייקונים שמבחינתם מה שאמרת קדוש ותקבל מייד כל סכום, זה הרבה חנויות קטנות, מוסדות שונים, ומערכות של כל מיני דברים שהכסף לא זורם שם יותר מידיהעלות [לי או למקבלי השרות שלי] תהיה אלפי שקלים, וחבל...
הדבר הזה שפתאום המתכנתים הראשיים לומדים נושא חדש וממילא מצעידים אליו את המערכת זה נפלא כשזה תוספת, אבל מקשה מאוד כשזה מחליף את הקיים.
בתקווה להבנה
@שמואל -
@מנסה כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
אני בניתי למישהו מערכת, האבטחה והמייל שיחזור הם שלי כמובן
אבל כעת הוא מתקשר אלי שהוא יותר לא יוכל להתחבר למערכת בלי אימות
אני צריך מעכשיו בכל חודש לתת לו אימות בשביל שיוכל להמשיך להתחבר למערכת...
ויש לי כעשרים כאלה [שנתתי להם שם משתמש וסיסמה והם מנהלים יחסית לבד]זה לא בעיה, הוא יכול להוסיף את הטלפון שלו לאימות דו"ש
-
צודק, לא שמתי לב שניתן להוסיף ללא הגבלת תאריך
-
פוסט זה נמחק! -
@שמואל
האם יהיה טווח זמן ששתי סוגי האימות, גם על ידי טוקן וגם על ידי מספר מערכת וסיסמה יעבדו, עד שיעבור לאימות על ידי טוקן בלבד? כדי שיהיה זמן לעדכן את המערכות ולא תהיה תקופה שמלא מערכות יתקעו עד שיעדכנו אותם?תודה מראש.
-
שימו לב, שבגוגל סקריפט, אם מישהו השתמש בפריסה, הוא יצטרך לפרוס מחדש עם השינויים, לא מספיק לשנות, וזה אומר גם להביא ללקוחות לינק חדש במקרה הצורך.
-
@עידו כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
וזה אומר גם להביא ללקוחות לינק חדש
???
למה אתה אומר שצריך לינק חדש?
מספיק לעדכן את הפריסה, לא צריך לעשות פריסה חדשה. -
הפסיק לעבוד לי מייל לטלפון,
האם יתכן שזה כי כבר הגדרתי אימות דו שלבי במערכת שלי?
האם כבר נעשו שינויים בapi? -
@צצ כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
@עידו כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
וזה אומר גם להביא ללקוחות לינק חדש
???
למה אתה אומר שצריך לינק חדש?
מספיק לעדכן את הפריסה, לא צריך לעשות פריסה חדשה.לי זה מעולם לא עבד, כל פעם הייתי צריך לפרוס מחדש.
ניסית פעם לעדכן פריסה? כמה שידוע לי זה רק לגבי ההגדרות של מי יכול להכנס ובתור מי. -
@עץ-השדה
בקשר לבעיה שכתבת לעיל על פורציםסתם מוסיף פה גם על מה שכתבת וגם באופן כללי - דוגמא לבעיה בכל מערכת ולא רק מערכות בפעילות:
לפני תקופה ארוכה, נשלחו אלפי סמסים של 'פישינג' ממערכת של עמותה מאד גדולה שטיפלתי בקו שלהם.
מערכות הספאם באפליקציות לא חסמו את זה כל כך מהר כי זה מספר מאד מאד מוכר וזה היה נזק אדיר!
לקח כמה שעות עד שהטלפונים התחילו להגיע לעמותה ואז פנו אלי... (התברר שהסיסמה הייתה שמורה אצל עובד אחר והוא השתמש עם תוסף לשמירת סיסמאות מאד פופולארי והתברר שפרצו לחברה של התוסף).
הפורץ רכש יחידות ישירות בתוך המערכת באלפי שקלים(!!) - ולכן לא משנה העובדה שזה מערכת בשימוש או לא, מערכת שאפשר דרכה לבצע פעולות רגישות כמו הוצאת שיחות ושליחת סמסים - מחייבת אמצעי זהירות שימנע אותם.
אתה צודק במאה אחוז שצריך לפתור את הבעיה הזו אבל: אני חושב שלחפש ולמצוא פתרונות שלא יצריכו את כל המפתחים להשקיע עשרות שעות של חיפושים ושינויים זה דבר שאי אפשר להקל בו ראש.
אני לא אומר שאפשר להשאיר את המצב כמו שהוא, אבל צריך לחשוב טוב טוב איך עם עבודה מצד @שמואל וצוות המתכנתים היקרים של ימות המשיח יהיה אפשר לחסוך את הכאב ראש המיותר הזה מאיתנו.
אני אציע הצעת (טיוטה כמובן)
למשל: שכתובות IP מסויימות יאושרו לשימוש עם =token077:1234 גם בלי אימות דו שלבי
ישנם הרי שרתים של מתכנתים מוכרים שאפשר לסמוך עליהם
אז נכון יהיו חייבים IP קבוע שזה יעלה קצת יותר כסף אבל הצר שווה בנזק המלך...נקודה שניה חשובה לא פחות זה חלוקה בין פעולות של משיכת נתונים לבין פעולות שינויים במערכת
לדוגמא יש לי גוגל שיטס שאמור להציג את הנתונים מהמערכת (סליחה לא 1, 100...)
הצגת נתונים מהמערכת באמצעות טוקן רק לשרתי גוגל שיטס היא אמנם נזק מסויים של האבטחה אבל נזק שמצדיק את עצמו
@שמואל תבדוק אתה בלוגים שלכם כמה פניות יש מגוגל שיטס ותחשוב כמה שווה להתאמץ כדי שכל האנשים שמחזיקים בזה לא יצטרכו לשבור את הראש, חלקם אפילו לא יודעים איך לתקן את הבעיה הם בקושי הרכיבו פעם אחת את הקישור שמוריד להם את הקובץ לשרת ... -
@עידו כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
@צצ כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
@עידו כתב באבטחה - באימות דו שלבי / דעתכם... 🪪
:
וזה אומר גם להביא ללקוחות לינק חדש
???
למה אתה אומר שצריך לינק חדש?
מספיק לעדכן את הפריסה, לא צריך לעשות פריסה חדשה.לי זה מעולם לא עבד, כל פעם הייתי צריך לפרוס מחדש.
ניסית פעם לעדכן פריסה? כמה שידוע לי זה רק לגבי ההגדרות של מי יכול להכנס ובתור מי.לא יודע על מה אתה מדבר
כל שינוי קטן שאני עושה בסקריפט, אני צריך לעדכן את הפריסה
אבל הלינק של הפריסה (הארוך הזה) לא משתנה, הוא נשאר אותו דבר בדיוקככה אני עושה:
1.2.
3.
4.
וזהו, הפריסה עודכנה, הלינק הישן נשאר ללא שינוי..
עריכה: @עידו שים לב, שכחתי שלב, כעת ערכתי את תמונה 3 ו-4
-
@צצ יפה, מענין לנסות