1
1
package gui ;
2
2
3
3
import application .SamlTabController ;
4
+ import helpers .CVE_2025_23369 ;
4
5
import java .awt .BorderLayout ;
5
6
import java .awt .Component ;
6
7
import java .awt .GridBagConstraints ;
11
12
import java .util .HashMap ;
12
13
import java .util .List ;
13
14
import java .util .Optional ;
14
- import javax .swing .*;
15
+ import javax .swing .BorderFactory ;
16
+ import javax .swing .DefaultComboBoxModel ;
17
+ import javax .swing .JButton ;
18
+ import javax .swing .JComboBox ;
19
+ import javax .swing .JLabel ;
20
+ import javax .swing .JOptionPane ;
21
+ import javax .swing .JPanel ;
22
+ import javax .swing .JScrollPane ;
23
+ import javax .swing .JTextField ;
24
+ import javax .swing .SwingUtilities ;
15
25
import javax .swing .border .EmptyBorder ;
16
26
import model .BurpCertificate ;
17
27
import net .miginfocom .swing .MigLayout ;
@@ -34,6 +44,10 @@ public class SamlPanelAction extends JPanel {
34
44
private final JButton btnTestXXE = new JButton ("Test XXE" );
35
45
private final JButton btnTestXSLT = new JButton ("Test XSLT" );
36
46
47
+ private final JComboBox <String > cmbboxCVE = new JComboBox <>();
48
+ private final JButton btnCVEApply = new JButton ("Apply CVE" );
49
+ private final JButton btnCVEHelp = new JButton ("Help" );
50
+
37
51
private final JButton btnSignatureHelp = new JButton ("Help" );
38
52
private final JComboBox <BurpCertificate > cmbboxCertificate = new JComboBox <>();
39
53
private final JButton btnSignatureRemove = new JButton ("Remove Signatures" );
@@ -92,6 +106,21 @@ private void initialize() {
92
106
xmlAttacksPanel .add (btnTestXXE , "split 2" );
93
107
xmlAttacksPanel .add (btnTestXSLT , "wrap" );
94
108
109
+ cmbboxCVE .setModel (new DefaultComboBoxModel <>(new String []{
110
+ CVE_2025_23369 .CVE
111
+ }));
112
+
113
+ btnCVEApply .addActionListener (event -> controller .applyCVE ());
114
+
115
+ btnCVEHelp .addActionListener (event -> controller .showCVEHelp ());
116
+
117
+ var cvePanel = new JPanel ();
118
+ cvePanel .setBorder (BorderFactory .createTitledBorder ("CVEs" ));
119
+ cvePanel .setLayout (new MigLayout ());
120
+ cvePanel .add (cmbboxCVE );
121
+ cvePanel .add (btnCVEApply );
122
+ cvePanel .add (btnCVEHelp , "wrap" );
123
+
95
124
btnSignatureHelp .addActionListener (event -> controller .showSignatureHelp ());
96
125
97
126
btnSignatureRemove .addActionListener (event -> controller .removeSignature ());
@@ -117,6 +146,7 @@ private void initialize() {
117
146
actionPanels .setLayout (new MigLayout ());
118
147
actionPanels .add (samlMessagePanel , actionPanelConstraints );
119
148
actionPanels .add (xswAttacksPanel , actionPanelConstraints );
149
+ actionPanels .add (cvePanel , actionPanelConstraints );
120
150
actionPanels .add (xmlAttacksPanel , actionPanelConstraints );
121
151
actionPanels .add (signatureAttacksPanel , actionPanelConstraints );
122
152
@@ -149,6 +179,10 @@ public String getSelectedXSW() {
149
179
return (String ) cmbboxXSW .getSelectedItem ();
150
180
}
151
181
182
+ public String getSelectedCVE () {
183
+ return (String ) cmbboxCVE .getSelectedItem ();
184
+ }
185
+
152
186
public void disableControls () {
153
187
cmbboxCertificate .setEnabled (false );
154
188
cmbboxXSW .setEnabled (false );
@@ -164,6 +198,8 @@ public void disableControls() {
164
198
btnMatchAndReplace .setEnabled (false );
165
199
btnTestXXE .setEnabled (false );
166
200
btnTestXSLT .setEnabled (false );
201
+ cmbboxCVE .setEnabled (false );
202
+ btnCVEApply .setEnabled (false );
167
203
this .revalidate ();
168
204
}
169
205
@@ -182,6 +218,8 @@ public void enableControls() {
182
218
btnMatchAndReplace .setEnabled (true );
183
219
btnTestXXE .setEnabled (true );
184
220
btnTestXSLT .setEnabled (true );
221
+ cmbboxCVE .setEnabled (true );
222
+ btnCVEApply .setEnabled (true );
185
223
this .revalidate ();
186
224
}
187
225
0 commit comments