hardsploit_gui 2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +22 -0
  3. data/Rakefile +1 -0
  4. data/bin/hardsploit_gui +3 -0
  5. data/lib/Firmware/FPGA/I2C/I2C_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_I2C_INTERACT.rpd +0 -0
  6. data/lib/Firmware/FPGA/PARALLEL/NO_MUX_PARALLEL_MEMORY/HARDSPLOIT_FIRMWARE_FPGA_NO_MUX_PARALLEL_MEMORY.rpd +0 -0
  7. data/lib/Firmware/FPGA/SPI/SPI_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_SPI_INTERACT.rpd +0 -0
  8. data/lib/Firmware/FPGA/SWD/SWD_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_SWD_INTERACT.rpd +0 -0
  9. data/lib/Firmware/FPGA/TEST/TEST_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_TEST_INTERACT.rpd +0 -0
  10. data/lib/Firmware/FPGA/VersionFPGA.rb +5 -0
  11. data/lib/Firmware/UC/HARDSPLOIT_FIRMWARE_UC.bin +0 -0
  12. data/lib/Firmware/UC/VersionUC.rb +12 -0
  13. data/lib/HardsploitAPI/HardsploitAPI.rb +134 -0
  14. data/lib/HardsploitAPI/HardsploitAPI_CONSTANT.rb +145 -0
  15. data/lib/HardsploitAPI/HardsploitAPI_FIRMWARE.rb +311 -0
  16. data/lib/HardsploitAPI/HardsploitAPI_I2C.rb +218 -0
  17. data/lib/HardsploitAPI/HardsploitAPI_NO_MUX_PARALLELE_MEMORY.rb +229 -0
  18. data/lib/HardsploitAPI/HardsploitAPI_SPI.rb +179 -0
  19. data/lib/HardsploitAPI/HardsploitAPI_TEST_INTERACT.rb +98 -0
  20. data/lib/HardsploitAPI/HardsploitAPI_USB_COMMUNICATION.rb +149 -0
  21. data/lib/HardsploitAPI/LICENSE.txt +674 -0
  22. data/lib/HardsploitAPI/README.md +22 -0
  23. data/lib/HardsploitAPI/SWD/HardsploitAPI_SWD.rb +249 -0
  24. data/lib/HardsploitAPI/SWD/HardsploitAPI_SWD_DEBUG.rb +102 -0
  25. data/lib/HardsploitAPI/SWD/HardsploitAPI_SWD_MEM_AP.rb +78 -0
  26. data/lib/HardsploitAPI/SWD/HardsploitAPI_SWD_STM32.rb +104 -0
  27. data/lib/HardsploitAPI/TRADEMARK +3 -0
  28. data/lib/LICENSE.txt +674 -0
  29. data/lib/README.md +22 -0
  30. data/lib/TRADEMARK +3 -0
  31. data/lib/class/Chip_editor.rb +448 -0
  32. data/lib/class/Command_editor.rb +268 -0
  33. data/lib/class/Command_table.rb +239 -0
  34. data/lib/class/Console.rb +28 -0
  35. data/lib/class/Export_manager.rb +124 -0
  36. data/lib/class/Firmware.rb +29 -0
  37. data/lib/class/Generic_commands.rb +275 -0
  38. data/lib/class/HardsploitGUI.rb +462 -0
  39. data/lib/class/I2C/I2c_command.rb +48 -0
  40. data/lib/class/I2C/I2c_export.rb +121 -0
  41. data/lib/class/I2C/I2c_import.rb +92 -0
  42. data/lib/class/I2C/I2c_settings.rb +117 -0
  43. data/lib/class/PARALLEL/Parallel_export.rb +146 -0
  44. data/lib/class/PARALLEL/Parallel_import.rb +88 -0
  45. data/lib/class/PARALLEL/Parallel_settings.rb +102 -0
  46. data/lib/class/SPI/Spi_export.rb +141 -0
  47. data/lib/class/SPI/Spi_import.rb +112 -0
  48. data/lib/class/SPI/Spi_settings.rb +90 -0
  49. data/lib/class/Wire_helper.rb +246 -0
  50. data/lib/db/associations.rb +125 -0
  51. data/lib/db/hs.db +0 -0
  52. data/lib/gui/gui_chip_editor.rb +355 -0
  53. data/lib/gui/gui_chip_management.rb +372 -0
  54. data/lib/gui/gui_command_editor.rb +218 -0
  55. data/lib/gui/gui_export_manager.rb +93 -0
  56. data/lib/gui/gui_generic_commands.rb +164 -0
  57. data/lib/gui/gui_generic_export.rb +148 -0
  58. data/lib/gui/gui_generic_import.rb +126 -0
  59. data/lib/gui/gui_i2c_command.rb +115 -0
  60. data/lib/gui/gui_i2c_settings.rb +201 -0
  61. data/lib/gui/gui_parallel_settings.rb +194 -0
  62. data/lib/gui/gui_spi_import.rb +126 -0
  63. data/lib/gui/gui_spi_settings.rb +187 -0
  64. data/lib/gui/gui_wire_helper.rb +99 -0
  65. data/lib/gui_designer/gui_chip_editor.ui +553 -0
  66. data/lib/gui_designer/gui_chip_management.ui +842 -0
  67. data/lib/gui_designer/gui_command_editor.ui +347 -0
  68. data/lib/gui_designer/gui_export_manager.ui +115 -0
  69. data/lib/gui_designer/gui_generic_commands.ui +258 -0
  70. data/lib/gui_designer/gui_generic_export.ui +179 -0
  71. data/lib/gui_designer/gui_generic_import.ui +142 -0
  72. data/lib/gui_designer/gui_i2c_command.ui +145 -0
  73. data/lib/gui_designer/gui_i2c_settings.ui +261 -0
  74. data/lib/gui_designer/gui_parallel_settings.ui +244 -0
  75. data/lib/gui_designer/gui_processing.ui +81 -0
  76. data/lib/gui_designer/gui_spi_settings.ui +321 -0
  77. data/lib/gui_designer/gui_wire_helper.ui +117 -0
  78. data/lib/hardsploit.rb +122 -0
  79. data/lib/images/search.png +0 -0
  80. data/lib/logs/error.log +0 -0
  81. metadata +236 -0
