Search for a command to run...
Seus aplicativos móveis estão vazando dados de usuários. 87% dos aplicativos móveis contêm vulnerabilidades de alto risco. Violações do OWASP Mobile Top 10 em 95% dos aplicativos. Rejeições na loja de aplicativos custam $50K por semana de atrasos. Vazamentos de dados de usuários custam $4.88M por incidente.
Superfície de Ataque Móvel
Automatize seu fluxo de trabalho de segurança móvel, desde a análise de código estático até o gerenciamento de vulnerabilidades.
python analyze.py \
--name "mobile-banking-app" \
--owner "fintech-company" \
--output json \
--files ./mobile_files_to_scan.txt \
--config ./config/mobile_config.yaml
Plexalyzer orquestra automaticamente ferramentas de segurança específicas para dispositivos móveis:
{
"data": [
{
"id": "finding-mobile-001",
"type": "finding",
"attributes": {
"title": "Hardcoded Encryption Key in Mobile App",
"description": "AES encryption key hardcoded in iOS application source code",
"severity": "critical",
"file_path": "src/utils/CryptoManager.swift",
"original_line": 23,
"tool": "checkmarx",
"cve": "CWE-798",
"cvssv3_score": 8.9,
"false_positive": false,
"remediation_notes": "Use iOS Keychain for secure key storage and implement key rotation"
}
}
],
"meta": {
"total_findings": 38,
"critical": 7,
"high": 12,
"medium": 15,
"low": 4
}
}
Proteção completa contra vulnerabilidades de segurança móvel
1// ✅ Secure iOS implementation 2import Security3 4func savePasswordSecurely(_ password: String) {5 let keychain = Keychain(service: "com.app.credentials")6 keychain["password"] = password7 print("Password securely saved to Keychain")8}9 10// Using iOS Keychain for secure storage11class SecureLoginManager {12 private let keychain = Keychain(service: "com.app.credentials")13 14 func storeCredentials(username: String, password: String) {15 keychain["username"] = username16 keychain["password"] = password17 UserDefaults.standard.set(true, forKey: "isLoggedIn")18 }19}
1// ❌ Vulnerable iOS implementation2func savePassword(_ password: String) {3 UserDefaults.standard.set(password, forKey: "user_password")4 print("Password saved to UserDefaults")5}6 7// Storing sensitive data in UserDefaults8class LoginManager {9 func storeCredentials(username: String, password: String) {10 UserDefaults.standard.set(username, forKey: "username")11 UserDefaults.standard.set(password, forKey: "password")12 UserDefaults.standard.set(true, forKey: "isLoggedIn")13 }14}
1// ✅ Secure Android implementation2EncryptedSharedPreferences encryptedPrefs = EncryptedSharedPreferences.create(3 "secure_prefs",4 MasterKeys.getOrCreate(MasterKeys.AES256_GCM_SPEC),5 this,6 EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,7 EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM8);9 10// Storing sensitive data encrypted11SharedPreferences.Editor editor = encryptedPrefs.edit();12editor.putString("credit_card", "4532-1234-5678-9012");13editor.putString("api_key", "sk_live_abc123def456");14editor.putString("user_token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...");15editor.apply();16 17// Reading encrypted data18String creditCard = encryptedPrefs.getString("credit_card", "");
1// ❌ Vulnerable Android implementation2SharedPreferences prefs = getSharedPreferences("app_prefs", MODE_PRIVATE);3SharedPreferences.Editor editor = prefs.edit();4 5// Storing sensitive data in plain text6editor.putString("credit_card", "4532-1234-5678-9012");7editor.putString("ssn", "123-45-6789");8editor.putString("api_key", "sk_live_abc123def456");9editor.putString("user_token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...");10editor.apply();11 12// Reading sensitive data13String creditCard = prefs.getString("credit_card", "");14String apiKey = prefs.getString("api_key", "");
1// ✅ Secure network implementation2val client = OkHttpClient.Builder()3 .certificatePinner(4 CertificatePinner.Builder()5 .add("api.bank.com", "sha256/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=")6 .add("api.bank.com", "sha256/BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB=")7 .build()8 )9 .build()10 11// Implementing proper certificate validation12class SecureNetworkManager {13 private val certificatePinner = CertificatePinner.Builder()14 .add("*.mybank.com", "sha256/primary-cert-hash")15 .add("*.mybank.com", "sha256/backup-cert-hash")16 .build()17 18 private val client = OkHttpClient.Builder()19 .certificatePinner(certificatePinner)20 .connectTimeout(30, TimeUnit.SECONDS)21 .readTimeout(30, TimeUnit.SECONDS)22 .build()23}
1// ❌ Vulnerable network implementation2val client = OkHttpClient.Builder()3 .hostnameVerifier { _, _ -> true } // Accepts all certificates!4 .build()5 6// Disabling SSL verification completely7val trustAllCerts = arrayOf<TrustManager>(object : X509TrustManager {8 override fun checkClientTrusted(chain: Array<X509Certificate>, authType: String) {}9 override fun checkServerTrusted(chain: Array<X509Certificate>, authType: String) {}10 override fun getAcceptedIssuers(): Array<X509Certificate> = arrayOf()11})12 13val sslContext = SSLContext.getInstance("SSL")14sslContext.init(null, trustAllCerts, SecureRandom())15 16val client = OkHttpClient.Builder()17 .sslSocketFactory(sslContext.socketFactory, trustAllCerts[0] as X509TrustManager)18 .hostnameVerifier { _, _ -> true }19 .build()
Soluções de segurança especializadas para diferentes tipos de aplicativos móveis
Validação de Segurança Móvel Pré-Implantação
# Complete mobile app security validation before app store submission
python analyze.py \
--name "pre-release-security-scan" \
--repository_id "mobile-banking-v2.1" \
--output sarif \
--branch "release/v2.1" \
--auto
# Generates SARIF output for integration with:
# - Xcode security warnings
# - Android Studio security alerts
# - GitHub Advanced Security
# - App store security compliance reports
Validação completa de segurança de aplicativo móvel antes da submissão à loja de aplicativos:
{
"data": [
{
"id": "finding-mobile-api-001",
"type": "finding",
"attributes": {
"title": "Insecure Direct Object Reference in User API",
"description": "User can access other users' profiles without authorization",
"severity": "high",
"file_path": "src/api/UserController.js",
"original_line": 89,
"tool": "checkmarx",
"cve": "CWE-639",
"cvssv3_score": 7.5,
"false_positive": false,
"remediation_notes": "Implement proper authorization checks for user profile access"
}
},
{
"id": "finding-mobile-api-002",
"type": "finding",
"attributes": {
"title": "Missing Rate Limiting on Payment Endpoint",
"description": "Payment processing endpoint lacks rate limiting controls",
"severity": "medium",
"file_path": "src/api/PaymentController.js",
"original_line": 156,
"tool": "sonarqube",
"cve": "CWE-770",
"cvssv3_score": 6.5,
"false_positive": false,
"remediation_notes": "Implement rate limiting and transaction throttling on payment endpoints"
}
}
],
"meta": {
"total_findings": 22,
"critical": 3,
"high": 7,
"medium": 9,
"low": 3
}
}
Validação abrangente de conformidade para lojas de aplicativos e regulamentos de privacidade
# iOS App Store compliance
ios_requirements:
data_protection: "ATS (App Transport Security) enforced"
encryption: "256-bit encryption for sensitive data"
permissions: "Minimal permission principle"
privacy_policy: "Required for data collection"
# Google Play Store compliance
android_requirements:
target_sdk: "API level 33+ required"
encryption: "Android Keystore usage mandatory"
permissions: "Runtime permission model"
security_metadata: "Safety section completion"
Minimização de dados e consentimento
Direitos de privacidade do consumidor da Califórnia
Proteção de privacidade online de crianças
Lei de proteção de dados brasileira
Integração perfeita com seu fluxo de trabalho de desenvolvimento para segurança móvel contínua
# Mobile security pipeline
name: Mobile Security Scan
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main ]
jobs:
mobile_security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Mobile SAST Scan
run: |
curl -X POST "{{ secrets.PLEXICUS_API_URL }}/plexalyzer/receive_plexalyzer_message" \
-H "Authorization: Bearer {{ secrets.PLEXICUS_TOKEN }}" \
-d '{
"request": "create-repo",
"extra_data": {
"repository_name": "{{ github.repository }}",
"platform": "mobile",
"branch": "{{ github.ref_name }}"
}
}'
Varredura automática em solicitações de push e pull
Bloquear implantações com vulnerabilidades críticas
Sugestões de correção inteligentes e auto-correção
Validação e relatórios de conformidade automatizados
Problemas comuns de segurança encontrados em aplicativos móveis em produção
Teste de segurança abrangente em toda a pilha de aplicativos móveis
Teste de segurança de aplicativos iOS e Android
Avaliação de vulnerabilidade de API de backend
Revisão de código estática e dinâmica
Segurança de banco de dados e armazenamento
Transforme seus custos de segurança móvel de despesas reativas para investimentos proativos
Padrões e frameworks abrangentes de segurança de aplicativos móveis