2017-05-07 34 views
0

짧은 버전을 사이드로드 할 : 나는 특정을 사용할수있는 Windows 테마 파일 (aero.msstyles)는 특히 UI 스크립트에서, 그들의 자원에 스파이웨어에

:이 주제

자세한 버전을 확인 Windows 용 타사 테마. 이미 Themes에 대한 Window의 제한을 해제하기 위해 스스로 컴파일 한 오픈 소스 솔루션을 사용하고 있습니다.

이전에는 DLL과 함께 제공되는 타사 테마 관련 모드 (예 : 로그인 UI의 경우 authui.dll, 시스템 아이콘 수정의 경우 imageres.dll)를 사용하는 경우 알 수없는 DLL을 사용하여 알 수없는 DLL의 테마 관련 리소스 (예 : 비트 맵, 아이콘 그룹 또는 UI 스크립트)가 처녀 MS Dll 버전입니다. 이 리소스 이식 (resource grafting)은 리소스가 변경되었지만 DLL이나 exe의 실행 가능 요소는 그대로두고 있습니다.

설치하려는 테마로 돌아가서 sha256 해싱을 사용하여 자원 해커가 수정할 수있는 aero.msstyles 만 확인했습니다. 그래서 저는 평상시와 마찬가지로 제 3 자 테마의 리소스를 Window의 자체 aero.msstyles로 전송했습니다. 문제는 내가 읽을 수 없거나 내용을 알 수없는 리소스 유형을 만났습니다. VARIANT라고합니다. VM에서 수행 된 일부 실험을 통해 리소스 해커가 디 컴파일 할 수없는 일종의 바이너리 UI 스크립트 인 것으로 보입니다. 나는 보통 전송하는 UI 스크립트를 읽을 수 있기를 좋아하지만이 스크립트로는 불가능합니다.

이것은 실제적인 보안 위험 요소입니까? UI 스크립트가 어떤 종류의 악용과 함께 사이드로드 될 수 있습니까? 테마 파일 (msstyle)의 기능이 시스템 UI의 모양을 조정하는 것이기 때문에 나에게있을 것 같지 않지만 전체 테마 시스템의 내부 작업에 대해서는 충분히 알지 못합니다. 가상 머신에서 테마를 가져 오기 전에 다른 관점을 얻을 것이라고 생각했습니다.

답변

0

변경된 VARIANT/NORMAL 바이너리와 원래 테마의 16 진수 코드를 비교하기 위해 vBinDiff를 사용했습니다. 또한 binhexes를 복사하여 WinMerge와 비교할 두 개의 텍스트 파일에 저장할 수 있습니다.

vBinDiff와 WinMerge는 바이너리에 어떤 수정 사항과 추가/삭제 항목이 나란히 표시되는지 강조 표시합니다. 차이점을 읽었는데, 그 중 90 %는 4 진수 (4 바이트)보다 크지 않았습니다. 일반적으로 16 진수 편집기를 사용하여 색상을 수정하면 볼 수 있습니다. 가장 큰 차이점은 추가 32 바이트 코드입니다.

(1) 작성자가 추가 이미지 리소스를 추가하고이를 참조하는 데 필요한 항목을 추가했습니다. (2) 원하지 않는 코드가 들어갔습니다.

2의 가능성을 언급하기 위해 작은 트로이 코드가 얼마나 유용한 지 알아보기위한 검색을 수행했습니다. UI 스크립트를 컴파일하면 트로이 목마가 32 바이트에 채워질 가능성이 있습니까? 도스 시대의 오래된 17byte 바이러스에 대해 몇 가지 언급을 발견했습니다. 사소한 바이러스는 즉시 알려진 것이므로 매우 신속하게 밝혀지기 때문에 즉시 무시하겠습니다. 백도어 및 다운 로딩 기능을 갖춘 완전한 형의 트로이 목마의 경우 2012 년에 발견 된 가장 작은 20kb (트로이 킨바)가 발견되었습니다. Catchy32는 여전히 트로이로 간주되지만 더 간단하고 특수한 기능을 갖추고 있으며 약 580 바이트 (reference). 이 정보를 바탕으로, 나는 32bytes의 코드에서 어떤 코드를 풀어 버리는 것이 불가능하지는 않더라도 거의 불가능하다는 것을 확증했고 문제의 리소스가 깨끗하다는 것을 입증했다.

이 질문에 대한 대답은하지 못합니다. (주제의 바이너리 UI 스크립트 리소스가 오작동 할 수 있습니다.)하지만 내 딜레마가 해결됩니다. 나는 그것을 나눌 것이라고 생각했다.