implementing-mobile-application-management
Implements Mobile Application Management (MAM) policies to protect enterprise data on managed and unmanaged mobile devices through app-level controls including data loss prevention, selective wipe, app configuration, and containerization. Use when securing corporate apps on BYOD devices, implementing Intune App Protection Policies, or enforcing data separation between personal and work apps. Activates for requests involving MAM deployment, app protection policies, mobile containerization, or BYOD security.
- License 许可
- Apache-2.0
- 最近更新
- 2026-08-31
- Stars
- ★ 3.6w
- Forks
- 4.4k
01 前言 Front Matter
- name
- implementing-mobile-application-management
- tags
- [ "mobile-security", "android", "ios", "mam", "enterprise-security", "owasp-mobile" ]
- author
- mahipal
- domain
- cybersecurity
- license
- Apache-2.0
- version
- 1.0.0
- nist_csf
- [ "PR.PS-01", "PR.AA-05", "ID.RA-01", "DE.CM-09" ]
- subdomain
- mobile-security
- description
- Implements Mobile Application Management (MAM) policies to protect enterprise data on managed and unmanaged mobile devices through app-level controls including data loss prevention, selective wipe, app configuration, and containerization. Use when securing corporate apps on BYOD devices, implementing Intune App Protection Policies, or enforcing data separation between personal and work apps. Activates for requests involving MAM deployment, app protection policies, mobile containerization, or BYOD security.
- mitre_attack
- [ "T1059", "T1056", "T1036", "T1078", "T1610" ]
02 资源文件 7
- 资产文件assets/template.md628 B
- 许可证LICENSE11.0 KB
- 参考文档references/api-reference.md1.3 KB
- 参考文档references/standards.md758 B
- 参考文档references/workflows.md808 B
- 脚本scripts/agent.py5.8 KB
- 脚本scripts/process.py3.7 KB
03 SKILL.md 正文
Implementing Mobile Application Management
When to Use
Use this skill when:
- Deploying enterprise mobile app protection without full device management (MDM)
- Implementing BYOD policies that protect corporate data while respecting personal privacy
- Configuring Microsoft Intune App Protection Policies for iOS and Android
- Enforcing data loss prevention controls on managed mobile applications
Do not use when full device management (MDM) is already deployed and sufficient -- MAM adds complexity when MDM already provides the needed controls.
Prerequisites
- Microsoft Intune or equivalent MAM platform (VMware Workspace ONE, MobileIron)
- Azure AD for identity and conditional access policies
- Intune App SDK integrated into target applications (or Intune App Wrapping Tool)
- Test devices (Android 10+ and iOS 15+)
- Azure AD Premium P1 or P2 licenses for conditional access
Workflow
Step 1: Define App Protection Policy Requirements
Classify data sensitivity and define protection tiers:
| Tier | Data Type | Controls |
|---|---|---|
| Tier 1 - Basic | General corporate email | Require PIN, block screenshots |
| Tier 2 - Enhanced | Financial data, HR records | Encrypt app data, restrict cut/copy/paste |
| Tier 3 - High | PII, healthcare, legal | Selective wipe, offline access limits, DLP |
Step 2: Configure Intune App Protection Policies
Android App Protection Policy:
{
"displayName": "Corporate App Protection - Tier 2",
"platform": "android",
"dataProtectionSettings": {
"allowedDataStorageLocations": ["oneDriveForBusiness", "sharePoint"],
"blockDataTransferToOtherApps": "managedApps",
"blockDataTransferFromOtherApps": "managedApps",
"saveAsBlocked": true,
"clipboardSharingLevel": "managedAppsWithPasteIn",
"screenCaptureBlocked": true,
"encryptAppData": true,
"backupBlocked": true
},
"accessSettings": {
"pinRequired": true,
"minimumPinLength": 6,
"biometricEnabled": true,
"offlineGracePeriod": 720,
"offlineWipeInterval": 90
},
"conditionalLaunchSettings": {
"maxOsVersion": "15.0",
"minOsVersion": "12.0",
"jailbreakBlocked": true,
"maxPinRetries": 5
}
}
Step 3: Implement App Configuration Policies
Deploy managed app configuration for automatic endpoint setup:
{
"displayName": "Email App Configuration",
"targetedManagedApps": ["com.microsoft.outlooklite"],
"settings": [
{"key": "com.microsoft.outlook.EmailProfile.AccountType", "value": "ModernAuth"},
{"key": "com.microsoft.outlook.EmailProfile.ServerName", "value": "outlook.office365.com"},
{"key": "com.microsoft.outlook.EmailProfile.AllowedDomains", "value": "corporate.com"}
]
}
Step 4: Deploy Conditional Access Integration
Azure AD > Conditional Access > New Policy:
- Users: All users with corporate apps
- Cloud apps: Office 365, custom LOB apps
- Conditions: All platforms
- Grant: Require app protection policy
- Session: App enforced restrictions
Step 5: Test and Validate MAM Controls
Test each policy control on both platforms:
# Verify data transfer restrictions
1. Open managed app (Outlook)
2. Copy text from email body
3. Attempt paste in unmanaged app (Notes) -- should be blocked
4. Attempt paste in managed app (Teams) -- should work
# Verify selective wipe
1. Enroll test device with MAM
2. Access corporate data in managed apps
3. Trigger selective wipe from Intune portal
4. Verify corporate data removed, personal data intact
# Verify offline grace period
1. Access managed app while connected
2. Disconnect from network
3. After grace period expires, verify app access blocked
Step 6: Monitor and Respond
Configure MAM monitoring dashboards:
- App protection policy assignment status
- Non-compliant device/user reports
- Selective wipe execution logs
- Jailbreak/root detection alerts
- Failed PIN attempt tracking
Key Concepts
| Term | Definition |
|---|---|
| MAM | Mobile Application Management - app-level policies without requiring full device enrollment |
| App Protection Policy | Set of rules enforcing data protection at the app level (encryption, DLP, access controls) |
| Selective Wipe | Removing only corporate data from managed apps while preserving personal data |
| App Wrapping | Post-build process applying MAM SDK policies to apps without source code modification |
| Containerization | Isolating corporate app data in an encrypted container separate from personal apps |
Tools & Systems
- Microsoft Intune: Cloud-based MAM/MDM platform with app protection policies
- Intune App SDK: SDK for integrating MAM controls into custom iOS/Android apps
- Intune App Wrapping Tool: Post-compilation tool for applying MAM policies without code changes
- VMware Workspace ONE: Alternative MAM platform with app containerization
- Azure AD Conditional Access: Policy engine for enforcing MAM enrollment as access condition
Common Pitfalls
- SDK version mismatch: Intune App SDK version must match the policy version. Outdated SDK versions may silently fail to enforce newer policies.
- iOS managed pasteboard: iOS enforces paste restrictions through managed pasteboard, which requires the app to opt-in via Intune SDK integration.
- App wrapping limitations: Wrapped apps cannot use certain features (push notifications on some platforms). SDK integration is preferred for full functionality.
- User experience friction: Overly restrictive policies cause user frustration and shadow IT. Start with Tier 1 and escalate based on data sensitivity.
04 同仓库更多 Skills
verifying-build-provenance-with-slsa-sigstore
Verifies artifact signatures and SLSA provenance using Sigstore's cosign (verify, verify-attestation, verify-blob-attestation) and slsa-verifier (verify-artifact), enforcing keyless OIDC builder identity and source repo against SLSA Build levels. Use in CI/CD before deploying artifacts, when consuming third-party attestations, establishing a SLSA Build L3 pipeline, or confirming provenance during incident response or admission control.
validating-tpm-measured-boot-attestation
Verifies TPM 2.0 measured-boot integrity and remote attestation with tpm2-tools -- reading PCRs (tpm2_pcrread), replaying the boot event log, generating and checking signed quotes (tpm2_quote/tpm2_checkquote), and sealing secrets to a PCR policy. Use to confirm a system booted trusted firmware/kernel for Zero Trust device posture, detect boot-chain tampering via PCR drift, or build a golden-value baseline for fleet attestation.
validating-backup-integrity-for-recovery
Validates backup integrity through cryptographic hash verification, automated restore testing, corruption detection, and recoverability checks to confirm backups are reliable for disaster recovery and ransomware response. Use before relying on backups for recovery, when building post-backup validation pipelines, auditing backup infrastructure for compliance, or checking immutable/air-gapped backups for silent corruption or tampering.
triaging-windows-with-kape
Runs KAPE (Kroll Artifact Parser and Extractor) to collect targeted forensic artifacts (registry hives, $MFT, event logs, prefetch, browser data) via Targets and parse them with Modules wrapping Eric Zimmerman's EZ Tools (PECmd, MFTECmd, RECmd). Use during early incident containment/triage when full disk imaging is impractical but a defensible, parseable Windows artifact set is needed quickly, including at-scale remote collection.
triaging-vulnerabilities-with-ssvc-framework
Triages and prioritizes vulnerabilities with CISA's Stakeholder-Specific Vulnerability Categorization (SSVC) decision tree, weighing exploitation status (via the CISA KEV catalog and FIRST EPSS API), technical impact, automatability, and mission prevalence to output Track/Track*/Attend/Act decisions. Use when prioritizing vulnerability scan results (OpenVAS, Nessus, Qualys) for remediation planning beyond raw CVSS scores.
triaging-security-incident
Performs initial triage of security incidents using the NIST SP 800-61r3 and SANS PICERL frameworks, classifying incident type, assigning priority by business impact, and routing to the appropriate response team. Use when a SIEM/EDR alert needs human classification, concurrent alerts must be prioritized, or a user report or threat-intel IOC match requires initial incident categorization.