走近科学:三星电脑恶意禁用Windows更新“丑闻”

发表于:2015-06-26 8:00:00 来源: 黑客与极客 阅读数(0人)

走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

近期有Windows用户反映称,自己的三星电脑上Windows自动更新程序会被随机禁用,这个给他们的PC安全带来了安全隐患。禁用Windows更新的程序名为Disable_Windowsupdate.exe,这个程序是三星SW Update软件的一部分。


SW Update是典型的OEM更新软件,这个软件被用来更新三星的驱动程序,同时也会更新一些三星自己的软件。与其他OEM更新软件不同的是,三星的这款更新软件会禁用Windows自动更新!


受影响系统版本


Windows XP (all Service Packs)


Windows Vista (x86/x64)


Windows 7/SP1 (x86/x64)


Windows 8/8.1 (x86/x64)


需要注意,这些版本都是在三星机器环境下进行检测的。如果我们有什么疏漏,欢迎补充。


卸载/移除三星SW Update


SW Update在Windows添加/删除(卸载和更改程序)中有列出来,它可以向其他正常软件一样从系统中删除。将其卸载后重启机器,它不会被移除。SE Update Service仍然活跃运行着,存在于\ProgramData\Samsung文件夹下面的"Disable_Windowsupdate.exe"程序依旧还在。


首先,经过传统卸载之后,还需要在注册表中删除一些值


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

译者注:由于信息量太大,编辑器无法保存,文后我会附加到网盘中。


正如你所见到的,它能删除与该服务相关的键值。


HKLM\SOFTWARE\Samsung\SW Update\AgentPath: "C:\ProgramData\Samsung\SW Update Service\SWMAgent.exe"
					

然而,我们在注册表中快速查找这个键值


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

可以看到该服务依旧还在。


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

正如我前面提到的,这可能是卸载发生在非三星环境中,因此卸载进程可能被中断了或者不能如预期一样正常工作。这仅仅是我的一个猜测,然而在三星环境中甚至也会发送这种情况。


因为我没有一个正式的三星环境用来测试,我无法评论说通过传统卸载方式能够移除,希望能够移除吧,彻底的!


如果你是一个三星用户,如上面所说先通过正常卸载方式进行卸载,如果依旧存在的话就只能够通过手工卸载,或者是等待三星发布工具进行卸载了,就和前短时间联想的Superfish一样。


接着我们来讲讲如何发现它:


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

不久之后…


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

——-


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

这里还有其他 Object值的名称:


1.CachedAUOptions


2.InstallInProgress,


3.UpdatesAvailableForInstallLogon


4.UpdatesAvailableWithUiLogon


5.UpdatesAvailableWithUiOrEulaLogon


6.FirmwareUpdatesNotDownloaded


7.FirmwareUpdatesNotInstalled


总之,我们继续往下看:


HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\AuthorizedCDFPrefix: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Comments: "SW Update Setup"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Contact: "Samsung Electronics CO., LTD."
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\DisplayVersion: "2.2.9"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\HelpLink: "http://www.samsung.com"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\HelpTelephone: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\InstallDate: "20150623"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\InstallLocation: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\InstallSource: "C:\ProgramData\Samsung\SWUpdate\Temp\"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\ModifyPath: "MsiExec.exe /I{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Publisher: "Samsung Electronics CO., LTD."
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Readme: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Size: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\EstimatedSize: 0x00008172
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\UninstallString: "MsiExec.exe /I{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\URLInfoAbout: "http://www.samsung.com"
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\URLUpdateInfo: ""
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\VersionMajor: 0x00000002
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\VersionMinor: 0x00000002
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\WindowsInstaller: 0x00000001
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Version: 0x02020009
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\Language: 0x00000409
 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AAFEFB05-CF98-48FC-985E-F04CD8AD620D}\DisplayName: "SW Update"
					

这是安装后,注册表改变的基础信息比较


