mirror of
https://github.com/vxunderground/MalwareSourceCode.git
synced 2024-12-20 18:36:10 +00:00
f2ac1ece55
add
68 lines
2.8 KiB
C#
68 lines
2.8 KiB
C#
// Decompiled with JetBrains decompiler
|
|
// Type: Tvsu.Service.Server.ServiceInstaller
|
|
// Assembly: SUService, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
|
|
// MVID: C794206D-ECC0-4CFA-AB4E-5C06FB2FD4CC
|
|
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00001-msil\Trojan.Win32.Patched.mf-57a055e0e8642f449b4d27fa8ff9cbc0f8367d8cdd69ab6deeca9a801697bce1.exe
|
|
|
|
using System;
|
|
using System.ComponentModel;
|
|
using System.Configuration.Install;
|
|
using System.Management;
|
|
using System.ServiceProcess;
|
|
using Tvsu.Service.Common.Util;
|
|
|
|
namespace Tvsu.Service.Server
|
|
{
|
|
[RunInstaller(true)]
|
|
public class ServiceInstaller : Installer
|
|
{
|
|
private System.ServiceProcess.ServiceInstaller serviceInstaller1;
|
|
private ServiceProcessInstaller serviceProcessInstaller1;
|
|
|
|
public ServiceInstaller() => this.InitializeComponent();
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.serviceInstaller1 = new System.ServiceProcess.ServiceInstaller();
|
|
this.serviceProcessInstaller1 = new ServiceProcessInstaller();
|
|
this.Installers.Clear();
|
|
this.serviceInstaller1.DisplayName = "System Update";
|
|
this.serviceInstaller1.ServiceName = "SUService";
|
|
this.serviceInstaller1.StartType = ServiceStartMode.Automatic;
|
|
this.serviceInstaller1.BeforeUninstall += new InstallEventHandler(this.serviceInstaller1_BeforeUninstall);
|
|
this.serviceInstaller1.AfterInstall += new InstallEventHandler(this.serviceInstaller1_AfterInstall);
|
|
this.serviceProcessInstaller1.Account = ServiceAccount.LocalSystem;
|
|
this.serviceProcessInstaller1.Password = (string) null;
|
|
this.serviceProcessInstaller1.Username = (string) null;
|
|
this.Installers.AddRange(new Installer[2]
|
|
{
|
|
(Installer) this.serviceProcessInstaller1,
|
|
(Installer) this.serviceInstaller1
|
|
});
|
|
}
|
|
|
|
private void serviceInstaller1_AfterInstall(object sender, InstallEventArgs e)
|
|
{
|
|
TvsuService instance = TvsuService.Instance;
|
|
try
|
|
{
|
|
new ManagementScope("root\\CIMV2", new ConnectionOptions()
|
|
{
|
|
Impersonation = ImpersonationLevel.Impersonate
|
|
}).Connect();
|
|
ManagementObject managementObject = new ManagementObject("Win32_Service.Name='" + instance.ServiceName + "'");
|
|
ManagementBaseObject methodParameters = managementObject.GetMethodParameters("Change");
|
|
methodParameters["DesktopInteract"] = (object) true;
|
|
managementObject.InvokeMethod("Change", methodParameters, (InvokeMethodOptions) null);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
ServiceLogger.Instance.Severe("Error using WMI to allow interact with the service", ex);
|
|
}
|
|
instance.TvsuServiceController.Start();
|
|
}
|
|
|
|
private void serviceInstaller1_BeforeUninstall(object sender, InstallEventArgs e) => TvsuService.Instance.TvsuServiceController.Stop();
|
|
}
|
|
}
|