diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs
index 6b6dee1..33b9fbf 100644
--- a/Properties/AssemblyInfo.cs
+++ b/Properties/AssemblyInfo.cs
@@ -32,5 +32,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.9")]
-[assembly: AssemblyFileVersion("1.0.0.9")]
+[assembly: AssemblyVersion("1.0.0.10")]
+[assembly: AssemblyFileVersion("1.0.0.10")]
diff --git a/XRFAgent.csproj b/XRFAgent.csproj
index f97f3b0..20336ad 100644
--- a/XRFAgent.csproj
+++ b/XRFAgent.csproj
@@ -25,7 +25,7 @@
false
false
true
- 9
+ 10
1.0.0.%2a
false
true
@@ -119,7 +119,7 @@
6.0.0
- 8.0.3
+ 8.0.4
diff --git a/modCommand.cs b/modCommand.cs
index c1a6422..77ed628 100644
--- a/modCommand.cs
+++ b/modCommand.cs
@@ -30,9 +30,11 @@ public static void Handle(string inputCommand, string inputSource, string reques
if (inputData[1] == "installed" && inputData[2] == "software") { outputResponse = modSystem.GetInstalledSoftware(); }
else if (inputData[1] == "system" && inputData[2] == "details") { outputResponse = modSystem.GetSystemDetails(); } break;
case "disable" when inputData.Length == 2:
- if (inputData[1] == "autoupdate") { outputResponse = modUpdate.DisableAutoupdate(); } break;
+ if (inputData[1] == "autoupdate") { outputResponse = modUpdate.DisableAutoupdate(); }
+ if (inputData[1] == "rundialog") { outputResponse = modSystem.ConfigureRunDialog(inputData[0]); } break;
case "enable" when inputData.Length == 2:
- if (inputData[1] == "autoupdate") { outputResponse = modUpdate.EnableAutoupdate(); } break;
+ if (inputData[1] == "autoupdate") { outputResponse = modUpdate.EnableAutoupdate(); }
+ if (inputData[1] == "rundialog") { outputResponse = modSystem.ConfigureRunDialog(inputData[0]); } break;
case "hac":
case "hacontroller":
string inputCommandTrimmed = inputCommand.Remove(0, inputData[0].Length + 1);
diff --git a/modSystem.cs b/modSystem.cs
index 9f05195..d57d95d 100644
--- a/modSystem.cs
+++ b/modSystem.cs
@@ -216,5 +216,26 @@ public static string ShutdownHost()
return "Shutdown failed";
}
}
+
+ ///
+ /// Configures the system Run dialog, which is frequently used by phone scammers
+ ///
+ /// (string) Action to take
+ /// (string) Response
+ public static string ConfigureRunDialog(string action)
+ {
+ int newvalue = 0;
+ if (action == "disable") { newvalue = 1; }
+ RegistryKey explorerPolicies = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer", true);
+ explorerPolicies.SetValue("NoRun", newvalue, RegistryValueKind.DWord);
+ explorerPolicies.Close();
+
+ modDatabase.Config ConfigObj = new modDatabase.Config { Key = "Security_RunDialog", Value = action + "d" };
+ modDatabase.AddOrUpdateConfig(ConfigObj);
+ string SystemDetailsJSON = "{\"systemdetails\":[" + JsonSerializer.Serialize(ConfigObj) + "]}";
+ modSync.SendMessage("server", "nodedata", "systemdetails", SystemDetailsJSON);
+
+ return "Run dialog " + action + "d";
+ }
}
}