Skip to content

Commit 6701463

Browse files
committed
made heartbleed check a dynmaic workflow to adjust for wrongly configured ciphersuites
1 parent d2d856d commit 6701463

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

Attacks/src/main/java/de/rub/nds/tlsattacker/attacks/impl/HeartbleedAttacker.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import de.rub.nds.tlsattacker.core.constants.ProtocolMessageType;
2020
import de.rub.nds.tlsattacker.core.constants.RunningModeType;
2121
import de.rub.nds.tlsattacker.core.exceptions.WorkflowExecutionException;
22+
import de.rub.nds.tlsattacker.core.protocol.message.ChangeCipherSpecMessage;
23+
import de.rub.nds.tlsattacker.core.protocol.message.FinishedMessage;
2224
import de.rub.nds.tlsattacker.core.protocol.message.HeartbeatMessage;
2325
import de.rub.nds.tlsattacker.core.state.State;
2426
import de.rub.nds.tlsattacker.core.workflow.WorkflowExecutor;
@@ -27,6 +29,7 @@
2729
import de.rub.nds.tlsattacker.core.workflow.WorkflowTraceUtil;
2830
import de.rub.nds.tlsattacker.core.workflow.action.ReceiveAction;
2931
import de.rub.nds.tlsattacker.core.workflow.action.SendAction;
32+
import de.rub.nds.tlsattacker.core.workflow.action.SendDynamicClientKeyExchangeAction;
3033
import de.rub.nds.tlsattacker.core.workflow.factory.WorkflowConfigurationFactory;
3134
import de.rub.nds.tlsattacker.core.workflow.factory.WorkflowTraceType;
3235
import org.apache.logging.log4j.LogManager;
@@ -61,8 +64,11 @@ public void executeAttack() {
6164
@Override
6265
public Boolean isVulnerable() {
6366
Config tlsConfig = getTlsConfig();
64-
WorkflowTrace trace = new WorkflowConfigurationFactory(tlsConfig).createWorkflowTrace(
65-
WorkflowTraceType.HANDSHAKE, RunningModeType.CLIENT);
67+
WorkflowTrace trace = new WorkflowConfigurationFactory(tlsConfig).createWorkflowTrace(WorkflowTraceType.HELLO,
68+
RunningModeType.CLIENT);
69+
trace.addTlsAction(new SendDynamicClientKeyExchangeAction());
70+
trace.addTlsAction(new SendAction(new ChangeCipherSpecMessage(), new FinishedMessage()));
71+
trace.addTlsAction(new ReceiveAction(new ChangeCipherSpecMessage(), new FinishedMessage()));
6672
HeartbeatMessage message = new HeartbeatMessage(tlsConfig);
6773
trace.addTlsAction(new SendAction(message));
6874
trace.addTlsAction(new ReceiveAction(new HeartbeatMessage()));

0 commit comments

Comments
 (0)