Exploring vulnerabilities in Android 6.0 fingerprint authentication
Thom Does & Mike Maarse
KPMG
02-02-2016
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 1 / 34
Exploring vulnerabilities in Android 6.0 fingerprint authentication - - PowerPoint PPT Presentation
Exploring vulnerabilities in Android 6.0 fingerprint authentication Thom Does & Mike Maarse KPMG 02-02-2016 Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 1 / 34 Introduction Motivation/relevance Preferred
KPMG
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 1 / 34
◮ 990 million in 2017 (Goode Intelligence) ◮ Over 50% of all smartphones by 2019 (MarketResearch.com)
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 2 / 34
◮ 990 million in 2017 (Goode Intelligence) ◮ Over 50% of all smartphones by 2019 (MarketResearch.com)
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 3 / 34
◮ 990 million in 2017 (Goode Intelligence) ◮ Over 50% of all smartphones by 2019 (MarketResearch.com)
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 4 / 34
◮ Decrypt sensitive data
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 5 / 34
◮ Financial transactions ◮ Personal data Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 6 / 34
1
◮ checkout ◮ editing user profile 2
3
Figure 1: bol.com app dialog
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 7 / 34
Figure 2: LG Nexus 5X
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 8 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 9 / 34
Figure 3: Fingerprint authentication software
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 10 / 34
Figure 4: Communication components
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 11 / 34
◮ Managed (Java) code ◮ System service ◮ Compiled as *.class
◮ Native (C/C++) code ◮ Separate process ◮ Compiled as single executable Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 12 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 13 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 14 / 34
Figure 5: Result propagation
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 15 / 34
Figure 6: False positive
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 16 / 34
Figure 7: dm-verity warning
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 17 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 18 / 34
Figure 8: Binder transaction flow
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 19 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 20 / 34
Table 1: Method comparison
1Future work... Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 21 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 22 / 34
Figure 9: Keystore interaction
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 23 / 34
Figure 10: Replay attack
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 24 / 34
2Also referred to as ”AuthToken” Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 25 / 34
◮ But this can be circumvented using Binder Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 26 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 27 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 28 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 29 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 30 / 34
◮ Library injection ◮ Hooking IOCTL system calls ◮ Dumping raw parcel data
◮ Select parcel by Interface Descriptor and Function Code ◮ Retrieve memory address of IPC data from parcel
◮ No warning is triggered on start-up Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 31 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 32 / 34
Table 2: AuthToken capture
3In network order (big endian) Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 33 / 34
Thom Does & Mike Maarse (KPMG) RP1 Presentation 02-02-2016 34 / 34