울지않는벌새 : Security, Movie & Society

삭제시 주의가 요구되는 SettingsGuard 해외 광고 보호 프로그램 (2014.12.27)

벌새::Analysis

최근 해외 사이트에서 배포되는 다수의 제휴 프로그램과 함께 설치되는 프로그램 중 광고 프로그램이 지정한 홈 페이지 설정값을 보호하는 기능을 가진 SettingsGuard 프로그램이 설치되는 사례가 발견되고 있습니다.

 

SettingsGuard 프로그램은 기존의 유사한 기능을 가진 "Settings Manager" 프로그램의 변종으로 공통적으로 제어판을 통한 삭제시 마치 삭제된 것처럼 표시되지만 전혀 삭제되지 않는 문제가 확인되고 있습니다.

대표적인 배포 방식을 살펴보면 해외 사이트에 노출되는 "Update Your Video Plugin?"와 같은 광고 배너를 클릭할 경우 다음과 같은 유사 웹 사이트로 연결됩니다.

연결된 웹 사이트에서는 온라인 동영상 재생을 위해 설치해야하는 코덱(Codec)이 필요하다는 메시지를 통해 "Elephant Tech Software LLC" 디지털 서명을 가진 파일<SHA-1 : 8e4cef296a8ea760e83155cb76da11c66f5fea06 - Avira : APPL/InstallBrain.Gen4 (VT : 8/56)>을 다운로드합니다.

다운로드된 파일을 실행하면 다양한 동영상 파일 재생을 위한 "Codec Performer" 코덱 프로그램 설치를 한다는 화면을 볼 수 있습니다.

다음 단계에서는 필수 프로그램으로 포함된 Searchalgo 홈 페이지 변경과 관련된 설치를 안내하고 있으며, 이 과정에서 화면 문구에서는 인지할 수 없는 SettingsGuard 프로그램이 포함되어 설치됩니다.

다음 단계부터는 사용자 선택에 따라 설치될 수 있는 제휴 프로그램이 2~3개 포함되어 있으며 "Skip" 버튼을 클릭할 경우에는 선택이 가능한 제휴 프로그램은 설치되지 않습니다.

 

이를 통해 최종적으로 "Codec Performer" 프로그램은 Haali Media Splitter, ffdshow v1.2.4422 [2012-04-09] 2종의 코덱(Codec) 프로그램을 설치하며, Internet Explorer, Mozilla Firefox 웹 브라우저의 홈 페이지 및 검색 공급자를 Searchalgo로 변경을 시도할 수 있습니다.(※ Google Chrome 웹 브라우저 최신 버전에서는 변경이 이루어지지 않습니다.)

 

위와 같은 일련의 제휴 프로그램 설치 과정에서 필수 프로그램(Searchalgo)과 함께 자동으로 설치되는 SettingsGuard 광고 보호 프로그램에 대해 살펴보도록 하겠습니다.

SettingsGuard 프로그램 설치를 위해서는 특정 서버에서 설치 파일<SHA-1 : 6d93967d907ab27d9b0767c4d5c8531b5200e57f - Kaspersky : Trojan.Win32.StartPage.fkui (VT : 26/56)>을 다운로드하여 설치가 진행됩니다.

 

[생성 폴더 / 파일 등록 정보]

 

C:\ProgramData\SettingsGuard
C:\ProgramData\SettingsGuard\1.0.1411.1411
C:\ProgramData\SettingsGuard\1.0.1411.1411\aff.dll
C:\ProgramData\SettingsGuard\1.0.1411.1411\aie.dll
C:\ProgramData\SettingsGuard\1.0.1411.1411\asg.dll
C:\ProgramData\SettingsGuard\1.0.1411.1411\Custom Search.xml
C:\ProgramData\SettingsGuard\1.0.1411.1411\loader.dll :: 메모리 상주 모듈
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1000
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1000\hp.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1000\nt.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1000\se.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1000\sts.bin
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1002
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1002\hp.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1002\nt.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1002\se.history
C:\ProgramData\SettingsGuard\1.0.1411.1411\S-1-5-21-1345177319-3766284789-1989379866-1002\sts.bin
C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe :: 시작 프로그램(SettingsGuardUi) 등록 파일, 메모리 상주 프로세스
C:\ProgramData\SettingsGuard\SettingsGuard.exe :: 서비스(SettingsGuard) 등록 파일, 메모리 상주 프로세스
C:\ProgramData\SettingsGuard\uninstall.exe :: 프로그램 삭제 파일

 

