העתקת חוזה סודי ללוח הגזירה שמגיעה בסופו של דבר לטלגרם האישית תוך שניות. זה לא תרחיש היפותטי, אלא איום ממשי עבור 68% מהחברות המשתמשות באפליקציות מובייל ארגוניות. לפי דוח InfoWatch, 70% מהדלפות המידע מתרחשות דרך מכשירים ניידים. מדיניות DLP מונעת דליפות כאלה ברמת הקוד וברמת MDM. אנו מיישמים הגנה על לוח הגזירה, חסימת צילומי מסך ובקרת Open-In עבור אפליקציות מובייל ל-iOS ואנדרואיד. במשך יותר מ-5 שנים, השלמנו יותר מ-30 פרויקטים למניעת דליפות מידע מאפליקציות מובייל, תוך עבודה עם חברות בבנקאות, פינטק ובריאות — תעשיות שבהן כל דליפה עולה הכי הרבה. לפי מכון Ponemon, העלות הממוצעת של דליפת מידע נייד בודדת עולה על 5 מיליון דולר. הפתרונות שלנו מפחיתים סיכון זה ב-80%, ובפרויקט אחד מנענו הפסד של 2 מיליון דולר. במקרה אחר, צמצמנו את מספר התקריות מ-50 ל-2 בחודש לאחר יישום חסימת צילומי מסך ולוח גזירה. קבלו ייעוץ לפרויקט שלכם — נעריך את האיומים ונציע מדיניות אופטימלית.
כיצד להגן על לוח הגזירה?
לוח הגזירה הוא נקודת הדליפה העיקרית. ב-80% מהתקריות, הדליפה מתרחשת דרכו. המשתמש מעתיק חוזה, עובר לוואטסאפ ומדביק. באנדרואיד, ניתן לעקוב אחר העתקה באמצעות ClipboardManager.OnPrimaryClipChangedListener ולנקות את לוח הגזירה בעת מעבר לרקע:
class DlpClipboardWatcher(private val context: Context) {
private val clipboard = context.getSystemService(ClipboardManager::class.java)
fun onAppBackground() {
val clip = clipboard.primaryClip ?: return
val text = clip.getItemAt(0)?.text?.toString() ?: return
if (dlpClassifier.isCorporateContent(text)) {
clipboard.clearPrimaryClip()
}
}
}ב-iOS 16 ומעלה, האפליקציה מקבלת class DlpClipboardWatcher(private val context: Context) { private val clipboard = context.getSystemService(ClipboardManager::class.java) fun onAppBackground() { val clip = clipboard.primaryClip ?: return val text = clip.getItemAt(0)?.text?.toString() ?: return if (dlpClassifier.isCorporateContent(text)) { clipboard.clearPrimaryClip() } } } , אך אינה יכולה לקרוא את לוח הגזירה של אפליקציה אחרת — רק את שלה. אנו אוסרים הדבקה בשדות שלנו באמצעות UIPasteboard.changedNotification מותאם אישית עם UITextView שעבר התאמה. בנוסף, אנו משתמשים ב-canPerformAction(_:withSender:) כדי להגביל סנכרון בין מכשירים. בפרויקט אחד, חסמנו העתקת מספרי כרטיסי אשראי מהאפליקציה הארגונית — זה מנע הונאה של יותר מ-2 מיליון דולר.
חסימת צילומי מסך והקלטת מסך
באנדרואיד, צילומי מסך נחסמים עם הדגל UIPasteboard.options.localOnly:
window.setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE) דגל זה גם מסתיר תוכן ברשימת האפליקציות האחרונות. אנו מיישמים אותו רק על מסכים עם מידע רגיש — אל תחסמו צילומי מסך של הוראות. ב-iOS, אין איסור מובנה, אך ניתן לזהות צילום מסך באמצעות FLAG_SECURE ולטשטש את המסך או לתעד את התקרית. הקלטת מסך ושיקוף ב-iOS מיורטות באמצעות window.setFlags(WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE) — בתגובה אנו מציגים placeholder. בפרויקט אחד, הגדרנו זיהוי שיקוף מסך כדי להגן על דוחות כספיים — התקריות ירדו ב-90%.
| פלטפורמה | חסימת צילומי מסך | זיהוי הקלטת מסך |
|---|---|---|
| אנדרואיד | FLAG_SECURE | לא זמין (ניתן לזהות דרך MediaProjection) |
| iOS | אין מובנה | UIApplication.userDidTakeScreenshotNotification + UIScreen.isCaptured |
Open-In ו-Share Sheet
באמצעות UIScreen.isCaptured (iOS) או UIScreen.capturedDidChangeNotification (אנדרואיד), משתמש יכול לפתוח PDF ארגוני בכל אפליקציה. ב-iOS, אנו מגבילים את הרשימה באמצעות UIDocumentInteractionController עם Intent.ACTION_SEND מותאם אישית, אך הגישה האמינה יותר היא Managed Open-In דרך MDM: מסמכים מאפליקציות מנוהלות ניתנים לפתיחה רק באפליקציות מנוהלות אחרות. באנדרואיד, ב-Work Profile, intents מפרופיל העבודה אינם עוברים לפרופיל האישי כברירת מחדל — חשוב לא לשבור זאת בטעות עם UIActivityViewController. לפרטים נוספים על הגדרת Managed Open-In, ראו תיעוד Apple.
מדוע סיווג מידע הוא קריטי?
DLP ללא סיווג הוא חסימת הכל, מה שגורם לכאוס. אנו מפרידים נתונים לרמות:
| סוג נתונים | רמה | הגבלות |
|---|---|---|
| חומרים ציבוריים | ציבורי | ללא |
| מסמכים פנימיים | פנימי | לוח גזירה רק בין אפליקציות ארגוניות |
| נתונים אישיים של לקוחות | סודי | FLAG_SECURE + ללא Open-In |
| נתונים פיננסיים | מוגבל | כל ההגבלות + סימן מים |
המסווג יכול להתבסס על regex (מספרי חוזה, TIN, IBAN) או מודל ML (CoreML/TensorFlow Lite) למקרים מורכבים. בפרויקט אחד, יישמנו מסווג CoreML שקבע את רמת הסודיות לפי הקשר המסמך — דיוק של 96%.
סימן מים על מסמכים
עבור נתונים מוגבלים, אנו מוסיפים סימן מים דינמי עם שם משתמש וחותמת זמן בעת הצגת מסמכים. מיושם באמצעות excludedActivityTypes מותאם אישית באנדרואיד או addCrossProfileIntentFilter ב-iOS עם שכבת-על דרך Core Graphics. סימן מים אינו מונע צילום אך יוצר נתיב ביקורת.
תיעוד תקריות DLP
כל אירוע (ניסיון צילום מסך, ניקוי לוח גזירה, open-in) נשלח ל-SIEM. יומנים נשמרים על השרת, לא על המכשיר. זה מאפשר תגובה מהירה לתקריות.
מה כלול בעבודה שלנו
- ביקורת על האפליקציה הנוכחית לנקודות דליפה (גיבוי ADB, intents, ניטור לוח גזירה)
- עיצוב מדיניות ומטריצת סיווג
- יישום הגבלות טכניות (לוח גזירה, צילומי מסך, Open-In, סימן מים)
- בדיקות באמצעות תרחישי pentest (גיבוי ADB, לוח גזירה, הקלטת מסך)
- תיעוד למחלקת ה-IT
- הדרכת צוות ותמיכה לאחר השקה
לוחות זמנים
סט בסיסי (צילומי מסך, לוח גזירה, Open-In) — 3-5 ימים. עם מסווג ML וסימן מים — החל מ-1.5 שבועות. אנו נעריך את הפרויקט שלכם — צרו קשר לביקורת. הזמינו יישום מדיניות DLP עם תוצאות מובטחות. למהנדסים שלנו יש הסמכות אבטחה וניסיון בעבודה עם המגזר הבנקאי.







