אני עובד כמפתח תוכנה בחברת ADQUANT
חבר בקהילת הביטקויין הישראלית
משתמש בביטקויין כבר כמעט שנתיים
פיתחתי מספר כלים שקשורים לביטקויין וניתן למצוא אותם בבלוג שלי
חבר בקהילת ההאקינג הישראלית וחובב אבטחת מידע
ההרצאה הולכת להתמקד בעיקר באבטחת מידע באופן כללי
ברמה הבסיסית ביותר
אני אשתדל לשמור את הכל כמה שיותר פשוט וברור אבל אם יש משהו לא מובן אתם מוזמנים לשאול שאלות.
חלק ציבורי
1YoniJH5sw41Ed4JmYJHJjKLkGDVrtLBt
חלק פרטי
5HuENffDrt6Kox4VixNw39rvzEm2G9cbRKpB5RGiMtqfGVmMq5T
אז בואו קודם כל לפני הכל בואו נבין מה זה ארנק ביטקויין
ישנו חלק ציבורי (הכתובת) אותו כולם יכולים לדעת
בדומה למספר חשבון בנק כל מי שרוצה להפקיד לכם כסף לחשבון יכול לעשות זאת.
ישנו את החלק הפרטי (המפתח) שאותו אסור לאף אחד חוץ מכם לדעת
בדומה לסיסמא כל מי שיש לו את המפתת יכול לבצע משיכות מהחשבון
כאשר מבצעים העברה בביטקוין לא המפתח לא נשלח לאף אחד אלא רק ההוראה.
לכל כתובת יש ביודק מפתח אחד ולא ניתן להחליף או לשנות אותו (לכן צריך להחליף כתובת)
הצפנה -
הדרך לשמור מידע בטוח ומוגן.
רק מי שיודע את המפתח יכול לגשת למידע
הצפנה אסימטרית –
מאפשרת לנו לשלוח לאנשים מפתח איתו הם יכולים להצפין ולשלוח לנו הודעות
כל אחד יכול להצפין רק אנחנו יכולים לפתוח
אנחנו גם יכולים לחתום הודעות עם המפתח הפרטי שידעו שאנחנו שלחנו אותן
אבטחת מידע מורכבת מהרבה חלקים
השרשרת החלשה בחוליה - אם אחד החלקים לא עובד טוב כל השאר מאבדים מהאפקטיביות שלהם
ישנם שלושה אזורי תקיפה עיקריים.
הרשת המחשב והמשתמש.
על הרשת יש לנו הכי פחות שליטה על המחשב קצת יותר ועל עצמנו שליטה מלאה.
כמה שיש לנו יותר שליטה על משהו הרבה יותר חשוב שנאבטח כי זה דורש מאיתנו פעולה אקטיבית
הרשת
רשת האינטרנט היא בעצם רשת של מחשבים (שרתים) המחוברים אחד לשני.
כשאנו גולשים לאתר ברשת המחשב שלנו בעצם שולח ומקבל מידע שעובר דרך הרבה שרתים אחרים עד שהוא מגיע למחשב הספציפי של האתר.
חשוב להבין שבמצב הבסיסי כמעט כל מחשב בדרך יכול להאזין לנו לתקשורת ולשמור אותה
אפשר אולי לחשוב שניתן לסמוך על החברות שמחזיקות את השרתים האלה (עדיף שלא) אבל מה קורה אם אנחנו מחוברים לראווטר אלחוטי ?
כל אחד בטווח הקליטה יכול להאזין לתקשורת. בייחוד אם אין סיסמא אבל גם אם יש.
לעולם אל תתחברו לרשת אלחוטית לא מאובטחת
ואם מתחברים חשוב שלרת תהיה סיסמא קשה והצפנת WPA
אחרי שאנחנו שומרים רשת לגישה אוטומטית המחשב לשנו כל הזמן מנסה להתחבר אליה ומישהו יכול ליצור רשת מזוייפת ולגרום לנו להתחבר אליה
גלישה מאובטחת
SSL בעצם יוצר לנו תעלה מוצפנת ובטוחה בינינו לבין האתר שאנחנו גולשים בו.
לSSL יש שני חלקים חשובים
1. כל התקשורת עוברת מוצפנת
2. יש ווידוא של הזהות של המחשב אליו אנחנו מחוברים
שני החלקים חשובים אם אין הצפנה כולם יכולים להאזין לתקשורת ואם לא יודעים עם מי אנחנו מדברים אולי בכלל אנחנו שולחים מידע למישהו אחר.
כדי ליצור חיבור SSL יש צורך בתעודה מאמתת.
ישנן חברות המוכרות תעודות וניתן לבדוק מולן אם התעודה אמיתית או לא.
ניתן גם ליצור תעודה עצמאית אבל במקרה הזה נוכל לסמוך שהתקשורת מוצפנת אבל לא נוכל לדעת עם מי אנחנו מדברים (הדפדפן יציג לנו אזהרה).
זיהוי SSL תקין
כשיש חיבור SSL לאתר הדפדפן יציג לו סימן בשורת הכתובת
חשוב לדעת איך הסימן נראה במצב תקין ולשים לב שהוא קיים כשגולשים באתרים רגישים.
אסור לשלוח לאתר מידע רגיש כמו סיסמאות או פרטי אשראי בלי שרואים את האבטחה
בארץ ישנן הרבה חנויות אלקטרוניות ואתרים שלא עושים את האבטחה טוב
ולמרות שבפועל המידע אולי עובר מוצפן אין למשתמש יכולת לראות זאת.
אם המשתמש לא יודע שיש SSL פועל לSSL אין חשיבות!
SSL מוודא לפי הכתובת ככה שאם רואים שיש אבטחה פעילה אבל זו לא הכתובת של האתר שאנחנו מכירים יש בעיה ואסור לסמוך על ההצפנה!
זיהוי SSL "מאובטח"
ישנן כמה רמות של ווידוא בתעודות SSL יש תעודות יקרות שמציגות את שם החברה עם התעודה.
התעודות האלה רק נותנות זיהוי יותר טוב של הבעלים של האתר הן לא נותנות הצפנה יותר בטוחה !
חיבור מאובטח חלקית עם SSL
אתר יכול לכלול רכיבים בטוחים ולא בטוחים
אם אתר כולל רכיבים לא בטוחים אנחנו צריכים להניח שהוא לא בטוח
חיבור מאובטח חלקית עם SSL
זיהוי SSL שגוי
זיהוי SSL שגוי
לא צריך להיכנס לפאניקה. יכול להיות שמישהו השתלט לנו על החיבור ועד עכשיו לא היינו מודעים לזה
צריך לשאול את עצמנו האם נכנסו לאתרים אחרים שאולי לא היו מוצפנים והעברנו מידע למישהו שלא ניתן לסמוך עליו.
זיהוי SSL שגוי
במידה של SSL שגוי חשוב לקרוא את ההודעה ולהבין למה. יכול להיות שהבעיה היא בכלל ספציפית באתר.
במידה ואנחנו מניחים שיש בעיה ברשת (מישהו מנסה להוביל אותנו לאתר אחר) חשוב לא להיכנס לשום אתר עד שנסדר את הבעיה. במידה ואפשר בכלל נתנתק מהרשת (נעבור לרשת יותר מאובטחת או למחשב אחר).
אז נתחבר ?
התקיפה הכי נפוצה על SSL היא פשוט לבטל אותו.
חשוב מאוד לשים לב כי אז אין אזהרות !
עד כמה החיבור באמת מאובטח ?
רמת האבטחה של החיבור תלויה ביכולות של הדפדפן וביכולות של השרת אליו אנחנו מתחברים.
עדיף מבחינת חוזק האבטחה לא לגלוש עםIE ובטח שלא לגלוש עם דפדפן שהוא לא מעודכן
ישנו תוסף לפיירפוקס שמראה לנו את חוזק החיבור.
בפועל הרבה אתרים לא מגיעים אפילו ל50% אין לנו כל כך מה לעשות עם זה
אבל אם יש אתר שאנחנו גולשים איתו הרבה ופתאום רואים שהחיבור מאובטח פחות מבד"כ זה צריך להדליק לנו איזו נורת הזהרה
המחשב
המחשב (התוכנות שמותקנות על המחשב) -
אם יש וירוסים על המחשב הם יכולים לעקוב אחרי כל מה שאנחנו עושים.
לקבל תצלומי מסך, טקסט שאנחנו כותבים אולי גם לפתוח את המקרופון והמצלמה
חשבו שנדע אילו תוכנות מותקנות על המחשב , מי יצר אותן ומה הן עושות.
- וירוסים
- סוסים טרויאנים
- מקליטי מקשים
ישנה טענה שלינוקס יותר מוגן לוירוסים או שווינדוס יותר מוגן כי יש לו קוד סגור.
בפועל זה שטויות וכל המערכות הפעלה פגיעות לפירצות אבטחה באותה מידה.
אבל אני אישית מעדיף תוכנה חופשית (קוד פתוח) כי ככה אני לפחות יכול לדעת מה התוכנה עושה ושמי שיצר אותה לא הוסיף לה התנהגויות נוספות.
חייבים לשמור את מערכת ההפעלה ואת כל התוכנות מעודכנות
חשוב לא להתקין תוכנות פרוצות כי אז אנחנו בכלל לא יודעים מה התווסף אליהן.
הדפדפן
היום כמעט הכל אנחנו עושים עם הדפדפן.
חשוב להשתמש בדפדפן מאובטח אני ממליץ לא להשתמש בIE וספארי.
אופרה ההוא דפדפן מאוד מעניין ובטוח ששווה בדיקה.
הבעיה היא לפעמים יכול להיות מציק להפעיל את הJS כל פעם שאנחנו נכנסים לאתר
ואם אנחנו גם ככה מפעילים הכל אז מה זה עוזר ?
תוסף No Script
הדפדפן בעצם מאפשר אזור סגור עליו רצים אתרי אינטרנט אבל אתרים זדוניים יכולים לנסות לעקוף את זה.
אתר אחד יכול לשלוח הוראות בשמנו לאתר אחר. אם אנחנו עדיין מחוברים למייל לדוגמא יכול להיות שהאתר יצליח לשלוח מייל בשמנו או לעשות דברים אחרים (היום אתרים מנסים להגן על עצמם מבעיות כאלה CSRF )
JS היא השפה שמריצה את כל הווב יש תוספים כמו NOSCRIPT שמאפשרים לנו לראות מאיפה הקוד שרץ ולהחליט אם אנחנו רוצים להריץ אותו. התוסף גם מנסה לזהות בעיות אבטחה נוספות ולהתריע בפנינו (הוא גם יכול להכריח SSL )
למה דפדפן אחד אם אפשר שניים ?
בגלל זה אולי שווה לגלוש עם שני דפדפנים.
אחד רק לאתרים חשובים שאנחנו מכירים וסומכים עליהם (בנוסף No-script רץ ) והשני לכל מיני אתרים מזדמנים שאנחנו לא מכירים
המשתמש
המשתמש
המשתמש -
המשתמש הוא הנקודה הכי רגישה בכל המערכת.
משתמש שמכיר את הרשת ואיך היא עובדת יוכל לזהות מתי מנסים ל"דוג" אותו.
מנסים לעבוד עלינו
ישנם שיטות דייג פשוטות כמו "העוקץ הניגרי" בהן מנסים להבטיח לכם הרבה כסף בתמורה לזה שתשלחו למישהו "קצת" כסף פחות אפקטיבי
מנסים לעבוד עלינו
Hello,
I made a quick medical trip to Scotland...
On my way to the hotel, i was robbed of my money, cell phone, credit card and other valuable documents.
I am sorry if i am inconveniencing you, but i have nobody here to run to.
I will be indeed very grateful if i can get a loan of 1,400US$ from you...
Waiting to hear back from you..
Thanks,
David G
ישנם שיטות יותר מתוחכמות בהן מחשבונות פרוצים של אנשים שאנחנו מכירים ינסו לעבוד עלינו
מנסים לעבוד עלינו
There has been a withdrawal from your Mt.Gox account:
Transaction reference: 18dsj309-skf93-34ls83-34fdfs
IP: 129.44.231.18
If you did not request this withdrawal and your money has been stolen.
please use go to this link and reject the transfer immediately!
We can only reject Bitcoin transfers from the last 10 minutes!
http://savemybitcoins.mtgox.secure.rjk.ru/save_my_money.asp
Thanks,
The Mt.Gox Team
וישנן שיטות מאוד מתוחכמות יותר כמו התחזות לאתר אליו המשתמש רשום ובקשת עידכון פרטים
כל השיטות האלה בדרך כלל עובדות על מסות של אנשים ולא מכוונות לאדם אחד ספציפי.
אבל אם מישהו נחשב מטרה טובה יכול להיות שהוא יקבל הודעות שמיועדות ספציפית אליו והוכנו במיוחד בשבילו. (מאוד מסוכן וקשה להתגוננות).
חשוב לדעת שכל אחד יכול לשלוח מייל מכל כתובת (גם אם היא לא שלא) ניתן לבחור איזה שם שרוצים. באופן בסיסי אם מישהו מבקש מאיתנו לעשות משהו במייל (כולל לפתוח קישור) חשוב לוודא שאנחנו סומכים עליו וזה באמת הוא.
אף פעם אל תשלחו מיילים עם קבצים או קישורים בלי הסבר או כמה מילים למי שמקבל את המייל
ואל תפתחו קישורים וקבצים בלי שמישהו לפחות כתב לכם למה הוא שולח אותם ומה יש שם.
מספר כללי אצבע
- לא נכנסים לאתרים חשובים מקישורים במייל
- לא נותנים סיסמא לאף אחד כולל נציגי שירות, לא במייל, לא בטלפון ולא בצ'אט
- שומרים על עירנות וקור רוח
ססמאות
סיסמאות הן המחסום העיקרי שלנו מפני פורצים.
עם סיסמא חלשה כל מנגגנוי ההגנה האחרים שלנו יכשלו.
מחשב בעלות של 7,000 ש"ח יכול פרוץ לנסות לפרוץ 3 מיליארד סיסמאות בשניה
יכול לפרוץ סיסמא בת 5 תווים ב 6 דקות
סיסמא בת 7 תווים ב 9.5 חודשים
סיסמא בת 10 תווים ב12 מיליון שנה
באופן רגיל בניסיון לעשות לוגין לאתר המהירות המקסימלית היא100 ססמאות לשניה
אבל אם סיסמא היא קלה לניחוש (תאריך לידה \ שם \ ת.ז \ טלפון וכו') ניתן לפרוץ אותה בפחות מיום עם תוכנה אוטומטית שתנסה את כל האפשרויות.
הסיסמה חייבת להיות שרירותית אמיתית.
עדיף להשתמש בכלי אוטומטי שמייצר סיסמאות
גם כלים אוטומטים לא תמיד משתמשים במנגנון שרירותי מספיק ואז יהיה ניתן לגלות את הסיסמאות שהן מייצרים (בייחוד בטלפונים בדומה לבעיה שהיית עם הארנק bitcoin של אנדריאס)
ייחודית.
אסור להשתמש בסיסמא של מישהו אחר ! דא
אסור להשתמש באותה סיסמא כמה פעמים לאתרים שונים.
אם מישהו יפרוץ לאתר אחד הוא יפרוץ לנו לכל שאר המקומות
איך אנחנו בכלל יודעים שהאתר הזה לא ישתמש בסיסמא למשהו אחר ?
ססמאות אמורות להשתמש מוצפנות ככה שגם בעל האתר לא יכול לגלות אותן
בפועל לא מספיק אתרים עושים את זה ועדיין אם האתר נפרץ ונעשה לוגין כשהפורץ שולט עליו הוא יכול לשמור את הסיסמא.
בגלל שפריצת סיסמא היא עניין של זמן ומזל (אולי מישהו גנב לנו את הסיסמא ואנחנו לא יודעים)
צריך להחליף סיסמאות כל כמה זמן (מומלץ לפחות כל חצי שנה)
אם אנחנו משתמשים בכלי אוטומטי לשמירת סיסמאות חשוב להחליף את כל הסיסמאות ולא רק את הסיסמת גישה.
כיצד ליצור ולשמור סיסמא חזקה
- H6q8q+s#.U
- ,xbn646'xK
- ^w*NuZUQrP
- voMiXd6OM
וסיסמא למנהל הסיסמאות ?
אבל מה עם סיסמא למנהל סיסמאות.
ישנן כמה שיטות ליצור סיסמאות שקלות לזכירה
אם הסיסמה מורכבת ממלים ניתן לדמיין תמונה.
ישנם כמה כלים שמאפשרים ליצור סיסמאות כאלה
חשוב שהמילים יהיו שרירותיות ולהשתמש לפחות ב6 מילים
אולי גם להוסיף כמה תווים אקסטרה.
- cat car upside fog glue stereo
אבל מה עם סיסמא למנהל סיסמאות.
ישנן כמה שיטות ליצור סיסמאות שקלות לזכירה
אם הסיסמה מורכבת ממלים ניתן לדמיין תמונה.
ישנם כמה כלים שמאפשרים ליצור סיסמאות כאלה
חשוב שהמילים יהיו שרירותיות ולהשתמש לפחות ב6 מילים
אולי גם להוסיף כמה תווים אקסטרה.
- the statesman will burgle amidst lucid sunlamps
אבל מה עם סיסמא למנהל סיסמאות.
ישנן כמה שיטות ליצור סיסמאות שקלות לזכירה
אם הסיסמה מורכבת ממלים ניתן לדמיין תמונה.
ישנם כמה כלים שמאפשרים ליצור סיסמאות כאלה
חשוב שהמילים יהיו שרירותיות ולהשתמש לפחות ב6 מילים
אולי גם להוסיף כמה תווים אקסטרה.
הכלל היבש אומר שאסור לרשום ססמאות.
אבל זה יחסית בסדר אם תרשמו את הסיסמא למייל על דף אצלכם.
עדיף כמובן לא לרשום את כל הסיסמא אלא להשאיר חלק ריק שתזכרו למלא
אם למשל בחרת סיסמא של מילים אתם יכולים להשמיט שתי מילים או לרשום במקומן מילים שמזכירות לכם את המילה אמיתית.
במידה והנייר נגנב או נאבד חשוב מייד להחליף סיסמא (כדאי שיהיה לנו עוד עותק אם אנחנו לא זוכרים...)
זיהוי בשני שלבים
Google Authenticator
מעבר לססמאות ישנם כלים שמייצרים מזהה זמני (מתחלף כל כמה שניות)
(ניתן לקבל גם SMS לכל פלאפון ויש גם תוכנה יעודית לסמארטפונים של גוגל)
אתרים כמו ג'ימייל ומרבית אתרי הביטקויין מאפשרים הזדהות בשני שלבים
בהתחלה עם סיסמא ואז עם המפתח הזמני.
יש אתרים שלא עושים את זה מספיק טוב.
למייל אולי חשוב שלא יוכלו לעשות לוגין אבל לארנק ביטקויין יותר חשוב שלא יוכלו להוציא כסף
חלק ציבורי
1YoniJH5sw41Ed4JmYJHJjKLkGDVrtLBt
חלק פרטי
5HuENffDrt6Kox4VixNw39rvzEm2G9cbRKpB5RGiMtqfGVmMq5T
טרוקרייפט כלי שנוכל ליצור תקייה מוצפנת (במידה ואנחנו שומרים את המידע בענן או על דיסק און קי)
חשוב לדעת שוירוסים יכול להדביק דיסקונים וכו'.
פסגארדיאן מאפשר לשנו לחלק את הסיסמה למספר חלקים ולשמור אותו אצל מספר אנשים שונים
ניתן להגדיר לתוכנה לחלק ל4 חלקים שצריך רק שניים מהם כדי לקבל אותה חזרה.
נתן את החלקים לאנשים שונים לשמור וככה יש פחות סיכוי שמישהו יצליח לגנוב מספיק חלקים כדי לגנוב את הכתובת או לחלופין שהיא תאבד
ארנק נייר
ארנק נייר מכיל כתובת ציבורית ופרטית
כדאי לייצר כמה כתובות ולחלק ביניהן את הביטקויינים
ברגע שמשתמשים בכתובת היא כבר לא כתובת נייר !
ניתן לבצע העברות בלי לחשוף את המפתח אבל זה יותר מסובך
כדי לייצר ארנק נייר אנחנו צריכים מחשב נקי שלא היה ולא יהיה מחובר לאינטרנט (רק ככה נהיה בטוחים שהמידע לא יגנב)
לייב CD מאפשר לנו להפעיל גירסה נקייה של מערכת ההפעלה
החיסרון הוא שצריך כל פעם להתקין את הכלים מחדש
ושאנחנו עדיין צריכים לסמוך על החברה שיצרה את הדיסק.
לי יש גירסה בבלוג של לייב CD עם הכלים לביטקויין אבל אתם צריכים לסמוך עלי (אני לא הייתי סומך)
מדפסות תעשייתיות עלולות לזכור דפים שהודפסו בהם!
LiveCD
כדי לייצר ארנק נייר אנחנו צריכים מחשב נקי שלא היה ולא יהיה מחובר לאינטרנט (רק ככה נהיה בטוחים שהמידע לא יגנב)
לייב CD מאפשר לנו להפעיל גירסה נקייה של מערכת ההפעלה
החיסרון הוא שצריך כל פעם להתקין את הכלים מחדש
ושאנחנו עדיין צריכים לסמוך על החברה שיצרה את הדיסק.
לי יש גירסה בבלוג של לייב CD עם הכלים לביטקויין אבל אתם צריכים לסמוך עלי (אני לא הייתי סומך)
מדפסות תעשייתיות עלולות לזכור דפים שהודפסו בהם!
ארנק מוח
constant forest adore false green weave stop guy fur freeze giggle clock
הסיסמא היא הארנק !
חשוב לשים לב שתוכנות שונות עלולות לייצר מפתח שונה מאותה סיסמא (ולכן גם כתובת שונה) לכן חשוב שתהיה לנו גישה לתוכנה.
החסרון
אנחנו עלולים לבחור סיסמא שהיא לא חזקה מספיק
אנחנו עלולים לשכוח
עדיין אנחנו צריכים לחשוף את המפתח ברגע שנרצה להשתמש בכתובת
ארנק בענן
חסרונות כמו שימוש בכל אתר אינטרנט אחר!
בעתיד אולי יהיו שירותים אליהם נוכל להביר חלק מהכתובת והם ישמרו עליה
בדומה לבנקים הם יבטחו את הכספים שלנו במקרה של גניבה
אבל בגלל שלא תהיה להם את הכתובת המלאה הם לא יוכלו להתשמש לנו בכסף.