**Set-AuditRule** writes an entry that records **SetValue** and **Delete** for everyone. Everyone is the right scope here: the goal is to catch the unknown writer.
$key = [Microsoft.Win32.Registry]::LocalMachine.OpenSubKey('SOFTWARE\Vendor\App', 'ReadWriteSubTree', 'ChangePermissions')
$acl = $key.GetAccessControl([System.Security.AccessControl.AccessControlSections]::Audit)
$rule = New-Object System.Security.AccessControl.RegistryAuditRule('Everyone','SetValue,Delete','ContainerInherit','None','Success')
$acl.AddAuditRule($rule)
$key.SetAccessControl($acl)
(Get-Acl 'HKLM:\SOFTWARE\Vendor\App').Audit | Select-Object IdentityReference,RegistryRights