Browse Source

Added SSL Protocol Interface

qam 10 years ago
parent
commit
49687380d9

BIN
res/raw/https_cert.bks


+ 3 - 2
src/de/tudarmstadt/informatik/hostage/HoneyListener.java

@@ -16,6 +16,7 @@ import de.tudarmstadt.informatik.hostage.handler.ByteArrayHandlerImpl;
 import de.tudarmstadt.informatik.hostage.handler.StringHandlerImpl;
 import de.tudarmstadt.informatik.hostage.net.MyServerSocketFactory;
 import de.tudarmstadt.informatik.hostage.protocol.Protocol;
+import de.tudarmstadt.informatik.hostage.protocol.SSLProtocol;
 import de.tudarmstadt.informatik.hostage.ui.MainActivity;
 import de.tudarmstadt.informatik.hostage.wrapper.ByteArray;
 
@@ -66,8 +67,8 @@ public class HoneyListener implements Runnable {
 			if(protocol.isSecure())
 				//TODO
 //				server = new MyServerSocketFactory().createServerSocket(
-//						protocol.getPort(), protocol.getSSLContext());
-				server = (SSLServerSocket) protocol.getSSLContext().getServerSocketFactory().createServerSocket(protocol.getPort());
+//						protocol.getPort(), ((SSLProtocol) protocol).getSSLContext());
+				server = (SSLServerSocket) ((SSLProtocol) protocol).getSSLContext().getServerSocketFactory().createServerSocket(protocol.getPort());
 			else
 				server = new MyServerSocketFactory().createServerSocket(protocol
 					.getPort());

+ 0 - 4
src/de/tudarmstadt/informatik/hostage/protocol/ECHO.java

@@ -47,8 +47,4 @@ public class ECHO implements Protocol<ByteArray>{
 		return "ECHO";
 	}
 
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
 }

+ 0 - 5
src/de/tudarmstadt/informatik/hostage/protocol/FTP.java

@@ -109,10 +109,5 @@ public final class FTP implements Protocol<String> {
 	public String toString() {
 		return "FTP";
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
 
 }

+ 0 - 5
src/de/tudarmstadt/informatik/hostage/protocol/HTTP.java

@@ -87,11 +87,6 @@ public final class HTTP implements Protocol<String> {
 	public String toString() {
 		return "HTTP";
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
 
 	/**
 	 * Builds a html response that can be sent

+ 1 - 1
src/de/tudarmstadt/informatik/hostage/protocol/HTTPS.java

@@ -8,7 +8,7 @@ import java.util.List;
 import javax.net.ssl.KeyManagerFactory;
 import javax.net.ssl.SSLContext;
 
-public class HTTPS implements Protocol<String> {
+public class HTTPS implements SSLProtocol<String> {
 
 	private static enum STATE {
 		NONE, OPEN, CLOSED

+ 1 - 6
src/de/tudarmstadt/informatik/hostage/protocol/MySQL.java

@@ -81,12 +81,7 @@ public class MySQL implements Protocol<ByteArray>{
 	public boolean isClosed() {
 		return state == STATE.CLOSED;
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
-	
+
 	/**
 	 * Wraps the response packet with the packet length and number
 	 * @param packet that is wrapped

+ 0 - 2
src/de/tudarmstadt/informatik/hostage/protocol/Protocol.java

@@ -60,7 +60,5 @@ public interface Protocol<T> {
 	 */
 	@Override 
 	String toString();
-	
-	SSLContext getSSLContext();
 
 }

+ 0 - 5
src/de/tudarmstadt/informatik/hostage/protocol/SMB.java

@@ -133,11 +133,6 @@ public final class SMB implements Protocol<ByteArray> {
 	public String toString() {
 		return "SMB";
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
 
 	/**
 	 * Converts the current system time into a byte[] with windows specific time

+ 1 - 6
src/de/tudarmstadt/informatik/hostage/protocol/SSH.java

@@ -158,12 +158,7 @@ public final class SSH implements Protocol<ByteArray> {
 	public String toString() {
 		return "SSH";
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
-	
+
 	/**
 	 * Wraps the packets with packet length and padding
 	 * @param packet content that is wrapped

+ 8 - 0
src/de/tudarmstadt/informatik/hostage/protocol/SSLProtocol.java

@@ -0,0 +1,8 @@
+package de.tudarmstadt.informatik.hostage.protocol;
+
+import javax.net.ssl.SSLContext;
+
+public interface SSLProtocol<T> extends Protocol<T> {
+
+	SSLContext getSSLContext();
+}

+ 0 - 5
src/de/tudarmstadt/informatik/hostage/protocol/TELNET.java

@@ -148,11 +148,6 @@ public final class TELNET implements Protocol<ByteArray> {
 	public Class<ByteArray> getType() {
 		return ByteArray.class;
 	}
-	
-	@Override
-	public SSLContext getSSLContext() {
-		return null;
-	}
 
 	/**
 	 * Determines which options that are requested by the client will be done and which not