SlideShare a Scribd company logo
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
About MeAbout Me
1. Creator of "VyAPI – A Modern
Cloud Based Vulnerable
Android App"
2. Application Security Analyst at
Appsecco (@appseccouk)
3. Chapter Leader at null
Bangalore (@nullblr)
4. Serjeant-at-arms at Garden
City Toastmasters Club,
Bangalore (@Toastmasters)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
The GoalThe Goal
To provide Android security enthusiasts a
platform to practice hacking a cloud-based
vulnerable Android app
Your TakeawaysYour Takeaways
1. What is VyAPI
2. Technology stack in use
3. How to setup your personal VyAPI test
environment
4. OWASP - Mobile Top 10 2016 in VyAPI
5. Built-in features for you to explore
6. Reference materials
What is VyAPI?What is VyAPI?
VyAPIVyAPI
1. VyAPI is a hybrid Android app that's
vulnerable by design. We call it VyAPI,
because its flaws are pervasive and it
communicates not just via IPC calls but API
calls, too.
2. It's a modern cloud based vulnerable
Android app
What technologiesWhat technologies
have been used?have been used?
The Building BlocksThe Building Blocks
1. AWS Amplify CLI
2. AWS SDK for Android 10
3. Amazon Cognito
4. OpenJDK 1.8.0_152-release
5. Glide v4
6. Room Persistence Library
7. Gradle 5.1.1
AWS AmplifyAWS Amplify
1. Development framework
+ Development services
2. It's fast and easy
3. Build mobile and web
applications on AWS
Further Reading:
https://aws.amazon.com/amplify/faqs/
Amazon CognitoAmazon Cognito
1. A simple user identity and data
synchronization service
2. Provides authentication,
authorization and user
management
3. i.e., user sign-up, sign-in and
access control
Further Reading:
1. https://aws.amazon.com/cognito/
2. https://gorillalogic.com/blog/java-
integration-with-amazon-cognito/
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
Glide v4Glide v4
Loading images with Glide is
easy and in many cases requires
only a single line:
Further Reading:
https://bumptech.github.io/glide/doc/getti
ng-started.html
Room Persistence LibraryRoom Persistence Library
Provides an abstraction layer over
SQLite to allow fluent database access
while harnessing the full power of
SQLite.
Further Reading:
https://www.slideshare.net/Reinvently/dat
a-persistence-in-android-with-room-library
How to setup yourHow to setup your
personal VyAPI testpersonal VyAPI test
environmentenvironment
7 Steps7 Steps
1. Install Required Softwares
2. Configure Amazon Cognito
3. Create Android Emulator
4. Run VyAPI
5. Register a user
6. Login
7. Start Hacking
#1. Software Requirements#1. Software Requirements
1. Node.js
2. NPM
3. Amplify CLI
4. AWS CLI
5. Android Studio
6. Android Emulator
Note -
For more details visit https://github.com/appsecco/VyAPI
#2. Amazon Cognito#2. Amazon Cognito
$ git clone  
$ cd VyAPI/
git@github.com:appsecco/VyAPI.git
#3. Android Emulator#3. Android Emulator
How to create an emulatorHow to create an emulator
#4. Run VyAPI#4. Run VyAPI
#5. Register a user#5. Register a user
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
#6. Login#6. Login
#7. Start Hacking#7. Start Hacking
Hint: Look for data in...Hint: Look for data in...
1. Internal Storage
2. External Storage
3. Content Provider
 
What type of storage is it?
1. File storage
2. SQLite database
3. Cloud storage
 
In what form is the data stored?
Plaintext data
Encrypted data
OWASP - Mobile TopOWASP - Mobile Top
10 2016 in VyAPI10 2016 in VyAPI
M1-Improper Platform UsageM1-Improper Platform Usage
A Vulnerable ActivityA Vulnerable Activity
dz> run app.activity.start --component com.appsecco.vyapi com.appsecco.vyapi.MainActivity
A Vulnerable ServiceA Vulnerable Service
dz> run app.service.start --component com.appsecco.vyapi com.appsecco.vyapi.service.PlayMusi
SQL Injection Through ContentSQL Injection Through Content
ProviderProvider
dz> run app.provider.query content://com.appsecco.vyapi.ContactDBProvider/contacts/ --projec
M2-Insecure Data StorageM2-Insecure Data Storage
M3-Insecure CommunicationM3-Insecure Communication
Can you intercept the secret SMS?
M4-Insecure AuthenticationM4-Insecure Authentication
M5-Insufficient CryptographyM5-Insufficient Cryptography
Where is the encryption key?
M6-Insecure AuthorizationM6-Insecure Authorization
1. Find a Cognito Identity Pool ID
2. Check if access to unauthenticated identities is
enabled in AWS for this identity pool?
3. Use Boto 3 script to fetch credentials (i.e., Access Key,
Secret Key, and Session Token) for an identity pool ID
4. Enumerate permissions associated with obtained
AWS credentials
Can unauthenticated users access sensitive AWS
services?
E.g., us­east­1:f0e6168e­4865­4890­97e5­489cd6106g83
Is access to unauthenticatedIs access to unauthenticated
identities enabled?identities enabled?
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
 Use Use Boto 3Boto 3 to fetch credentialsto fetch credentials