HKLM\SOFTWARE\Samsung\CurrentPath\20000: ""C:\Program Files\Samsung\SW Update\sManager.exe""
 HKLM\SOFTWARE\Samsung\SW Update\AgentPath: "C:\ProgramData\Samsung\SW Update Service\SWMAgent.exe"
 HKLM\SOFTWARE\Samsung\SW Update\InstallPath: "C:\Program Files\Samsung\SW Update\sManager.exe"
 HKLM\SOFTWARE\Samsung\SW Update\TrafficDecentralize: "Y"
 HKLM\SOFTWARE\Samsung\SW Update\LastORCAServerUpdateDateTime: "2015-06-22T02:28:42"
 HKLM\SOFTWARE\Samsung\SW Update\AgentSleepSec: "300"
 HKLM\SOFTWARE\Samsung\SWMCommon\FirstAgentExecDateTime: "2015-06-23T01:47:42"
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\Type: 0x00000110
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\Start: 0x00000002
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\ErrorControl: 0x00000001
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\ImagePath: "C:\ProgramData\Samsung\SW Update Service\SWMAgent.exe /SERVICE"
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\DisplayName: "SW Update Service"
 HKLM\SYSTEM\ControlSet001\Services\SWUpdateService\ObjectName: "LocalSystem"
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\Type: 0x00000110
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\Start: 0x00000002
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\ErrorControl: 0x00000001
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\ImagePath: "C:\ProgramData\Samsung\SW Update Service\SWMAgent.exe /SERVICE"
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\DisplayName: "SW Update Service"
 HKLM\SYSTEM\CurrentControlSet\Services\SWUpdateService\ObjectName: "LocalSystem"
					

在这里我们能够看到更多的信息,比如休眠时间为300秒,第一个执行时间戳,以及创建SW Update服务。接下来我要做的就是中断这个服务。


Type (0×00000110):据我所知,这暗示我们这是一个能够启动Windows服务管理器的Win32程序,并能够让服务管理器遵从其指令。这种类型的Win32服务运行在一个进程本身。


Start (0×00000002):这是将所有启动项设置为加载或者自动加载,无论服务类型。其加载服务控制管理器,0×0 (boot)作为内核,0×1 (system)作为I/O子系统。


ErrorControl (0×00000001):如果驱动初始化或者加载失败,不论是否提示错误都继续执行。


我们注意到,该文件位置:


C:\ProgramData\Samsung
					

如果你将显示隐藏文件夹属性勾上,你会注意到两个文件夹–“SW Update Service”以及“SWUpdate”。如果你有一台三星机器,你只有一个SWUpdate文件夹,但都包含XML文件,让我们来看看吧(BASW-A0394A05_1B33BCEB.xml)


