mirror-ac/server/Database/Model/Model.cs

137 lines
5.1 KiB
C#
Raw Normal View History

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
2023-09-09 17:36:19 +02:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
namespace server.Database.Model
{
public class User
{
public int UserId { get; set; }
public ulong Steam64Id { get; set; }
public bool IsBanned { get; set; }
public virtual ICollection<HardwareConfiguration> HardwareConfigurations { get; set; }
2023-09-21 16:01:47 +02:00
public virtual ICollection<Report> Reports { get; set; }
2023-09-09 17:36:19 +02:00
}
public class HardwareConfiguration
{
public int HardwareId { get; set; }
public virtual User User { get; set; }
public bool IsBanned { get; set; }
2023-09-09 19:26:19 +02:00
public string DeviceDrive0Serial { get; set; }
public string MotherboardSerial { get; set; }
2023-09-09 17:36:19 +02:00
}
2023-09-11 19:39:00 +02:00
2023-09-21 16:01:47 +02:00
public class Report
2023-09-11 19:39:00 +02:00
{
public int ReportId { get; set; }
public virtual User User { get; set; }
2023-09-21 16:01:47 +02:00
public int ReportCode { get; set; }
public virtual ICollection<ReportTypeIllegalHandleOperation> ReportTypeIllegalHandleOperations { get; set; }
public virtual ICollection<ReportTypeStartAddress> ReportTypeStartAddresses { get; set; }
public virtual ICollection<ReportTypePageProtection> ReportTypePageProtections { get; set; }
public virtual ICollection<ReportTypePatternScan> ReportTypePatternScans { get; set; }
public virtual ICollection<ReportTypeNmiCallback> ReportTypeNmiCallbacks { get; set; }
public virtual ICollection<ReportTypeSystemModuleValidation> ReportTypeSystemModuleValidations { get; set; }
2023-09-22 14:29:51 +02:00
public virtual ICollection<ReportTypeHiddenSystemThread> ReportTypeHiddenSystemThreads { get; set; }
public virtual ICollection<ReportTypeAttachProcess> ReportTypeAttachProcesses { get; set; }
public virtual ICollection<ReportTypeInvalidProcessAllocation> ReportTypeInvalidProcessAllocations { get; set; }
public virtual ICollection<ReportTypeProcessModuleIntegrityCheck> ReportTypeProcessModuleIntegrityChecks { get; set; }
2023-09-21 16:01:47 +02:00
}
public class ReportTypeIllegalHandleOperation
{
public int ReportNumber { get; set; }
public virtual Report Report { get; set; }
2023-09-11 19:39:00 +02:00
public int IsKernelHandle { get; set; }
public uint ProcessId { get; set; }
public uint ThreadId { get; set; }
public uint DesiredAccess { get; set; }
public string ProcessName { get; set; }
}
2023-09-12 17:14:23 +02:00
2023-09-21 16:01:47 +02:00
public class ReportTypeStartAddress
{
public int ReportNumber { get; set; }
public virtual Report Report { get; set; }
public int ThreadId { get; set; }
public long ThreadStartAddress { get; set; }
}
public class ReportTypePageProtection
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public ulong PageBaseAddress { get; set; }
public long AllocationProtection { get; set; }
public long AllocationState { get; set; }
public long AllocationType { get; set; }
}
public class ReportTypePatternScan
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public int SignatureId { get; set; }
public ulong Address { get; set; }
}
public class ReportTypeNmiCallback
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public int WereNmisDisabled { get; set; }
public ulong KThreadAddress { get; set; }
public ulong InvalidRip { get; set; }
}
2023-09-12 17:14:23 +02:00
2023-09-21 16:01:47 +02:00
public class ReportTypeSystemModuleValidation
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public int ReportType { get; set; }
public long DriverBaseAddress { get; set; }
public long DriverSize { get; set; }
public string ModuleName { get; set; }
}
2023-09-22 14:29:51 +02:00
public class ReportTypeHiddenSystemThread
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public int FoundInKThreadList { get; set; }
public int FoundInPspCidTable { get; set; }
public long ThreadAddress { get; set; }
public int ThreadId { get; set; }
public byte[] ThreadStructure { get; set; }
}
public class ReportTypeAttachProcess
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public int ThreadId { get; set; }
public long ThreadAddress { get; set; }
}
public class ReportTypeInvalidProcessAllocation
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public byte[] ProcessStructure { get; set; }
}
public class ReportTypeProcessModuleIntegrityCheck
{
public virtual Report Report { get; set; }
public int ReportNumber { get; set; }
public long ModuleBaseAddress { get; set; }
public int ModuleSize { get; set; }
public string ModuleName { get; set; }
}
}