Presentation: Trusting Mobile Clients with Remote Attestation
Abstract
Everyone knows that in client-server systems, you can't trust the client. However, remote attestation gives us a way to change this. As Square provides financial services on unmanaged mobile devices, building more visibility into the client's runtime environment helps us fight fraud and offer unique features. In this talk I'll describe the systems we've developed to verify that our app is unmodified and running in a secure environment.
Naive client-side tampering checks are relatively easy to circumvent, since attackers can modify both the application and the OS. To counter this, we use a server-driven system that dynamically interrogates the client software. I'll discuss how we manage a rules system with hundreds of interdependent modules, build robust anomaly detection models without having any data from attackers, and support millions of devices running thousands of firmware versions. Our system has parallels with intrusion detection, hardware tamper detection, and systems combating spam, fraud, and abuse.
Similar Talks
Inside Job: How to Build Great Teams Within a Legacy Organization?
Engineering Director @Meetup
Francisco Trindade
Self-Selection for Resilience and Better Culture
Agile/DevOps Trainer & Founder of Agile Play Consulting, LLC
Dana Pylayeva
CockroachDB: Architecture of a Geo-Distributed SQL Database
CockroachDB maintainer, Co-founder & CTO @CockroachDB
Peter Mattis
Breaking Hierarchy - How Spotify Enables Engineer Decision Making
Senior Engineering Manager, Data and Machine Learning Infrastructure @Spotify
Kristian Lindwall
Context Matters: Improving the Performance and Wellbeing of Teams
Director of IT @Etsy
Shawn Carney
Maintaining the Go Crypto Libraries
Cryptogopher @Google
Filippo Valsorda
Video Streaming at Scale
IBM Distinguished Engineer, CTO Watson Media Cognitive Solutions @IBM
Lysa Banks
Machine-to-Machine Interfaces
Sr. Consultant, AppDev @awscloud
Ari Lerner
Building and Operating a Serverless Data Pipeline
Director Of Engineering at Intent