@@ -0,0 +1,258 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ui version="4.0">
3
+ <class>Generic_commands</class>
4
+ <widget class="QWidget" name="Generic_commands">
5
+ <property name="geometry">
6
+ <rect>
7
+ <x>0</x>
8
+ <y>0</y>
9
+ <width>532</width>
10
+ <height>384</height>
11
+ </rect>
12
+ </property>
13
+ <property name="minimumSize">
14
+ <size>
15
+ <width>532</width>
16
+ <height>384</height>
17
+ </size>
18
+ </property>
19
+ <property name="windowTitle">
20
+ <string>Hardsploit - Commands</string>
21
+ </property>
22
+ <layout class="QGridLayout" name="gridLayout">
23
+ <item row="0" column="0">
24
+ <layout class="QVBoxLayout" name="vl">
25
+ <item>
26
+ <layout class="QHBoxLayout" name="hl">
27
+ <item>
28
+ <widget class="QLabel" name="lbl_search">
29
+ <property name="text">
30
+ <string>Search</string>
31
+ </property>
32
+ </widget>
33
+ </item>
34
+ <item>
35
+ <widget class="QLineEdit" name="lie_search">
36
+ <property name="inputMask">
37
+ <string/>
38
+ </property>
39
+ <property name="maxLength">
40
+ <number>10</number>
41
+ </property>
42
+ </widget>
43
+ </item>
44
+ <item>
45
+ <spacer name="hs">
46
+ <property name="orientation">
47
+ <enum>Qt::Horizontal</enum>
48
+ </property>
49
+ <property name="sizeHint" stdset="0">
50
+ <size>
51
+ <width>40</width>
52
+ <height>20</height>
53
+ </size>
54
+ </property>
55
+ </spacer>
56
+ </item>
57
+ <item>
58
+ <widget class="QLabel" name="lbl_current_chip">
59
+ <property name="text">
60
+ <string>Current chip:</string>
61
+ </property>
62
+ </widget>
63
+ </item>
64
+ <item>
65
+ <widget class="QLabel" name="lbl_chip">
66
+ <property name="text">
67
+ <string>[CHIP]</string>
68
+ </property>
69
+ </widget>
70
+ </item>
71
+ </layout>
72
+ </item>
73
+ <item>
74
+ <layout class="QVBoxLayout" name="vl2">
75
+ <item>
76
+ <widget class="QTableWidget" name="tbl_cmd">
77
+ <property name="font">
78
+ <font>
79
+ <family>Arial</family>
80
+ </font>
81
+ </property>
82
+ <property name="sortingEnabled">
83
+ <bool>true</bool>
84
+ </property>
85
+ <attribute name="horizontalHeaderVisible">
86
+ <bool>true</bool>
87
+ </attribute>
88
+ <attribute name="horizontalHeaderCascadingSectionResizes">
89
+ <bool>false</bool>
90
+ </attribute>
91
+ <attribute name="horizontalHeaderDefaultSectionSize">
92
+ <number>110</number>
93
+ </attribute>
94
+ <attribute name="horizontalHeaderMinimumSectionSize">
95
+ <number>36</number>
96
+ </attribute>
97
+ <attribute name="horizontalHeaderShowSortIndicator" stdset="0">
98
+ <bool>true</bool>
99
+ </attribute>
100
+ <attribute name="horizontalHeaderStretchLastSection">
101
+ <bool>true</bool>
102
+ </attribute>
103
+ <attribute name="verticalHeaderCascadingSectionResizes">
104
+ <bool>false</bool>
105
+ </attribute>
106
+ <attribute name="verticalHeaderDefaultSectionSize">
107
+ <number>30</number>
108
+ </attribute>
109
+ <attribute name="verticalHeaderStretchLastSection">
110
+ <bool>true</bool>
111
+ </attribute>
112
+ <column>
113
+ <property name="text">
114
+ <string>Name</string>
115
+ </property>
116
+ </column>
117
+ <column>
118
+ <property name="text">
119
+ <string>Description</string>
120
+ </property>
121
+ </column>
122
+ </widget>
123
+ </item>
124
+ <item>
125
+ <layout class="QHBoxLayout" name="hl3">
126
+ <item>
127
+ <widget class="QCheckBox" name="check_result">
128
+ <property name="text">
129
+ <string>Show command result</string>
130
+ </property>
131
+ <property name="checked">
132
+ <bool>true</bool>
133
+ </property>
134
+ </widget>
135
+ </item>
136
+ <item>
137
+ <spacer name="hs2">
138
+ <property name="orientation">
139
+ <enum>Qt::Horizontal</enum>
140
+ </property>
141
+ <property name="sizeHint" stdset="0">
142
+ <size>
143
+ <width>40</width>
144
+ <height>20</height>
145
+ </size>
146
+ </property>
147
+ </spacer>
148
+ </item>
149
+ <item>
150
+ <widget class="QPushButton" name="btn_new_cmd">
151
+ <property name="text">
152
+ <string>New Command</string>
153
+ </property>
154
+ </widget>
155
+ </item>
156
+ <item>
157
+ <widget class="QComboBox" name="cbx_action">
158
+ <item>
159
+ <property name="text">
160
+ <string>Action...</string>
161
+ </property>
162
+ </item>
163
+ <item>
164
+ <property name="text">
165
+ <string>Execute</string>
166
+ </property>
167
+ </item>
168
+ <item>
169
+ <property name="text">
170
+ <string>Edit</string>
171
+ </property>
172
+ </item>
173
+ <item>
174
+ <property name="text">
175
+ <string>Template</string>
176
+ </property>
177
+ </item>
178
+ <item>
179
+ <property name="text">
180
+ <string>Delete</string>
181
+ </property>
182
+ </item>
183
+ </widget>
184
+ </item>
185
+ <item>
186
+ <widget class="QPushButton" name="btn_next">
187
+ <property name="text">
188
+ <string>Next</string>
189
+ </property>
190
+ </widget>
191
+ </item>
192
+ </layout>
193
+ </item>
194
+ </layout>
195
+ </item>
196
+ </layout>
197
+ </item>
198
+ </layout>
199
+ </widget>
200
+ <resources/>
201
+ <connections>
202
+ <connection>
203
+ <sender>lie_search</sender>
204
+ <signal>textChanged(QString)</signal>
205
+ <receiver>Generic_commands</receiver>
206
+ <slot>feed_cmd_array()</slot>
207
+ <hints>
208
+ <hint type="sourcelabel">
209
+ <x>221</x>
210
+ <y>20</y>
211
+ </hint>
212
+ <hint type="destinationlabel">
213
+ <x>234</x>
214
+ <y>5</y>
215
+ </hint>
216
+ </hints>
217
+ </connection>
218
+ <connection>
219
+ <sender>btn_new_cmd</sender>
220
+ <signal>clicked()</signal>
221
+ <receiver>Generic_commands</receiver>
222
+ <slot>open_cmd_form()</slot>
223
+ <hints>
224
+ <hint type="sourcelabel">
225
+ <x>362</x>
226
+ <y>371</y>
227
+ </hint>
228
+ <hint type="destinationlabel">
229
+ <x>526</x>
230
+ <y>45</y>
231
+ </hint>
232
+ </hints>
233
+ </connection>
234
+ <connection>
235
+ <sender>btn_next</sender>
236
+ <signal>clicked()</signal>
237
+ <receiver>Generic_commands</receiver>
238
+ <slot>exec_action()</slot>
239
+ <hints>
240
+ <hint type="sourcelabel">
241
+ <x>519</x>
242
+ <y>371</y>
243
+ </hint>
244
+ <hint type="destinationlabel">
245
+ <x>524</x>
246
+ <y>81</y>
247
+ </hint>
248
+ </hints>
249
+ </connection>
250
+ </connections>
251
+ <slots>
252
+ <slot>feed_cmd_array()</slot>
253
+ <slot>show_result(bool)</slot>
254
+ <slot>open_cmd_form()</slot>
255
+ <slot>exec_action()</slot>
256
+ <slot>save_param()</slot>
257
+ </slots>
258
+ </ui>
@@ -0,0 +1,179 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ui version="4.0">
3
+ <class>Generic_export</class>
4
+ <widget class="QWidget" name="Generic_export">
5
+ <property name="geometry">
6
+ <rect>
7
+ <x>0</x>
8
+ <y>0</y>
9
+ <width>254</width>
10
+ <height>168</height>
11
+ </rect>
12
+ </property>
13
+ <property name="windowTitle">
14
+ <string>Hardsploit - Export (Dump)</string>
15
+ </property>
16
+ <layout class="QGridLayout" name="gridLayout">
17
+ <item row="0" column="0">
18
+ <layout class="QVBoxLayout" name="vl">
19
+ <item>
20
+ <layout class="QHBoxLayout" name="hl2">
21
+ <item>
22
+ <widget class="QLabel" name="lbl_chip">
23
+ <property name="text">
24
+ <string>[CHIP]</string>
25
+ </property>
26
+ </widget>
27
+ </item>
28
+ <item>
29
+ <widget class="QLabel" name="lbl_export">
30
+ <property name="text">
31
+ <string>Export (Dump)</string>
32
+ </property>
33
+ </widget>
34
+ </item>
35
+ <item>
36
+ <spacer name="hs">
37
+ <property name="orientation">
38
+ <enum>Qt::Horizontal</enum>
39
+ </property>
40
+ <property name="sizeHint" stdset="0">
41
+ <size>
42
+ <width>40</width>
43
+ <height>20</height>
44
+ </size>
45
+ </property>
46
+ </spacer>
47
+ </item>
48
+ </layout>
49
+ </item>
50
+ <item>
51
+ <layout class="QFormLayout" name="fl">
52
+ <item row="2" column="0">
53
+ <widget class="QLabel" name="lbl_start">
54
+ <property name="text">
55
+ <string>Start address:</string>
56
+ </property>
57
+ </widget>
58
+ </item>
59
+ <item row="2" column="1">
60
+ <widget class="QLineEdit" name="lie_start">
61
+ <property name="maxLength">
62
+ <number>20</number>
63
+ </property>
64
+ </widget>
65
+ </item>
66
+ <item row="3" column="0">
67
+ <widget class="QLabel" name="lbl_stop">
68
+ <property name="text">
69
+ <string>Stop address:</string>
70
+ </property>
71
+ </widget>
72
+ </item>
73
+ <item row="3" column="1">
74
+ <widget class="QLineEdit" name="lie_stop">
75
+ <property name="maxLength">
76
+ <number>20</number>
77
+ </property>
78
+ </widget>
79
+ </item>
80
+ <item row="4" column="0">
81
+ <widget class="QLabel" name="lbl_file">
82
+ <property name="text">
83
+ <string>File:</string>
84
+ </property>
85
+ </widget>
86
+ </item>
87
+ <item row="4" column="1">
88
+ <widget class="QPushButton" name="btn_file">
89
+ <property name="text">
90
+ <string>File...</string>
91
+ </property>
92
+ </widget>
93
+ </item>
94
+ </layout>
95
+ </item>
96
+ <item>
97
+ <layout class="QHBoxLayout" name="hl">
98
+ <item>
99
+ <widget class="QPushButton" name="btn_export">
100
+ <property name="enabled">
101
+ <bool>false</bool>
102
+ </property>
103
+ <property name="text">
104
+ <string>Export</string>
105
+ </property>
106
+ </widget>
107
+ </item>
108
+ <item>
109
+ <widget class="QPushButton" name="btn_full_export">
110
+ <property name="enabled">
111
+ <bool>false</bool>
112
+ </property>
113
+ <property name="text">
114
+ <string>Full export</string>
115
+ </property>
116
+ </widget>
117
+ </item>
118
+ </layout>
119
+ </item>
120
+ </layout>
121
+ </item>
122
+ </layout>
123
+ </widget>
124
+ <resources/>
125
+ <connections>
126
+ <connection>
127
+ <sender>btn_export</sender>
128
+ <signal>clicked()</signal>
129
+ <receiver>Generic_export</receiver>
130
+ <slot>export()</slot>
131
+ <hints>
132
+ <hint type="sourcelabel">
133
+ <x>100</x>
134
+ <y>156</y>
135
+ </hint>
136
+ <hint type="destinationlabel">
137
+ <x>122</x>
138
+ <y>4</y>
139
+ </hint>
140
+ </hints>
141
+ </connection>
142
+ <connection>
143
+ <sender>btn_full_export</sender>
144
+ <signal>clicked()</signal>
145
+ <receiver>Generic_export</receiver>
146
+ <slot>export()</slot>
147
+ <hints>
148
+ <hint type="sourcelabel">
149
+ <x>242</x>
150
+ <y>156</y>
151
+ </hint>
152
+ <hint type="destinationlabel">
153
+ <x>197</x>
154
+ <y>2</y>
155
+ </hint>
156
+ </hints>
157
+ </connection>
158
+ <connection>
159
+ <sender>btn_file</sender>
160
+ <signal>clicked()</signal>
161
+ <receiver>Generic_export</receiver>
162
+ <slot>select_export_file()</slot>
163
+ <hints>
164
+ <hint type="sourcelabel">
165
+ <x>117</x>
166
+ <y>109</y>
167
+ </hint>
168
+ <hint type="destinationlabel">
169
+ <x>85</x>
170
+ <y>-4</y>
171
+ </hint>
172
+ </hints>
173
+ </connection>
174
+ </connections>
175
+ <slots>
176
+ <slot>export()</slot>
177
+ <slot>select_export_file()</slot>
178
+ </slots>
179
+ </ui>
@@ -0,0 +1,142 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ui version="4.0">
3
+ <class>Generic_import</class>
4
+ <widget class="QWidget" name="Generic_import">
5
+ <property name="geometry">
6
+ <rect>
7
+ <x>0</x>
8
+ <y>0</y>
9
+ <width>265</width>
10
+ <height>137</height>
11
+ </rect>
12
+ </property>
13
+ <property name="windowTitle">
14
+ <string>Hardsploit - Import</string>
15
+ </property>
16
+ <layout class="QGridLayout" name="gridLayout">
17
+ <item row="0" column="0">
18
+ <layout class="QVBoxLayout" name="vl">
19
+ <item>
20
+ <layout class="QHBoxLayout" name="hl2">
21
+ <item>
22
+ <widget class="QLabel" name="lbl_chip">
23
+ <property name="text">
24
+ <string>[CHIP]</string>
25
+ </property>
26
+ </widget>
27
+ </item>
28
+ <item>
29
+ <widget class="QLabel" name="lbl_export">
30
+ <property name="text">
31
+ <string>Import</string>
32
+ </property>
33
+ </widget>
34
+ </item>
35
+ <item>
36
+ <spacer name="hs">
37
+ <property name="orientation">
38
+ <enum>Qt::Horizontal</enum>
39
+ </property>
40
+ <property name="sizeHint" stdset="0">
41
+ <size>
42
+ <width>40</width>
43
+ <height>20</height>
44
+ </size>
45
+ </property>
46
+ </spacer>
47
+ </item>
48
+ </layout>
49
+ </item>
50
+ <item>
51
+ <layout class="QFormLayout" name="fl">
52
+ <item row="1" column="0">
53
+ <widget class="QLabel" name="lbl_start">
54
+ <property name="text">
55
+ <string>Start address:</string>
56
+ </property>
57
+ </widget>
58
+ </item>
59
+ <item row="1" column="1">
60
+ <widget class="QLineEdit" name="lie_start">
61
+ <property name="text">
62
+ <string>0</string>
63
+ </property>
64
+ <property name="maxLength">
65
+ <number>20</number>
66
+ </property>
67
+ </widget>
68
+ </item>
69
+ <item row="2" column="1">
70
+ <widget class="QPushButton" name="btn_file">
71
+ <property name="text">
72
+ <string>File...</string>
73
+ </property>
74
+ </widget>
75
+ </item>
76
+ <item row="2" column="0">
77
+ <widget class="QLabel" name="lbl_file">
78
+ <property name="text">
79
+ <string>File:</string>
80
+ </property>
81
+ </widget>
82
+ </item>
83
+ </layout>
84
+ </item>
85
+ <item>
86
+ <layout class="QHBoxLayout" name="hl">
87
+ <item>
88
+ <widget class="QPushButton" name="btn_import">
89
+ <property name="enabled">
90
+ <bool>false</bool>
91
+ </property>
92
+ <property name="text">
93
+ <string>Import</string>
94
+ </property>
95
+ </widget>
96
+ </item>
97
+ </layout>
98
+ </item>
99
+ </layout>
100
+ </item>
101
+ </layout>
102
+ </widget>
103
+ <resources/>
104
+ <connections>
105
+ <connection>
106
+ <sender>btn_import</sender>
107
+ <signal>clicked()</signal>
108
+ <receiver>Generic_import</receiver>
109
+ <slot>import()</slot>
110
+ <hints>
111
+ <hint type="sourcelabel">
112
+ <x>153</x>
113
+ <y>119</y>
114
+ </hint>
115
+ <hint type="destinationlabel">
116
+ <x>261</x>
117
+ <y>111</y>
118
+ </hint>
119
+ </hints>
120
+ </connection>
121
+ <connection>
122
+ <sender>btn_file</sender>
123
+ <signal>clicked()</signal>
124
+ <receiver>Generic_import</receiver>
125
+ <slot>select_import_file()</slot>
126
+ <hints>
127
+ <hint type="sourcelabel">
128
+ <x>248</x>
129
+ <y>80</y>
130
+ </hint>
131
+ <hint type="destinationlabel">
132
+ <x>264</x>
133
+ <y>80</y>
134
+ </hint>
135
+ </hints>
136
+ </connection>
137
+ </connections>
138
+ <slots>
139
+ <slot>import()</slot>
140
+ <slot>select_import_file()</slot>
141
+ </slots>
142
+ </ui>