Android: forensics and reverse engineering
Raphaël Rigo - ANSSI 26/11/2010
Agence nationale de la sécurité des systèmes d’information
Android: forensics and reverse engineering Raphal Rigo - ANSSI - - PowerPoint PPT Presentation
Android: forensics and reverse engineering Raphal Rigo - ANSSI 26/11/2010 Agence nationale de la A N S S I scurit des systmes dinformation Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse
Agence nationale de la sécurité des systèmes d’information
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 2/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 3/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 4/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 5/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 6/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 7/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 8/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 9/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 10/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 11/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 12/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 13/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 14/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 15/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 16/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 17/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 18/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 19/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 20/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 21/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 22/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
|[000 a98] com.anssi.secret.RC4.getbyte :()B |0000: iget v4 , v6 , Lcom/anssi/secret/RC4;.x:I // field@0011 |0002: add -int/lit8 v4 , v4 , #int 1 // #01 |0004: and -int/lit16 v2 , v4 , #int 255 // #00 ff |0006: iget -object v4 , v6 , Lcom/anssi/secret/RC4;. state :[B // field@0010 |0008: aget -byte v0 , v4 , v2 |000a: iget v4 , v6 , Lcom/anssi/secret/RC4;.y:I // field@0012 |000c: add -int/2 addr v4 , v0 |000d: and -int/lit16 v3 , v4 , #int 255 // #00 ff |000f: iget -object v4 , v6 , Lcom/anssi/secret/RC4;. state :[B // field@0010 |0011: aget -byte v1 , v4 , v3 |0013: iput v2 , v6 , Lcom/anssi/secret/RC4;.x:I // field@0011 |0015: iput v3 , v6 , Lcom/anssi/secret/RC4;.y:I // field@0012 |0017: iget -object v4 , v6 , Lcom/anssi/secret/RC4;. state :[B // field@0010 |0019: aput -byte v0 , v4 , v3 |001b: iget -object v4 , v6 , Lcom/anssi/secret/RC4;. state :[B // field@0010 |001d: aput -byte v1 , v4 , v2 |001f: iget -object v4 , v6 , Lcom/anssi/secret/RC4;. state :[B // field@0010 |0021: add -int v5 , v0 , v1 |0023: and -int/lit16 v5 , v5 , #int 255 // #00 ff |0025: aget -byte v4 , v4 , v5 |0027: return v4 Raphaël Rigo - ANSSI Android: forensics and reverse engineering 23/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 24/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 25/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 26/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 27/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 28/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 29/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 30/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 31/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 32/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 33/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 34/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 35/36
A N S S I
Introduction Forensics: context Forensics: memory Forensics: filesystem Reverse engineering Conclusion
Raphaël Rigo - ANSSI Android: forensics and reverse engineering 36/36