MOBILE
Workshop Mobile Development
Fabio Lalli
CEO IQUII
!
26 Giugno 2014 Fabio CIOTOLI
CTO IQUII
WELCOME

#OPENIQUII
MERCATO
Sviluppo
security
mercato
Da dove iniziare?
framework o nativo?
che tipo di app?
Librerie
mobile security
DEVICE
NETWORK
DATA
15Tips & tricks
dati
•Non memorizzare dati
sensibili
•Master key cifrata con
pass-phrase dell’utente
•Algorimo robusto, es.
PBKDF2 con mol...
caching
• Log
• Crash
• Cookies
2
parametri
!
• Query String in log e
cronologie
• Utilizzare POST con CSFR
Protection
• Se necessario negoziare una
chiave ...
ssl/tls
• Man-in-the-middle attack
possibile
• Trusted root CA
4
Unique
Identifier
• Offuscare gli ID
• Token con mapping server-
side
• RAM Attack sul backend
5
anti
reverse
• Utilizzare offuscatori
• Objective C è riflessivo
• Runtime attack
6
logica
semplice
• if (proUser == 1)
• Con debug a basso livello
(assembly) è facile
intercettare i CBZ
(compare-and- branc...
keyboard
cache
• Su iOS e Android vengono
loggate le parole digitate
• Disabilitare la correzione
automatica sui TextField...
snapshot
• Per fornire animazione più
fluide iOS esegue snapshot
• Gestire il background
dell’app
9
broadcast
intent
• Evitare ove possibile il
broadcast intent
• Anche specificando
permessi, qualsiasi app
potrebbe impleme...
keychain
• Il keychain è memorizzato in
maniera cifrata nel backup
itunes
• È possibile decifrarlo
• Impedisce il cambio d...
webview
• Disabilitare javascript e
plugin
• Disabilitare accesso ai file
locali
• Prevenire il caricamento di
contenuti d...
ram
• Non mantenere informazioni
in RAM
• Variabili null appena possibile
13
Delete
file
• File.delete() non sicuro
• Sovrascrivere i file non
funziona nel mobile
• Assumere che ogni file può
essere ...
in-app
Purchases
• Verificare ricevute tramite
server
• Non embeddare contenuti
15
Terrorizzati?
Prossimi eventi
23 Aprile – Mobile Marketing // Fabio Lalli – Fabio Ciotoli

22 Maggio – Social Media Marketing // Tommaso...
NETWORKING time
[#openIQUII - Workshop] Mobile Development e Mobile Security
Upcoming SlideShare
Loading in …5
×

[#openIQUII - Workshop] Mobile Development e Mobile Security

932 views
863 views

Published on

Le applicazioni mobile oggi costituiscono lo strumento privilegiato per connettere gli utenti con i servizi e piattaforme online.

Le aziende ne sono consapevoli, e investono cifre sempre maggiori nella creazione di strumenti in grado di favorire l’esperienza dei loro clienti e acquisirne di nuovi, in un’ottica di presidio multicanale di mercati sempre più complessi.

Lo sviluppo di applicazioni mobile si configura come una leva strategica per i mercati, ma anche come una robusta opportunità professionale per tutti i programmatori che intendono affacciarsi sul mondo del mobile development.

Il terzo incontro #OpenIQUII sarà dedicato proprio al mobile development: Fabio Lalli e Fabio Ciotoli, CEO e CTO di IQUII, spiegheranno in che modo è possibile sviluppare applicazioni per iOS e Android, e quali sono i differenti approcci che il programmatore deve tenere in considerazione per progettare, sviluppare e inserire negli store le applicazioni.
Questi i temi trattati:

- Framework di sviluppo non nativi;
- Metodologie per la progettazione e lo sviluppo di un’applicazione;
- Analisi della sicurezza delle informazioni di un’applicazione;
- Tecniche e strumenti per accelerare lo sviluppo di un’applicazione.

Published in: Mobile
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
932
On SlideShare
0
From Embeds
0
Number of Embeds
367
Actions
Shares
0
Downloads
6
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

[#openIQUII - Workshop] Mobile Development e Mobile Security

  1. 1. MOBILE Workshop Mobile Development Fabio Lalli CEO IQUII ! 26 Giugno 2014 Fabio CIOTOLI CTO IQUII
  2. 2. WELCOME
 #OPENIQUII
  3. 3. MERCATO Sviluppo security
  4. 4. mercato
  5. 5. Da dove iniziare?
  6. 6. framework o nativo?
  7. 7. che tipo di app?
  8. 8. Librerie
  9. 9. mobile security
  10. 10. DEVICE
  11. 11. NETWORK
  12. 12. DATA
  13. 13. 15Tips & tricks
  14. 14. dati •Non memorizzare dati sensibili •Master key cifrata con pass-phrase dell’utente •Algorimo robusto, es. PBKDF2 con molte iterazione (CPU consuming) •Memorizzarli temporaneamente in RAM 1
  15. 15. caching • Log • Crash • Cookies 2
  16. 16. parametri ! • Query String in log e cronologie • Utilizzare POST con CSFR Protection • Se necessario negoziare una chiave con il server (es. Diffie- Hellman) 3
  17. 17. ssl/tls • Man-in-the-middle attack possibile • Trusted root CA 4
  18. 18. Unique Identifier • Offuscare gli ID • Token con mapping server- side • RAM Attack sul backend 5
  19. 19. anti reverse • Utilizzare offuscatori • Objective C è riflessivo • Runtime attack 6
  20. 20. logica semplice • if (proUser == 1) • Con debug a basso livello (assembly) è facile intercettare i CBZ (compare-and- branch- on-zero) o CBNZ. • Considerare paradigmi più robusti 7
  21. 21. keyboard cache • Su iOS e Android vengono loggate le parole digitate • Disabilitare la correzione automatica sui TextField 8
  22. 22. snapshot • Per fornire animazione più fluide iOS esegue snapshot • Gestire il background dell’app 9
  23. 23. broadcast intent • Evitare ove possibile il broadcast intent • Anche specificando permessi, qualsiasi app potrebbe implementare gli stessi servizi dell’app ricevente 10
  24. 24. keychain • Il keychain è memorizzato in maniera cifrata nel backup itunes • È possibile decifrarlo • Impedisce il cambio di certificato 11
  25. 25. webview • Disabilitare javascript e plugin • Disabilitare accesso ai file locali • Prevenire il caricamento di contenuti da hosts di terze parti 12
  26. 26. ram • Non mantenere informazioni in RAM • Variabili null appena possibile 13
  27. 27. Delete file • File.delete() non sicuro • Sovrascrivere i file non funziona nel mobile • Assumere che ogni file può essere recuperato e memorizzarlo cifrato 14
  28. 28. in-app Purchases • Verificare ricevute tramite server • Non embeddare contenuti 15
  29. 29. Terrorizzati?
  30. 30. Prossimi eventi 23 Aprile – Mobile Marketing // Fabio Lalli – Fabio Ciotoli
 22 Maggio – Social Media Marketing // Tommaso Sorchiotti – Simone Cinelli 
 26 Giugno – Mobile Development // Fabio Ciotoli – Fabio Lalli 
 10 Luglio – Wearable // Fabio Lalli – Alessandro Prunesti 
 18 Settembre – Social Media Monitoring // Lorenzo Sfienti – Simone Cinelli 
 16 Ottobre – Personal and Executive branding // Tommaso Sorchiotti – Alessandro Prunesti ! 20 Novembre – Gamification // Fabio Lalli – Alessandro Prunesti 
 11 Dicembre – Innovazione // Fabio Lalli
  31. 31. NETWORKING time

×