Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Phone security

Mobile phone security

  • Be the first to comment

  • Be the first to like this

Phone security

  1. 1. Bezpečnosť mobilných aplikácií (iPhone) Juraj Bednár [email_address]
  2. 2. Čo je počítač?
  3. 3. Aplikačná bezpečnosť <ul><li>Z pohľadu aplikácie </li><ul><li>Keď dodáme túto aplikáciu, aká je jej bezpečnosť </li></ul><li>Trochu užívateľského pohľadu </li><ul><li>Dokumentovať riziká </li><ul><li>Ukradnutie
  4. 4. Malware
  5. 5. ... </li></ul></ul></ul>
  6. 6. Aplikačná bezpečnosť <ul><li>Robí sa podľa metodológií ako napr. OWASP
  7. 7. Mobilné aplikácie nie sú na trhu dostatočne dlho </li><ul><li>Pre klient-server app sa dá použiť subset OWASPu </li><ul><li>V závislosti od aplikácie je možné preskočiť časti ako napríklad XSS alebo JavaScript útoky
  8. 8. SQL Injection a iné časti je dobré použiť </li></ul><li>Veľa potenciálnych bodov nepokrýva žiadna akceptovaná metodika </li></ul></ul>
  9. 9. Bezpečnosť mobilných app všeobecne <ul><li>Ukladanie </li><ul><ul><li>Citlivých dát </li><ul><li>Fotografie, privátne dáta, dokumenty
  10. 10. Prístupové kľúče </li></ul><li>Menej citlivé </li><ul><li>Cache (môže byť citlivé)
  11. 11. Obrázky, kód
  12. 12. Necitlivé konfiguračné nastavenia </li></ul></ul></ul><li>Malware
  13. 13. Ukradnutie zariadenia
  14. 14. Autentifikácia (namiesto SMS autentifikácie) </li></ul>
  15. 15. iPhone <ul><li>Aplikácie oficiálne idú cez AppStore
  16. 16. Možnosť “jailbreaknúť” a nainštalovať iný SW
  17. 17. Časté bezpečnostné chyby (PDF, Safari, ...) </li><ul><li>Užívatelia málokedy updatujú </li><ul><li>Nie je to povinné
  18. 18. Je to zložité, častokrát sa stratia dáta
  19. 19. Malá pridaná hodnota “point releasov” pre väčšinu užívateľov
  20. 20. O “hacknutí” a zabezpečení telefónu málokto rozmýšľa </li></ul></ul><li>Operačný systém založený na BSD a OSX
  21. 21. Veľa inštalácií rovnakého systému – známe prostredie </li></ul>
  22. 22. iPad <ul><li>Rovnaké aplikácie, rovnaký OS, rovnaké chyby
  23. 23. Viac interakcie s užívateľom, ale tiež veľmi nízka viditeľnosť “do systému” </li></ul>
  24. 24. iPhone keystore <ul><li>Databáza kľúčov a citlivých informácií
  25. 25. Uložená v SQLite3 databáze
  26. 26. Zašifrovaný kľúčom unikátnym pre zariadenie </li><ul><li>Tento kľúč zariadenie nikdy nevydá, vie len spraviť operáciu (TPM)
  27. 27. Backup je možné obnoviť len na rovnakom kuse zariadenia (pri reklamácii výmenou zariadenia to nie je možné)
  28. 28. Ak má útočník prístup do userlandu telefónu, vie si samozrejme vyžiadať dešifrovanie akéhokoľvek ciphertextu </li></ul></ul>
  29. 29. iPhone keystore <ul><li>“Šifrované backupy” </li><ul><li>iTunes nastaví symetrický šifrovací kľúč do telefónu (neukladá si ho)
  30. 30. Backupy sú od tohto momentu šifrované (telefónom) na tento symetrický kľúč
  31. 31. Jeho brute-force (keďže kľúč volí užívateľ, ...) sa dajú z iPhone backupu získať senzitívne informácie </li></ul><li>Ako bezpečne ukladať dáta? </li><ul><li>Časť do keystoru, XOR s random dátami ukladanými mimo časti, ktorá sa zálohuje
  32. 32. Radšej nech sa užívateľ reautentifikuje alebo musí začať “from scratch”, ako riskovať únik citlivých informácií. </li></ul></ul>
  33. 33. Všeobecne k ukladaniu citlivých autentifikačných informácií <ul><li>V prípade ukradnutia telefónu má väčšinou útočník čas na bruteforce </li><ul><li>Používať schémy, ktoré bruteforce maximálne sťažujú (padding ho uľahčuje, off-line overovanie tiež)
  34. 34. Server by mal pri akomkoľvek podozrení odmietnuť ďalšie požiadavky a žiadať reautentifikáciu alebo novú výmenu kľúčov </li></ul></ul>
  35. 35. Malware <ul><li>iPhone je štandardná platforma, stačí písať malware pre jeden typ OS
  36. 36. Ak je aplikácia pre viacero mobilných platforiem, efektivita sa prudko znižuje
  37. 37. Malware je možný, vie robiť to, čo bežný unix proces (čítať súbory, posielať signály, debuggovať cudzí kód, čítať cudziu pamäť) </li><ul><li>Dvaja užívatelia </li></ul></ul>
  38. 38. Malware <ul><li>Riziko je cca rovnaké ako pri klasickom PC </li><ul><li>+ štandardná platforma (nie milión príchutí windowsu)
  39. 39. - užívatelia nemôžu “spúšťať” ľubovoľné 3 rd party aplikácie. Treba exploitovať. </li></ul><li>Malware je prakticky neviditeľný </li><ul><li>Žiadny antimalware
  40. 40. Užívateľ nevidí systémové informácie, nemá shell
  41. 41. Môže bežať malware mesiace, bez toho, aby si to všimol </li></ul><li>Malware je zatiaľ cielený, rozšírené malware pre iPhone prakticky neexistujú. </li></ul>
  42. 42. Forenzná analýza <ul><li>Dump FS je možný
  43. 43. Štandardný UNIX prístup
  44. 44. Telefón obsahuje väčšinou veľmi citlivé informácie </li></ul>
  45. 45. Disassemblovanie a analýza kódu <ul><li>Štandardná architektúra (ARM)
  46. 46. Objective-C veľmi uľahčuje disassemblovanie </li><ul><li>Všetky volania metód idú cez jednu low-level funkciu </li><ul><li>Možnosť rekonštrukcie objektovej štruktúry, symbolických názvov (analýza sa dá ľahko automatizovať) </li></ul><li>Binárky obsahujú veľmi veľa debug informácií (častokrát X-Code pridá cesty k zdrojákom, ktoré boli kompilované) </li></ul><li>Neexistuje ekvivalent kdump, strace, truss
  47. 47. Možnosť online debugovania cez gdb (krokovanie, čítanie pamäte)
  48. 48. Možnosť odchytávania sieťovej prevádzky (tcpdump)
  49. 49. Možnosť odchytenia kľúčov (client-side certifikát pre SSL nepomôže, overovanie server-side SSL možné podvrhnúť a malware vie spraviť man in the middle) </li></ul>
  50. 50. Distribučný kanál <ul><li>AppStore
  51. 51. Developer účet vie tlačiť nové verzie
  52. 52. Užívatelia málokedy upgradujú OS, aplikácie upgradujú častejšie </li></ul>
  53. 53. Thanks to <ul><li>Tomáš Zaťko
  54. 54. Martin Mocko (assembler guru) </li></ul>
  55. 55. Otázky? <ul>Juraj Bednár [email_address] </ul>

×