SlideShare a Scribd company logo
Сергей Ximerus Харюк
“Проверка безопасности
приложений на платформе
iOS”
Agenda
• Overview
• iOS Security architecture
• Application data structure
• Preparation testing environment
• Tools
• dumpdecrypted
• IDA and Hopper
• Frida and Cycript
• needle and idb
• OWASP Top 10 Mobile
• M1: Improper Platform Usage
• M2: Insecure Data Storage
• M3: Insecure Communication
• M4: Insecure Authentication
• M5: Insufficient Cryptography
• M6: Insecure Authorization
• M7: Client Code Quality
• M8: Code Tampering
• M9: Reverse Engineering
• M10: Extraneous Functionality
• Research results
• Low security lvl
• Medium security lvl
• Good security lvl
iOS Security Architecture
Kernel







Secure
Enclave
Secure
Element
Crypto Engine
Device Key
Group Key
Apple Root Certificate
File System
HardwareandFirmware
Software
OS Partition
User Partition (Encrypted)
Application sandbox
Data protection class
Secure Boot
Boot ROM
Low Level
Bootloader
iBoot Kernel
File System protection
Hardware Key
Passcode
Class key
File metadata
File content
File system key
File key
TouchID and FaceID is secure?
Environment
@qwertyoruiopz
Environment on Device
• AppList
• Cydia Substrate
• DumpDecrypted
• Frida
• Keychaineditor
• NeedleAgent
• OpenSSH
• SSL KillSwitch 2
• Stashing for iOS
dumpdecrypted
put dumpdecrypted.dlyb in to /usr/lib/
set permissions to read and execute
DLYB_INSERT_LIBRARIES=/usr/lib/dumpdecrypted.dlyb /path/to/binary
IDA Pro decompiled code
Hopper decompiled code
needle
idb
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
OWASP 10 Mobile
•M1: Improper Platform Usage
•M2: Insecure Data Storage
•M3: Insecure Communication
•M4: Insecure Authentication
•M5: Insufficient Cryptography
•M6: Insecure Authorization
•M7: Client Code Quality
•M8: Code Tampering
•M9: Reverse Engineering
•M10: Extraneous Functionality
MyPay
MyPay
Insecure Communication
Plain Text Payment Info
HomeBank
HomeBank
Insecure Communication
Plain Text Payment Info
Caching Screenshot
KolesaKz
KolesaKz
KolesaKz
KolesaKz
KolesaKz
Insecure Authorization
Insecure Data Storage
Broken Cryptography
Plain text credentials
Technodom
Technodom
Insecure Communication
Plain Text Payment Info
ATF24
ATF24
ATF24
Question?
Contact info:
telegram/twitter/linkedin/fb/vk: @ximerus
mail: ximerus@gmail.com
СПАСИБО
ЗА ВНИМАНИЕ!

More Related Content

PPTX
Mobile security, OWASP Mobile Top 10, OWASP Seraphimdroid
PDF
Mobile Threats and Owasp Top 10 Risks
PDF
Owasp Mobile Top 10 – 2014
PPTX
Owasp mobile top 10
PPTX
OWASP Mobile TOP 10 2014
PDF
Owasp Mobile Top 10 - M7 & M8
PDF
State of OWASP 2015
PPTX
News Bytes - December 2015
Mobile security, OWASP Mobile Top 10, OWASP Seraphimdroid
Mobile Threats and Owasp Top 10 Risks
Owasp Mobile Top 10 – 2014
Owasp mobile top 10
OWASP Mobile TOP 10 2014
Owasp Mobile Top 10 - M7 & M8
State of OWASP 2015
News Bytes - December 2015

What's hot (20)

PDF
Owasp Top 10 (M-10 : Lack of Binary Protection) | Null Meet
PDF
Menofia UN -Mobile Security
PDF
(ISC)2 Kamprianis - Mobile Security
PDF
Protecting microservices using secure design patterns 1.0
PPTX
Layered API Security: What Hackers Don't Want You To Know
PPTX
Developing A Cyber Security Incident Response Program
PDF
Bad for Enterprise: Attacking BYOD enterprise mobility security solutions
PPTX
Owasp Mobile Risk Series : M4 : Unintended Data Leakage
PDF
CSF18 - Through a Mirror Darkly- a journey to the dark side of metadata - Sas...
PDF
Client side encryption without knowing its limits is a ticking time bomb!
PPTX
ZeroNights2013 testing of password policy
PDF
Top Azure security fails and how to avoid them
PPTX
Attack chaining for web exploitation
PDF
Top 10 web application security risks akash mahajan
PPTX
See Web Security Trend from OWASP Top 10 - 2017
PPTX
PDF
Owasp advanced mobile-application-code-review-techniques-v0.2
PDF
SSH - From Zero to Hero
PDF
Web application security
PDF
Stopping zero day threats
Owasp Top 10 (M-10 : Lack of Binary Protection) | Null Meet
Menofia UN -Mobile Security
(ISC)2 Kamprianis - Mobile Security
Protecting microservices using secure design patterns 1.0
Layered API Security: What Hackers Don't Want You To Know
Developing A Cyber Security Incident Response Program
Bad for Enterprise: Attacking BYOD enterprise mobility security solutions
Owasp Mobile Risk Series : M4 : Unintended Data Leakage
CSF18 - Through a Mirror Darkly- a journey to the dark side of metadata - Sas...
Client side encryption without knowing its limits is a ticking time bomb!
ZeroNights2013 testing of password policy
Top Azure security fails and how to avoid them
Attack chaining for web exploitation
Top 10 web application security risks akash mahajan
See Web Security Trend from OWASP Top 10 - 2017
Owasp advanced mobile-application-code-review-techniques-v0.2
SSH - From Zero to Hero
Web application security
Stopping zero day threats
Ad