for an identity pool IDfor an identity pool ID
Access Key, Secret Key, andAccess Key, Secret Key, and
Session TokenSession Token
UseUse enumerate-iamenumerate-iam PythonPython
scriptscript
Which of the AWS servicesWhich of the AWS services
could be accessed bycould be accessed by
unauthorized users?unauthorized users?
M7-Poor Code QualityM7-Poor Code Quality
Vulnerable Broadcast ReceiverVulnerable Broadcast Receiver
dz> run app.broadcast.send --action com.appsecco.vyapi.Broadcast --extra string new_file_name d
dz> run app.broadcast.send --action com.appsecco.vyapi.Broadcast --extra string new_file_name
M8-Code TamperingM8-Code Tampering
M9-Reverse EngineeringM9-Reverse Engineering
Sensitive File in APK BundleSensitive File in APK Bundle
M10-Extraneous FunctionalityM10-Extraneous Functionality
What's Visible
What's NOT Visible
Built-in features forBuilt-in features for
you to exploreyou to explore
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)
SummarySummary
VyAPI is a cloud-based vulnerable Android app for
Android security enthusisats.
 
To get started, you need to
1. Setup Amazon Cognito login using Amplify
2. Explore security misconfigurations in cloud setup
3. Explore Android app specific vulnerabilities
4. Use your favorite tools to exploit the identified
vulnerabilities 
ReferencesReferences
VyAPI Codebase - https://github.com/appsecco/VyAPI
Android Hacking in 7 Steps -
https://slides.com/riddhishreechaurasia/breaking-an-android-
app-in-7-steps#/
Android Pentesting Training - https://android-pentesting-at-
appsecco.netlify.com/
Internet-Scale analysis of AWS Cognito Security -
https://andresriancho.com/internet-scale-analysis-of-aws-
cognito-security/
OWASP - Mobile Top 10 2016 -
https://www.owasp.org/index.php/Mobile_Top_10_2016-Top_10
Amplify CLI - https://aws-amplify.github.io/docs/cli-
toolchain/quickstart
ReferencesReferences
Boto 3 -
https://boto3.amazonaws.com/v1/documentation/api/lat
est/reference/services/cognito-identity.html
Amplify - https://aws.amazon.com/amplify/faqs/
Amazon Cognito - https://aws.amazon.com/cognito/
Glide - https://bumptech.github.io/glide/doc/getting-
started.html

More Related Content

PDF
The Hookshot: Runtime Exploitation
PDF
REST API Pentester's perspective
PPTX
Mobile security part 2
PDF
Why you need API Security Automation
PPTX
Mobile security part 1(Android Apps Pentesting)- Romansh yadav
PDF
Android pentesting
PPTX
Android pentesting
PDF
Abusing, Exploiting and Pwning with Firefox Add-ons
The Hookshot: Runtime Exploitation
REST API Pentester's perspective
Mobile security part 2
Why you need API Security Automation
Mobile security part 1(Android Apps Pentesting)- Romansh yadav
Android pentesting
Android pentesting
Abusing, Exploiting and Pwning with Firefox Add-ons

What's hot (20)

