SlideShare a Scribd company logo
Mobile Privacy and Security
            With the iPhone
                   James Wernicke
                     April 28, 2007
Goal and Objectives
   Demonstrate weaknesses in accepted mobile
    security and privacy practices.

   Evaluate the security and privacy features of the
    iPhone.

   Perform a security audit on an iPhone.

   Develop a security application for the iPhone for
    general users.




    Objectives – Background – Specifications – Security Audit - Conclusion
Background
   Mobile devices are ubiquitous in today‟s society.
   3G networks and unlimited data plans continue to
    rise in popularity.




     Objectives – Background – Specifications – Security Audit - Conclusion
Background
   Mobile malware is becoming more prevalent.




   Stolen information includes emails, text messages,
    contact lists, and browser history.


     Objectives – Background – Specifications – Security Audit - Conclusion
Background
   No operating system is completely safe.




   Platforms are more familiar and easier to hack.

      Objectives – Background – Specifications – Security Audit - Conclusion
Background
   The iPhone is no exception.




            Source: http://seriot.ch/resources/talks_papers/iPhonePrivacy.pdf




     Objectives – Background – Specifications – Security Audit - Conclusion
New Technologies, New Problems
   Limited resources
   Interface
       Touch displays
       Small displays
       Gestures

   Location tracking
   Always-on, high-speed connections
   Desktop-based operating systems
   Native web-based hybrid applications
   Accelerometers

        Objectives – Background – Specifications – Security Audit - Conclusion
iPhone Specifications
   Communications
       GSM/EDGE, UMTS/HSDPA, Wi-Fi (802.11 b/g), Bluetooth
        2.1 + EDR, and USB 2.0
   Display
       3.5-inch widescreen Multi-Touch display
   Recording
       3-megapixel camera, auto-focus, VGA recording up to 30
        fps, geotagging
   Storage
       8, 16, or 32 GB
   Power
       Up to 300 hours standby, 12 hours talk, 9 hours Wi-Fi, 10
        hours video, 30 hours audio
   Support for most common file formats.

        Objectives – Background – Specifications – Security Audit - Conclusion
Software
   iPhone OS
       File system is “sandboxed” to protect critical system files
        from third-party software.
       Key pieces of information stored in SQLite databases.
   Apps
       Thousands of apps for personal information management,
        remote access and entertainment.
       No (official) firewall or anti-virus software.
       App development is open, but App Store checks apps for
        malicious code before release.
   Jailbreaking
       Unlocks restrictions on the iPhone to allow full UNIX
        functionality.
       As a negative consequence, it also removes safeguards.


        Objectives – Background – Specifications – Security Audit - Conclusion
Test Subject
   The iPhone was heavily used containing
    information including:
       Email
       Contacts
       Calendar
       Web browsing history
       Stored Wi-Fi networks
       Pictures and videos
       Maps
       Apps
   Jailbroken iPhone OS version 2.3.2

        Objectives – Background – Specifications – Security Audit - Conclusion
iPhone Security Audit
1.   Scan for transmissions.

2.   Probe for information and possible
     vulnerabilities.

3.   Attempt to exploit vulnerabilities to gain
     control.

4.   If successful, attempt to find and retrieve
     valuable information.



     Objectives – Background – Specifications – Security Audit - Conclusion
Scanning and Probing Tools
       Ethereal
         Captures and analyzes data packets transmitted over the
          air.
         Useful for determining what type of traffic a user is
          transmitting (HTTP, FTP, SFTP)

       Nmap
         Probes an interface for details about its operating system
          and ports.




        Objectives – Background – Specifications – Security Audit - Conclusion
Exploiting Vulnerabilities
   192.168.0.73 found to be iPhone OS.
   Port 22 (OpenSSH) found open on it.
       OpenSSH installs with „alpine‟ as default password.
   Successfully penetrated device using default
    password.
bash-4.0$ ssh root@192.168.0.73
root@192.168.0.73’s password:
iPhone:~ root# _




   Time to look for some information…

        Objectives – Background – Specifications – Security Audit - Conclusion
