dmayer / idb

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

Cycript terminated #17

Closed nmonkee closed 10 years ago

nmonkee commented 10 years ago

When connected to an app on a Jailbroken iOS7 iDevice, any attempt to use cycript results in:


[INFO] 2014-01-27 15:08:15 :: gidb ::  cycript terminated
dmayer commented 10 years ago

The cycript integration is very alpha right now. Your problem is likely that cycript is not installed on the device and you should be able to get it from Cydia.

Even if you have it installed, the console basically works, but the formatting is terrible The reason is that cycript sends shell escape sequences for coloring etc and one would need to remove / parse them. I am not sure that the benefit of having cycript in idb is enough to warrant the dev investment though ;-) The best solution would be to have a full Qt-based terminal emulator in that tab but I found none that didn't require manual compilation in order to install.

Let me know if you think that cycript would be useful to have in there.

Thanks, Daniel

nmonkee commented 10 years ago

So you are injecting into SpringBoard and not the application actively being reviewed?

 
2952 ttys002    0:00.02 sh -c export TERM=vt220; stty -echo -icanon; cycript -p SpringBoard
2954 ttys002    0:00.03 cycript -p SpringBoard
From shell:


# cycript -p SpringBoard

cy# [i for (i in *UIApp)]
["isa","_delegate","_touchMap","_exclusiveTouchWindows","_event","_touchesEvent","_motionEvent","_remoteControlEvent","_remoteControlEventObservers","_topLevelNibObjects","_networkResourcesCurrentlyLoadingCount","_hideNetworkActivityIndicatorTimer","_editAlertView","_statusBar","_statusBarRequestedStyle","_statusBarWindow","_observerBlocks","_postCommitActions","_mainStoryboardName","_tintViewDurationStack","_statusBarTintColorLockingControllers","_statusBarTintColorLockingCount","_preferredContentSizeCategory","_applicationFlags","_defaultTopNavBarTintColor","_undoButtonIndex","_redoButtonIndex","_moveEvent","_physicalButtonsEvent","_wheelEvent","_physicalButtonMap","_physicalKeyboardEvent","_backgroundHitTestWindow","_eventQueue","_childEventMap","_disableTouchCoalescingCount","_currentTimestampWhenFirstTouchCameDown","_currentLocationWhereFirstTouchCameDown","_preferredContentSizeCategoryName","_lastTimestampWhenFirstTouchCameDown","_lastTimestampWhenAllTouchesLifted","_lastLocationWhereFirstTouchCameDown","_lastLocationWhereAllTouchesLifted","_uiController","_menuButtonTimer","_lockButtonTimer","_headsetButtonDownTime","_headsetDownEvent","_headsetClickCount","_ringerSwitchState","_headsetButtonClickCount","_menuButtonClickCount","_screenWasDimOnMenuDown","_waitingForMenuDoubleTapAfterActingOnSingleTap","_screenshotWasTaken","_dontLockOnNextLockUp","_poweringDown","_headsetDownDelayedActionPerformed","_isSeekingInMedia","_statusBarOrientationOverride","_mediaSeekDirection","_springBoardRequestsAccelerometerEvents","_activeInterfaceOrientation","_activeInterfaceOrientationObservers","_activeInterfaceOrientationOverrideStack","_wantsOrientationEvents","_notifyDontAnimateREOToken","_notifyDontAllowMediaHUDToken","_expectsFaceContact","_expectsFaceContactInLandscape","_proximityEventsEnabled","_smartCoverClosed","_keybagRefetchTransactionIsActive","_menuButtonDown","_restrictionDisabledApplications","_nowPlayingApp","_menuButtonInterceptApp","_menuButtonInterceptAppEnabledForever","_disableNowPlayingHUDAssertionBundleIds","_appsRegisteredForVolumeEvents","_decimalFormatter","_percentFormatter","_midnightTimer","_midnightFireDate","_backgroundMIGServerThread","_iconGenerationMIGServerThread","_memoryPressureSource","_memoryPressureStatus","_blocksAwaitingAvailableMemory","_bulletinBoardConnection","_bulletinBoardQueue","_cardItemsController","_hasCameraCapability","_hasCameraRestriction","_shouldDelaySleepForHeadsetClick","_volumePressBandits","_menuButtonHoldStartTime","_menuButtonHoldAbsoluteStartTime","_menuButtonUpBlocks","_didPlayLockSound","_disableActiveOrientationChangeAssertions","_typingActive"]
App just hangs, console shows:

[i for (i in *UIApp)]
thred
emitting
done
loop
I'd just remove the functionality if you don't intend to actively develop it into a useable feature set.