dmayer / idb

idb is a tool to simplify some common tasks for iOS pentesting and research
MIT License
942 stars 156 forks source link

Crash - Occurs when attempting to load application. #15

Closed nmonkee closed 10 years ago

nmonkee commented 10 years ago

Open the application, attach to running simulator, list applications, choose launch application.


$ ruby gidb.rb 
syck has been removed, psych is used instead
[INFO] 2014-01-27 13:54:19 :: gidb ::  Loading configuration from config/settings.yml
QLayout: Cannot add null widget to QGridLayout/
Initializing simulator with /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3
[*] Retrieving list of applications...
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/0CDB52CF-8A1F-40A2-8FD6-D07326CB2B19/Web.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/203588C5-CCFB-42C7-A1F5-E4FE651C4AB1/App.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/26716D6E-86FA-4065-827C-96B366858E48/DDActionsService.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/36D55FD6-CE38-4856-B0D8-FF4FE2759A09/WebContentAnalysisUI.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/7565925A-F977-4FE7-8116-6150D8E418CA/MobileSafari.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/A5EDD632-FFAD-4BF1-91CB-9F3166830FA0/WebViewService.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[INFO] 2014-01-27 13:54:28 :: gidb ::  Info.plist found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/BC878358-3B2C-435B-88F9-8DFB8F0E3F89/StoreKitUIService.app/Info.plist
[INFO] 2014-01-27 13:54:28 :: gidb ::  Parsing plist file..
[DEBUG] 2014-01-27 13:54:30 :: gidb ::  Appending extension to Icon-72Dev
[DEBUG] 2014-01-27 13:54:30 :: gidb ::  Now: Icon-72Dev.png
[INFO] 2014-01-27 13:54:30 :: gidb ::  Icon found at /Users/nmonkee/Library/Application Support/iPhone Simulator/7.0.3/Applications/203588C5-CCFB-42C7-A1F5-E4FE651C4AB1/App.app/Icon-72Dev.png
2014-01-27 13:54:30.768 ruby[35575:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
/Users/nmonkee/tools/ios/idb/gui/app_details_group_box.rb:83:in `block in initialize': undefined method `open_installed?' for # (NoMethodError)
    from /Library/Ruby/Gems/2.0.0/gems/qtbindings-4.8.3.0/lib/Qt/qtruby4.rb:2427:in `call'
    from /Library/Ruby/Gems/2.0.0/gems/qtbindings-4.8.3.0/lib/Qt/qtruby4.rb:2427:in `invoke'
    from /Library/Ruby/Gems/2.0.0/gems/qtbindings-4.8.3.0/lib/Qt/qtruby4.rb:469:in `qt_metacall'
    from /Library/Ruby/Gems/2.0.0/gems/qtbindings-4.8.3.0/lib/Qt/qtruby4.rb:469:in `method_missing'
    from /Library/Ruby/Gems/2.0.0/gems/qtbindings-4.8.3.0/lib/Qt/qtruby4.rb:469:in `exec'
    from gidb.rb:244:in `
'
dmayer commented 10 years ago

Thanks, that reminds me that I did not recently test any functionality using the simulator. This particular thing should be easy to fix, but you are likely to run into more bugs. I hope to have some time to fix those soon.

Daniel

dmayer commented 10 years ago

Okay, so this should launch the simulator. For iOS 6.1 and earlier it wall also launch the app inside. However, the -SimulateApplication for the iOS simulator seems to have been removed for iOS 7 (Xcode 5). I haven't figure out a straight-forward way to launch apps for the new version. There seems to be some private APIs one can use but those require Objective-C code to be compiled.

Please re-open if this doesn't fix it for you.

PS: I also fixed plist, sqlite, and Cache.db functions for the simulator.