将Alibaba干掉后,电脑速度明显快了!但前次(https://blog.csdn.net/bobo98/article/details/120070943)的方法并不完美,一个问题是,每次重启电脑后,那东西又会自启,如附骨之蛆!!
那么有方法能根治吗?这是一个困绕我N多年的老问题(N>10+)!再次查找资料,发现一篇文章①介绍方法,尝试解决。
PowerShell脚本:(重要:进入备份目录!然后管理员执行)
#
function Remove-RegistryValue($key, $value)
{
Remove-ItemProperty $key $value
}
function Set-RegistryValue($key, $name, $value, $type = "String")
{
if ((Test-Path $key) -eq $false)
{
md $key | Out-Null
}
Set-ItemProperty $key $name $value -type $type
}
function Get-RegistryValue($key, $name)
{
if((Test-Path $key) -eq $false)
{
return $null
}
else
{
$tmpStr = (Get-ItemProperty $key).$name
$tmpStr = $tmpStr.Replace("\??\", "")
$tmpStr.Replace("""", "")
}
}
$tmpDate = Get-Date -Format "yyyyMMddHHmm"
$addr = "HKLM:\SYSTEM\CurrentControlSet\Services\AliPaladin"
$aliPldPath = Get-RegistryValue $addr "ImagePath"
if([String]::IsNullOrEmpty($aliPldPath))
{
Write-Warning "错误:HKLM:\SYSTEM\CurrentControlSet\Services\AliPaladin不能找到! `
`n执行被中止!`n或者已执行,请勿重复!`n";""
return -1 | Out-Null
}
Reg export $addr.Replace(":", "") ("AliPaladin.reg." + $tmpDate)
Remove-Item -Recurse -Path $addr
$person = [System.Security.Principal.NTAccount]"Everyone"
$access = [System.Security.AccessControl.RegistryRights]"SetValue"
$inheritance = [System.Security.AccessControl.InheritanceFlags]"None"
$propagation = [System.Security.AccessControl.PropagationFlags]"None"
$type = [System.Security.AccessControl.AccessControlType]"Deny"
$rule = New-Object System.Security.AccessControl.RegistryAccessRule( `
$person,$access,$inheritance,$propagation,$type)
$addr = "HKLM:\SYSTEM\CurrentControlSet\Services\AlibabaProtect"
$aliProPath = Get-RegistryValue $addr "ImagePath"
Set-RegistryValue $addr "Start" 3 "Dword"
$acl = Get-Acl $addr
$acl.AddAccessRule($rule)
Set-Acl $addr $acl
icacls $aliPldPath /C /setowner "Administrators"
icacls $aliPldPath /C /grant ("Administrators" + ":F")
icacls $aliPldPath /C /deny ("Everyone" + ":RXW")
icacls $aliPldPath /C /setowner "NT Service\TrustedInstaller"
$aliProDir = (Split-Path $aliProPath) + "\"
icacls ($aliProDir + "AliPaladin_win7.sys") /C /setowner "Administrators"
icacls ($aliProDir + "AliPaladin_win7.sys") /C /grant ("Administrators" + ":F")
icacls ($aliProDir + "AliPaladin_win7.sys") /C /deny ("Everyone" + ":RXW")
icacls ($aliProDir + "AliPaladin_win7.sys") /C /setowner "NT Service\TrustedInstaller"
icacls ($aliProDir + "AliPaladin_win10.sys") /C /setowner "Administrators"
icacls ($aliProDir + "AliPaladin_win10.sys") /C /grant ("Administrators" + ":F")
icacls ($aliProDir + "AliPaladin_win10.sys") /C /deny ("Everyone" + ":RXW")
icacls ($aliProDir + "AliPaladin_win10.sys") /C /setowner "NT Service\TrustedInstaller"
icacls ($aliProDir + "AliPaladin64_win7.sys") /C /setowner "Administrators"
icacls ($aliProDir + "AliPaladin64_win7.sys") /C /grant ("Administrators" + ":F")
icacls ($aliProDir + "AliPaladin64_win7.sys") /C /deny ("Everyone" + ":RXW")
icacls ($aliProDir + "AliPaladin64_win7.sys") /C /setowner "NT Service\TrustedInstaller"
icacls ($aliProDir + "AliPaladin64_win10.sys") /C /setowner "Administrators"
icacls ($aliProDir + "AliPaladin64_win10.sys") /C /grant ("Administrators" + ":F")
icacls ($aliProDir + "AliPaladin64_win10.sys") /C /deny ("Everyone" + ":RXW")
icacls ($aliProDir + "AliPaladin64_win10.sys") /C /setowner "NT Service\TrustedInstaller"
注意:重要:进入备份目录!备份目录!备份目录!然后管理员执行。
备份文件形如:AliPaladin.reg.当前日期。
结果:运行PS脚本后,重启电脑,问题未解决,引起100%CPU占用!
后续办法:
- 专弄个VM,在上面使用Alibaba平台(X宝、X猫等),用完即关。
感觉这是能想到的最优方案,不论Alibaba怎么弄,将工作机上的删掉。 - 采用前一篇的方法,手动操作,本方法确实可行,但是每次要人工操作。
- 有时间,写个小程序,在电脑启动时,自动完成操作。
- 期待更多的方法,如果有什么建议,欢迎你的来信。
环境:Win10专业版 21H1, PowerShell 5.1
参考:
① https://zhuanlan.zhihu.com/p/65806437,2019.09.18
附:
AlibabaProtect版本比较
从图中能看出:
- Alibaba软件更新频繁,一年更的。
- 本次444版本对前个版本更动很大,主程序大多体积更大,同时增加了好多新文件,比如这次问题的pcUnitTest.exe。
- 悄悄地被更新了!
- 不清楚手机端是不是也这样?保守估计苹果、GooglePlay上app不会。
- 不清楚Alibaba想干嘛?
2021.9.7
转载请注明出处,保留全文。