1 package com.jsql.view.swing.panel.preferences;
2
3 import com.jsql.view.swing.panel.PanelPreferences;
4 import com.jsql.view.swing.panel.preferences.listener.SpinnerMouseWheelListener;
5 import com.jsql.view.swing.text.JPopupTextField;
6 import com.jsql.view.swing.text.listener.DocumentListenerEditing;
7 import com.jsql.view.swing.util.MediatorHelper;
8
9 import javax.swing.*;
10 import javax.swing.event.DocumentListener;
11 import java.awt.*;
12 import java.awt.event.ActionListener;
13 import java.util.Arrays;
14 import java.util.stream.Stream;
15
16 public class PanelInjection extends JPanel {
17
18 private final JCheckBox checkboxIsNotShowingVulnReport = new JCheckBox("Disable showing vulnerability report", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isNotShowingVulnReport());
19 private final JCheckBox checkboxIsNotSearchingCharInsertion = new JCheckBox("Disable search for character insertion", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isNotSearchingCharInsertion());
20 private final JCheckBox checkboxIsNotInjectingMetadata = new JCheckBox("Disable search of database name, version and user metadata", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isNotInjectingMetadata());
21 private final JCheckBox checkboxIsParsingForm = new JCheckBox("Get HTML tags <input/> and add parameters to URL and Request", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isParsingForm());
22
23 private final JCheckBox checkboxIsCheckingAllParam = new JCheckBox("Inject every parameters (ignore user's selection)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllParam());
24 private final JCheckBox checkboxIsCheckingAllURLParam = new JCheckBox("Inject every URL parameters when URL method is selected", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllURLParam());
25 private final JCheckBox checkboxIsCheckingAllRequestParam = new JCheckBox("Inject every Request parameters when Request method is selected", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllRequestParam());
26 private final JCheckBox checkboxIsCheckingAllHeaderParam = new JCheckBox("Inject every Header parameters when Header method is selected", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllHeaderParam());
27 private final JCheckBox checkboxIsCheckingAllBase64Param = new JCheckBox("Inject Base64 parameters", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllBase64Param());
28 private final JCheckBox checkboxIsCheckingAllJSONParam = new JCheckBox("Inject every JSON parameters", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllJsonParam());
29 private final JCheckBox checkboxIsCheckingAllCookieParam = new JCheckBox("Inject every cookie parameters", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllCookieParam());
30 private final JCheckBox checkboxIsCheckingAllSOAPParam = new JCheckBox("Inject SOAP parameters in Request body", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isCheckingAllSoapParam());
31
32 private final JCheckBox checkboxIsLimitingUnionIndex = new JCheckBox("Limit Union strategy:", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isLimitingUnionIndex());
33 private final JSpinner spinnerUnionIndexCount = new JSpinner();
34 private final JCheckBox checkboxIsLimitingSleepTimeStrategy = new JCheckBox("Delay Time strategy:", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isLimitingSleepTimeStrategy());
35 private final JSpinner spinnerSleepTimeStrategyCount = new JSpinner();
36
37 private final JCheckBox checkboxIsPerfIndexDisabled = new JCheckBox("Disable calibration (smaller SQL query during Union index selection only)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isPerfIndexDisabled());
38 private final JRadioButton radioIsDefaultStrategy = new JRadioButton("Use Default mode (keep unchanged ; URL and processing unchanged)", true);
39 private final JRadioButton radioIsZipStrategy = new JRadioButton("Use Zip mode (smaller SQL queries ; reduce URL size but less efficient)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isZipStrategy());
40 private final JRadioButton radioIsDiosStrategy = new JRadioButton("Use Dios mode (less queries ; do not use with Error strategies)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isDiosStrategy());
41 private final JCheckBox checkboxIsUrlEncodingDisabled = new JCheckBox("Disable URL encoding (smaller URL)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isUrlEncodingDisabled());
42 private final JCheckBox checkboxIsUrlRandomSuffixDisabled = new JCheckBox("Disable URL random suffix (strategy Time special use case)", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().isUrlRandomSuffixDisabled());
43
44 private final JTextField textfieldDnsDomain = new JPopupTextField("e.g custom-domain.com", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().getDnsDomain()).getProxy();
45 private final JTextField textfieldDnsPort = new JPopupTextField("e.g 53", MediatorHelper.model().getMediatorUtils().getPreferencesUtil().getDnsPort()).getProxy();
46
47 public PanelInjection(PanelPreferences panelPreferences) {
48 this.checkboxIsNotInjectingMetadata.setName("checkboxIsNotInjectingMetadata");
49 this.checkboxIsNotSearchingCharInsertion.setName("checkboxIsNotSearchingCharInsertion");
50 this.checkboxIsNotShowingVulnReport.setName("checkboxIsNotShowingVulnReport");
51 this.checkboxIsParsingForm.setName("checkboxIsParsingForm");
52 this.checkboxIsCheckingAllURLParam.setName("checkboxIsCheckingAllURLParam");
53 this.checkboxIsCheckingAllRequestParam.setName("checkboxIsCheckingAllRequestParam");
54 this.checkboxIsCheckingAllHeaderParam.setName("checkboxIsCheckingAllHeaderParam");
55 this.checkboxIsCheckingAllJSONParam.setName("checkboxIsCheckingAllJSONParam");
56 this.checkboxIsCheckingAllBase64Param.setName("checkboxIsCheckingAllBase64Param");
57 this.checkboxIsCheckingAllCookieParam.setName("checkboxIsCheckingAllCookieParam");
58 this.checkboxIsCheckingAllSOAPParam.setName("checkboxIsCheckingAllSOAPParam");
59 this.checkboxIsPerfIndexDisabled.setName("checkboxIsPerfIndexDisabled");
60 this.radioIsZipStrategy.setName("radioIsZipStrategy");
61 this.radioIsDefaultStrategy.setName("radioIsDefaultStrategy");
62 this.radioIsDiosStrategy.setName("radioIsDiosStrategy");
63 this.checkboxIsUrlEncodingDisabled.setName("checkboxIsUrlEncodingDisabled");
64 this.checkboxIsUrlRandomSuffixDisabled.setName("checkboxIsUrlRandomSuffixDisabled");
65 this.checkboxIsLimitingUnionIndex.setName("checkboxIsLimitingUnionIndex");
66 this.checkboxIsLimitingSleepTimeStrategy.setName("checkboxIsLimitingSleepTimeStrategy");
67
68 this.checkboxIsPerfIndexDisabled.setToolTipText(
69 "<html>Reduce Union calibration URL, useful when host rejects large URL."
70 + "<br>Should be enabled when Zip mode is activated.</html>"
71 );
72 this.checkboxIsParsingForm.setToolTipText(
73 "<html>Create name=value params from HTML forms' extracted data.<br>"
74 + "Sometimes mandatory params are contained in forms.<br>"
75 + "It makes easy adding such params to requests.</html>"
76 );
77 this.checkboxIsNotInjectingMetadata.setToolTipText("Not injecting metadata saves time, particularly for Blind and Time strategies");
78 this.checkboxIsNotSearchingCharInsertion.setToolTipText(
79 "<html>Injection query starts usually with prefix like <b>quote</b> or <b>parenthesis</b>:<br>" +
80 "- ...&injectMe=' union select...<br>" +
81 "- ...&injectMe=) union select...<br>" +
82 "Default is searching for the prefix but can be disabled to save time when prefix is already set by the user.</html>"
83 );
84 this.checkboxIsLimitingSleepTimeStrategy.setToolTipText("<html>Time strategy waits a given number of seconds for a page to respond (fallback to default if unchecked).<br>Amount of seconds can be lowered on a stable environment to save time (e.g. local tests).</html>");
85
86 var panelSleepTimeStrategy = new JPanel();
87 panelSleepTimeStrategy.setLayout(new BoxLayout(panelSleepTimeStrategy, BoxLayout.X_AXIS));
88 panelSleepTimeStrategy.add(new JLabel("Adjust delay to "), BorderLayout.WEST);
89 panelSleepTimeStrategy.add(this.spinnerSleepTimeStrategyCount, BorderLayout.CENTER);
90 panelSleepTimeStrategy.add(new JLabel(" s ; default 5s"), BorderLayout.EAST);
91 panelSleepTimeStrategy.setMaximumSize(new Dimension(125, this.spinnerSleepTimeStrategyCount.getPreferredSize().height));
92 int countSleepTimeStrategy = MediatorHelper.model().getMediatorUtils().getPreferencesUtil().countSleepTimeStrategy();
93 var spinnerSleepTimeStrategy = new SpinnerNumberModel(
94 countSleepTimeStrategy <= 0 ? 15 : countSleepTimeStrategy,
95 1,
96 30,
97 1
98 );
99 this.spinnerSleepTimeStrategyCount.setModel(spinnerSleepTimeStrategy);
100 this.spinnerSleepTimeStrategyCount.addMouseWheelListener(new SpinnerMouseWheelListener());
101 this.spinnerSleepTimeStrategyCount.addChangeListener(e -> panelPreferences.getActionListenerSave().actionPerformed(null));
102
103 this.checkboxIsLimitingUnionIndex.setToolTipText("Maximum number of columns to check on UNION based queries");
104
105 var panelIsLimitingUnionIndex = new JPanel();
106 panelIsLimitingUnionIndex.setLayout(new BoxLayout(panelIsLimitingUnionIndex, BoxLayout.X_AXIS));
107 panelIsLimitingUnionIndex.add(new JLabel("Search for up to "));
108 panelIsLimitingUnionIndex.add(this.spinnerUnionIndexCount);
109 panelIsLimitingUnionIndex.add(new JLabel(" column(s) ; default 50 columns"));
110 panelIsLimitingUnionIndex.setMaximumSize(new Dimension(325, this.spinnerUnionIndexCount.getPreferredSize().height));
111 int countUnionIndex = MediatorHelper.model().getMediatorUtils().getPreferencesUtil().countUnionIndex();
112 var spinnerCountUnionIndex = new SpinnerNumberModel(
113 countUnionIndex <= 0 ? 50 : countUnionIndex,
114 1,
115 200,
116 1
117 );
118 this.spinnerUnionIndexCount.setModel(spinnerCountUnionIndex);
119 this.spinnerUnionIndexCount.addMouseWheelListener(new SpinnerMouseWheelListener());
120 this.spinnerUnionIndexCount.addChangeListener(e -> panelPreferences.getActionListenerSave().actionPerformed(null));
121
122 this.radioIsDiosStrategy.setToolTipText(
123 "<html>Mode Dump In One Shot injects a single query that gets all the data at once."
124 + "<br>Faster than default mode for Union and Error strats but requires volume of data to not be huge.</html>"
125 );
126 this.radioIsZipStrategy.setToolTipText(
127 "<html>Zip mode injects small queries, useful when host rejects large URL."
128 + "<br>Downside is metadata like table or row count is not fetched.</html>"
129 );
130
131 var labelGeneralInjection = new JLabel("<html><b>Processing</b></html>");
132 var labelParamsInjection = new JLabel("<html><br><b>URL parameters</b></html>");
133 var labelSpecial = new JLabel("<html><br><b>Special parameters</b></html>");
134 var labelQuerySize = new JLabel("<html><br><b>Reduce URL size (advanced)</b></html>");
135 var labelDns = new JLabel("<html><br><b>DNS exfiltration (advanced, working also on local database without registrar)</b></html>");
136 Arrays.asList(
137 labelGeneralInjection,
138 labelParamsInjection,
139 labelSpecial,
140 labelQuerySize,
141 labelDns
142 ).forEach(label -> label.setBorder(PanelGeneral.MARGIN));
143
144 ActionListener actionListenerCheckingAllParam = actionEvent -> {
145 if (actionEvent.getSource() != this.checkboxIsCheckingAllParam) {
146 this.checkboxIsCheckingAllParam.setSelected(!this.checkboxIsCheckingAllParam.isSelected());
147 }
148
149 this.checkboxIsCheckingAllURLParam.setSelected(this.checkboxIsCheckingAllParam.isSelected());
150 this.checkboxIsCheckingAllRequestParam.setSelected(this.checkboxIsCheckingAllParam.isSelected());
151 this.checkboxIsCheckingAllHeaderParam.setSelected(this.checkboxIsCheckingAllParam.isSelected());
152
153 this.checkboxIsCheckingAllURLParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
154 this.checkboxIsCheckingAllRequestParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
155 this.checkboxIsCheckingAllHeaderParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
156
157 panelPreferences.getActionListenerSave().actionPerformed(null);
158 };
159
160 this.checkboxIsCheckingAllURLParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
161 this.checkboxIsCheckingAllRequestParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
162 this.checkboxIsCheckingAllHeaderParam.setEnabled(!this.checkboxIsCheckingAllParam.isSelected());
163
164 this.checkboxIsCheckingAllParam.addActionListener(actionListenerCheckingAllParam);
165
166 Stream.of(
167 this.checkboxIsNotInjectingMetadata,
168 this.checkboxIsNotSearchingCharInsertion,
169 this.checkboxIsNotShowingVulnReport,
170 this.checkboxIsParsingForm,
171 this.checkboxIsCheckingAllURLParam,
172 this.checkboxIsCheckingAllRequestParam,
173 this.checkboxIsCheckingAllHeaderParam,
174 this.checkboxIsCheckingAllJSONParam,
175 this.checkboxIsCheckingAllBase64Param,
176 this.checkboxIsCheckingAllCookieParam,
177 this.checkboxIsCheckingAllSOAPParam,
178 this.checkboxIsPerfIndexDisabled,
179 this.radioIsZipStrategy,
180 this.radioIsDiosStrategy,
181 this.radioIsDefaultStrategy,
182 this.checkboxIsUrlEncodingDisabled,
183 this.checkboxIsUrlRandomSuffixDisabled,
184 this.checkboxIsLimitingUnionIndex,
185 this.checkboxIsLimitingSleepTimeStrategy
186 )
187 .forEach(button -> button.addActionListener(panelPreferences.getActionListenerSave()));
188
189 var panelDnsDomain = new JPanel();
190 panelDnsDomain.setLayout(new BoxLayout(panelDnsDomain, BoxLayout.X_AXIS));
191 panelDnsDomain.add(new JLabel("Domain name "));
192 panelDnsDomain.add(this.textfieldDnsDomain);
193 panelDnsDomain.add(new JLabel(" ; default custom-domain.com"));
194 panelDnsDomain.setMaximumSize(new Dimension(400, this.textfieldDnsDomain.getPreferredSize().height));
195 var panelDnsPort = new JPanel();
196 panelDnsPort.setLayout(new BoxLayout(panelDnsPort, BoxLayout.X_AXIS));
197 panelDnsPort.add(new JLabel("DNS port "));
198 panelDnsPort.add(this.textfieldDnsPort);
199 panelDnsPort.add(new JLabel(" ; default 53"));
200 panelDnsPort.setMaximumSize(new Dimension(125, this.textfieldDnsPort.getPreferredSize().height));
201
202 DocumentListener documentListenerSave = new DocumentListenerEditing() {
203 @Override
204 public void process() {
205 panelPreferences.getActionListenerSave().actionPerformed(null);
206 }
207 };
208
209 Stream.of(this.textfieldDnsDomain, this.textfieldDnsPort).forEach(
210 textField -> textField.getDocument().addDocumentListener(documentListenerSave)
211 );
212
213 this.textfieldDnsDomain.setToolTipText(
214 "<html>"
215 + "<b>This domain must redirect to your IP address that runs jSQL</b><br>"
216 + "You can run DNS exfiltration on a local database, replace your ISP box address<br>"
217 + "by your system address in your OS preferred DNS.<br>"
218 + "</html>"
219 );
220 this.textfieldDnsPort.setToolTipText("The DNS server port started by jSQL");
221
222 var groupSpaceToComment = new ButtonGroup();
223 groupSpaceToComment.add(this.radioIsZipStrategy);
224 groupSpaceToComment.add(this.radioIsDiosStrategy);
225 groupSpaceToComment.add(this.radioIsDefaultStrategy);
226
227 var groupLayout = new GroupLayout(this);
228 this.setLayout(groupLayout);
229
230 groupLayout.setHorizontalGroup(
231 groupLayout
232 .createSequentialGroup()
233 .addGroup(
234 groupLayout
235 .createParallelGroup(GroupLayout.Alignment.LEADING, false)
236 .addComponent(labelGeneralInjection)
237 .addComponent(this.checkboxIsParsingForm)
238 .addComponent(this.checkboxIsNotInjectingMetadata)
239 .addComponent(this.checkboxIsNotSearchingCharInsertion)
240 .addComponent(this.checkboxIsNotShowingVulnReport)
241 .addComponent(this.checkboxIsLimitingUnionIndex)
242 .addComponent(panelIsLimitingUnionIndex)
243 .addComponent(this.checkboxIsLimitingSleepTimeStrategy)
244 .addComponent(panelSleepTimeStrategy)
245
246 .addComponent(labelParamsInjection)
247 .addComponent(this.checkboxIsCheckingAllParam)
248 .addComponent(this.checkboxIsCheckingAllURLParam)
249 .addComponent(this.checkboxIsCheckingAllRequestParam)
250 .addComponent(this.checkboxIsCheckingAllHeaderParam)
251
252 .addComponent(labelSpecial)
253
254 .addComponent(this.checkboxIsCheckingAllJSONParam)
255 .addComponent(this.checkboxIsCheckingAllSOAPParam)
256 .addComponent(this.checkboxIsCheckingAllCookieParam)
257
258 .addComponent(labelQuerySize)
259 .addComponent(this.radioIsDefaultStrategy)
260 .addComponent(this.radioIsDiosStrategy)
261 .addComponent(this.radioIsZipStrategy)
262 .addComponent(this.checkboxIsPerfIndexDisabled)
263 .addComponent(this.checkboxIsUrlEncodingDisabled)
264 .addComponent(this.checkboxIsUrlRandomSuffixDisabled)
265
266 .addComponent(labelDns)
267 .addComponent(panelDnsDomain)
268 .addComponent(panelDnsPort)
269 )
270 );
271
272 groupLayout.setVerticalGroup(
273 groupLayout
274 .createSequentialGroup()
275 .addGroup(
276 groupLayout
277 .createParallelGroup(GroupLayout.Alignment.BASELINE)
278 .addComponent(labelGeneralInjection)
279 )
280 .addGroup(
281 groupLayout
282 .createParallelGroup(GroupLayout.Alignment.BASELINE)
283 .addComponent(this.checkboxIsParsingForm)
284 )
285 .addGroup(
286 groupLayout
287 .createParallelGroup(GroupLayout.Alignment.BASELINE)
288 .addComponent(this.checkboxIsNotInjectingMetadata)
289 )
290 .addGroup(
291 groupLayout
292 .createParallelGroup(GroupLayout.Alignment.BASELINE)
293 .addComponent(this.checkboxIsNotSearchingCharInsertion)
294 )
295 .addGroup(
296 groupLayout
297 .createParallelGroup(GroupLayout.Alignment.BASELINE)
298 .addComponent(this.checkboxIsNotShowingVulnReport)
299 )
300 .addGroup(
301 groupLayout
302 .createParallelGroup(GroupLayout.Alignment.BASELINE)
303 .addComponent(this.checkboxIsLimitingUnionIndex)
304 )
305 .addGroup(
306 groupLayout
307 .createParallelGroup(GroupLayout.Alignment.BASELINE)
308 .addComponent(panelIsLimitingUnionIndex)
309 )
310 .addGroup(
311 groupLayout
312 .createParallelGroup(GroupLayout.Alignment.BASELINE)
313 .addComponent(this.checkboxIsLimitingSleepTimeStrategy)
314 )
315 .addGroup(
316 groupLayout
317 .createParallelGroup(GroupLayout.Alignment.BASELINE)
318 .addComponent(panelSleepTimeStrategy)
319 )
320
321 .addGroup(
322 groupLayout
323 .createParallelGroup(GroupLayout.Alignment.BASELINE)
324 .addComponent(labelParamsInjection)
325 )
326 .addGroup(
327 groupLayout
328 .createParallelGroup(GroupLayout.Alignment.BASELINE)
329 .addComponent(this.checkboxIsCheckingAllParam)
330 )
331 .addGroup(
332 groupLayout
333 .createParallelGroup(GroupLayout.Alignment.BASELINE)
334 .addComponent(this.checkboxIsCheckingAllURLParam)
335 )
336 .addGroup(
337 groupLayout
338 .createParallelGroup(GroupLayout.Alignment.BASELINE)
339 .addComponent(this.checkboxIsCheckingAllRequestParam)
340 )
341 .addGroup(
342 groupLayout
343 .createParallelGroup(GroupLayout.Alignment.BASELINE)
344 .addComponent(this.checkboxIsCheckingAllHeaderParam)
345 )
346
347 .addGroup(
348 groupLayout
349 .createParallelGroup(GroupLayout.Alignment.BASELINE)
350 .addComponent(labelSpecial)
351 )
352
353
354
355
356
357 .addGroup(
358 groupLayout
359 .createParallelGroup(GroupLayout.Alignment.BASELINE)
360 .addComponent(this.checkboxIsCheckingAllJSONParam)
361 )
362 .addGroup(
363 groupLayout
364 .createParallelGroup(GroupLayout.Alignment.BASELINE)
365 .addComponent(this.checkboxIsCheckingAllSOAPParam)
366 )
367 .addGroup(
368 groupLayout
369 .createParallelGroup(GroupLayout.Alignment.BASELINE)
370 .addComponent(this.checkboxIsCheckingAllCookieParam)
371 )
372
373 .addGroup(
374 groupLayout
375 .createParallelGroup(GroupLayout.Alignment.BASELINE)
376 .addComponent(labelQuerySize)
377 )
378 .addGroup(
379 groupLayout
380 .createParallelGroup(GroupLayout.Alignment.BASELINE)
381 .addComponent(this.radioIsDefaultStrategy)
382 )
383 .addGroup(
384 groupLayout
385 .createParallelGroup(GroupLayout.Alignment.BASELINE)
386 .addComponent(this.radioIsDiosStrategy)
387 )
388 .addGroup(
389 groupLayout
390 .createParallelGroup(GroupLayout.Alignment.BASELINE)
391 .addComponent(this.radioIsZipStrategy)
392 )
393 .addGroup(
394 groupLayout
395 .createParallelGroup(GroupLayout.Alignment.BASELINE)
396 .addComponent(this.checkboxIsPerfIndexDisabled)
397 )
398 .addGroup(
399 groupLayout
400 .createParallelGroup(GroupLayout.Alignment.BASELINE)
401 .addComponent(this.checkboxIsUrlEncodingDisabled)
402 )
403 .addGroup(
404 groupLayout
405 .createParallelGroup(GroupLayout.Alignment.BASELINE)
406 .addComponent(this.checkboxIsUrlRandomSuffixDisabled)
407 )
408 .addGroup(
409 groupLayout
410 .createParallelGroup(GroupLayout.Alignment.BASELINE)
411 .addComponent(labelDns)
412 )
413 .addGroup(
414 groupLayout
415 .createParallelGroup(GroupLayout.Alignment.BASELINE)
416 .addComponent(panelDnsDomain)
417 )
418 .addGroup(
419 groupLayout
420 .createParallelGroup(GroupLayout.Alignment.BASELINE)
421 .addComponent(panelDnsPort)
422 )
423 );
424 }
425
426
427
428
429 public JCheckBox getCheckboxIsNotInjectingMetadata() {
430 return this.checkboxIsNotInjectingMetadata;
431 }
432
433 public JCheckBox getCheckboxIsNotSearchingCharInsertion() {
434 return this.checkboxIsNotSearchingCharInsertion;
435 }
436
437 public JCheckBox getCheckboxIsNotShowingVulnReport() {
438 return this.checkboxIsNotShowingVulnReport;
439 }
440
441 public JCheckBox getCheckboxIsCheckingAllParam() {
442 return this.checkboxIsCheckingAllParam;
443 }
444
445 public JCheckBox getCheckboxIsCheckingAllURLParam() {
446 return this.checkboxIsCheckingAllURLParam;
447 }
448
449 public JCheckBox getCheckboxIsCheckingAllRequestParam() {
450 return this.checkboxIsCheckingAllRequestParam;
451 }
452
453 public JCheckBox getCheckboxIsCheckingAllHeaderParam() {
454 return this.checkboxIsCheckingAllHeaderParam;
455 }
456
457 public JCheckBox getCheckboxIsCheckingAllBase64Param() {
458 return this.checkboxIsCheckingAllBase64Param;
459 }
460
461 public JCheckBox getCheckboxIsCheckingAllJsonParam() {
462 return this.checkboxIsCheckingAllJSONParam;
463 }
464
465 public JCheckBox getCheckboxIsCheckingAllCookieParam() {
466 return this.checkboxIsCheckingAllCookieParam;
467 }
468
469 public JCheckBox getCheckboxIsCheckingAllSoapParam() {
470 return this.checkboxIsCheckingAllSOAPParam;
471 }
472
473 public JCheckBox getCheckboxIsParsingForm() {
474 return this.checkboxIsParsingForm;
475 }
476
477 public JCheckBox getCheckboxIsPerfIndexDisabled() {
478 return this.checkboxIsPerfIndexDisabled;
479 }
480
481 public JRadioButton getRadioIsZipStrategy() {
482 return this.radioIsZipStrategy;
483 }
484
485 public JRadioButton getRadioIsDiosStrategy() {
486 return this.radioIsDiosStrategy;
487 }
488
489 public JRadioButton getRadioIsDefaultStrategy() {
490 return this.radioIsDefaultStrategy;
491 }
492
493 public JCheckBox getCheckboxIsUrlEncodingDisabled() {
494 return this.checkboxIsUrlEncodingDisabled;
495 }
496
497 public JCheckBox getCheckboxIsUrlRandomSuffixDisabled() {
498 return this.checkboxIsUrlRandomSuffixDisabled;
499 }
500
501 public JCheckBox getCheckboxIsLimitingUnionIndex() {
502 return this.checkboxIsLimitingUnionIndex;
503 }
504
505 public JSpinner getSpinnerUnionIndexCount() {
506 return this.spinnerUnionIndexCount;
507 }
508
509 public JCheckBox getCheckboxIsLimitingSleepTimeStrategy() {
510 return this.checkboxIsLimitingSleepTimeStrategy;
511 }
512
513 public JSpinner getSpinnerSleepTimeStrategy() {
514 return this.spinnerSleepTimeStrategyCount;
515 }
516
517 public JTextField getTextfieldDnsDomain() {
518 return this.textfieldDnsDomain;
519 }
520
521 public JTextField getTextfieldDnsPort() {
522 return this.textfieldDnsPort;
523 }
524 }