AI-assisted security review of GTweak: high-risk modules and trust-improvement suggestions #112
wannabexaker
started this conversation in
General
Replies: 1 comment 2 replies
|
😕 |
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
GTweak Security and Behavior Scan Report
Report date: 2026-05-12
Workspace reviewed:
C:\Projects\GTweak-mainObserved executable: local release executable copy, anonymized as
<UserProfile>\Desktop\GTweak.exeExecutable SHA256:
29AC8269EBFBCF468590757690E3B688D6EDBE1233A13D3451E73605E520A68EExecutable signature status: Not digitally signed
Assessment stance: This report does not assume Microsoft is trustworthy because it is a large vendor, and it does not assume GTweak is malicious because it is unsigned. The assessment is based on observable source code behavior, UI structure visible in the repository, and limited local host evidence.
Assessment scope: Expanded static source audit plus limited live-host checks. This is not a full forensic malware-lab analysis.
Executive Summary
GTweak is a high-privilege Windows debloating, privacy, maintenance, activation, and system modification utility. The reviewed source and UI structure show an application whose main workflow is interactive: it detects the current Windows state, displays many controls, and lets the user choose specific actions through toggles, buttons, import profiles, addon scripts, and download buttons.
The UI/source structure materially changes the interpretation of several findings. Most heavy actions are not shown as silent automatic behavior. Defender disabling, UAC changes, Windows Update pause/disable behavior, service changes, app removal, restore point changes, script execution, and tool downloads are exposed as user-controlled UI actions. The application can perform those actions, but the evidence does not support saying that it automatically disables Defender, disables UAC, removes apps, or stops services just because it is launched.
I did not find source-code evidence of classic spyware behavior such as credential theft, browser profile theft, wallet theft, keylogging, screen/audio capture for exfiltration, hidden remote command execution, or automatic upload of personal files. I also did not observe active GTweak network connections or GTweak persistence entries on the live system during the audit.
However, GTweak still contains behavior that is legitimately suspicious from a security-tooling perspective:
NSudoLC.gzandDisablingWD.gz, which are decompressed to disk when needed.Winlogon\Shell, set Safe Mode boot withbcdedit, reboot the system, and run a helper during Safe Mode unlock/recovery..ps1,.bat,.cmd, and.regfiles, optionally as TrustedInstaller.These behaviors are enough to explain antivirus detections such as "Disabler", "HackTool", or "Trojan-like" without proving malicious intent. The strongest conclusion is:
GTweak does not look like a conventional backdoor or data stealer from the reviewed evidence. It is better described as a powerful local system-control tool that intentionally gives the user access to security-sensitive Windows changes. Its main risk is local system integrity, not observed spying.
Evidence Weighting
Not every suspicious-looking behavior deserves the same weight.
Highest-weight findings:
These are high-impact because they affect security boundaries, boot/login behavior, licensing state, or arbitrary code execution.
Medium-weight findings:
These are security-relevant, but their risk depends strongly on user action, configuration, and source trust.
Lower-weight findings:
HKCU\Software\GTweak.These should be documented, but they are not strong malware indicators by themselves based on the reviewed code.
Scope and Methodology
This report now covers a broader static audit than the initial targeted review.
What was reviewed:
.Source\GTweak.What was not performed:
.exe.Therefore, this is an expanded static source/security audit with limited live validation, not an absolute proof of safety.
Automatic vs User-Triggered Behavior
This distinction matters.
Automatic behavior observed in source startup flow:
User-triggered behavior exposed by UI:
The security report therefore uses "can" or "capability" for most invasive actions. The exception is the startup Defender exclusion attempt and startup checks, which are automatic according to source code.
UI Evidence
The repository UI files and reviewed local UI context show the application as an interactive control panel:
Local Live-System Findings
The following was observed after GTweak had been run on the current PC. Personal account details have been anonymized.
GTweak.exewas running from<UserProfile>\Desktop\GTweak.exe.Runlocations.EnableLUA=1,ConsentPromptBehaviorAdmin=5,PromptOnSecureDesktop=1.mpssvcwas running and automatic.TrustedInstallerwas stopped/manual at audit time.C:\ProgramData\GTweakandC:\Windows\System32\Config\WDBackup_GTweakwere not present at audit time.C:\Windows\System32\drivers\etc\hostscontained13960.0.0.0blocking entries.C:\Windows\System32\drivers\etc\hosts (Default GTweak)existed.Interpretation: the live system did not show evidence that GTweak had disabled Defender, disabled UAC, installed persistence, or maintained active outbound connections at the time checked. The confirmed local change was the hosts-file blocklist and GTweak hosts backup, which is consistent with the Confidentiality page's Microsoft/telemetry domain-blocking feature.
Build and Release Workflow
The repository includes
.github/workflows/build.yaml, which:GTweak.slninRelease..Source/GTweak/bin/Release/as a build artifact.This improves transparency because the project can be built from source. It does not fully prove that the public release
.exeis reproducibly identical to the source tree unless release signing, reproducible build hashes, or artifact provenance are provided.The reviewed executable is unsigned. Unsigned software is not automatically malware, but it means Windows cannot verify publisher identity through Authenticode. For a tool that requests administrator rights and can alter Defender/UAC/services, the lack of a signature increases supply-chain trust risk.
License Clarification
There are two separate "license" topics in this project.
GTweak Project License
The repository itself is licensed under the BSD 3-Clause License in
LICENSE.Meaning: the author permits redistribution and modification in source or binary form as long as the copyright notice, conditions, and disclaimer are preserved, and the author's/contributors' names are not used for endorsement without permission.
Security relevance: this is a permissive open-source license. It does not prove safety, authenticity, or release-binary integrity. It only describes legal permission to use/redistribute the GTweak code.
Windows License / Activation Module
GTweak also has a "Windows Activation" card in the Utilities page. This is unrelated to the BSD license of the GTweak code.
Trigger: activation is user-triggered by pressing the "Activate" button. On startup, GTweak only checks activation status through
WinLicenseHandler.LicenseStatus().Startup check behavior:
LicenseStatus()first queries WMI:SoftwareLicensingProduct WHERE ApplicationID = '55c92734-d682-4d71-983e-d6ec3f16059f' and LicenseStatus = 1If that WMI query throws a
COMException, the fallback command runsslmgr.vbs /atoand checks the result. That means the normal startup path is a license-status check, but the error fallback can attempt standard Windows activation against Microsoft's normal activation mechanism.Activation button behavior:
WinLicenseHandler.StartActivation():slmgr.vbs /ipk.US.ClipSVC,wlidsvc,sppsvc,KeyIso,LicenseManager, andWinmgmt.GenuineTicket.xmlfromResources\Tickets.xml.clipup -v -o.slmgr.vbs /ato.kms.digiboy.iras the KMS host, and runs activation again.Why it exists: the feature is intended to activate Windows through HWID-style ticket activation first, then KMS fallback.
Why it is high risk: this is outside the normal retail/OEM/Microsoft licensing flow, contacts a third-party KMS host if fallback is used, and modifies licensing artifacts/services. It is not needed for privacy, debloating, telemetry blocking, app removal, or system UI control.
Security interpretation: I do not see this module stealing license keys or exfiltrating data. The concern is legal/trust/operational risk, not observed spying.
Application Workflow
Startup Flow
Source evidence:
App.xaml.csWindows\LoadingWindow.xaml.csUtilities\Controls\RunGuard.csUtilities\Helpers\TrustedInstaller.csapp.manifestStartup sequence:
App_Startupinitializes settings, theme, language, single-instance behavior, OS compatibility checks, administrator checks, and device monitoring.LoadingWindow.BackgroundWorker_DoWork()performs staged startup work:RunGuard.CheckingDefenderExclusions().MainWindowopens with the modules shown in the UI source: Utilities, Confidentiality, Interface, Applications, Services, System, Addons, and Toolset.The application manifest requests:
requestedExecutionLevel level="requireAdministrator"That means Windows should prompt for administrator rights before normal operation.
Settings Persistence
GTweak stores its own UI/config settings under:
HKCU\Software\GTweakObserved/defined settings include:
EnableNotificationsEnableAutoUpdateEnableTopMostEnableIpBlurEnableSoundVolumeLevelLanguageThemeAddonsPathDownloadPathThis is normal application settings persistence. I did not observe GTweak creating autorun persistence for itself.
Import Profile Workflow
GTweak supports exporting/importing
.iniprofiles.How:
SettingsEngine.OpenFileConfig()accepts a selected.inionly if it containsGTweak, authorGreedeks,FormatVersion, and version4.ImportWindow.ApplyTweaksWithProgress()then applies the listed tweak values.Why: allow users to reuse selected tweak sets.
Risk: importing a config can apply many user-triggered toggles in bulk. This is not hidden persistence, but it can make high-impact changes faster than clicking individual toggles. The code intentionally applies
SystemTglButton3last, which is the Defender-related control.Network Behavior
Public IP and Connectivity Checks
GTweak uses public network checks for connectivity and IP display. Code references include:
free.freeipapi.comapi.db-ip.comipapi.coreallyfreegeoip.orgget.geojs.ioapi.ip.sbwhois.pconline.com.cnip-api.comHow:
NetworkProvider/hardware provider logic queries these services and stores/display public IP/country-style information.Why: The System Information page displays network/system information, including the public IP address.
Risk: This discloses the user's public IP to third-party IP lookup services. That is not equivalent to spying by itself, but it is a privacy-relevant network call.
Update Checks
GTweak checks latest versions through:
https://api.github.com/repos/greedeks/gtweak/releases/latesthttps://gitlab.com/api/v4/projects/Greedeks%2Fgtweak-ota-server/releasesHow:
NetworkProvider.ValidateVersionUpdates()resolves the latest version and update download URL.Why: Show update availability and support updating GTweak.
Risk: Normal updater behavior, but still an outbound startup/network check if enabled.
Toolset Downloads
The Toolset page loads
Resources\AppsCatalog.xml, which lists third-party tools such as NVIDIA App, AMD drivers, Rufus, Autoruns, CPU-Z, GPU-Z, CrystalDiskInfo, OCCT, and related utilities.How:
ToolsetDownloadServiceresolves download URLs from GitHub release APIs, SourceForge metadata/RSS, vendor pages, and TechPowerUp form flows. Downloads occur through explicit "Download" buttons shown in the Toolset screenshot.Why: Convenience downloader for known tools.
Risk: It downloads executable/archive content from third-party sources. The risk depends on those upstream sources and URL matching logic. This is not silent persistence based on the reviewed UI/source.
Self-Update Download
GTweak has an update window that can download a newer release and replace the running executable.
How:
UpdateWindow.xaml.csusesWebClient.DownloadFileAsync()against the resolved update URL, then runs a command that kills the current process, deletes the old executable, renames the downloaded temporary file, and restarts GTweak.Why: self-update.
Risk: because the public executable is unsigned and the report did not verify reproducible builds, the update path depends heavily on GitHub/GitLab account and transport trust. I did not find evidence that update downloads are hidden, but the trust model is weak compared with signed updates.
Activation Network Behavior
Windows activation logic includes a KMS fallback:
slmgr.vbs //b /skms kms.digiboy.irHow:
WinLicenseHandler.csinstalls keys withslmgr.vbs, writes GenuineTicket XML from embedded resources, runsclipup, and falls back to KMS activation.Why: Activate Windows when standard activation does not succeed.
Risk: This is a high legal/trust-risk area. It contacts a third-party KMS host and changes licensing state. It is user-triggered from the Utilities activation button, not needed for privacy/debloating.
Suspicious or High-Risk Findings
1. Startup Defender Exclusion Attempt
Trigger: Automatic during startup.
What it can do: Attempt to add the current GTweak executable/path to Microsoft Defender exclusions.
How it does it:
RunGuard.CheckingDefenderExclusions()runs a PowerShell command throughCommandExecutor.RunCommandAsTrustedInstaller(). It callsGet-MpPreference, checksExclusionProcessandExclusionPath, and callsAdd-MpPreferenceif the current GTweak path is missing.Where it happens:
Utilities\Controls\RunGuard.cs, called byWindows\LoadingWindow.xaml.csduring the loading sequence.Likely purpose: Reduce Defender interference because GTweak contains many actions Defender commonly flags: Defender tampering, service changes, protected-file ownership changes, NSudo/TrustedInstaller execution, and app removal.
Why it is suspicious: Malware often adds itself to Defender exclusions to avoid scanning. A system-control tool may do the same to avoid false positives, but it is still a strong trust-boundary crossing because this startup action is not presented as a separate explicit user choice in the reviewed source flow.
Local evidence: Defender remained active during audit. Exclusion visibility could not be conclusively verified because Defender exclusion reads returned access restrictions.
2. TrustedInstaller, NSudo, and Embedded Helper Executables
Trigger: Mixed. Startup starts the TrustedInstaller service automatically. Most actual privileged commands are tied to user-selected toggles/actions.
What it can do: Run commands/processes with privileges beyond a normal Administrator context.
How it does it:
TrustedInstaller.csuses service/process APIs, token/privilege APIs, parent-process manipulation, andCreateProcessmechanics.CommandExecutor.RunCommandAsTrustedInstaller()routes commands through this mechanism. Defender-management flows also decompress/useNSudoLC.exeandDisablingWD.exefrom embedded gzip resources under:C:\Windows\System32\Config\WDBackup_GTweakThe relevant resources are defined in
Properties\Resources.resxasNSudoLC.gzandDisablingWD.gz, and written byArchiveManager.Unarchive().Where it is used: Defender management, Windows Update/service changes, file ownership changes, WindowsApps deletion, cleanup routines, Addons execution when selected, and scheduled-task changes.
Likely purpose: Many Windows files, registry keys, and services are protected even from Administrators. TrustedInstaller-level execution is used to bypass those restrictions and apply changes Microsoft does not expose cleanly.
Why it is suspicious: This is powerful security-tampering capability. It is not hidden in source, and the UI exposes many related controls, but if the binary were compromised or if a user runs unsafe addons, the privilege level could cause severe damage.
3. Defender, SmartScreen, VBS, Tamper Protection, Safe Mode, and Winlogon Controls
Trigger: User-triggered from the System page's Defender-related toggle and related routines. The UI source exposes this as a control, not an automatic action.
What it can do: Disable or re-enable Microsoft Defender and related security components.
How it does it:
NSudoLC.exeandDisablingWD.exe.Set-MpPreferencecommands.DisableAntiSpyware, realtime protection policy keys, SmartScreen keys, cloud/MAPS reporting settings, and VBS-related keys.Startvalues for Defender-related services and drivers.takeown,icacls, and file renames to block or restore security executables.HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shellto:explorer.exe, <DefenderBackup>\DisablingWD.exe /unlockbcdedit /set {current} safeboot minimal.shutdown /r /f /t 0.Where it happens:
Utilities\Tweaks\DefenderManager\WindowsDefender.csandUtilities\Tweaks\SystemTweaks.cs.Likely purpose: Give users full control over Defender/SmartScreen/VBS when they intentionally reject those components.
Why it is suspicious: The behavior directly reduces endpoint security and overlaps with malware tradecraft. The Winlogon Shell modification plus Safe Mode boot is especially sensitive because it affects the login/session startup path. This explains antivirus detections. The key correction is that the reviewed evidence shows this as a capability exposed by UI/import profile, not something proven to have run automatically on this machine.
Local evidence: Defender protections were still enabled during audit.
4. UAC Control
Trigger: User-triggered from the System page's UAC toggle.
What it can do: Disable or re-enable User Account Control behavior.
How it does it: Writes values under:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Systemincluding
EnableLUA,ConsentPromptBehaviorAdmin,PromptOnSecureDesktop, and related keys.Where it happens:
Utilities\Tweaks\SystemTweaks.cs.Likely purpose: Remove prompts and friction from administrator actions.
Why it is suspicious: Disabling UAC weakens local privilege boundaries. It may be desired by some users, but it reduces safety.
Local evidence: UAC remained enabled during audit.
5. Windows Update and Service Controls
Trigger: User-triggered through System and Services page toggles, or through imported tweak profiles.
What it can do: Pause/disable Windows Update behavior and change many Windows service states.
How it does it:
NoAutoUpdateand pause fields.Where it happens:
Utilities\Tweaks\SystemTweaks.cs,Utilities\Tweaks\ServicesTweaks.cs,Utilities\Managers\TaskSchedulerManager.cs,Utilities\Helpers\RegistryHelp.cs, and path definitions inPathLocator.cs.Likely purpose: Stop forced updates, unwanted background services, update prompts, and Microsoft-controlled background activity.
Why it is suspicious: Blocking updates/services may improve user control but can leave vulnerabilities unpatched or break dependent Windows features.
Local evidence: Windows Update did not appear fully disabled in the live check.
6. Hosts File and Firewall Domain Blocking
Trigger: User-triggered from the Confidentiality page's "Network access to spy Microsoft domains" style privacy toggle. It may also be applied by an imported configuration profile.
What it can do: Block Microsoft, telemetry, advertising, analytics, and related domains/IPs.
How it does it:
hosts (Default GTweak).0.0.0.0 domainentries fromResources\Blocklist.txt.GTweak - Spy domain nameswith remote IP blocks associated with Microsoft data-collection endpoints.Where it happens:
Utilities\Tweaks\ConfidentialityTweaks.cs,Utilities\Managers\FirewallManager.cs, andResources\Blocklist.txt.Likely purpose: Reduce Windows/Microsoft/advertising telemetry and prevent selected endpoints from resolving or connecting.
Why it is suspicious: Hosts/firewall modification is powerful. In malicious software, it can block security updates or redirect traffic. In the reviewed GTweak behavior, the observed entries are blocklist-style
0.0.0.0mappings, not credential-stealing redirects.Local evidence: This was definitely applied on the live system: the hosts file had
1396blocking entries and a GTweak backup file existed.7. App Removal and WindowsApps Deletion
Trigger: User-triggered through the Applications page by clicking app icons/actions. The UI warns that selected apps may be deleted permanently.
What it can do: Remove bundled/provisioned apps such as OneDrive, Edge, Widgets, Teams, Copilot, Cortana, Xbox apps, and similar packages.
How it does it:
Get-AppxPackage -AllUsers | Remove-AppxPackage.Remove-AppxProvisionedPackage.C:\Program Files\WindowsAppsdirectories.Where it happens:
Utilities\Tweaks\UninstallingPakages.cs.Likely purpose: Remove Microsoft-bundled applications and provisioning so they do not return for all users.
Why it is suspicious: Removing provisioned apps can break WebView-dependent apps, widgets, Store components, sign-in flows, or update paths. It is invasive but consistent with debloating.
8. Addons Script Runner
Trigger: User-triggered only after selecting a folder and running a listed script. The Addons UI requires folder selection and exposes a "Run as TrustedInstaller" checkbox.
What it can do: Run
.ps1,.bat,.cmd, and.regfiles from a selected folder, optionally as TrustedInstaller.How it does it:
.regthroughreg.exe import..ps1through PowerShell with-ExecutionPolicy Bypass..bat/.cmdthroughcmd.Where it happens:
Core\ViewModel\AddonsViewModel.csandView\AddonsView.xaml.Likely purpose: Advanced custom tweak support.
Why it is suspicious: This is an execution surface, not a hidden backdoor. The risk comes from scripts placed in the folder. Running an untrusted addon here is equivalent to giving that script administrator or TrustedInstaller-level control.
8a. Low-Level Keyboard Hook in Overlay Window
Trigger: User-triggered operations that display
OverlayWindow, such as activation/restore/long-running workflows.What it can do: Install a low-level keyboard hook while the overlay is displayed.
How it does it:
DisablingWinKeys.cscallsSetWindowsHookEx(13, ...)and checks keys such as left/right Windows key, Alt+Tab, Ctrl+Esc, and Alt+Esc. It returns1for those combinations, blocking them.Where it happens:
Windows\OverlayWindow.xaml.csandUtilities\Helpers\DisablingWinKeys.cs.Likely purpose: Prevent users from switching away while a blocking overlay is active.
Why it is suspicious: Keyboard hooks are sensitive APIs and often appear in keyloggers. In this implementation, I did not find code that records or exfiltrates keystrokes; it appears to suppress specific system key combinations. It should still be documented because security scanners reasonably flag low-level keyboard hooks.
9. Windows Activation Module
Trigger: User-triggered from the Utilities page's "Activate" button.
What it can do: Attempt Windows activation through HWID-like and KMS mechanisms.
How it does it:
slmgr.vbs /ipk.clipup -v -o.kms.digiboy.irand running activation.Where it happens:
Utilities\Maintenance\WinLicenseHandler.csandResources\Tickets.xml.Likely purpose: Activate Windows without relying on the normal retail/Microsoft activation flow.
Why it is suspicious: This is legally and operationally risky. It contacts a third-party KMS host and manipulates licensing artifacts. It is not necessary for privacy, debloating, telemetry reduction, or app removal.
10. Restore Point, Registry Backup, Cleanup, and NTFS Compression Utilities
Trigger: User-triggered from the Utilities page buttons.
What it can do: Create/recover restore points, enable/disable System Restore, clear caches/temp data, enable/disable NTFS compression, and create registry backups.
How it does it: Uses maintenance classes such as
SystemRestoreService,RegistryExporter,ClearingMemory, andNTFSCompressor, plus registry/service/command execution where needed.Where it happens:
Utilities\Maintenance\*classes and the Utilities page.Likely purpose: Maintenance and rollback support before making system modifications.
Why it is suspicious: Some cleanup actions delete files and some restore/status controls can remove restore point protection if misused. The UI presents these as explicit actions.
11. Self-Removal
Trigger: User-triggered from settings/self-delete UI.
What it can do: Remove GTweak registry settings and delete its own executable.
How it does it:
HKCU\Software\GTweak.C:\ProgramData\GTweak, and removes a systemprofile GTweak folder.Where it happens:
Utilities\Controls\SettingsEngine.csandWindows\MainWindow.xaml.cs.Likely purpose: Provide a "delete this app" button.
Why it is suspicious: Self-deletion is often suspicious in malware. Here it is exposed as an application setting/action. It does not by itself prove stealth or malicious intent.
Behaviors Not Found in Reviewed Evidence
I did not find clear evidence of:
This does not prove absolute safety. It does lower the likelihood that the reviewed source is a conventional spyware/backdoor project.
Intent and Risk Interpretation
Many GTweak behaviors are consistent with a privacy/control goal:
At the same time, intent and risk are separate. A privacy-motivated tool can still be risky. GTweak's high-risk behaviors are not subtle: the code openly provides controls that override Windows protection boundaries.
Risk Rating
Trustworthiness Improvement Recommendations
These recommendations focus only on high-risk areas. They are not meant to remove GTweak's privacy/debloating purpose.
Remove Windows activation from the core app.
The activation module should not ship inside the main privacy/debloating tool. If the author wants to keep it, it should be a separate optional plugin/addon outside the default release, with clear legal warnings and no automatic path from the core UI. The main app would become more trustworthy immediately if
WinLicenseHandler, embeddedTickets.xml, HWID/KMS keys, andkms.digiboy.irbehavior were removed from the default build.Stop adding Defender exclusions automatically on startup.
If Defender exclusions are needed, the app should ask explicitly with a dedicated prompt explaining the exact path/process being excluded and why. A privacy tool can justify this, but doing it automatically is one of the strongest reasons security tools and users will distrust it.
Separate the Defender-disabling engine from normal tweaks.
Defender/SmartScreen/VBS/Tamper Protection disablement should be an advanced module behind a separate download or explicit advanced-mode unlock. It should show a dry-run list of exact registry keys, services, files, tasks, exclusions, Safe Mode changes, and reboot actions before execution.
Avoid Winlogon Shell modification where possible.
The
Winlogon\Shellplus Safe Mode helper flow is powerful but very sensitive. If it must remain, the app should include a verified recovery path, action log, restore manifest, and explicit confirmation. A more trustworthy design would avoid modifyingWinlogon\Shellunless there is no alternative.Remove or fully verify embedded helper executables.
Embedded
NSudoLCandDisablingWDbinaries should either be removed from the core app or documented with source links, version numbers, SHA256 hashes, build provenance, and signatures. Users should not have to trust opaque compressed executables inside a system-tweaking app.Use signed releases and reproducible build evidence.
The project should publish SHA256 hashes, build artifacts from GitHub Actions, release provenance, and ideally Authenticode signatures. For a tool that requests administrator rights, unsigned releases are a major trust weakness even if the source is benign.
Harden self-update.
Self-update should verify a signed manifest or signed binary before replacing the current executable. Downloading a new executable and swapping it into place is acceptable only if authenticity is cryptographically checked.
Restrict high-risk import profile behavior.
Import profiles should not silently apply Defender, UAC, Windows Update, Winlogon, activation, or TrustedInstaller-backed actions without a separate confirmation screen. A dry-run preview should mark high-risk actions clearly.
Make Addons safer by default.
Addons are useful, but "Run as TrustedInstaller" should be off by default, require explicit per-script confirmation, and display the exact command line before execution. This keeps advanced power without making arbitrary privileged execution feel casual.
Add a machine-readable action log and rollback manifest.
Every high-risk action should write what changed, where it changed, previous values, and how to restore them. This would make the app easier to audit and safer to recover from.
These changes would not remove the useful privacy/debloating parts of GTweak. Hosts blocking, telemetry toggles, ad/suggestion removal, UI tweaks, selected app removal, and service controls can remain valuable if they are transparent, reversible, and clearly user-triggered. The main trust problem is the small set of high-risk features that cross security, boot, licensing, and arbitrary-execution boundaries.
Practical Recommendations
For the current machine:
Bottom Line
GTweak does not look like a conventional personal-data stealing malware project from the reviewed source, UI structure, and live-system evidence. The "dirty" or suspicious part is not observed spying; it is the intentional ability to bypass Windows protection boundaries and modify security, update, service, app, and licensing behavior.
The app is reasonable only under a narrow trust model: you trust the author, you trust the exact release binary, and you intentionally want a tool that can override Microsoft-controlled defaults. If that is the goal, the code and UI largely match that purpose. If the goal is low-risk debloating with minimal chance of weakening the security posture, GTweak is too powerful to use casually.
All reactions