Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Hack And Protect Your Apps
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Slvn
April 09, 2015
Programming
370
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Hack And Protect Your Apps
Droidcon Montreal 2015
Slvn
April 09, 2015
More Decks by Slvn
See All by Slvn
ROM Cooking - Droidcon UK 20013
slvn
5
220
Hack and protect your Android app
slvn
1
410
Other Decks in Programming
See All in Programming
カツオ、ご期待ください
suneo3476
0
190
Jetpack Compose Mechanisms
skydoves
3
820
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
1
280
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
430
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
5.1k
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
Next.js: The final boss of Web Performance
guaca
0
260
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
600
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
710
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
180
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
160
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
410
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
270
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
The Curious Case for Waylosing
cassininazir
1
570
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
620
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
740
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Raft: Consensus for Rubyists
vanstee
142
7.8k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
450
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Transcript
HACK AND PROTECT YOUR APPS
AGENDA Droidcon Montréal 2015 01 Hack 02 Protect 03 Develop
04 Conclude
LET’S HACK Reverse engineering & red light saber
LET’S HACK Reverse engineering & red light saber You underestimate
the power of the dark side.
LET’S HACK Demo : AdBlock Plus
LET’S HACK Can we read Smali ? .method public isChecked
()Z .locals 1 .prologue .line 102 iget-boolean v0, p0, Lorg/jraf/android/backport/switchwidget/TwoStatePreference ;- >mChecked:Z return v0 .end method
LET’S HACK Tools adb + unzip extract apk and some
ressources apktool Smali + ressources jadx Java code (partial)
LET’S PROTECT Obfuscation & The Force
LET’S PROTECT Obfuscation & The Force Do. Or do not.
There is no try.
LET’S PROTECT What is obfuscation ? package a; public class
a { [...] public boolean a() { return a; } }
LET’S PROTECT Demo : Proguard
LET’S PROTECT Is Obfuscation enough ? public class a {
private static String a = "MotDePasseSecurePourChiffrer" ; public static Cipher a() { Cipher localCipher = Cipher.getInstance("AES/ECB/PKCS7Padding" , "BC"); localCipher .init(1, new SecretKeySpec (a.getBytes(), "AES")); return localCipher; } }
LET’S PROTECT When ? When to protect ? · Whenever
you want · Keep in mind that one motivated guy with enought ressources can break anything.
LET’S DEVELOP Audit, opportunism & more...
LET’S DEVELOP Audit, opportunism & more... GGGWARRRHH WWWW
LET’S DEVELOP How can this help me ? audit your
build, third parties apps explore frameworks debug, hidden APIs ...
LET’S CONCLUDE All good things must come to an end
LET’S CONCLUDE All good things come to an end LET’S
HACK LET’S PROTECT LET’S DEVELOP
Thank you ! Sylvain Galand
[email protected]
www.genymobile.com