Property Lists
   Property lists are often used to store a user's
    settings, and information about applications.
        <dict>
          <key>Name</key>
          <string>James Wernicke</string>
          <key>Age</key>
          <integer>29</integer>
        </dict>

   The iPhone uses these files to store virtually all
    personal information.
       Passcode is stored encrypted in the Keychain.




        Objectives – Background – Specifications – Security Audit - Conclusion
Analyzing Property Lists
   Property lists cannot be read in their native binary
    format.
private/var/mobile/Library/Preferences/mobile$ cat .GlobalPreferences.plist
bplist00Ö
*[TVOutStatus[AppleLocale^AppleKeyboards_AppleKeyboardsExpanded^AppleLanguages_SBFor
   mattedPhoneNumberÿÿÿÿÿÿÿÿUen_US¡¯!"#$%&'()RenResRjaRfrRdeRnlRitRptUpt-
   PTRdaRfiRnbRsvRkoWzh-HansWzh-HantRruRplRtrRukRarRhrRcsRelRheRroRskRthRidRms_1
   (858) 603-5873




      Objectives – Background – Specifications – Security Audit - Conclusion
Analyzing Property Lists
   Converted to XML format using plutil.

private/var/mobile/Library/Preferences/mobile$ plutil -convert xml1
   .GlobalPreferences.plist
Converted 1 files to XML format
private/var/mobile/Library/Preferences/mobile$ cat .GlobalPreferences.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
   "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>AppleKeyboards</key>
   <array>
          <string>en_US</string>
   </array>
   <key>AppleKeyboardsExpanded</key>
   <integer>1</integer>
   <key>AppleLanguages</key>
   <key>SBFormattedPhoneNumber</key>
   <string>1 (858) 603-5873</string>
   <key>TVOutStatus</key>
   <integer>-1</integer>
</dict>
</plist>



     Objectives – Background – Specifications – Security Audit - Conclusion
Analyzing Property Lists
   Personal information can then be found and
    extracted.
private/var/mobile/Library/Preferences/mobile$ grep
   PhoneNumber .*
.GlobalPreferences.plist:
       <key>SBFormattedPhoneNumber</key>
/private/var/mobile/Library/Preferences/mobile$ plutil -
   key SBFormattedPhoneNumber .GlobalPreferences.plist
1 (858) 603-5873




     Objectives – Background – Specifications – Security Audit - Conclusion
Analyzing Property Lists
   Personal information can then be found and
    extracted.
private/var/mobile/Library/Preferences/mobile$ grep
   PhoneNumber .*
.GlobalPreferences.plist:
       <key>SBFormattedPhoneNumber</key>
/private/var/mobile/Library/Preferences/mobile$ plutil -
   key SBFormattedPhoneNumber .GlobalPreferences.plist
1 (858) 603-5873




     Objectives – Background – Specifications – Security Audit - Conclusion
Analyzing Property Lists
   Over 2000 property lists were found on the test
    iPhone.
       Analyzing each by hand would be very expensive.
   Program developed to find property lists,
    convert them to XML, search for common
    keywords, and retrieve their values.
       plister.sh
       plbackup.sh
       plist2xml.sh
       keyfinder.sh
   Future development to lead to security app.

        Objectives – Background – Specifications – Security Audit - Conclusion
Results
   Found identifying information about the device
    passively by monitoring air traffic.
   Found open ports through probes.
   Gained root access to system through SSH exploit.
   Collected personal information.
       Name, phone number, and birthday
       Contact list and calendar
       Emails, text messages, and call logs
       Browsing history and bookmarks
       Pictures, songs and videos
   Could have also destroyed data including erasing
    my tracks.

        Objectives – Background – Specifications – Security Audit - Conclusion
Recommendations & Lessons Learned
   Open up the iPhone OS to security vendors.
   Use discretion when allowing apps to access
    personal information.
   NEVER leave the default password active on your
    OpenSSH server.
   Do not leave connections (3G, Wi-Fi, Bluetooth)
    active when not in use.
   Do not use unprotected wireless networks.
References & Secondary Research
Pew Research Center. Internet & American Life Project. 2009. Survey. http://www.pewinternet.org/.
CTIA. A Generation Unplugged. s.l. : Harris Interactive, 2008. Research Study.
   http://files.ctia.org/pdf/HI_TeenMobileStudy_ResearchReport.pdf.
Radwanick, Sarah. The 2009 U.S. Digital Year in Review. s.l. : comScore, 2010. p. 13, Whitepaper.
   http://www.comscore.com/Press_Events/Presentations_Whitepapers/2010/The_2009_U.S._Digital_Year_in_Review.
Gostev, Alexander. Mobile Malware Evolution: An Overview, Part 3. SECURELIST. [Online] September 29, 2009. [Cited:
   April 1, 2010.] http://www.viruslist.com/analysis/?pubid=204792080.
Weiss, Gregg. Staggering iPhone App Development Statistics Unveiled at Macworld 2010. prMac.com. [Online]
   February 3, 2010. [Cited: April 1, 2010.] http://prmac.com/release-id-10499.htm.
Hughes, Neil. Piper: 15.8M US iPhone sales in 2010, even without Verizon. AppleInsider. [Online] January 6, 2010. [Cited:
   April 1, 2010.]
   http://www.appleinsider.com/articles/10/01/06/piper_15_8m_us_iphone_sales_in_2010_even_without_verizon.html.
Cheng, Jacqui. The truth about the iPhone's sales numbers. Ars Technica. [Online] January 23, 2008. [Cited: April 1,
   2010.] http://arstechnica.com/apple/news/2008/01/the-truth-about-the-iphones-sales-numbers.ars.
Rubicon Consulting. The Apple iPhone: Successes and Challenges for the Mobile Industry. 2008.
   http://rubiconconsulting.com/downloads/whitepapers/Rubicon-iPhone_User_Survey.pdf.
Seriot, Nicolas. iPhone Privacy. 2010. Technical Report. http://seriot.ch/resources/talks_papers/iPhonePrivacy.pdf.
Pwn2Own 2010: iPhone hacked, SMS database hijacked. ZDNet. [Online] March 24, 2010. [Cited: April 1, 2010.]
   http://blogs.zdnet.com/security/?p=5836.
A look back at the iTunes App Store - Part I: Explosive Growth. Edible Apple. [Online] July 8, 2009. [Cited: April 1, 2010.]
   http://www.edibleapple.com/a-look-back-at-the-itunes-app-store-part-i-explosive-growth/.
Questions?
Sandboxing Rules
(version 1)                                                     (allow file-write*
(deny default)                                                  (regex "^/private/var/tmp/UpdatedSnapshots/$"))
; Sandbox violations get logged to syslog via kernel logging.   ; Permit reading and writing in the App container
(debug deny)                                                    (allow file-read*
(allow sysctl-read)                                             (regex "^/private/var/mobile/Applications/ 
; Mount / umount commands                                       XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX(/|$)"))
(deny file-write-mount file-write-umount)                       (allow file-write*
; System is read only                                           (regex "^/private/var/mobile/Applications/ 
(allow file-read*)                                              XXXXXXXX-XXXX-XXXX-XXXX-
(deny file-write*)                                                    XXXXXXXXXXXX/(tmp|Library|Documents)(/|$)"))
; NOTE: Later rules override earlier rules.                     (allow process-exec
; Private areas                                                 (regex #"^/private/var/mobile/Applications/ 
(deny file-write*                                               XXXXXXXX-XXXX-XXXX-XXXX-
(regex "^/private/var/mobile/Applications/.*$"))                      XXXXXXXXXXXX/.*.app(/|$)"))
(deny file-read*                                                ; Allow Address book access via filesystem
(regex "^/private/var/mobile/Applications/.*$"))                ; This is an SQLite3 database - there is room to make the rules
; SQLite uses /private/var/tmp                                        tighter
; TBR: <rdar://problem/5805879> SQLite doesn’t honor            (allow file-write*
; the TMPDIR environment variable                               (regex "^/private/var/mobile/Library/AddressBook(/|$)"))
(allow file-write*                                              (allow file-read*
(regex "^/private/var/tmp(/|$)"))                               (regex "^/private/var/mobile/Library/AddressBook(/|$)"))
(allow file-read*                                               ; Allow keyboard db access via filesystem
(regex "^/private/var/tmp(/|$)"))                               ; This is a custom file format. There is room to make the rules
; TBR: <rdar://problem/5806524>                                 tighter
(allow process-exec                                             (allow file-write*
(regex "^/private/var/tmp$"))                                   (regex "^/private/var/mobile/Library(/Keyboard)?(/|$)"))
; TBR: <rdar://problem/5830139>                                 (allow file-read*
Sandboxing Rules
(regex "^/private/var/mobile/Library(/Keyboard)?(/|$)"))               ; (allow network-outbound)
; Pictures, but not other media                                        ; (to unix-socket "/private/var/run/asl_input"))
; Allow photo access via filesystem. There is room to make the rules   (allow network*)
      tighter                                                          ; To allow crash reporter / exceptions to kill the process
(deny file-write*                                                      (allow signal (target self))
(regex "^/private/var/mobile/Media(/|$)"))
(deny file-read*
(regex "^/private/var/mobile/Media/"))
(allow file-write*
(regex "^/private/var/mobile/Media/com.apple.itunes.lock_sync$"))
(allow file-read*
(regex "^/private/var/mobile/Media/com.apple.itunes.lock_sync$"))
(allow file-write*
(regex "^/private/var/mobile/Media/DCIM(/|$)"))
(allow file-read*
(regex "^/private/var/mobile/Media/DCIM(/|$)"))
(allow file-read*
(regex "^/private/var/mobile/Media/Photos(/|$)"))
; Mach lookups. There is room to make the rule tighter.
(allow mach-lookup)
;; (global-name "PurpleSystemEventPort")
;; (global-name "com.apple.CARenderServer")
;; (global-name "com.apple.eventpump")
;; (global-name "com.apple.springboard.migserver")
;; (global-name "com.apple.system.notification_center"))
(deny process-fork)
; For ASL logs - /var/run/asl_input (XXX: socket can now be named)
Mobile Privacy And Security
Mobile Privacy And Security
Mobile Privacy And Security
Mobile Privacy And Security
More Results

Type          Results            Google Maps                               Yes
Call logs                  100   Voicemail                                   0
SMS                        120   Password                                  No
Contacts                  1511   Plists/XML                                Yes
Email                      512   Phone Info                                Yes
Calendar                  3188   Video                                       0
Notes                        1   Podcasts                                    0
Pictures                    27   Speed Dials                           Found
Songs                     2359   VPN           List of trusted networks found
Web History                Yes   Bluetooth                           Enabled
Bookmarks                Some    GPS                                       No
Cookies        Bank of America   File hashes                               Yes
App Info                   Yes   YouTube       Found recently viewed videos
                                                    Recent weather page plus
                                 HTML                               Facebook
Mobile Privacy And Security

More Related Content

PDF
iPhone forensics, without the iPhone
PDF
Forensic Analysis of the Raspberry PI 400
PPTX
Weaponizing the Nokia N900 -- TakeDownCon, Dallas, 2011
PPT
iPhone forensics on iOS5
PPTX
Operating Systems: Computer Security
PPTX
Operating Systems: Computer Security
PPTX
Digital security
PPTX
Week12 final
iPhone forensics, without the iPhone
Forensic Analysis of the Raspberry PI 400
Weaponizing the Nokia N900 -- TakeDownCon, Dallas, 2011
iPhone forensics on iOS5
Operating Systems: Computer Security
Operating Systems: Computer Security
Digital security
Week12 final

What's hot (6)

PPTX
APT 28 :Cyber Espionage and the Russian Government?
PDF
Developing a Protection Profile for Smart TV
PPTX
Ethical hacking
PDF
Smart TV Security - #1984 in 21st century -
PPT
ETel2007: The Black Bag Security Review (VoIP Security)
PPT
ETHICAL HACKING
APT 28 :Cyber Espionage and the Russian Government?
Developing a Protection Profile for Smart TV
Ethical hacking
Smart TV Security - #1984 in 21st century -
ETel2007: The Black Bag Security Review (VoIP Security)
ETHICAL HACKING
Ad

Viewers also liked (14)

PDF
Ibm Mobile Device Security Datasheet V2.0
PDF
Android vs. iPhone for Mobile Security
PPSX
Mobile device security informative v2
PDF
Symantec Mobile Security Whitepaper June 2011
PPTX
Mobile Security
PPTX
Automated Security Analysis of Android & iOS Applications with Mobile Securit...
PDF
Mobile Security
PPTX
Android vs ios System Architecture in OS perspective
PPTX
Iphone vs android
PPTX
Mobile security
PDF
Nullcon Goa 2016 - Automated Mobile Application Security Testing with Mobile ...
PDF
Mobile security - Intense overview
PPTX
Mobile security
PDF
2015 Mobile Security Trends: Are You Ready?
Ibm Mobile Device Security Datasheet V2.0
Android vs. iPhone for Mobile Security
Mobile device security informative v2
Symantec Mobile Security Whitepaper June 2011
Mobile Security
Automated Security Analysis of Android & iOS Applications with Mobile Securit...
Mobile Security
Android vs ios System Architecture in OS perspective
Iphone vs android
Mobile security
Nullcon Goa 2016 - Automated Mobile Application Security Testing with Mobile ...
Mobile security - Intense overview
Mobile security
2015 Mobile Security Trends: Are You Ready?
Ad

Similar to Mobile Privacy And Security (20)

PPTX
Pentesting iOS Applications
PPTX
Hacking and Securing iOS Applications by Satish Bomisstty
PDF
Hacking and Securing iOS Applications
PPTX
Pentesting iPhone applications
PDF
Smart Bombs: Mobile Vulnerability and Exploitation
PPTX
Hacking and securing ios applications
PDF
CactusCon - Practical iOS App Attack and Defense
PDF
ASFWS 2012 - Audit d’applications iOS par Julien Bachmann
PDF
CNIT 128 Ch 1: The mobile risk ecosystem
PPTX
Virtue Security - The Art of Mobile Security 2013
PDF
(Pdf) yury chemerkin balccon_2013
PDF
CodeMash 2.0.1.5 - Practical iOS App Attack & Defense
PDF
CNIT 128 8: Mobile development security
PDF
iOS Application Penetation Test
PPTX
Mobile security part 2
PDF
Attacking and Defending Apple iOS Devices
PDF
Smart Bombs: Mobile Vulnerability and Exploitation
PDF
Yow connected developing secure i os applications
PPTX
iOS-Application-Security-iAmPr3m
Pentesting iOS Applications
Hacking and Securing iOS Applications by Satish Bomisstty
Hacking and Securing iOS Applications
Pentesting iPhone applications
Smart Bombs: Mobile Vulnerability and Exploitation
Hacking and securing ios applications
CactusCon - Practical iOS App Attack and Defense
ASFWS 2012 - Audit d’applications iOS par Julien Bachmann
CNIT 128 Ch 1: The mobile risk ecosystem
Virtue Security - The Art of Mobile Security 2013
(Pdf) yury chemerkin balccon_2013
CodeMash 2.0.1.5 - Practical iOS App Attack & Defense
CNIT 128 8: Mobile development security
iOS Application Penetation Test
Mobile security part 2
Attacking and Defending Apple iOS Devices
Smart Bombs: Mobile Vulnerability and Exploitation
Yow connected developing secure i os applications
iOS-Application-Security-iAmPr3m

Mobile Privacy And Security

  • 1. Mobile Privacy and Security With the iPhone James Wernicke April 28, 2007
  • 2. Goal and Objectives  Demonstrate weaknesses in accepted mobile security and privacy practices.  Evaluate the security and privacy features of the iPhone.  Perform a security audit on an iPhone.  Develop a security application for the iPhone for general users. Objectives – Background – Specifications – Security Audit - Conclusion
  • 3. Background  Mobile devices are ubiquitous in today‟s society.  3G networks and unlimited data plans continue to rise in popularity. Objectives – Background – Specifications – Security Audit - Conclusion
  • 4. Background  Mobile malware is becoming more prevalent.  Stolen information includes emails, text messages, contact lists, and browser history. Objectives – Background – Specifications – Security Audit - Conclusion
  • 5. Background  No operating system is completely safe.  Platforms are more familiar and easier to hack. Objectives – Background – Specifications – Security Audit - Conclusion
  • 6. Background  The iPhone is no exception. Source: http://seriot.ch/resources/talks_papers/iPhonePrivacy.pdf Objectives – Background – Specifications – Security Audit - Conclusion
  • 7. New Technologies, New Problems  Limited resources  Interface  Touch displays  Small displays  Gestures  Location tracking  Always-on, high-speed connections  Desktop-based operating systems  Native web-based hybrid applications  Accelerometers Objectives – Background – Specifications – Security Audit - Conclusion
  • 8. iPhone Specifications  Communications  GSM/EDGE, UMTS/HSDPA, Wi-Fi (802.11 b/g), Bluetooth 2.1 + EDR, and USB 2.0  Display  3.5-inch widescreen Multi-Touch display  Recording  3-megapixel camera, auto-focus, VGA recording up to 30 fps, geotagging  Storage  8, 16, or 32 GB  Power  Up to 300 hours standby, 12 hours talk, 9 hours Wi-Fi, 10 hours video, 30 hours audio  Support for most common file formats. Objectives – Background – Specifications – Security Audit - Conclusion
  • 9. Software  iPhone OS  File system is “sandboxed” to protect critical system files from third-party software.  Key pieces of information stored in SQLite databases.  Apps  Thousands of apps for personal information management, remote access and entertainment.  No (official) firewall or anti-virus software.  App development is open, but App Store checks apps for malicious code before release.  Jailbreaking  Unlocks restrictions on the iPhone to allow full UNIX functionality.  As a negative consequence, it also removes safeguards. Objectives – Background – Specifications – Security Audit - Conclusion
  • 10. Test Subject  The iPhone was heavily used containing information including:  Email  Contacts  Calendar  Web browsing history  Stored Wi-Fi networks  Pictures and videos  Maps  Apps  Jailbroken iPhone OS version 2.3.2 Objectives – Background – Specifications – Security Audit - Conclusion
  • 11. iPhone Security Audit 1. Scan for transmissions. 2. Probe for information and possible vulnerabilities. 3. Attempt to exploit vulnerabilities to gain control. 4. If successful, attempt to find and retrieve valuable information. Objectives – Background – Specifications – Security Audit - Conclusion
  • 12. Scanning and Probing Tools  Ethereal  Captures and analyzes data packets transmitted over the air.  Useful for determining what type of traffic a user is transmitting (HTTP, FTP, SFTP)  Nmap  Probes an interface for details about its operating system and ports. Objectives – Background – Specifications – Security Audit - Conclusion
  • 13. Exploiting Vulnerabilities  192.168.0.73 found to be iPhone OS.  Port 22 (OpenSSH) found open on it.  OpenSSH installs with „alpine‟ as default password.  Successfully penetrated device using default password. bash-4.0$ ssh root@192.168.0.73 root@192.168.0.73’s password: iPhone:~ root# _  Time to look for some information… Objectives – Background – Specifications – Security Audit - Conclusion
  • 14. Property Lists  Property lists are often used to store a user's settings, and information about applications. <dict> <key>Name</key> <string>James Wernicke</string> <key>Age</key> <integer>29</integer> </dict>  The iPhone uses these files to store virtually all personal information.  Passcode is stored encrypted in the Keychain. Objectives – Background – Specifications – Security Audit - Conclusion
  • 15. Analyzing Property Lists  Property lists cannot be read in their native binary format. private/var/mobile/Library/Preferences/mobile$ cat .GlobalPreferences.plist bplist00Ö *[TVOutStatus[AppleLocale^AppleKeyboards_AppleKeyboardsExpanded^AppleLanguages_SBFor mattedPhoneNumberÿÿÿÿÿÿÿÿUen_US¡¯!"#$%&'()RenResRjaRfrRdeRnlRitRptUpt- PTRdaRfiRnbRsvRkoWzh-HansWzh-HantRruRplRtrRukRarRhrRcsRelRheRroRskRthRidRms_1 (858) 603-5873 Objectives – Background – Specifications – Security Audit - Conclusion
  • 16. Analyzing Property Lists  Converted to XML format using plutil. private/var/mobile/Library/Preferences/mobile$ plutil -convert xml1 .GlobalPreferences.plist Converted 1 files to XML format private/var/mobile/Library/Preferences/mobile$ cat .GlobalPreferences.plist <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>AppleKeyboards</key> <array> <string>en_US</string> </array> <key>AppleKeyboardsExpanded</key> <integer>1</integer> <key>AppleLanguages</key> <key>SBFormattedPhoneNumber</key> <string>1 (858) 603-5873</string> <key>TVOutStatus</key> <integer>-1</integer> </dict> </plist> Objectives – Background – Specifications – Security Audit - Conclusion
  • 17. Analyzing Property Lists  Personal information can then be found and extracted. private/var/mobile/Library/Preferences/mobile$ grep PhoneNumber .* .GlobalPreferences.plist: <key>SBFormattedPhoneNumber</key> /private/var/mobile/Library/Preferences/mobile$ plutil - key SBFormattedPhoneNumber .GlobalPreferences.plist 1 (858) 603-5873 Objectives – Background – Specifications – Security Audit - Conclusion
  • 18. Analyzing Property Lists  Personal information can then be found and extracted. private/var/mobile/Library/Preferences/mobile$ grep PhoneNumber .* .GlobalPreferences.plist: <key>SBFormattedPhoneNumber</key> /private/var/mobile/Library/Preferences/mobile$ plutil - key SBFormattedPhoneNumber .GlobalPreferences.plist 1 (858) 603-5873 Objectives – Background – Specifications – Security Audit - Conclusion
  • 19. Analyzing Property Lists  Over 2000 property lists were found on the test iPhone.  Analyzing each by hand would be very expensive.  Program developed to find property lists, convert them to XML, search for common keywords, and retrieve their values.  plister.sh  plbackup.sh  plist2xml.sh  keyfinder.sh  Future development to lead to security app. Objectives – Background – Specifications – Security Audit - Conclusion
  • 20. Results  Found identifying information about the device passively by monitoring air traffic.  Found open ports through probes.  Gained root access to system through SSH exploit.  Collected personal information.  Name, phone number, and birthday  Contact list and calendar  Emails, text messages, and call logs  Browsing history and bookmarks  Pictures, songs and videos  Could have also destroyed data including erasing my tracks. Objectives – Background – Specifications – Security Audit - Conclusion
  • 21. Recommendations & Lessons Learned  Open up the iPhone OS to security vendors.  Use discretion when allowing apps to access personal information.  NEVER leave the default password active on your OpenSSH server.  Do not leave connections (3G, Wi-Fi, Bluetooth) active when not in use.  Do not use unprotected wireless networks.
  • 22. References & Secondary Research Pew Research Center. Internet & American Life Project. 2009. Survey. http://www.pewinternet.org/. CTIA. A Generation Unplugged. s.l. : Harris Interactive, 2008. Research Study. http://files.ctia.org/pdf/HI_TeenMobileStudy_ResearchReport.pdf. Radwanick, Sarah. The 2009 U.S. Digital Year in Review. s.l. : comScore, 2010. p. 13, Whitepaper. http://www.comscore.com/Press_Events/Presentations_Whitepapers/2010/The_2009_U.S._Digital_Year_in_Review. Gostev, Alexander. Mobile Malware Evolution: An Overview, Part 3. SECURELIST. [Online] September 29, 2009. [Cited: April 1, 2010.] http://www.viruslist.com/analysis/?pubid=204792080. Weiss, Gregg. Staggering iPhone App Development Statistics Unveiled at Macworld 2010. prMac.com. [Online] February 3, 2010. [Cited: April 1, 2010.] http://prmac.com/release-id-10499.htm. Hughes, Neil. Piper: 15.8M US iPhone sales in 2010, even without Verizon. AppleInsider. [Online] January 6, 2010. [Cited: April 1, 2010.] http://www.appleinsider.com/articles/10/01/06/piper_15_8m_us_iphone_sales_in_2010_even_without_verizon.html. Cheng, Jacqui. The truth about the iPhone's sales numbers. Ars Technica. [Online] January 23, 2008. [Cited: April 1, 2010.] http://arstechnica.com/apple/news/2008/01/the-truth-about-the-iphones-sales-numbers.ars. Rubicon Consulting. The Apple iPhone: Successes and Challenges for the Mobile Industry. 2008. http://rubiconconsulting.com/downloads/whitepapers/Rubicon-iPhone_User_Survey.pdf. Seriot, Nicolas. iPhone Privacy. 2010. Technical Report. http://seriot.ch/resources/talks_papers/iPhonePrivacy.pdf. Pwn2Own 2010: iPhone hacked, SMS database hijacked. ZDNet. [Online] March 24, 2010. [Cited: April 1, 2010.] http://blogs.zdnet.com/security/?p=5836. A look back at the iTunes App Store - Part I: Explosive Growth. Edible Apple. [Online] July 8, 2009. [Cited: April 1, 2010.] http://www.edibleapple.com/a-look-back-at-the-itunes-app-store-part-i-explosive-growth/.
  • 24. Sandboxing Rules (version 1) (allow file-write* (deny default) (regex "^/private/var/tmp/UpdatedSnapshots/$")) ; Sandbox violations get logged to syslog via kernel logging. ; Permit reading and writing in the App container (debug deny) (allow file-read* (allow sysctl-read) (regex "^/private/var/mobile/Applications/ ; Mount / umount commands XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX(/|$)")) (deny file-write-mount file-write-umount) (allow file-write* ; System is read only (regex "^/private/var/mobile/Applications/ (allow file-read*) XXXXXXXX-XXXX-XXXX-XXXX- (deny file-write*) XXXXXXXXXXXX/(tmp|Library|Documents)(/|$)")) ; NOTE: Later rules override earlier rules. (allow process-exec ; Private areas (regex #"^/private/var/mobile/Applications/ (deny file-write* XXXXXXXX-XXXX-XXXX-XXXX- (regex "^/private/var/mobile/Applications/.*$")) XXXXXXXXXXXX/.*.app(/|$)")) (deny file-read* ; Allow Address book access via filesystem (regex "^/private/var/mobile/Applications/.*$")) ; This is an SQLite3 database - there is room to make the rules ; SQLite uses /private/var/tmp tighter ; TBR: <rdar://problem/5805879> SQLite doesn’t honor (allow file-write* ; the TMPDIR environment variable (regex "^/private/var/mobile/Library/AddressBook(/|$)")) (allow file-write* (allow file-read* (regex "^/private/var/tmp(/|$)")) (regex "^/private/var/mobile/Library/AddressBook(/|$)")) (allow file-read* ; Allow keyboard db access via filesystem (regex "^/private/var/tmp(/|$)")) ; This is a custom file format. There is room to make the rules ; TBR: <rdar://problem/5806524> tighter (allow process-exec (allow file-write* (regex "^/private/var/tmp$")) (regex "^/private/var/mobile/Library(/Keyboard)?(/|$)")) ; TBR: <rdar://problem/5830139> (allow file-read*
  • 25. Sandboxing Rules (regex "^/private/var/mobile/Library(/Keyboard)?(/|$)")) ; (allow network-outbound) ; Pictures, but not other media ; (to unix-socket "/private/var/run/asl_input")) ; Allow photo access via filesystem. There is room to make the rules (allow network*) tighter ; To allow crash reporter / exceptions to kill the process (deny file-write* (allow signal (target self)) (regex "^/private/var/mobile/Media(/|$)")) (deny file-read* (regex "^/private/var/mobile/Media/")) (allow file-write* (regex "^/private/var/mobile/Media/com.apple.itunes.lock_sync$")) (allow file-read* (regex "^/private/var/mobile/Media/com.apple.itunes.lock_sync$")) (allow file-write* (regex "^/private/var/mobile/Media/DCIM(/|$)")) (allow file-read* (regex "^/private/var/mobile/Media/DCIM(/|$)")) (allow file-read* (regex "^/private/var/mobile/Media/Photos(/|$)")) ; Mach lookups. There is room to make the rule tighter. (allow mach-lookup) ;; (global-name "PurpleSystemEventPort") ;; (global-name "com.apple.CARenderServer") ;; (global-name "com.apple.eventpump") ;; (global-name "com.apple.springboard.migserver") ;; (global-name "com.apple.system.notification_center")) (deny process-fork) ; For ASL logs - /var/run/asl_input (XXX: socket can now be named)
  • 30. More Results Type Results Google Maps Yes Call logs 100 Voicemail 0 SMS 120 Password No Contacts 1511 Plists/XML Yes Email 512 Phone Info Yes Calendar 3188 Video 0 Notes 1 Podcasts 0 Pictures 27 Speed Dials Found Songs 2359 VPN List of trusted networks found Web History Yes Bluetooth Enabled Bookmarks Some GPS No Cookies Bank of America File hashes Yes App Info Yes YouTube Found recently viewed videos Recent weather page plus HTML Facebook