ניהול סיסמאות
ניהול נכון של סיסמאות מהווה אחד מעמודי התווך הבסיסיים של אבטחת הסייבר המודרנית, אך הוא ממשיך להיות אחת החוליות החלשות ביותר ברוב הארגונים בשל הנטייה האנושית הטבעית ליצור סיסמאות חלשות, לעשות בהן שימוש חוזר במספר שירותים ולאחסן אותן באופן לא מאובטח. מחקרים מראים שיותר מ-80% מהפרצות במידע מערבות פרטי גישה שנפרצו, בין אם דרך מתקפות credential stuffing המשתמשות בסיסמאות שדלפו משירותים אחרים, פישינג הלוכד פרטי גישה ישירות מהמשתמשים, או כוח גס נגד סיסמאות חלשות וצפויות. מורכבות הבעיה גדלה באופן אקספוננציאלי בסביבות ארגוניות שבהן משתמשים נדרשים לנהל עשרות פרטי גישה שונים עבור מערכות פנימיות, אפליקציות SaaS, רשתות VPN, שרתים וחשבונות ניהוליים, מה שמוביל באופן בלתי נמנע לפרקטיקות לא מאובטחות כגון רישום סיסמאות על פתקיות נדבקות, גיליונות אלקטרוניים לא מוגנים או שימוש חוזר באותה סיסמה בכל המערכות. מאמר זה מציג גישה מקיפה לניהול סיסמאות ארגוניות ואישיות, המכסה מדיניות מורכבות ורוטציה מבוססת ראיות, יישום ובחירה של מנהלי סיסמאות ארגוניים, אסטרטגיות מעבר לאימות רב-גורמי (MFA), מניעת מתקפות אוטומטיות באמצעות rate limiting ו-CAPTCHA, ניטור פרטי גישה שדלפו באמצעות שירותי threat intelligence, וחינוך מתמשך של המשתמשים בנושא היגיינת סיסמאות, ובכך בונה הגנה איתנה מפני אחד מווקטורי המתקפה המנוצלים ביותר על ידי תוקפים.
אתגרים בניהול סיסמאות
- סיסמאות חלשות: 123456, password, שם+שנה עדיין נפוצים ביותר
- שימוש חוזר: אותה סיסמה במספר שירותים מגבירה את ההשפעה של פרצות
- אחסון לא מאובטח: פתקיות נדבקות, גיליונות אלקטרוניים, אימיילים, דפדפנים ללא סיסמת מאסטר
- עייפות סיסמאות: משתמשים נדרשים לנהל מעל 50-100 פרטי גישה
- שיתוף לא מאובטח: שיתוף סיסמאות דרך Slack, אימייל, SMS
מדיניות סיסמאות יעילה
הנחיות NIST (מעודכנות)
המלצות NIST SP 800-63B:
- [OK] מינימום 8 תווים (12+ מומלץ)
- [OK] לאפשר עד 64+ תווים
- [OK] לקבל את כל התווים כולל רווחים
- [OK] ללא דרישות מורכבות כפויות (אותיות גדולות, סמלים)
- [OK] ללא רוטציה תקופתית חובה (רק אם נפרצה)
- [OK] לבדוק מול רשימת סיסמאות שדלפו
- [OK] לאפשר הדבקה (מקל על השימוש במנהלי סיסמאות)
- [OK] להציע מד עוצמה חזותי
- [X] לא להשתמש ברמזים או בשאלות אבטחה
- [X] לא לכפות שינוי תקופתי ללא סיבה
אנטרופיה מול מורכבות
# סיסמה מורכבת אך חלשה (אנטרופיה נמוכה):
P@ssw0rd! # ~28 ביט אנטרופיה
# צפויה, תבנית נפוצה
# ביטוי סיסמה פשוט אך חזק (אנטרופיה גבוהה):
correct horse battery staple # ~44 ביט אנטרופיה
# ארוך יותר, פחות צפוי
# טוב יותר: ביטוי סיסמה + סמלים
correct-horse-battery-staple-2024 # ~52 ביט אנטרופיה
# קל לזכור, קשה לפצח
מנהלי סיסמאות
מנהלי סיסמאות הם הפתרון היעיל ביותר לניהול פרטי גישה, ומאפשרים סיסמאות ייחודיות וחזקות לכל שירות ללא צורך בשינון.
פתרונות ארגוניים
- 1Password Business: ממשק אינטואיטיבי, vaults משותפים, Travel Mode
- LastPass Enterprise: אינטגרציית SSO, מדיניות מרכזית
- Bitwarden: קוד פתוח, אפשרות self-hosted, compliance
- Keeper: Zero-knowledge, דיווחי compliance, גישה מורשית
- Dashlane Business: VPN כלול, ניטור dark web
תכונות קריטיות
- ארכיטקטורת zero-knowledge: הספק אינו יכול לגשת לסיסמאות
- הצפנה מקצה לקצה: AES-256 או גבוה יותר
- אינטגרציית SSO: SAML, OAuth להתחברות ארגונית
- Vaults משותפים: שיתוף מאובטח בין צוותים
- יומני audit: מעקב אחר גישה ושינויים
- גישת חירום: האצלה ל-disaster recovery
- Compliance: SOC 2, ISO 27001, GDPR/LGPD
הגנה מפני מתקפות
מניעת כוח גס (Brute Force)
# Rate limiting לפי IP
- מקסימום 5 ניסיונות בדקה
- נעילה מתקדמת: 1min, 5min, 15min, 1hora
- CAPTCHA לאחר 3 כשלונות
# נעילת חשבון
- לנעול חשבון לאחר 10 ניסיונות כושלים
- דורש איפוס סיסמה או שחרור על ידי admin
- להודיע למשתמש דרך אימייל/SMS
# רשימה שחורה של IP
- לחסום כתובות IP עם תבנית מתקפה
- לשלב עם threat intelligence feeds
- רשימה לבנה לכתובות IP ארגוניות מוכרות
הגנה מפני Credential Stuffing
- MFA חובה: מבטל את תוקפם של פרטי גישה שדלפו ללא גורם שני
- ניטור פרצות: HaveIBeenPwned API, SpyCloud
- זיהוי אנומליות: התחברות ממיקום גיאוגרפי חריג, מכשיר חדש
- זיהוי בוטים: reCAPTCHA, ניתוח התנהגותי
- ניהול sessions: ביטול תוקף של sessions ישנים בהתחברות
יישום MFA
# שיטות MFA לפי עוצמה (מהמאובטח ביותר לפחות מאובטח)
1. Hardware tokens (FIDO2/WebAuthn - YubiKey)
- עמיד בפני פישינג
- ללא יירוט SMS/אימייל
2. Authenticator apps (TOTP)
- Google Authenticator, Microsoft Authenticator
- אופליין, מאובטח יותר מ-SMS
3. Push notifications
- Duo Push, Microsoft Authenticator Push
- נוח אך פגיע ל-MFA fatigue
4. SMS (להימנע אם אפשר)
- SIM swapping attacks
- יירוט אפשרי
- עדיף מכלום, אך לא אידיאלי
ניטור פרטי גישה שדלפו
# HaveIBeenPwned API Integration
import requests
def check_password_breach(password):
# SHA-1 hash
sha1 = hashlib.sha1(password.encode()).hexdigest().upper()
prefix = sha1[:5]
suffix = sha1[5:]
# k-Anonymity: רק הקידומת נשלחת
url = f"https://api.pwnedpasswords.com/range/"
response = requests.get(url)
# Check if suffix in results
for line in response.text.split('\n'):
hash_suffix, count = line.split(':')
if hash_suffix == suffix:
return True, int(count)
return False, 0
# לכפות איפוס אם הסיסמה נפרצה
is_pwned, count = check_password_breach(user_password)
if is_pwned:
force_password_reset(user)
notify_user(f"הסיסמה מופיעה ב- פרצות")
חשבונות שירות ומפתחות API
- ניהול secrets: HashiCorp Vault, AWS Secrets Manager
- רוטציה אוטומטית: רוטציה מבוססת סקריפט של מפתחות API/סיסמאות
- הרשאות מינימליות: ההרשאות המינימליות הנדרשות
- נתיב audit: יומן גישה ל-secrets
- פקיעת תוקף: מפתחות עם TTL, ביטול בעת offboarding
חינוך משתמשים
- הדרכת חובה ב-onboarding
- סימולציות פישינג תקופתיות
- קמפיין לאימוץ מנהל סיסמאות
- תקשורת ברורה לגבי מדיניות
- תגמולים על פרקטיקות טובות (gamification)
המלצות סופיות
יישמו מנהל סיסמאות ארגוני חובה (1Password, Bitwarden) עם מדיניות מרכזית. הפעילו MFA אוניברסלי - אפליקציות TOTP למשתמשים, hardware tokens למנהלים. נטרו פרטי גישה מול HaveIBeenPwned וכפו איפוס באופן יזום. אמצו מדיניות NIST: סיסמאות ארוכות ללא רוטציה כפויה, אימות מול מאגרי פרצות. בטלו בהדרגה MFA מבוסס SMS, עברו ל-TOTP/FIDO2.
