Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Beginning Mobile Security #appsecapac2014

OWASP Japan
March 20, 2014
260

Beginning Mobile Security #appsecapac2014

OWASP Japan

March 20, 2014
Tweet

Transcript

  1. About  Me   •  About  Me     – Jerry  Hoff

      – OWASP  Volunteer   – Appsec  Tutorial  Series  
  2. NaCve  ApplicaCons   •  Android  –  Java   •  iOS

     –  ObjecCve  C   •  Windows  Phone  –  C#   •  Blackberry  –  C/C++,  Java   •  Firefox  OS  –  HTML,  CSS,  JavaScript   11  
  3. 16   iOS   ObjecCve-­‐C   Android   Java,  C++

      Windows  Mobile   C#   Blackberry   Java   Mobile  Website   HTML5,  JS,  CSS   Cordova  /  Phonegap   HTML5,  JS*,  CSS   *JS  interacts  with   phone  naCve  API   Java  EE  (CXF,  Spring,  Jersey)   ASP.NET   PHP   Python   Ruby   Node.JS,  Erlang,  Google  Cloud  Pla]orm,  Perl,   etc..   Not  listed:  JS  libraries  (jQuery  Mobile,  Sencha  Touch,  etc)   Client   Server   Other  ways  to  build  apps:  Xamarian,  Flash  Builder,  etc..  
  4. App  Store  Security   •  Google  App  Store:  limited  security

     checks   –  There  are  mulCple  storefronts  (kindle,  etc…)   –  Makes  security  more  challenging   •  iTunes  App  Store:  search  for  banned   funcConality   –  Jailbroken  app  stores   –  iOS  apps  pirated  apps   •  Both  have  been  bypassed  repeatedly   19  
  5. •  Web   –  Most  code  by  necessity    

    is  server  side     –  PresentaCon  HTML/JS/CSS   •  Mobile   –  Significant  compiled  code     sent  to  the  client   –  Powerful  Mobile  APIs   •  camera,  mic,  SMS,  pictures,  etc…   –  Expect  to  be  always  logged  in   –  “App  Phishing”  is  a  thing   –  1/3  of  all  people  experience   a  lost  or  stolen  phone   –  hip://www.symantec.com/about/news/release/arCcle.jsp?prid=20110208_01   Mobile  vs  Web  Security   21  
  6. Focus…   •  Secure  Data  in  Transit   •  Securing

     Data  at  Rest   •  Logic  in  the  App   22  
  7. SensiCve  Data  on  the  Client   •  “Can  I  embed

     credenCals  in  my  app  so  only   customer  can  access  server  side  services”   –  NO   •  “Remember  Me”  on  the  client?   32  
  8. 38   iOS   ObjecCve-­‐C   Android   Java,  C++

      Windows  Mobile   C#   Blackberry   Java   Mobile  Website   HTML5,  JS,  CSS   Cordova  /  Phonegap   HTML5,  JS*,  CSS   *JS  interacts  with   phone  naCve  API   Java  EE     ASP.NET   PHP   Python   Ruby   Node.JS,  Erlang,  Google  Cloud  Pla]orm,  Perl,   etc..   Not  listed:  JS  libraries  (jQuery  Mobile,  Sencha  Touch,  etc)   Client   Server   Other  ways  to  build  apps:  Xamarian,  Flash  Builder,  etc..