Rodrigo Chiossi
Android Builders Summit 2013
vs.
When Security is not a Developer's fault.
Rodrigo Chiossi r.chiossi@samsung.com
vs. When Security is not a Developer's fault. Rodrigo Chiossi - - PowerPoint PPT Presentation
vs. When Security is not a Developer's fault. Rodrigo Chiossi r.chiossi@samsung.com Rodrigo Chiossi Android Builders Summit 2013 AndroidXRef : One year ago Online source code cross reference of the Android source code. All major
Rodrigo Chiossi
Android Builders Summit 2013
Rodrigo Chiossi r.chiossi@samsung.com
Rodrigo Chiossi
Android Builders Summit 2013
source code.
www.androidxref.com
Rodrigo Chiossi
Android Builders Summit 2013
– Focus on offensive security.
Rodrigo Chiossi
Android Builders Summit 2013
Rodrigo Chiossi
Android Builders Summit 2013
– Samsung Apps – Partner Apps
– Samsung Apps – Partner Apps – Popular “critical” apps.
Rodrigo Chiossi
Android Builders Summit 2013
26,67% 19,05% 10,48% 9,52% 6,67% 5,71% 4,76% 3,81% 3,81% 3,81% 2,86% 2,86%
Vulnerability Frequency Chart
Open Broadcast Receiver Improper SSL Handling Open Service Hardcoded Crypto key Improper SMS Handling Unencrypted Data over Network Improper Filesystem Permissions Open Content Provider Unprotected Socket Information Leak in logcat Unprotected data in DB Unprotected Intent
Rodrigo Chiossi
Android Builders Summit 2013
check the source of the intent it received.
development
receiver only to a restricted context.
– E.g. Another app from the same developer.
Rodrigo Chiossi
Android Builders Summit 2013
– Good design choice. – Covers the most common use case of Broadcast Receivers.
– Default behavior is to be open to everybody. – Not the most common use case.
Rodrigo Chiossi
Android Builders Summit 2013
Rodrigo Chiossi
Android Builders Summit 2013
Declare Broadcast Receiver Export the Receiver Unprotected Protect the Receiver
Declare Broadcast Receiver Try to access it from another app and fails Look for a solution at StackOverflow Export the Receiver Unprotected Try to access it from another app and succeed
Rodrigo Chiossi
Android Builders Summit 2013
Declare Broadcast Receiver Export the Receiver Unprotected Protect the Receiver
Declare Broadcast Receiver Try to access it from another app and fails Look for a solution at StackOverflow Export the Receiver Unprotected Try to access it from another app and succeed
Rodrigo Chiossi
Android Builders Summit 2013
Declare Broadcast Receiver Export the Receiver Unprotected Protect the Receiver
Declare Broadcast Receiver Export the Receiver Protected Unprotect the Receiver
Rodrigo Chiossi
Android Builders Summit 2013
Declare Broadcast Receiver Export the Receiver Protected Unprotect the Receiver
Declare Broadcast Receiver Try to access it from another app and fails Look for a solution at StackOverflow Export the Receiver Protected Try to access it from another app and succeed
Rodrigo Chiossi
Android Builders Summit 2013
– Open Services – Open Content Providers
unprotected state before the protected state.
Rodrigo Chiossi
Android Builders Summit 2013
certificate with an empty TrustManager. E. g. :
issue, but still needs improvement.
Rodrigo Chiossi
Android Builders Summit 2013
faults!
– Hardcode the crypto key in the application – Trust SMS data to perform critical operations
Rodrigo Chiossi
Android Builders Summit 2013
the risk is one is present.
– Platform signed application with INSTALL_PACKAGES permission. – INSTALL_PACKAGES permission was not required. – Enabled an attack to that app to install malicious app in the device.
Rodrigo Chiossi
Android Builders Summit 2013
Use a permission restricted API The application crashes Look for a solution
Paste in the app manifest all the permissions he found. The application runs successfully
Rodrigo Chiossi
Android Builders Summit 2013
compile time.
unknown APIs.
Rodrigo Chiossi
Android Builders Summit 2013
avoid common security problems.
secure state before he is able to reach the insecure state.
Rodrigo Chiossi
Android Builders Summit 2013
Rodrigo Chiossi r.chiossi@samsung.com r.chiossi@androidxref.com