파란창 뜨게 하는 프로세스....
2012.09.28 23:11
Explorer.exe (COM으로 Remote Procedure Call 서비스 호출)
=> svchost.exe -k RPCSS (Remote Procedure Call서비스, DCOM객체 활성화 요청)
=> svchost.exe -k DcomLaunch (요청 받고 DCOM객체 생성)
=> 파란창 (rundll32)
이런 과정을 거치는군요.
즉, 코드로 조져보자면, 탐색기와 바탕화면 UI를 담당하는 윈도우의 주역~!
Explorer를 조져야겠네요.
아니면
HKCRCLSID{329B80EC-2230-47B8-905D-A2DCF5171C6F}
HKCRCLSID{5EAD00DC-0E8B-497C-BDE8-B9153058CBEF}
이 두 키의 접근권한을 제한하거나 삭제하는 것으로 해결 될런지도 모르겠군요.
이걸 또 실험하려면 저는 3시간을 기다려야 되므로~ (vmware에서 tsc 옵션 아무리 건드려도 시간이 빨리 가지는 않네요.)
이만 자러 갑니다. 잠오면 내일 하는거죠......
좋은꿈 꾸세요~
댓글 [32]
-
홍홍이 2012.09.29 03:05 -
삐리리 2012.09.29 03:40 고생 많으십니다!!!
풍성하고 행복한 추석명절 되십시요!!! ^&^
-
카리스마조 2012.09.29 06:18 ok 접수했습니다
감사합니다^^
-
카리스마조 2012.09.29 06:20 프로세서 해커로 저도 확인했습니다
지금 파란창 떠있는상태에서 클래식 UI로 분석중에 있습니다
-
카리스마조 2012.09.29 06:44 ImmersiveSplashScreen
이거군요 2개가 있는대 하나는 볼륨버전에서 워터마크 열쇠모양 띄우는것 twinui.dll 이건 패치완료
C985DF59 이것과 파란창 초월신님이 본문에 주신것 레지 삭제후 확인해 보겠습니다
-
neoguri 2012.09.29 06:46 수고들 하십니다 !! 좋은 결과를^^**
-
복두꺼비 2012.09.29 06:52 초월신님이 정말 능력자시네요..
머지않아 파란 창도 해결되겠네요..
-
카리스마조 2012.09.29 07:21 레지 삭제후에도 파란창이 뜹니다
레지 안거치고 직접 띄우나봅니다
-
카리스마조 2012.09.29 07:56 rundll32파일 삭제후에도 뜹니다
재부팅후 시간4시간 돌려서 부팅후 파란창 떠있는대 rundll32는 프로세서에 없습니다. 파란창띄워놓고 클래식 UI로 들어가 보고있습니다
-
초월신 2012.09.29 08:03 rundll32는 지우면 안됩니다.
다른 프로세스에서 공용으로 쓰는겁니다.
{C985DF59-A91B-446B-93C3-FB2705D529BC} 요 레지키가 twinuildll이랑 직접 연결되네요.
요걸 실험해 봐야 할 듯.......
-
카리스마조 2012.09.29 08:35 확인했습니다
파일은 동일합니다
볼륨버전에서 워터마크 제거한파일로 교체했는대도 파란창이 뜹니다 워터마크가 2개일 기능성도 있습니다
-
초월신 2012.09.29 08:32 미디어센터랑 일반버전이랑 TwinUI 파일이 서로 다른건지 확인해야 되겠네요.
파일 자체가 다른거였다면 오히려 편하겠네요. 일반버전 파일을 덮어버리면 될지도 모르고....
-
카리스마조 2012.09.29 08:24 레지 권한도 잠궈보겠습니다
레지보다는 파일쪽에 답이 있을것같습니다
지난번 락스크린도 레지에서는 파일위치만 찾을수있었습니다
-
카리스마조 2012.09.29 08:22 그쪽레지도 이미 손봤습니다 관련된 레지키를 전부 삭제했는대도 파란창이뜹니다
-
초월신 2012.09.29 08:19 wow64node 쪽에도 동일한 키가 있을겁니다.
그것도 작업을 해보고 그래도 안되면 다른 방법이 없네요.
TwinUI.dll을 분석해서 직접 해체 해야겠군요.
레지 삭제 말고 권한을 잠그면 어떤가요?
-
카리스마조 2012.09.29 08:11 그레지도 삭제했습니다 twinui그래도 뜹니다
-
카리스마조 2012.09.29 08:09 알고있습니다
파란창찾고 포멧할것입니다
그리고 피씨에 윈도우만 깔려있습니다 ^^
-
난이나팔자 2012.09.29 08:09 아침부터 수고하십니다.
-
카리스마조 2012.09.29 08:41 프로에서도 리테일키를 입력하면 파란창이 뜹니다
볼륨키를 입력하면 바탕화면에 열쇠모양 twinui.dll 비트맵이미지가 뜹니다 701번 이미지
리테일키로 바꾸면 바탕화면 열쇠모양은 안뜨고 파란창이 뜹니다 현재 twinui.dll은 볼륨키 입력됬을때 뜨는 워터마크만 제거하여 쓰고있습니다
-
카리스마조 2012.09.29 08:52 파란창뜰때보면 일단 창먼저 띄워놓고 PC설정으로 이동 이문구가 뜰때까지는 3초정도 딜레이가 있습니다
파란창과 문구는 따로 인것같습니다
-
카리스마조 2012.09.29 08:53 시스템 들어가면 잠시후에 인증되었습니다 뜨는것처럼 파란창이 워터마크를 다른파일에서 불러오는것입니다
-
카리스마조 2012.09.29 08:59 일단 그물처럼 몰아서 잡아도 되니까 그윗단계 서비스를 죽여보겠습니다 저의 댓글이 안보이면 부팅안되서 포멧중인것입니다
-
초월신 2012.09.29 09:08 TwinUI에 파란창 띄우는 함수가 있군요.
이 기능을 없애 버릴 것인지, 아니면 이놈을 Call 하는 윗 단계 놈을 찾아볼 것 인지가 관건이군요.
결국은 라이센스 형태에 따른 제한인 듯 하니, 라이센스를 풀어야 한다는 결론이 나오는 거니까,
그렇게 까지 갈 필요는 없을 듯 하고, TwinUI에서 손을 보면 될 듯........
MS 제품 분석은 정말이지 다른 프로그램에 비해 100배는 편하네요.
일반 프로그램이었으면 디버거 띄우고, 하나하나 짚어가다가 감으로 때려잡기도 하는 등 생 난리를 쳤을텐데....
-
카리스마조 2012.09.29 09:08 DCOM서비스 삭제해도 파란창이 뜹니다
-
초월신 2012.09.29 09:10 어찌보면 DCOM은 보조적인 역할인 듯 합니다.
일단 TwinUI부터 조져보고 안되면 더 찾아보죠.
-
초월신 2012.09.29 09:39 뭔가 찾긴 했는데, 이게 맞는지 확인하려면 x86용 WMC를 깔아야 겠네요.
ㅎㅎ....아......놔 첨부터 제한이 제일 많은 WMC를 깔 걸.........
-
카리스마조 2012.09.29 10:25 찾으신거 알려주시면 저도한번 해보겠습니다
실컴에서도 바로 됩니다
-
초월신 2012.09.29 17:57 제가 착각을 했군요.
제가 먼저번에 찾은 프로세스는 파란창 띄우는 프로세스가 아니라,
파란창 나온 후 [정품 인증] 버튼 누를때 생성되는 COM 객체인 듯 합니다.
새로 분석된 결과를 보니 몇가지 가능성이 있어서 혼란스러운데요, 가장 유력한 가능성은
(알 수 없는 프로세스) ===<시스템 콜>===> 커널 => lsass을 콜백 => dwm (데스크탑 창 관리자)를 거쳐서
=> Explorer 아니면 svchost (LocalServiceNoNetwork)에서 파란창을 만드는 것 같습니다.
Explorer와 SVCHOST가 동시에 창의 비트맵을 초기화 하는 스레드를 생성하는 듯 해서
어느쪽인지 정확히는 모르겠네요.
이 순서는 스레드의 콜 스택을 보고 추측한거라, 어느게 먼저인지, 아님 동시액션인지는 확실치가 않네요.
문제는 최초에 시스템 콜을 넣은 프로세스를 알 수 없다는건데요,
알 수 없다는 건 결국 SPPSVC라는 얘기라고 봅니다.
보호된 건 이놈이 대표적이니까요.....
여튼 그 때문에 SPPSVC에 요청을 넣은놈도 못찾겠네요.
아님 SPPSVC가 지 맘대로 동작한 건지......
그래서
현재까지의 중간 결론은 Explorer에서 파란창을 구현하는 걸로 보이는 몇가지 함수를 테스트 할 생각입니다.
아니면 DWM을 테스트 하던가......
아직 갈길이 머네요....쉽게 끝날 줄 알았더니........
-
초월신 2012.10.01 00:50 조언 감사드립니다.
저는 일단 Process Monitor로 스레드 생성을 추적하고 그 기록에 들어있는
콜스택 정보를 토대로 추적을 하고 있습니다.
콜스택에 거쳐서 들어온 주소에 맞는 DLL을 가지고 있는 프로세스를 찾으면 될 것 같아서요.
근데 그것보다, 이 문제에 시간을 너무 할애하는 것도 좀 아니다 싶어서
그냥 대충 파란창 생성만 처리하고 말았습니다.
나중에 정말로 어려운 난관에 봉착할 때 도움을 청하게 될 수도 있지 싶습니다.
-
sone 2012.09.30 11:01 의심되는 프로세스를 다 죽인다음, 커널 드라이버를 짜서 그것을 커널에 로드해서 모니터링해보는 방법은 어떨까요?
커널 API중에 PsSetCreateProcessNotifyRoutine 이라는 녀석과, PsSetCreateThreadNotifyRoutine, PsSetLoadImageNotifyRoutine
이라는 녀석들이 제공됩니다.
말 그대로 프로세스의 생성, 쓰레드의 생성, 어떤 실행 이미지의 메모리 로드, 를 모두 감시할수 있습니다.
-
초월신 2012.09.29 18:02 그러면 sppsvc가 아니라는건데요, 대체 어떤놈이 시스템 콜을 넣은건지.......
분명 유저모드 프로세스인데.......
좀 더 찾아봐야겠네요.
-
카리스마조 2012.09.29 18:01 sppsvc를 삭제해도 파란창이 3시간후에 뜹니다
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 자유 게시판 이용간 유의사항 (정치, 종교, 시사 게시물 자제) [1] | gooddew | - | - |
15316 | 옛생각이 나네요 [1] |
|
1006 | 11-10 |
15315 | 크리에이티브님,윈도우 포럼에 아무 일 없다는 듯이 다시 ... [3] | 복두꺼비 | 2107 | 11-10 |
15314 | 한게임도 이젠 윈도우8에서 잘 되네요. [2] | 이프로 | 2130 | 11-10 |
15313 | 모두 [1] | 남도맛 | 1141 | 11-10 |
15312 | 크리에이티브의승전고+대화방가서 얘기해봅시다+ [6] |
|
1969 | 11-10 |
15311 | 관리자님께 공개적으로 하고 싶은말 있어요 [13] | 나비popcorn | 1820 | 11-10 |
15310 | 커피향이 땡기는 피아졸라의 Cafe 1930 [1] | WinF | 1277 | 11-10 |
15309 | 반갑습니다 라는 말을 쓰려고 했지만 또 하나의 사태가 벌... | cdcsj | 1007 | 11-10 |
15308 | 마소에서도 이미 알고 있을 겁니다. [18] | brucex | 2472 | 11-10 |
15307 | 낮선 닉으로 올라온 글들이 많아졌네요.. | 너랑 | 1130 | 11-10 |
15306 | 종군네티즌이 몇분 잇는것같아서 물어봅니다. [2] | WinF | 1273 | 11-10 |
15305 | 32비트사용자들을위한 [1] | 어사또 | 1134 | 11-10 |
15304 | 다들 우산 이나 우의 하나 준비하셔야 할 듯 합니다. | 왕골통 | 1433 | 11-10 |
15303 | 뭔일입니까 저분은? [1] |
|
1690 | 11-10 |
15302 | 혹시나 해서 그곳에 가봤는데 충격이네요 [22] |
|
3074 | 11-10 |
15301 | 한동안 눈팅만 하던 회원도 한글자 적습니다 [2] | 나비popcorn | 1337 | 11-10 |
15300 | 운영진이 뭐길래... [4] | 구디 | 1930 | 11-10 |
15299 | 역시 사람은 자신이 보고 싶은것만 보이나봅니다. [58] |
|
4949 | 11-10 |
15298 | 기분도꿀꿀하고 | 어사또 | 1233 | 11-10 |
15297 | 회원게시판 페쇄는 왜 하셨는지요? [2] | spook | 1973 | 11-10 |
수고 하시네요 즐거운 추석 되세요.