diff --git a/wu-lazy-cloud-heartbeat-client/src/main/java/org/framework/lazy/cloud/network/heartbeat/client/netty/handler/NettyClientVisitorRealHandler.java b/wu-lazy-cloud-heartbeat-client/src/main/java/org/framework/lazy/cloud/network/heartbeat/client/netty/handler/NettyClientVisitorRealHandler.java index fe3eb3e..488b794 100644 --- a/wu-lazy-cloud-heartbeat-client/src/main/java/org/framework/lazy/cloud/network/heartbeat/client/netty/handler/NettyClientVisitorRealHandler.java +++ b/wu-lazy-cloud-heartbeat-client/src/main/java/org/framework/lazy/cloud/network/heartbeat/client/netty/handler/NettyClientVisitorRealHandler.java @@ -22,6 +22,11 @@ public class NettyClientVisitorRealHandler extends SimpleChannelInboundHandler Channel nextChannel = ChannelAttributeKeyUtils.getNextChannel(visitorChannel); // 下一个通道开启自动读写 + log.info("write data to channelId:{}",nextChannel.id().asLongText()); nextChannel.config().setOption(ChannelOption.AUTO_READ, true); // 绑定数据流量 ChannelAttributeKeyUtils.buildInFlow(nextChannel, bytes.length); - nextChannel.writeAndFlush(bytes); + + // 将二进制数组转换成 ByteBuf 然后进行发送 + ByteBuf visitorBuf = visitorChannel.config().getAllocator().buffer(bytes.length); + visitorBuf.writeBytes(bytes); + + nextChannel.writeAndFlush(visitorBuf); // 处理访客流量 ServerChannelFlow serverChannelFlow = ServerChannelFlow diff --git a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/netty/socket/NettyPermeateClientRealSocket.java b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/netty/socket/NettyPermeateClientRealSocket.java index eb44db1..77c0b1d 100644 --- a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/netty/socket/NettyPermeateClientRealSocket.java +++ b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/netty/socket/NettyPermeateClientRealSocket.java @@ -60,9 +60,9 @@ public class NettyPermeateClientRealSocket { if (channelFuture.isSuccess()) { // 客户端链接真实服务成功 设置自动读写false 等待访客连接成功后设置成true Channel realChannel = channelFuture.channel(); - realChannel.config().setOption(ChannelOption.AUTO_READ, true); + realChannel.config().setOption(ChannelOption.AUTO_READ, false); - log.info("服务端内网渗透通过,绑定本地服务,IP:{},端口:{} 新建通道成功", clientTargetIp, clientTargetPort); + log.info("服务端内网渗透通过,绑定本地服务,IP:{},端口:{} channelID:{} 新建通道成功", clientTargetIp, clientTargetPort,realChannel.id().asLongText()); ChannelAttributeKeyUtils.buildVisitorPort(realChannel, visitorPort); // 缓存当前端口对应的通道、通道池 ChannelAttributeKeyUtils.buildNextChannel(realChannel, visitorChannel); diff --git a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/application/command/lazy/internal/network/server/permeate/mapping/LazyInternalNetworkServerPermeateMappingRemoveCommand.java b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/application/command/lazy/internal/network/server/permeate/mapping/LazyInternalNetworkServerPermeateMappingRemoveCommand.java index a89610e..0704230 100644 --- a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/application/command/lazy/internal/network/server/permeate/mapping/LazyInternalNetworkServerPermeateMappingRemoveCommand.java +++ b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/application/command/lazy/internal/network/server/permeate/mapping/LazyInternalNetworkServerPermeateMappingRemoveCommand.java @@ -1,5 +1,6 @@ package org.framework.lazy.cloud.network.heartbeat.server.standalone.application.command.lazy.internal.network.server.permeate.mapping; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.experimental.Accessors; import io.swagger.v3.oas.annotations.media.Schema; @@ -25,6 +26,7 @@ public class LazyInternalNetworkServerPermeateMappingRemoveCommand { * * */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Schema(description ="",name ="createTime",example = "") private LocalDateTime createTime; @@ -74,6 +76,7 @@ public class LazyInternalNetworkServerPermeateMappingRemoveCommand { * * */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @Schema(description ="",name ="updateTime",example = "") private LocalDateTime updateTime; diff --git a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyInternalNetworkServerPermeateMappingRepositoryImpl.java b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyInternalNetworkServerPermeateMappingRepositoryImpl.java index 92eee73..dc5ed5b 100644 --- a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyInternalNetworkServerPermeateMappingRepositoryImpl.java +++ b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyInternalNetworkServerPermeateMappingRepositoryImpl.java @@ -1,19 +1,19 @@ package org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.persistence; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyInternalNetworkServerPermeateMappingDO; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyInternalNetworkServerPermeateMappingConverter; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.mapper.LazyInternalNetworkServerPermeateMappingMapper; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.internal.network.server.permeate.mapping.LazyInternalNetworkServerPermeateMapping; import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.internal.network.server.permeate.mapping.LazyInternalNetworkServerPermeateMappingRepository; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyInternalNetworkServerPermeateMappingConverter; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyInternalNetworkServerPermeateMappingDO; import org.springframework.stereotype.Repository; -import java.util.stream.Collectors; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyWrappers; import org.wu.framework.web.response.Result; import org.wu.framework.web.response.ResultFactory; -import jakarta.annotation.Resource; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.internal.network.server.permeate.mapping.LazyInternalNetworkServerPermeateMapping; -import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; + import java.util.List; -import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import java.util.stream.Collectors; /** * describe 服务端网络渗透映射 * @@ -128,7 +128,7 @@ public class LazyInternalNetworkServerPermeateMappingRepositoryImpl implements @Override public Result remove(LazyInternalNetworkServerPermeateMapping lazyInternalNetworkServerPermeateMapping) { LazyInternalNetworkServerPermeateMappingDO lazyInternalNetworkServerPermeateMappingDO = LazyInternalNetworkServerPermeateMappingConverter.INSTANCE.fromLazyInternalNetworkServerPermeateMapping(lazyInternalNetworkServerPermeateMapping); - // lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyInternalNetworkServerPermeateMappingDO)); + lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyInternalNetworkServerPermeateMappingDO)); return ResultFactory.successOf(); } diff --git a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyClientPermeatePortPoolRepositoryImpl.java b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyClientPermeatePortPoolRepositoryImpl.java index bc0f00d..3952729 100644 --- a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyClientPermeatePortPoolRepositoryImpl.java +++ b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyClientPermeatePortPoolRepositoryImpl.java @@ -1,19 +1,19 @@ package org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.persistence; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyNettyClientPermeatePortPoolDO; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyNettyClientPermeatePortPoolConverter; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.mapper.LazyNettyClientPermeatePortPoolMapper; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.client.permeate.port.pool.LazyNettyClientPermeatePortPool; import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.client.permeate.port.pool.LazyNettyClientPermeatePortPoolRepository; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyNettyClientPermeatePortPoolConverter; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyNettyClientPermeatePortPoolDO; import org.springframework.stereotype.Repository; -import java.util.stream.Collectors; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyWrappers; import org.wu.framework.web.response.Result; import org.wu.framework.web.response.ResultFactory; -import jakarta.annotation.Resource; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.client.permeate.port.pool.LazyNettyClientPermeatePortPool; -import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; + import java.util.List; -import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import java.util.stream.Collectors; /** * describe 客户端内网渗透端口池 * @@ -128,7 +128,7 @@ public class LazyNettyClientPermeatePortPoolRepositoryImpl implements LazyNett @Override public Result remove(LazyNettyClientPermeatePortPool lazyNettyClientPermeatePortPool) { LazyNettyClientPermeatePortPoolDO lazyNettyClientPermeatePortPoolDO = LazyNettyClientPermeatePortPoolConverter.INSTANCE.fromLazyNettyClientPermeatePortPool(lazyNettyClientPermeatePortPool); - // lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyNettyClientPermeatePortPoolDO)); + lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyNettyClientPermeatePortPoolDO)); return ResultFactory.successOf(); } diff --git a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyServerPermeatePortPoolRepositoryImpl.java b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyServerPermeatePortPoolRepositoryImpl.java index 4d1f793..fe23e46 100644 --- a/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyServerPermeatePortPoolRepositoryImpl.java +++ b/wu-lazy-cloud-heartbeat-server/src/main/java/org/framework/lazy/cloud/network/heartbeat/server/standalone/infrastructure/persistence/LazyNettyServerPermeatePortPoolRepositoryImpl.java @@ -1,19 +1,19 @@ package org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.persistence; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyNettyServerPermeatePortPoolDO; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyNettyServerPermeatePortPoolConverter; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.mapper.LazyNettyServerPermeatePortPoolMapper; +import jakarta.annotation.Resource; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.server.permeate.port.pool.LazyNettyServerPermeatePortPool; import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.server.permeate.port.pool.LazyNettyServerPermeatePortPoolRepository; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.converter.LazyNettyServerPermeatePortPoolConverter; +import org.framework.lazy.cloud.network.heartbeat.server.standalone.infrastructure.entity.LazyNettyServerPermeatePortPoolDO; import org.springframework.stereotype.Repository; -import java.util.stream.Collectors; +import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; import org.wu.framework.lazy.orm.database.lambda.stream.wrapper.LazyWrappers; import org.wu.framework.web.response.Result; import org.wu.framework.web.response.ResultFactory; -import jakarta.annotation.Resource; -import org.framework.lazy.cloud.network.heartbeat.server.standalone.domain.model.lazy.netty.server.permeate.port.pool.LazyNettyServerPermeatePortPool; -import org.wu.framework.lazy.orm.database.lambda.stream.lambda.LazyLambdaStream; + import java.util.List; -import org.wu.framework.lazy.orm.database.lambda.domain.LazyPage; +import java.util.stream.Collectors; /** * describe 服务端内网渗透端口池 * @@ -128,7 +128,7 @@ public class LazyNettyServerPermeatePortPoolRepositoryImpl implements LazyNett @Override public Result remove(LazyNettyServerPermeatePortPool lazyNettyServerPermeatePortPool) { LazyNettyServerPermeatePortPoolDO lazyNettyServerPermeatePortPoolDO = LazyNettyServerPermeatePortPoolConverter.INSTANCE.fromLazyNettyServerPermeatePortPool(lazyNettyServerPermeatePortPool); - // lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyNettyServerPermeatePortPoolDO)); + lazyLambdaStream.delete(LazyWrappers.lambdaWrapperBean(lazyNettyServerPermeatePortPoolDO)); return ResultFactory.successOf(); } diff --git a/wu-lazy-cloud-heartbeat-start/wu-lazy-cloud-heartbeat-server-start/src/main/resources/application-dev.yml b/wu-lazy-cloud-heartbeat-start/wu-lazy-cloud-heartbeat-server-start/src/main/resources/application-dev.yml index 64ac3a8..6f937db 100644 --- a/wu-lazy-cloud-heartbeat-start/wu-lazy-cloud-heartbeat-server-start/src/main/resources/application-dev.yml +++ b/wu-lazy-cloud-heartbeat-start/wu-lazy-cloud-heartbeat-server-start/src/main/resources/application-dev.yml @@ -24,6 +24,6 @@ spring: driver-class-name: com.mysql.cj.jdbc.Driver --- -logging: - level: - root: DEBUG \ No newline at end of file +#logging: +# level: +# root: DEBUG \ No newline at end of file