[생성 파일 진단 정보]

 

C:\ProgramData\SettingsGuard\1.0.1411.1411\aff.dll
 - SHA-1 : 77d8bb0edb2cdd6d8a3cc10ce47e73446582fd7e
 - ESET : a variant of Win32/SmartCyberTech.A (VT : 6/56)

 

C:\ProgramData\SettingsGuard\1.0.1411.1411\aie.dll
 - SHA-1 : 2bbe4b6401ca60c99ec940eb7ef27a511a198fb2
 - ESET : a variant of Win32/SmartCyberTech.A (VT : 5/56)

 

C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe
 - SHA-1 : 28dbd78b6ea2315ef6b1b875f0a807d099d1a461
 - 알약(ALYac) : Trojan.GenericKD.2022573 (VT : 20/54)

 

C:\ProgramData\SettingsGuard\uninstall.exe
 - SHA-1 : ecf0ed045b0e420ce1311494f733030a9415e557
 - ESET : a variant of Win32/SmartCyberTech.A (VT : 10/56)

해당 프로그램은 숨김(H) 속성값을 가진 폴더 내의 "C:\ProgramData\SettingsGuard" 폴더에 파일을 생성합니다.

"SettingsGuard (표시 이름 : SettingsGuard)" 서비스 항목을 등록하여 시스템 시작시 "C:\ProgramData\SettingsGuard\SettingsGuard.exe" 파일(SHA-1 : 4855a417126ba62239b793610392efc37cdf2473)을 자동 실행하도록 구성되어 있으며, 이를 통해 보호 기능을 수행하는 "C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe" 파일을 로딩하여 메모리에 상주시킵니다.

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
 - SettingsGuardUi = "C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe"

또한 Windows 시작시 SettingsGuardUi 시작 프로그램 등록값을 통해 "C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe" 파일을 자동 실행하도록 구성되어 있습니다.

  • h**p://cdn.ac83901b.down36bucket.us/files/components/update.exe

이를 통해 실행된 파일은 특정 서버에서 업데이트 체크를 수행하며, 구버전이 설치되어 있는 경우 업데이트 파일 다운로드를 통해 상위 버전으로 업데이트될 수 있습니다.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
 - AppInit_DLLs = (공란) :: 설치 전
 - AppInit_DLLs = c:\progra~2\settin~1\101411~1.141\loader.dll :: 설치 후

그 외에도 시스템 시작시 AppInit_DLLs 영역에 "C:\ProgramData\SettingsGuard\1.0.1411.1411\loader.dll" 파일(SHA-1 : a8fabaf048193081b59b94e579acbc6e1cbd9c06)을 추가하여 메모리에 상주하도록 등록되어 있습니다.

이를 통해 화면상으로는 시스템 트레이 알림 아이콘 영역에 SettingsGuard 아이콘이 생성되며 기본적으로 보호 기능이 활성화한 상태로 시스템 시작시 자동 실행됩니다.

