From bfddca152a36291cc2cd506cb48f08d3d8caf1c1 Mon Sep 17 00:00:00 2001 From: h1wind Date: Thu, 6 Feb 2025 19:04:35 +0800 Subject: [PATCH 1/2] fix: Memory leaks occur when the returned data is not used --- payloads/Demon/src/core/Transport.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/payloads/Demon/src/core/Transport.c b/payloads/Demon/src/core/Transport.c index f02ec880..d8d45c0e 100644 --- a/payloads/Demon/src/core/Transport.c +++ b/payloads/Demon/src/core/Transport.c @@ -61,8 +61,11 @@ BOOL TransportSend( LPVOID Data, SIZE_T Size, PVOID* RecvData, PSIZE_T RecvSize if ( HttpSend( &Send, &Resp ) ) { - if ( RecvData ) + if ( RecvData ) { *RecvData = Resp.Buffer; + } lse { + Instance->Win32.LocalFree( Resp.Buffer ); + } if ( RecvSize ) *RecvSize = Resp.Length; From 316ad676ad0f1d409a1e1a77c292d4e91f17d6a3 Mon Sep 17 00:00:00 2001 From: h1wind Date: Fri, 7 Feb 2025 13:44:44 +0800 Subject: [PATCH 2/2] Update Transport.c --- payloads/Demon/src/core/Transport.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/payloads/Demon/src/core/Transport.c b/payloads/Demon/src/core/Transport.c index d8d45c0e..de54bef5 100644 --- a/payloads/Demon/src/core/Transport.c +++ b/payloads/Demon/src/core/Transport.c @@ -63,7 +63,7 @@ BOOL TransportSend( LPVOID Data, SIZE_T Size, PVOID* RecvData, PSIZE_T RecvSize { if ( RecvData ) { *RecvData = Resp.Buffer; - } lse { + } else { Instance->Win32.LocalFree( Resp.Buffer ); }