idb 2.6.2 → 2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +2 -2
- data/lib/gui/app_list_dialog.rb +16 -3
- data/lib/gui/fs_viewer_tab_widget.rb +83 -19
- data/lib/gui/screenshot_wizard.rb +1 -1
- data/lib/idb/version.rb +1 -1
- metadata +3 -5
- data/.DS_Store +0 -0
- data/lib/gui/browse_filesystem_widget.rb +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8580e22bec53a3ed6114eb1e44f0b868aca9951f
|
4
|
+
data.tar.gz: 4f5aa9d72dffada1a8efa02bbb9c1c397b832db4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f47ef98dd1451d7709b2f9423de0498c6ae0a38345c3a52e58559a66225ad6ad3444645de49b78f7ac7492c37ca8181c4c3d5911d276e54ebc76040c9c24773e
|
7
|
+
data.tar.gz: be4dbc1e63be41acf3b6de563e4d8db62017456d9023d0dea6ed3445f6b0d115138ff0d6a955fc554771888b2f1c731cdb5c90154cfac6e975c9a5e83795108c
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
idb (2.
|
4
|
+
idb (2.7)
|
5
5
|
awesome_print
|
6
6
|
coderay
|
7
7
|
ffi
|
@@ -20,7 +20,7 @@ PATH
|
|
20
20
|
GEM
|
21
21
|
remote: https://rubygems.org/
|
22
22
|
specs:
|
23
|
-
addressable (2.3.
|
23
|
+
addressable (2.3.8)
|
24
24
|
awesome_print (1.6.1)
|
25
25
|
coderay (1.1.0)
|
26
26
|
ffi (1.9.6)
|
data/lib/gui/app_list_dialog.rb
CHANGED
@@ -17,7 +17,6 @@ module Idb
|
|
17
17
|
}
|
18
18
|
@layout.addWidget @app_list, 0, 0, 1, 2
|
19
19
|
|
20
|
-
refresh_app_list
|
21
20
|
|
22
21
|
|
23
22
|
@save_button = Qt::PushButton.new "Select"
|
@@ -31,6 +30,10 @@ module Idb
|
|
31
30
|
reject()
|
32
31
|
}
|
33
32
|
|
33
|
+
unless refresh_app_list
|
34
|
+
@save_button.setEnabled(false)
|
35
|
+
end
|
36
|
+
|
34
37
|
@layout.addWidget @save_button, 1, 1
|
35
38
|
@layout.addWidget @cancel_button, 1, 0
|
36
39
|
|
@@ -51,7 +54,17 @@ module Idb
|
|
51
54
|
$device.ops.execute "/bin/su mobile -c /usr/bin/uicache"
|
52
55
|
box.hide
|
53
56
|
end
|
54
|
-
|
57
|
+
|
58
|
+
begin
|
59
|
+
app_uuids = $device.get_app_uuids
|
60
|
+
rescue Exception => e
|
61
|
+
error = Qt::MessageBox.new
|
62
|
+
error.setInformativeText("Unable to get list of applications. Ensure that you have at least one non-system app installed.")
|
63
|
+
error.setIcon(Qt::MessageBox::Critical)
|
64
|
+
error.exec
|
65
|
+
return false
|
66
|
+
end
|
67
|
+
|
55
68
|
progress = Qt::ProgressDialog.new "Reading App list...", nil, 1, app_uuids.size, self
|
56
69
|
progress.setAutoClose true
|
57
70
|
progress.setWindowModality(Qt::WindowModal);
|
@@ -74,4 +87,4 @@ module Idb
|
|
74
87
|
|
75
88
|
|
76
89
|
end
|
77
|
-
end
|
90
|
+
end
|
@@ -1,19 +1,56 @@
|
|
1
1
|
require_relative '../lib/rsync_git_manager'
|
2
2
|
module Idb
|
3
|
-
class FsViewerTabWidget < Qt::TabWidget
|
4
|
-
|
5
|
-
attr_accessor :start
|
6
3
|
|
4
|
+
class FSViewerControlGroupBox < Qt::GroupBox
|
7
5
|
def initialize *args
|
6
|
+
@layout = Qt::GridLayout.new
|
8
7
|
super *args
|
8
|
+
setLayout @layout
|
9
9
|
|
10
|
-
|
10
|
+
setTitle "Rsync app folder locally and keep git revisions"
|
11
|
+
|
12
|
+
|
13
|
+
@sync_path_label = Qt::Label.new "<b>Local Sync Path:</b>"
|
14
|
+
@layout.addWidget @sync_path_label, 0,0, 1,3
|
15
|
+
|
16
|
+
@sync_path_change = Qt::PushButton.new "Change Folder"
|
17
|
+
@sync_path_change.connect(SIGNAL :released) {
|
18
|
+
file_dialog = Qt::FileDialog.new
|
19
|
+
file_dialog.setFileMode(Qt::FileDialog::Directory)
|
20
|
+
file_dialog.setAcceptMode(Qt::FileDialog::AcceptOpen)
|
21
|
+
file_dialog.connect(SIGNAL('fileSelected(QString)')) { |x|
|
22
|
+
@local_path = x
|
23
|
+
dir_changed
|
24
|
+
}
|
25
|
+
file_dialog.exec
|
26
|
+
}
|
27
|
+
|
28
|
+
@layout.addWidget @sync_path_change, 1,1
|
29
|
+
|
30
|
+
@open_folder = Qt::PushButton.new "Open Folder"
|
31
|
+
@layout.addWidget @open_folder, 1,0
|
32
|
+
|
33
|
+
@open_folder.connect(SIGNAL :released) {
|
34
|
+
Launchy.open @local_path
|
35
|
+
|
36
|
+
}
|
37
|
+
|
38
|
+
|
39
|
+
@reset_folder = Qt::PushButton.new "Use Default Folder"
|
40
|
+
@layout.addWidget @reset_folder, 1,2
|
41
|
+
|
42
|
+
@reset_folder.connect(SIGNAL :released) {
|
43
|
+
update_start
|
44
|
+
}
|
45
|
+
|
46
|
+
line = Qt::Frame.new
|
47
|
+
line.setFrameShape Qt::Frame::VLine
|
48
|
+
line.setFrameShadow Qt::Frame::Sunken
|
49
|
+
@layout.addWidget line, 0,3,2,1
|
11
50
|
|
12
|
-
@layout = Qt::GridLayout.new
|
13
|
-
setLayout @layout
|
14
51
|
|
15
52
|
@rsync = Qt::PushButton.new "Rsync + Git"
|
16
|
-
@layout.addWidget @rsync, 0,
|
53
|
+
@layout.addWidget @rsync, 0,4
|
17
54
|
@rsync.connect(SIGNAL :released) {
|
18
55
|
@manager.start_new_revision
|
19
56
|
if $device.ios_version == 8
|
@@ -26,22 +63,50 @@ module Idb
|
|
26
63
|
|
27
64
|
}
|
28
65
|
|
29
|
-
@open_folder = Qt::PushButton.new "Open Folder"
|
30
|
-
@layout.addWidget @open_folder, 0,1
|
31
|
-
|
32
|
-
@open_folder.connect(SIGNAL :released) {
|
33
|
-
Launchy.open @local_path
|
34
|
-
|
35
|
-
}
|
36
66
|
|
37
67
|
@open_gitk = Qt::PushButton.new "Open gitk"
|
38
|
-
@layout.addWidget @open_gitk,
|
68
|
+
@layout.addWidget @open_gitk, 1,4
|
39
69
|
|
40
70
|
@open_gitk.connect(SIGNAL :released) {
|
41
71
|
Process.spawn "(cd #{@local_path} && gitk)"
|
42
72
|
}
|
43
73
|
|
44
74
|
|
75
|
+
end
|
76
|
+
|
77
|
+
def update_start
|
78
|
+
@selected_dir = $selected_app.app_dir
|
79
|
+
@local_path = "#{$selected_app.cache_dir}/idb_mirror.git"
|
80
|
+
dir_changed
|
81
|
+
end
|
82
|
+
|
83
|
+
def dir_changed
|
84
|
+
@sync_path_label.setText "<b>Local Sync Path:</b> " + @local_path
|
85
|
+
@manager = RsyncGitManager.new @local_path
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
end
|
92
|
+
|
93
|
+
|
94
|
+
class FsViewerTabWidget < Qt::TabWidget
|
95
|
+
|
96
|
+
attr_accessor :start
|
97
|
+
|
98
|
+
def initialize *args
|
99
|
+
super *args
|
100
|
+
|
101
|
+
@icons = Qt::FileIconProvider.new
|
102
|
+
|
103
|
+
@layout = Qt::GridLayout.new
|
104
|
+
setLayout @layout
|
105
|
+
|
106
|
+
@controls = FSViewerControlGroupBox.new self
|
107
|
+
layout.addWidget @controls, 0, 0, 1, 2
|
108
|
+
|
109
|
+
|
45
110
|
|
46
111
|
@treeview = Qt::TreeWidget.new
|
47
112
|
@treeview.connect(SIGNAL('itemExpanded(QTreeWidgetItem*)')) { |dir|
|
@@ -126,7 +191,7 @@ module Idb
|
|
126
191
|
@splitter.addWidget @file_list
|
127
192
|
@splitter.setStretchFactor 1, 1.5
|
128
193
|
@splitter.setSizePolicy(Qt::SizePolicy::Expanding, Qt::SizePolicy::Expanding)
|
129
|
-
@layout.addWidget @splitter, 1, 0
|
194
|
+
@layout.addWidget @splitter, 1, 0
|
130
195
|
|
131
196
|
|
132
197
|
|
@@ -260,9 +325,8 @@ module Idb
|
|
260
325
|
def update_start
|
261
326
|
@treeview.clear
|
262
327
|
@default_protection.update
|
263
|
-
|
264
|
-
@
|
265
|
-
@manager = RsyncGitManager.new @local_path
|
328
|
+
|
329
|
+
@controls.update_start
|
266
330
|
|
267
331
|
if $device.ios_version == 8
|
268
332
|
start_ios_8
|
data/lib/idb/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: idb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: '2.7'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel A. Mayer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-03-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -243,7 +243,6 @@ executables:
|
|
243
243
|
extensions: []
|
244
244
|
extra_rdoc_files: []
|
245
245
|
files:
|
246
|
-
- ".DS_Store"
|
247
246
|
- ".gitignore"
|
248
247
|
- Gemfile
|
249
248
|
- Gemfile.lock
|
@@ -260,7 +259,6 @@ files:
|
|
260
259
|
- lib/gui/app_list_widget_item.rb
|
261
260
|
- lib/gui/app_tab_widget.rb
|
262
261
|
- lib/gui/binary_strings_widget.rb
|
263
|
-
- lib/gui/browse_filesystem_widget.rb
|
264
262
|
- lib/gui/ca_manager_dialog.rb
|
265
263
|
- lib/gui/cache_db_widget.rb
|
266
264
|
- lib/gui/certificate_item.rb
|
@@ -369,7 +367,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
369
367
|
version: '0'
|
370
368
|
requirements: []
|
371
369
|
rubyforge_project:
|
372
|
-
rubygems_version: 2.
|
370
|
+
rubygems_version: 2.4.6
|
373
371
|
signing_key:
|
374
372
|
specification_version: 4
|
375
373
|
summary: idb is a tool to simplify some common tasks for iOS pentesting and research.
|
data/.DS_Store
DELETED
Binary file
|