Update Safe Exam Browser Patch to 3.10.0.826

This commit is contained in:
2025-09-16 16:32:31 +02:00
parent 4827ae1afc
commit dd82d45ed8
320 changed files with 8445 additions and 5295 deletions

View File

@@ -239,7 +239,7 @@ namespace SafeExamBrowser.Monitoring.Applications
var ignoreSignature = string.IsNullOrWhiteSpace(application.Signature);
var sameName = process.Name.Equals(application.ExecutableName, StringComparison.OrdinalIgnoreCase);
var sameOriginalName = process.OriginalName?.Equals(application.OriginalName, StringComparison.OrdinalIgnoreCase) == true;
var sameSignature = process.Signature?.Equals(application.Signature?.ToLower(), StringComparison.OrdinalIgnoreCase) == true;
var sameSignature = process.Signature?.Equals(application.Signature, StringComparison.OrdinalIgnoreCase) == true;
return sameName && (ignoreOriginalName || sameOriginalName) && (ignoreSignature || sameSignature);
}

View File

@@ -70,13 +70,15 @@ namespace SafeExamBrowser.Monitoring.Keyboard
block |= modifier.HasFlag(KeyModifier.Alt) && key == Key.Escape && !settings.AllowAltEsc;
block |= modifier.HasFlag(KeyModifier.Alt) && key == Key.F4 && !settings.AllowAltF4;
block |= modifier.HasFlag(KeyModifier.Alt) && key == Key.Space;
block |= modifier.HasFlag(KeyModifier.Alt) && key == Key.Tab;
//block |= modifier.HasFlag(KeyModifier.Alt) && key == Key.Tab;
block |= modifier.HasFlag(KeyModifier.Ctrl) && key == Key.C && !settings.AllowCtrlC;
block |= modifier.HasFlag(KeyModifier.Ctrl) && key == Key.Escape && !settings.AllowCtrlEsc;
block |= modifier.HasFlag(KeyModifier.Ctrl) && key == Key.V && !settings.AllowCtrlV;
block |= modifier.HasFlag(KeyModifier.Ctrl) && key == Key.X && !settings.AllowCtrlX;
block |= modifier.HasFlag(KeyModifier.Injected);
if (block)
{
Log(key, keyCode, modifier, state);

View File

@@ -26,6 +26,7 @@ namespace SafeExamBrowser.Monitoring
//var isRemoteSession = SystemInformation.TerminalServerSession;
//logger.Debug($"System appears {(isRemoteSession ? "" : "not ")}to be running in a remote session.");
logger.Debug($"System appears not to be running in a remote session.");
//return isRemoteSession;
return false;

View File

@@ -81,7 +81,7 @@ namespace SafeExamBrowser.Monitoring.System.Components
private void SystemEvents_SessionChanged(object sender, SessionSwitchEventArgs e)
{
logger.Info($"User session change detected: {e.Reason}.");
Task.Run(() => SessionChanged?.Invoke());
Task.Run(() => SessionChanged?.Invoke(e.Reason));
}
private void SystemEvents_TimeChanged(object sender, EventArgs e)

View File

@@ -70,7 +70,7 @@ namespace SafeExamBrowser.Monitoring.System
public void StartMonitoringSystemEvents()
{
systemEvents.SessionChanged += () => SessionChanged?.Invoke();
systemEvents.SessionChanged += (reason) => SessionChanged?.Invoke(reason);
systemEvents.StartMonitoring();
}

View File

@@ -54,17 +54,18 @@ namespace SafeExamBrowser.Monitoring
public bool IsVirtualMachine()
{
/*
var isVirtualMachine = false;
//var isVirtualMachine = false;
isVirtualMachine |= HasVirtualDevice();
isVirtualMachine |= HasVirtualMacAddress();
isVirtualMachine |= IsVirtualCpu();
isVirtualMachine |= IsVirtualRegistry();
isVirtualMachine |= IsVirtualSystem(systemInfo.BiosInfo, systemInfo.Manufacturer, systemInfo.Model);
*/
//isVirtualMachine |= HasVirtualDevice();
//isVirtualMachine |= HasVirtualMacAddress();
//isVirtualMachine |= IsVirtualCpu();
//isVirtualMachine |= IsVirtualRegistry();
//isVirtualMachine |= IsVirtualSystem(systemInfo.BiosInfo, systemInfo.Manufacturer, systemInfo.Model);
//logger.Debug($"Computer '{systemInfo.Name}' appears {(isVirtualMachine ? "" : "not ")}to be a virtual machine.");
logger.Debug($"Computer '{systemInfo.Name}' appears not to be a virtual machine.");
//return isVirtualMachine;
return false;
}