<?xml version="1.0" encoding="UTF-8"?>
 -<MaxList>
 -<Head>
 <BOMID/>
 <CISCode/>
 <Product/>
 <Project/>
 <Model/>
 <DevStep/>
 <BaseMRT/>
 <BaseBOM/>
 <Region/>
 <OS/>
 <Language/>
 <ROLString/>
 <Date/>
 <Time/>
 <Test>Yes</Test>
 </Head>
 -<Item>
 <CISCode>BASW-A0394A05</CISCode>
 <ItemType>SOFTWARE</ItemType>
 <DisplayName>Disable_AutoWindowsUpdate1.0</DisplayName>
 <Region>DNC</Region>
 <OS>WBPR64/WBSL64/WBST64</OS>
 <Lang>DNC</Lang>
 <ROLString>ALL</ROLString>
 <InstallType>PSTEXE</InstallType>
 <InstallPath>BASW-A0394A\BASW-A0394A04.ZIP</InstallPath>
 <InstallFile>Inst.exe</InstallFile>
 <InstallPara1>/pbr /na</InstallPara1>
 <InstallPara2/>
 <InstallOrgFileSize>4678908</InstallOrgFileSize>
 <InstallFileSize>2055424</InstallFileSize>
 <ImageCate>C2P1</ImageCate>
 <ImageType>GCP</ImageType>
 <ImageSequence/>
 <MediaType>SM1</MediaType>
 <MediaSubCate>ITMOPT</MediaSubCate>
 <MediaSequence/>
 <CheckType>NoVerify</CheckType>
 <CheckRoot/>
 <VerifyAttribute>1.0</VerifyAttribute>
 <VerifyPara1/>
 <VerifyPara2/>
 <System/>
 <Selectable>Y</Selectable>
 <AND/>
 vXOR/>
 <DistributionPriority>1</DistributionPriority>
 <FURL>http://orcaservice.samsungmobile.com/FileDownloader.aspx?Type=PATCH&FILENAME=BASW-A0394A04.ZIP</FURL>
 -<MultiLangDisplayName>
 <Default>ENG</Default>
 -<Value>
 <Lang>ENG</Lang>
 <Str>Windows Configuration</Str>
 </Value>
 -<Value>
 <Lang>KOR</Lang>
 <Str>Windows Configuration</Str>
 </Value>
 </MultiLangDisplayName>
 <Version>1.0</Version>
 -<DDesc>
 <Default>ENG</Default>
 -<Value>
 <Lang>ENG</Lang>
 <Str>This program helps your windows configuration settings.</Str>
 </Value>
 -<Value>
 <Lang>KOR</Lang>
 <Str>이 프로그램은 Windows configuration 프로그램입니다.</Str>
 </Value>
 </DDesc>
 <RemoveFilePath/>
 <RemovePara1/>
 <RemovePara2/>
 -<RemoveComment>
 <Default>ENG</Default>
 </RemoveComment>
 <UpdatePara1/>
 <UpdatePara2/>
 <TargetCISCode> </TargetCISCode>
 <MutualExclusiveCISCode/>
 <SWCate2>Miscellaneous</SWCate2>
 <Keyword1>SDR</Keyword1>
 <Keyword2>SDR</Keyword2>
 <Keyword3>SDR</Keyword3>
 <AutoInstall>Yv/AutoInstall>
 <SingleInstall>Y</SingleInstall>
 -<PatchSequence>
 -<InstCmd>
 <InstCmdType>GENERAL_EXECUTION</InstCmdType>
 -<InstCmdParam>
 <Name>EXCUTION_FILE_NAME</Name>
 <Value>64\Disable_Windowsupdate.exe</Value>
 </InstCmdParam>
 </InstCmd>
 </PatchSequence>
 <FromProductDate/>
 <ToProductDate/>
 <BulletineDate>2015-05-12 17:12:43</BulletineDate>
 -<ProcCondition>
 -<ProcInfo>
 <ProcType>REG_VALUE</ProcType>
 -<ProcParam>
 <Name>BASE_OP</Name>
 <Value>AND</Value>
 </ProcParam>
 -<ProcParamv
 <Name>REG_KEY</Name>
 <Value>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE_NAME</Name>
 <Value>AUOptions</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE_TYPE</Name>
 <Value>REG_DWORD</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE</Name>
 <Value>2</Value>
 </ProcParam>
 -<ProcParam>
 <Name>OP_RELATION</Name>
 <Value>!=</Value>
 </ProcParam>
 </ProcInfo>
 -<ProcInfo>
 <ProcType>REG_VALUE</ProcType>
 -<ProcParam>
 <Name>BASE_OP</Name>
 <Value>AND</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_KEY</Name>
 <Value>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE_NAME</Name>
 <Value>AUOptions</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE_TYPE</Name>
 <Value>REG_DWORD</Value>
 </ProcParam>
 -<ProcParam>
 <Name>REG_VALUE</Name>
 <Value>4</Value>
 </ProcParam>
 -<ProcParam>
 <Name>OP_RELATION</Name>
<Value>=</Value>
 </ProcParam>
 </ProcInfo>
 </ProcCondition>
 <Thumbnail/>
 <Screenshot1/>
 <Screenshot2/>
 <Screenshot3/>
 -<AdURL>
 <URL/>
 <FromDate>1900-01-01 오전 12:00:00</FromDate>
 <ToDate>1900-01-01 오전 12:00:00</ToDate>
 </AdURL>
 </Item>
 </MaxList>

					

注意它的安装文件


我们现在可以看到Disable_Windowsupdate.exe是如何重复该过程的,从该地址下载zip文件


http://orcaservice.samsungmobile.com/FileDownloader.aspx?Type=PATCH&FILENAME=BASW-A0394A04.ZIP
					

我发现这个字符串片段特别有趣:


<Str>This program helps your windows configuration settings.</Str>
					

当这个zip文件下载完成,我们来看看其中的内容吧


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

如果我们检测禁用Windows更新的安装程序的配置文件


