Encapsulate hwid validation

This commit is contained in:
P0nk
2021-06-29 08:29:29 +02:00
parent 50e2b909f1
commit 671313ab57
7 changed files with 23 additions and 6 deletions

View File

@@ -0,0 +1,11 @@
package net.server.coordinator.session;
import java.util.regex.Pattern;
public class Hwid {
private static final Pattern VALID_HWID_PATTERN = Pattern.compile("[0-9A-F]{12}_[0-9A-F]{8}");
public static boolean isValidHwid(String hwid) {
return VALID_HWID_PATTERN.matcher(hwid).matches();
}
}

View File

@@ -26,6 +26,7 @@ import java.net.InetAddress;
import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.coordinator.session.MapleSessionCoordinator;
import net.server.coordinator.session.MapleSessionCoordinator.AntiMulticlientResult;
import net.server.world.World;
@@ -61,7 +62,7 @@ public final class CharSelectedHandler extends AbstractMaplePacketHandler {
String macs = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}

View File

@@ -5,6 +5,7 @@ import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.coordinator.session.MapleSessionCoordinator;
import net.server.coordinator.session.MapleSessionCoordinator.AntiMulticlientResult;
import net.server.world.World;
@@ -42,7 +43,7 @@ public class CharSelectedWithPicHandler extends AbstractMaplePacketHandler {
String macs = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}

View File

@@ -5,6 +5,7 @@ import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.world.World;
import tools.MaplePacketCreator;
import tools.data.input.SeekableLittleEndianAccessor;
@@ -42,7 +43,7 @@ public final class RegisterPicHandler extends AbstractMaplePacketHandler {
String macs = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}

View File

@@ -5,6 +5,7 @@ import java.net.InetAddress;
import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.coordinator.session.MapleSessionCoordinator;
import net.server.coordinator.session.MapleSessionCoordinator.AntiMulticlientResult;
import net.server.world.World;
@@ -43,7 +44,7 @@ public final class ViewAllCharRegisterPicHandler extends AbstractMaplePacketHand
String mac = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}

View File

@@ -26,6 +26,7 @@ import java.net.InetAddress;
import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.coordinator.session.MapleSessionCoordinator;
import net.server.coordinator.session.MapleSessionCoordinator.AntiMulticlientResult;
import net.server.world.World;
@@ -63,7 +64,7 @@ public final class ViewAllCharSelectedHandler extends AbstractMaplePacketHandler
String macs = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}

View File

@@ -5,6 +5,7 @@ import java.net.UnknownHostException;
import net.AbstractMaplePacketHandler;
import net.server.Server;
import net.server.coordinator.session.Hwid;
import net.server.world.World;
import tools.MaplePacketCreator;
import tools.Randomizer;
@@ -45,7 +46,7 @@ public class ViewAllCharSelectedWithPicHandler extends AbstractMaplePacketHandle
String macs = slea.readMapleAsciiString();
String hwid = slea.readMapleAsciiString();
if (!hwid.matches("[0-9A-F]{12}_[0-9A-F]{8}")) {
if (!Hwid.isValidHwid(hwid)) {
c.announce(MaplePacketCreator.getAfterLoginError(17));
return;
}