mobile application penetration testing tools service providers
Una guida passo passo sul test della penna di un'applicazione mobile (con strumenti e fornitori di servizi):
Un decennio fa, a causa dell'evoluzione della tecnologia, abbiamo iniziato tutti a capire il settore IT e quello era il momento, tutti noi abbiamo saputo come e cosa si poteva fare usando i sistemi informatici.
Lentamente, è diventato possibile trasferire denaro online utilizzando Internet invece di visitare la banca di persona e aspettare in coda per eseguire una transazione. A causa di tale domanda, tutte le banche hanno iniziato ad operare online.
Ma se ci siamo sentiti tutti a nostro agio e protetti utilizzando questa funzione sin dall'inizio, la risposta che la maggior parte di noi direbbe è 'NO'.
Quando si tratta di questioni di denaro, ci pensiamo tutti due volte.
Quando qualcosa viene lanciato di recente, vogliamo assicurarci che sia protetto in tutti gli aspetti, tutti i siti Web che utilizziamo oggigiorno passano attraverso diversi livelli di controlli di sicurezza prima di essere esposti al pubblico. Ora la tendenza sta cambiando di nuovo e vogliamo che tutto avvenga con un clic di un pulsante, che è possibile solo utilizzando le app mobili.
Come ti assicuri che tutte le app mobili scaricate dal Play Store o da iStore siano sicure da usare? Con qualsiasi download c'è il rischio di attacchi dannosi. Per lo stesso motivo e per garantire che la loro app venga preferita rispetto ad altre, gli sviluppatori di app dovrebbero assicurarsi che le loro app siano testate con successo prima di pubblicarle effettivamente per il download.
Questo articolo ti illustrerà i tipi di app mobili, cosa ci si dovrebbe aspettare dai test di penetrazione delle app mobili, come possono essere condotti i test, fornitori di servizi che offrono servizi per i test di app mobili e un elenco di alcuni strumenti che possono essere utilizzati per test.
Cosa imparerai:
- App mobili e loro tipi
- Fornitori di servizi di Penetration Testing per app mobili
- Strumenti per il test di penetrazione delle app mobili
- Poche app mobili fittizie popolari e vulnerabili
- Cosa dovresti aspettarti dal tuo test?
- Passaggi per il test di penetrazione delle app mobili
- Conclusione
- Lettura consigliata
App mobili e loro tipi
Prima di andare avanti in profondità come pen test un'app mobile , è molto importante assicurarsi di avere una conoscenza di base sulle app mobili.
Comprendiamo i diversi tipi di app per dispositivi mobili.
qual è il miglior strumento gratuito per la rimozione di malware
# 1) Applicazione mobile nativa
Per app native si intendono le app create per una particolare piattaforma come iOS o Android, scritte specificamente in un particolare linguaggio di programmazione e possono essere installate dai rispettivi store come il Play Store di Google o l'App Store di Apple. Offrono l'esperienza più user-friendly e possono essere utilizzati semplicemente facendo clic sull'icona.
Alcuni buoni esempi delle app native sono Facebook, Instagram, Angry Birds, ecc.
L'unico problema è che queste app non funzionano con tutti i tipi di dispositivi, ad esempio se viene creata un'app per Android, non funzionerà su iOS e viceversa. Le app native possono funzionare anche senza connettività Internet.
# 2) Applicazione basata su browser mobile / App Web mobili
Le app Web mobili sono fondamentalmente app che vengono eseguite su un browser e sono indipendenti dal dispositivo.
La stessa app può essere eseguita utilizzando un dispositivo iOS o uno smartphone Android. Queste app sono scritte principalmente in HTML5. Sono facili da pubblicare perché non è necessaria alcuna autorizzazione da parte di Google o Apple per consentire l'accesso al loro negozio.
Le app Web possono essere scaricate direttamente utilizzando il pulsante di download disponibile sui siti Web interessati. Un tipico esempio potrebbero essere i nostri siti di shopping come Flipkart, Amazon, ecc.
# 3) Applicazione ibrida mobile
Queste sono le applicazioni che sono in parte native e in parte non native. Possono essere scaricati dagli store ed eseguiti nel browser.
Il vantaggio dello sviluppo di app di questo tipo è che supporta lo sviluppo multipiattaforma e quindi riduce il costo di sviluppo complessivo, il che significa che consente di riutilizzare lo stesso componente di codice su un dispositivo diverso. Inoltre, queste app possono essere sviluppate rapidamente.
Inoltre, le app mobili ibride ti consentono di ottenere le funzionalità delle app native e web.
Fornitori di servizi di Penetration Testing per app mobili
La nostra raccomandazione
# 1) Cipher
Cifra è uno dei migliori fornitori di servizi di test della penna per app mobili. È nota come società di sicurezza globale che offre servizi di consulenza e sicurezza gestiti certificati SOC I e SOC II tipo 2 altamente efficienti.
Sede centrale: Miami, Stati Uniti
Fondato: 2000
Dipendenti: 300
Reddito: $ 20- $ 50 milioni
Servizi di base: Test di penetrazione e servizi di hacking etico, valutazione delle vulnerabilità, rischio e valutazione, valutazione e consulenza PCI, garanzia della sicurezza del software, monitoraggio delle minacce, ecc.
Caratteristiche:
- Aiuta il sistema a difendersi dalle minacce avanzate durante la gestione dei rischi.
- Cipher offre soluzioni efficienti e innovative per garantire la conformità del sistema.
- Fornisce servizi di sicurezza proprietari e specializzati a ogni organizzazione associata.
Pochi altri fornitori di servizi:
- Appsec
- Procheckup
- Praetorian
- Cigital
- Wesecureapp
- Netspi
- CyberChops
- App ray
- Jumpsec
- Sciencesoft
Strumenti per il test di penetrazione delle app mobili
- Core Impact Pro (Android, iOS e Windows)
- zANTI (Android)
- Ianalyzer (iOS)
- DVIA (iOS)
Altri strumenti:
- Port Scanner (Android)
- Fing (Android e iOS)
- DroidSheep (Android)
- Interceptre-NG (Android)
- Nessus (Android)
- Droid SQLi (Android)
- Orweb (Android)
Poche app mobili fittizie popolari e vulnerabili
In generale, ci sono alcune note applicazioni mobili vulnerabili create per dare agli utenti un'idea di Mobile Testing. Queste app hanno vulnerabilità intenzionali per aiutare gli utenti / tester a esercitarsi e migliorare la loro conoscenza del pen test.
Puoi fare riferimento a iMAS, GoatDroid, DVIA, MobiSec:
Cosa dovresti aspettarti dal tuo test?
Il motivo alla base dei test è scoprire quanti più problemi possibile e garantire che i problemi vengano individuati prima che abbiano un impatto effettivo sugli utenti finali. Il motivo principale per ottenere un problema di sicurezza mobile è perché gli sviluppatori vogliono creare app più utili rispetto alle app protette e ci sono possibilità di mancanza di consapevolezza della sicurezza durante lo sviluppo delle app.
In questa sezione, ti guiderò attraverso alcune vulnerabilità / difetti di sicurezza che dovresti tenere d'occhio come parte del test.
Difetti di sicurezza comuni da cercare:
1) Formato di archiviazione dei dati :Tutto dipende dal formato in cui sono archiviati i dati. Sia in testo normale che in altri formati. Per Per esempio ., Android memorizza il nome utente e la password in testo normale, il che a sua volta lo rende più vulnerabile.
2) Dati sensibili memorizzati :A volte gli sviluppatori codificano le password o memorizzano informazioni sensibili che possono essere facilmente compromesse.
3) Metodi di codifica errati: L'utilizzo della libreria Open SSL che è vulnerabile agli attacchi FREAK è una delle cose da controllare.
4) Crittografia dei dati: È importante garantire che la trasmissione dei dati avvenga in modo sicuro e che i dati memorizzati siano crittografati.
5) Creazione di password deboli: Le app dovrebbero avere un meccanismo per verificare la sicurezza della password. Le password deboli sono sempre vulnerabili agli attacchi.
6) Sincronizzazione dei dati: La trasmissione dei dati o la sincronizzazione dei dati deve essere eseguita tramite un metodo sicuro. Il modo in cui i dati vengono trasmessi o sincronizzati con il cloud può portare ad attacchi e quindi causare la perdita di dati.
Il test di un'app mobile rimane ancora una sfida rispetto al test web poiché le app mobili sono abbastanza nuove sul mercato e non abbiamo diversi scanner disponibili come nel Web e stiamo ancora creando fogli di trucco o escogitando modi per scansionare e disporre di app mobili più sicure create per gli utenti finali.
Passaggi per il test di penetrazione delle app mobili
Ci sono alcuni passaggi coinvolti nel test della penna delle app mobili.
Sono:
# 1) Configurazione dell'ambiente di prova
La configurazione dell'ambiente di test è un processo in sé e può essere un argomento separato per la lettura :)
Non ho menzionato molti dettagli sulla configurazione di un ambiente di test qui perché differirà in base al test. L'ho appena incluso qui perché non volevo perdere completamente questo passaggio.
Alcuni dei test possono essere eseguiti su un dispositivo reale mentre alcuni possono essere eseguiti su emulatori. Inoltre, differisce in base alla piattaforma che intendiamo testare, per le applicazioni Android potremmo aver bisogno di installare SDK e per iOS, avremo bisogno del jailbreak.
# 2) Discover / Application Understanding
Ogni applicazione mobile funzionerà in modo diverso, quindi il primo passo nel test dovrebbe essere scoprire o trovare ulteriori informazioni sull'applicazione sottoposta a test. Ciò dovrebbe comportare anche l'identificazione della modalità di connessione dell'applicazione al sistema operativo e al server back-end.
Dovrebbe includere il controllo delle librerie utilizzate, la migliore comprensione della piattaforma e la scoperta se l'applicazione è di tipo nativo / web / ibrido. Questo passaggio può anche essere chiamato come Fase di raccolta delle informazioni .
# 3) Analisi / valutazione dell'applicazione
Come parte di questo passaggio, installa l'applicazione sul dispositivo mobile e scatta un'istantanea del file system e del registro prima e dopo l'installazione.
Analizzare le informazioni disponibili per identificare le aree di debolezza e che possono essere sfruttate, come capire come vengono memorizzate le informazioni sensibili, come vengono trasmessi i dati, come avviene l'interazione con la terza parte, ecc.
# 4) Reverse Engineering
Ciò sarà necessario se il tester non ha il codice sorgente. Verranno pianificate revisioni del codice per comprendere il funzionamento interno dell'applicazione. L'intenzione di farlo è cercare le vulnerabilità.
# 5) Intercettazione del traffico
In questo passaggio, configura il dispositivo per instradare attraverso un proxy, che a sua volta dovrebbe aiutare a intercettare il traffico e scoprire i difetti come l'iniezione o i problemi di autorizzazione.
qa o ba che è meglio
# 6) Operazione
Dopo aver eseguito l'analisi e l'impostazione del proxy, è possibile eseguire lo sfruttamento in cui ti comporti come un hacker, simuli attacchi e cerchi di compromettere il sistema.
Sfrutta il sistema ed esegui attività dannose.
# 7) Rapporti
Il passaggio precedente costituirebbe il passaggio principale del test, quindi l'ultimo passaggio dovrebbe essere la compilazione di un rapporto che menziona tutti i risultati. Un buon report dovrebbe comprendere i dettagli di tutte le vulnerabilità rilevate insieme al punteggio della valutazione del rischio aziendale e tecnico.
Un altro punto importante che può essere menzionato è la raccomandazione per la correzione.
Conclusione
Spero che vi siate divertiti a leggere questo articolo sul test della penna delle app mobili. A mio parere, i test di mobilità sono ancora un'area che non è stata esplorata completamente.
Tuttavia, possiamo considerare che questo ha portato un cambiamento e ci ha dato l'opportunità di ripensare le nostre capacità e iniziare a pensare fuori dagli schemi e diverso dal nostro approccio di test tradizionale. Gli sviluppatori stanno mettendo la loro creatività e stanno inventando diverse varianti di app, quindi anche noi come tester abbiamo molto altro da fare!
Spero che tu possa avere una visione approfondita degli strumenti di Penetration Testing delle app mobili e dei fornitori di servizi !!
Lettura consigliata
- Test delle prestazioni del cloud: fornitori di servizi di test di carico basati sul cloud
- PRIME 10 società di servizi di test gestiti nel 2021
- Guida per principianti ai test di penetrazione delle applicazioni Web
- Guida al test delle prestazioni delle applicazioni mobili
- Test di applicazioni mobili basati su cloud: una panoramica completa
- Le 10 principali società di provider di servizi di test mobili
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Differenza tra desktop, test server client e test Web