PDF
Null Dubai Humla_Romansh_Yadav_Android_app_pentesting
PPTX
Abusing Exploiting and Pwning with Firefox Addons
PDF
Injecting Security into Web apps at Runtime Whitepaper
PDF
Hacking Tizen: The OS of everything - Whitepaper
PPTX
Hacking Samsung's Tizen: The OS of Everything - Hack In the Box 2015
PPTX
SgCodeJam24 Workshop
PPTX
Fortify dev ops (002)
PDF
PPTX
#ATAGTR2018 Presentation " Security Testing for RESTful APIs" By Anuradha Raman
PPTX
Github security bug bounty hunting
PPTX
Penetrating Android Aapplications
PDF
Stranger Danger: Securing Third Party Components (Tech2020)
PPTX
DeveloperWeek2018 - Let's Build a Chatbot
PDF
Testing Android Security Codemotion Amsterdam edition
PDF
Secure Node Code (workshop, O'Reilly Security)
PDF
Android application security testing
PDF
Network Interception - Write Swift codes to inspect network requests (even wi...
PPTX
#ATAGTR2018 Presentation "Decoding Security in DevSecOps" by Meghashyam Varan...
PPT
iOS Hacking: Advanced Pentest & Forensic Techniques
Null Dubai Humla_Romansh_Yadav_Android_app_pentesting
Abusing Exploiting and Pwning with Firefox Addons
Injecting Security into Web apps at Runtime Whitepaper
Hacking Tizen: The OS of everything - Whitepaper
Hacking Samsung's Tizen: The OS of Everything - Hack In the Box 2015
SgCodeJam24 Workshop
Fortify dev ops (002)
#ATAGTR2018 Presentation " Security Testing for RESTful APIs" By Anuradha Raman
Github security bug bounty hunting
Penetrating Android Aapplications
Stranger Danger: Securing Third Party Components (Tech2020)
DeveloperWeek2018 - Let's Build a Chatbot
Testing Android Security Codemotion Amsterdam edition
Secure Node Code (workshop, O'Reilly Security)
Android application security testing
Network Interception - Write Swift codes to inspect network requests (even wi...
#ATAGTR2018 Presentation "Decoding Security in DevSecOps" by Meghashyam Varan...
iOS Hacking: Advanced Pentest & Forensic Techniques
Ad

Similar to VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019) (20)

PDF
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at c0c0n XII)
PPTX
Hypori Performance Webinar
PPTX
2022 APIsecure_Securing APIs with Open Standards
PDF
Is Your API Being Abused – And Would You Even Notice If It Was?
PPT
API Management architect presentation
PDF
APIsecure 2023 - Understanding and Identifying Threats Against APIs, Shannon ...
PDF
Beware the potholes on the road to serverless
PPTX
The Powerful and Comprehensive API for Mobile App Development and Testing
PDF
Take control back on Android devices with Flyve MDM, OW2con'18, June 7-8, 201...
 
PPT
Iag api management architect presentation
PDF
API Testing and Hacking (1).pdf
PDF
API Testing and Hacking.pdf
PDF
API Testing and Hacking.pdf
PDF
APIsecure 2023 - Android Applications and API Hacking, Gabrielle Botbol
PPTX
API Security - Null meet
PPT
Securely Deploying Android Device - ISSA (Ireland)
PDF
SecDevOps for API Security
PDF
Security testing in mobile applications
PPTX
Vices & Devices - How IoT & Insecure APIs Became the New Cyber Battlefront
PPTX
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at c0c0n XII)
Hypori Performance Webinar
2022 APIsecure_Securing APIs with Open Standards
Is Your API Being Abused – And Would You Even Notice If It Was?
API Management architect presentation
APIsecure 2023 - Understanding and Identifying Threats Against APIs, Shannon ...
Beware the potholes on the road to serverless
The Powerful and Comprehensive API for Mobile App Development and Testing
Take control back on Android devices with Flyve MDM, OW2con'18, June 7-8, 201...
 
Iag api management architect presentation
API Testing and Hacking (1).pdf
API Testing and Hacking.pdf
API Testing and Hacking.pdf
APIsecure 2023 - Android Applications and API Hacking, Gabrielle Botbol
API Security - Null meet
Securely Deploying Android Device - ISSA (Ireland)
SecDevOps for API Security
Security testing in mobile applications
Vices & Devices - How IoT & Insecure APIs Became the New Cyber Battlefront
ACDKOCHI19 - Enterprise grade security for web and mobile applications on AWS
Ad

Recently uploaded (9)

PDF
2025 Guide to Buy Verified Cash App Accounts You Can Trust.pdf
PPTX
Introduction to Packet Tracer Course Overview - Aug 21 (1).pptx
PDF
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
PDF
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
DOC
SIUE毕业证学历认证,阿祖萨太平洋大学毕业证学位证书复制
PDF
Best 4 Sites for Buy Verified Cash App Accounts – BTC Only.pdf
PPTX
ASMS Telecommunication company Profile
DOC
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
DOC
NIU毕业证学历认证,阿比林基督大学毕业证留学生学历
2025 Guide to Buy Verified Cash App Accounts You Can Trust.pdf
Introduction to Packet Tracer Course Overview - Aug 21 (1).pptx
Lesson 13- HEREDITY _ pedSAWEREGFVCXZDSASEWFigree.pdf
6-UseCfgfhgfhgfhgfhgfhfhhaseActivity.pdf
SIUE毕业证学历认证,阿祖萨太平洋大学毕业证学位证书复制
Best 4 Sites for Buy Verified Cash App Accounts – BTC Only.pdf
ASMS Telecommunication company Profile
Camb毕业证学历认证,格罗斯泰斯特主教大学毕业证仿冒文凭毕业证
NIU毕业证学历认证,阿比林基督大学毕业证留学生学历

VyAPI - A Modern Cloud Based Vulnerable Android App (Presented at BSides Delhi 2019)