Similar to Сергей Харюк (Украина). Проверка безопасности приложений на платформе iOS (20)

PPTX
Android Application Security Awareness Talk, OWASP MEETUP Q3, 2015
PDF
Creating secure apps using the salesforce mobile sdk
PDF
85% of App Store Apps Fail OWASP Mobile Top 10: Are you exposed?
PDF
Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...
PDF
1. Mobile Application (In)security
PPTX
[Wroclaw #2] iOS Security - 101
PPTX
Mobile Malfeasance - Exploring Dangerous Mobile Vulnerabilities
PDF
CactusCon - Practical iOS App Attack and Defense
PPTX
Top 10 mobile security risks - Khổng Văn Cường
PDF
Smart Bombs: Mobile Vulnerability and Exploitation
PPTX
Top 10 mobile security risks - Khổng Văn Cường
PPTX
Hacking Mobile Apps
PPTX
Keeping Secrets on the Internet of Things - Mobile Web Application Security
PDF
OWASP Day - OWASP Day - Lets secure!
PDF
Android Application Security
PPTX
Web Application Security Session for Web Developers
PDF
PPTX
Indianapolis Splunk User Group Dec 22
PPTX
How to create a secure IoT device
PDF
Mobile Application Security Threats through the Eyes of the Attacker
Android Application Security Awareness Talk, OWASP MEETUP Q3, 2015
Creating secure apps using the salesforce mobile sdk
85% of App Store Apps Fail OWASP Mobile Top 10: Are you exposed?
Data encryption for Ruby web applications - Dmytro Shapovalov (RUS) | Ruby Me...
1. Mobile Application (In)security
[Wroclaw #2] iOS Security - 101
Mobile Malfeasance - Exploring Dangerous Mobile Vulnerabilities
CactusCon - Practical iOS App Attack and Defense
Top 10 mobile security risks - Khổng Văn Cường
Smart Bombs: Mobile Vulnerability and Exploitation
Top 10 mobile security risks - Khổng Văn Cường
Hacking Mobile Apps
Keeping Secrets on the Internet of Things - Mobile Web Application Security
OWASP Day - OWASP Day - Lets secure!
Android Application Security
Web Application Security Session for Web Developers
Indianapolis Splunk User Group Dec 22
How to create a secure IoT device
Mobile Application Security Threats through the Eyes of the Attacker
Ad

More from KazHackStan (20)

PPTX
Андрей Масалович (Россия). Корпоративная защита в РК глазами хакера
PDF
Евгений Гончаров (Россия, Казахстан). Автоматизация рутины AD
PPTX
Иван Чалыкин (Россия), Digital Security. Легальный SOP Bypass. Проблемы внедр...
PPTX
Тимур Юнусов (Россия), Positive Technologies. Уязвимости банкоматов
PPTX
Антон Bo0oM Лопаницын (Россия), OnSec. Трекинг. Как узнать посетителя, если о...
PDF
Омар Ганиев (Россия). Обзор атак на модели машинного обучения
PPTX
Валерий Блонский (Казахстан), PACIFICA. Как угнать Ботнет
PPTX
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
PPTX
Шамбулов У. К. (Казахстан), ГТС. Анализ и исследование инцидентов информацион...
PPTX
Ярослав Бабин (Россия), Positive Technologies. Основные аспекты при проведени...
PPTX
Виталий Трахтенберг (Израиль), MER Group. Кейс по кибер-расследованию для одн...
PDF
Валерий Боронин (Россия), Positive Technologies. SSDL для руководителей: как ...
PDF
Батыржан Тютеев (Казахстан), ЦАРКА. Уязвимости Казнета
PDF
Сергей Белов (Россия), Mail.ru. Temple of Bug Bounty: Leveling & Farming
PDF
Максим Ефименко (Казахстан), ЦАРКА. Двойное проникновение
PDF
Андрей Абакумов (Россия). Yandex.ru. Соавтор: Эльдар Заитов. Автоматизация ск...
PDF
Ярослав Бабин (Россия), Positive Technologies. Основные аспекты при проведени...
PDF
Ильяс Аринов (Казахстан), ЦАРКА. Linux for newbie hackers
PPTX
Презентация НИТ
PPTX
Дмитрий Кузнецов. Опыт РФ в обеспечении национальной кибербезопасности
Андрей Масалович (Россия). Корпоративная защита в РК глазами хакера
Евгений Гончаров (Россия, Казахстан). Автоматизация рутины AD
Иван Чалыкин (Россия), Digital Security. Легальный SOP Bypass. Проблемы внедр...
Тимур Юнусов (Россия), Positive Technologies. Уязвимости банкоматов
Антон Bo0oM Лопаницын (Россия), OnSec. Трекинг. Как узнать посетителя, если о...
Омар Ганиев (Россия). Обзор атак на модели машинного обучения
Валерий Блонский (Казахстан), PACIFICA. Как угнать Ботнет
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
Шамбулов У. К. (Казахстан), ГТС. Анализ и исследование инцидентов информацион...
Ярослав Бабин (Россия), Positive Technologies. Основные аспекты при проведени...
Виталий Трахтенберг (Израиль), MER Group. Кейс по кибер-расследованию для одн...
Валерий Боронин (Россия), Positive Technologies. SSDL для руководителей: как ...
Батыржан Тютеев (Казахстан), ЦАРКА. Уязвимости Казнета
Сергей Белов (Россия), Mail.ru. Temple of Bug Bounty: Leveling & Farming
Максим Ефименко (Казахстан), ЦАРКА. Двойное проникновение
Андрей Абакумов (Россия). Yandex.ru. Соавтор: Эльдар Заитов. Автоматизация ск...
Ярослав Бабин (Россия), Positive Technologies. Основные аспекты при проведени...
Ильяс Аринов (Казахстан), ЦАРКА. Linux for newbie hackers
Презентация НИТ
Дмитрий Кузнецов. Опыт РФ в обеспечении национальной кибербезопасности

Recently uploaded (20)

PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Approach and Philosophy of On baking technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Tartificialntelligence_presentation.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
A Presentation on Artificial Intelligence
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Getting Started with Data Integration: FME Form 101
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Big Data Technologies - Introduction.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Spectroscopy.pptx food analysis technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Approach and Philosophy of On baking technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Assigned Numbers - 2025 - Bluetooth® Document
20250228 LYD VKU AI Blended-Learning.pptx
Tartificialntelligence_presentation.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia
A Presentation on Artificial Intelligence
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Getting Started with Data Integration: FME Form 101
SOPHOS-XG Firewall Administrator PPT.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Big Data Technologies - Introduction.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Diabetes mellitus diagnosis method based random forest with bat algorithm
“AI and Expert System Decision Support & Business Intelligence Systems”
Spectroscopy.pptx food analysis technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf

Сергей Харюк (Украина). Проверка безопасности приложений на платформе iOS

  • 1. Сергей Ximerus Харюк “Проверка безопасности приложений на платформе iOS”
  • 2. Agenda • Overview • iOS Security architecture • Application data structure • Preparation testing environment • Tools • dumpdecrypted • IDA and Hopper • Frida and Cycript • needle and idb • OWASP Top 10 Mobile • M1: Improper Platform Usage • M2: Insecure Data Storage • M3: Insecure Communication • M4: Insecure Authentication • M5: Insufficient Cryptography • M6: Insecure Authorization • M7: Client Code Quality • M8: Code Tampering • M9: Reverse Engineering • M10: Extraneous Functionality • Research results • Low security lvl • Medium security lvl • Good security lvl
  • 3. iOS Security Architecture Kernel
 
 
 
 Secure Enclave Secure Element Crypto Engine Device Key Group Key Apple Root Certificate File System HardwareandFirmware Software OS Partition User Partition (Encrypted) Application sandbox Data protection class
  • 4. Secure Boot Boot ROM Low Level Bootloader iBoot Kernel
  • 5. File System protection Hardware Key Passcode Class key File metadata File content File system key File key
  • 6. TouchID and FaceID is secure?
  • 8. Environment on Device • AppList • Cydia Substrate • DumpDecrypted • Frida • Keychaineditor • NeedleAgent • OpenSSH • SSL KillSwitch 2 • Stashing for iOS
  • 9. dumpdecrypted put dumpdecrypted.dlyb in to /usr/lib/ set permissions to read and execute DLYB_INSERT_LIBRARIES=/usr/lib/dumpdecrypted.dlyb /path/to/binary
  • 13. idb
  • 14. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 15. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 16. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 17. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 18. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 19. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 20. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 21. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 22. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 23. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 24. OWASP 10 Mobile •M1: Improper Platform Usage •M2: Insecure Data Storage •M3: Insecure Communication •M4: Insecure Authentication •M5: Insufficient Cryptography •M6: Insecure Authorization •M7: Client Code Quality •M8: Code Tampering •M9: Reverse Engineering •M10: Extraneous Functionality
  • 25. MyPay
  • 28. HomeBank Insecure Communication Plain Text Payment Info Caching Screenshot
  • 33. KolesaKz Insecure Authorization Insecure Data Storage Broken Cryptography Plain text credentials
  • 36. ATF24
  • 37. ATF24
  • 38. ATF24