lifting all boats: getting developers to improve app security · lifting all boats: getting...

43
Lifting all boats: getting developers to improve app security

Upload: others

Post on 20-May-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

Lifting all boats:getting developers to improve app security

Page 2: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

modern design with privacy is possible

Page 3: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

we put privacy first

Page 4: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

privacy through user experience

Page 5: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 6: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 7: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 8: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 9: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 10: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

there are many threats

Page 11: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

CipherKit libraries

Page 12: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

SQLCipher for Android

https://github.com/sqlcipher/android-database-sqlcipher

Page 13: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 14: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 15: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

https://github.com/sqlcipher/android-database-sqlcipher

Page 16: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

NetCipher

https://github.com/guardianproject/netcipher

Page 17: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

NetCipher

• add TLSv1.2 on older devices

• good TLS settings on all devices

• easy Tor support

• simplified proxy support

• used in Facebook Android app

https://github.com/guardianproject/netcipher

Page 18: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

StrongHttpsClient httpClient = new StrongHttpsClient(getApplicationContext());

ch.boye Apache HttpClient:

HttpsURLConnection connection = NetCipher.getHttpsURLConnection(“https://mysite.com”)

Android URLConnection:

compile 'info.guardianproject.netcipher:netcipher:1.2.1'

build.gradle:

Page 19: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

more APIs!

• OkHTTP / Retrofit 'info.guardianproject.netcipher:netcipher-okhttp3:2.0.0-alpha1'

• Google Volley

• 'info.guardianproject.netcipher:netcipher-volley:2.0.0-alpha1'

• Apache HttpClient for Android 'info.guardianproject.netcipher:netcipher-httpclient:2.0.0-alpha1'

https://github.com/guardianproject/netcipher

Page 20: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

more proxying!

• Lantern

• Psiphon

• Meek and Tor Pluggable Transports

new proxies:

https://github.com/guardianproject/netcipher

Page 21: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

IOCipher

https://github.com/guardianproject/iocipher

Page 23: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 25: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

CacheWord

https://github.com/guardianproject/cacheword

Page 26: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

The problem with app passwords

https://github.com/guardianproject/cacheword

Page 27: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

CacheWord Solution

https://github.com/guardianproject/cacheword

Page 28: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 29: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

https://articles.forensicfocus.com/2014/10/01/decrypt-wechat-enmicromsgdb-database/

do not use device IDs as passwords!

Page 30: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

PanicKit

https://github.com/guardianproject/panickit

Page 31: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

PanicKit

https://github.com/guardianproject/panickit

Page 32: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 33: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

TrustedIntents

https://github.com/guardianproject/trustedintents

Page 34: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

is it really you?

• am I directing users to the real Orbot?

• did this file come from the real Google Drive?

• was this Intent from one of our own apps?

https://github.com/guardianproject/trustedintents

Page 35: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

https://github.com/guardianproject/trustedintents

Page 36: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

reproducible builds!

Page 37: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

XCodeGhost

• malware version of XCode inserted library

• 10s of millions of users received affected apps

• reproducible builds would have prevented this

• more info at https://reproducible-builds.org

Page 38: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

an community run Android app store that distributes verified Free Software

F-Droid

Page 39: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

fdroidserver tools

• makes reproducible builds trivial

• drozer scans for vulnerabilities

• libscout scans for old libs

• full, automated, secure build environment

• flexible automated signatures

Page 41: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google
Page 42: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google

Lifting all boats: getting developers to improve

app security

Hans-Christoph SteinerGuardian Project

[email protected]

Page 43: Lifting all boats: getting developers to improve app security · Lifting all boats: getting developers to improve app security . modern design with privacy is possible. ... • Google