summaryrefslogtreecommitdiff
path: root/src/main/java/com/it_jaros/jscanner/ServiceDetector.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/it_jaros/jscanner/ServiceDetector.java')
-rw-r--r--src/main/java/com/it_jaros/jscanner/ServiceDetector.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/com/it_jaros/jscanner/ServiceDetector.java b/src/main/java/com/it_jaros/jscanner/ServiceDetector.java
index 425372c..4d4f76e 100644
--- a/src/main/java/com/it_jaros/jscanner/ServiceDetector.java
+++ b/src/main/java/com/it_jaros/jscanner/ServiceDetector.java
@@ -1,5 +1,6 @@
package com.it_jaros.jscanner;
+import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.regex.Pattern;
@@ -20,13 +21,14 @@ public class ServiceDetector {
new ServicePattern(ServiceType.SSH, Pattern.compile("(?i)^SSH-"))
);
- public static ServiceType detect(String banner) {
- if (banner == null || banner.isBlank()) {
+ public static ServiceType detect(byte[] banner) {
+ if (banner == null || banner.length == 0) {
return ServiceType.UNKNOWN;
}
+ String bannerString = new String(banner, StandardCharsets.UTF_8);
for (ServicePattern servicePattern : patterns) {
- if (servicePattern.matches(banner)) {
+ if (servicePattern.matches(bannerString)) {
return servicePattern.serviceType();
}
}