;HowTo : The registry location of the installed language....
 ;[HKLM\SYSTEM\CurrentControlSet\Control\Nls\Language]
 ;InstallLanguage=????
 ;%CD%\ = Current Folder Location Variable
 ;%WinDir% = Windows Folder               ex) C:\Windows C:\Winnt
 ;%ProgramFiles% = Program Files Folder     ex) C:\Program Files, C:\Archivo de program, C:\Programme
 ;%LangID%
 ;HowTo : The registry location of the installed language....
 ;[HKLM\SYSTEM\CurrentControlSet\Control\Nls\Language]
 ;LangID     Lang / Export to
 ;0412     KOR / KOR
 ;0409     ENG / UK, HKG
 ;040C     FRN / FRN
 ;0407     GER / GER
 ;0411     JPN / JPN
 ;0404     CHT / CHT
 ;0804     CHS / CHS
 ;0C0A     SPA / SPA
 ;0816     POR / POR
 ;0419     RUS / RUS
 [BaseSettings]
 OSConditional= TRUE
 ShowWin = FALSE
 RunInAuditMode     = TRUE
 [32Win8]
 Setup1=xcopy 32\Disable_Windowsupdate.exe "%ALLUSERSPROFILE%\Samsung\" /y
 Setup2=schtasks /create /XML "%CD%\Dis_AU.xml" /tn "Dis_AU"
 [64Win8]
 Setup1=xcopy 64\Disable_Windowsupdate.exe "%ALLUSERSPROFILE%\Samsung\" /y
 Setup2=schtasks /create /XML "%CD%\Dis_AU.xml" /tn "Dis_AU"
					

我们看到其使用了xcopy命令,就免不了“drop”位于\ProgramData\Samsung的Disable_Windowsupdate.exe。%ALLUSERPROFILE% 是Vista版本以上的环境变量, \Documents and Settings\All Users为XP上的环境变量。


这一点,我们可以通过检测得到证实


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

注意该exe的签名为Samsung自己的


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

可恶罪行


首先,正如我之前提到过的,最好不要在非三星环境下尝试运行三星的更新软件。我的虚拟机就截个图片都能遇到重启,所以每张截图会有几分钟的间隔。


安装SW Updata之后,Windows更新就这样了


走近科学:三星电脑恶意禁用Windows更新“丑闻” 走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

注意看第二张图片的“检测更新并让我选择是否下载并安装”选项,将其更改为“自动安装更新(推荐)”选项


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

真棒,接下来我们重启看看


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

日了狗,又变回来了。我们再检查下设置


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

于是我联系上了三星的客服,以下是聊天记录(Rep为客服名称,ringzero即是本文作者):


Rep: Hi, 感谢你找到我们三星技术支持. 我可以帮到你什么么?
ringzero: Hi Rep, 我对你们家的 SW Update软件有些问题.
Rep: Hi Ringzero, 请详细说说你的问题吧.
Rep: 我很乐意帮助你的.
ringzero: 谢谢Rep! 我的问题是, 为什么这个软件主动监视我的注册表,以及通过强行禁用Windows更新?
Rep: SW Update工具帮助你的笔记本自动检查硬件并为他们安装支持的驱动程序。这个工具并不会影响到你的注册表以及Windows的正常更新。
ringzero: Rep,你恐怕是搞错了吧 SW Update包含一个名为 "Disable_Windowsupdate.exe"的exe文件
ringzero: 当SW Update完成安装之后, Windows Update就被禁用了. 如果你将其设置为你喜爱的选项,在重启之后又强行被禁用了.
ringzero: 如果SW Update被卸载, Windows Update始终保持着其选项.
Rep: 谢谢你的等待, 等我一会马上就回来.
ringzero: 好的.
					

Rep: 当你启用Windows updates, 它会安装一个默认的驱动程序,否则可能导致笔记本不工作. 举例来说你的笔记本支持USB3.0, 安装更新之后这个端口可能会不能正常工作,所以为了保护SW Update工具将阻止Windows更新!


感谢代表这三星的Rep,我们终于知道三星禁用Windows更新的动机咯。


走近科学:三星电脑恶意禁用Windows更新“丑闻”

 

OEMs,继续啊。难道真忘了联想Superfish的教训?


相关新闻

大家都在学

课程详情

网络安全事件

课程详情

操作系统安全

课程详情

网络安全与防护