SettingsGuard 프로그램은 필수 프로그램으로 설치된 Searchalgo 홈 페이지(h**p://www.searchalgo.com/?cid=5034)를 외부의 소프트웨어가 무단으로 변경할 경우 보호 기능을 수행할 수 있습니다.

 

SettingsGuard 보호 프로그램 삭제 방법

  • C:\ProgramData\SettingsGuard\uninstall.exe uninstall

해당 프로그램이 설치된 환경에서는 제어판에 "SettingsGuard" 삭제 항목을 통해 정상적으로 삭제를 지원하는 것처럼 구성되어 있습니다.

삭제 과정에서는 "SettingsGuard has been removed from your PC. To complete the uninstallation, please restart your computer." 메시지를 통해 프로그램 삭제 후에는 Windows 재부팅을 통해 완벽하게 삭제가 진행된다고 안내하고 있습니다.

 

하지만 사용자가 단순히 제어판을 통해 SettingsGuard 프로그램의 삭제를 시도할 경우에는 전혀 삭제가 이루어지지 않습니다.

또한 프로그램 삭제가 이루어지기 않는 문제로 메모리에 상주하는 SettingsGuard.exe, sg.exe 프로세스를 모두 종료한 상태에서 제어판을 통해 SettingsGuard 프로그램에 대한 삭제를 진행할 경우 다음과 같은 오류창만 생성될 뿐 삭제가 이루어지지 않습니다.

위와 같은 일련의 삭제 문제로 인해 SettingsGuard 프로그램을 지속적으로 유지해야하는 문제가 발생하므로 다음과 같은 방식으로 삭제를 진행하시기 바랍니다.

 

(a) 다음의 3가지 방법 중 하나를 선택하여 SettingsGuard 프로그램을 종료하시기 바랍니다.(※ 절대로 SettingsGuard.exe 서비스 프로세스를 종료하지 마시기 바랍니다.

  1. Windows 작업 관리자를 실행하여 sg.exe 프로세스 종료
  2. 시스템 트레이 알림 아이콘에 표시된 SettingsGuard 아이콘에 마우스 우클릭을 통해 "Exit" 메뉴 실행을 통한 프로그램 종료
  3. 시스템 트레이 알림 아이콘에 표시된 SettingsGuard 아이콘에 마우스 우클릭을 통해 "Disable Protection" 메뉴를 클릭하여 보호 기능 중지

(b) 제어판 또는 체크잇(CheckIt : www.checkitinfo.com) 프로그램을 통해 "SettingsGuard" 삭제 항목을 통해 프로그램 삭제를 진행하시기 바랍니다.

 

프로그램 삭제 후 "C:\ProgramData\SettingsGuard" 폴더 및 내부에는 일부 폴더(파일)가 여전히 존재합니다.

만약 해당 폴더를 사용자가 직접 삭제를 시도할 경우 "사용 중인 폴더"로 표시되어 삭제할 수 없으며, 그 이유는 자동 실행되어 메모리에 상주하는 "C:\ProgramData\SettingsGuard\1.0.1411.1411\loader.dll" 모듈로 인해 발생합니다.

 

(c) 반드시 Windows 재부팅을 진행하시면 삭제되지 않고 남아있던 폴더 및 내부 파일이 자동으로 삭제됩니다.

 

(d) 레지스트리 편집기(regedit)를 실행하여 아래의 레지스트리 등록 정보를 참조하여 "LoadAppInit_DLLs" 값을 설치 전으로 수정하시기 바랍니다.

 

[생성 / 변경된 레지스트리 등록 정보]

 

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
 - SettingsGuardUi = "C:\ProgramData\SettingsGuard\1.0.1411.1411\sg.exe"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SettingsGuard
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
 - AppInit_DLLs = (공란) :: 설치 전
 - AppInit_DLLs = c:\progra~2\settin~1\101411~1.141\loader.dll :: 설치 후
 - LoadAppInit_DLLs = 0 :: 설치 전
 - LoadAppInit_DLLs = 1 :: 설치 후
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SettingsGuard

 

국내 인터넷 사용자 중에서 해외 웹 사이트 방문 빈도가 증가함에 따라 해외에서 제작된 다양한 광고 프로그램이 설치되어 고생을 하는 경우가 많으며, 국내 광고 프로그램과 비교하여 해외 광고 프로그램은 상당히 복잡하고 변종이 다양하여 삭제에 어려움이 존재하는 경우가 많으므로 파일 실행시 주의하시기 바랍니다.