본문 바로가기
묻고 답하기

rundll32.exe가 무한 실행되는 scrcons.exe를 이용하는 악성코드 - WMI Script를 이용하는 악성코드 - Program Files에 숫자로 표시된 폴더 생성/ ms숫자.dll (예 - ms99999.dll) 생성

by 글벌레 2012. 5. 13.
반응형

 

 

 

 추가하는 내용 - 5th

 

 저는 이 글의 정보가 이 문제를 겪는 사람들이 스스로 문제를 해결하는데

 도움이 되기를 희망합니다 . 그리고 이 문제를 겪는 각자가 이 문제를 해결하려고 노력하는

 과정에서 정보들이 더 모이기를 희망합니다 . 

 

 그러나 그럼에도 불구하고

 이 문제에 대하여 더 이상 정보를 수집하는 것은 의미가 없어 보입니다 .

 

 정보를 수집해서 올려놓아 봤자 ,

 이 문제를 겪는 대다수 사용자들이 이 정보를 바탕으로

 문제를 스스로 해결할 의지도 , 능력도 없어 보이기 때문입니다 .

 

 또한

 이 문제가 관찰되고 , 백신들에 의해 진단되기 시작한지가

 열흘이 되어가므로

 곧 백신들이 해결하리란 기대도 좀 되고 ...

 또 이 증상에 대한 문의도 많이 줄었습니다 .

 

 그런 면에서 이제는 정보 수집이 의미가 없지 않나 싶긴 하지만 ,

 

 아직도 감염이 되는 시스템이 있고  , 그런 시스템 사용자들 중에 일부는

 마치 제가 오히려 해결을 방해하는 거처럼 취급을 합니다 .

 

 그래서 제가 귀찮아서  정말 피하고 싶은 선택이었지만 ,

 이 문제를 누군가 남이 해결해 주기를 원하시는 분들은  

 

추천 박스 內 글 제목을 클릭하시면 윗글이 새 탭 또는 새 창으로 뜹니다 .
 

 일단은 윗글을 참조해서 프로세스 모니터로 로그 파일을 만들어서

 본인의  블로그에 해당 파일을 첨부해서 올린 후에 그 링크를

 질문에 첨부해 주시기 바랍니다 .

 (다음 지식에 질문하는 경우에는 제 프로필에 비밀 댓글로 주시고 ,

 네이버 지식iN에 질문하는 경우에는 제 답변이 달리고 난 후 또는 답변 채택 전에

 질문 수정을 통해 블로그 링크를 지우시면 됩니다 .)

 

 로그는 부팅 후에 증상 발현 때까지만 잡으시면 되고 ,

 로그 파일은 최소한 10M 이상이므로 분할 압축해서 올려야 하실 겁니다 .

 

 단 , 제가 현재 알집은 사용하지 않는 관계로 .egg.alz로 분할 압축해서 문의하시면

 일단 제가 재압축을 요구할 것이고 , 그 요구에 재압축해 주지 않으시면 답변 못드리는 점은

 미리 양해를구합니다 .

 

 그리고 더불어서 

 

추천 박스 內 글 제목을 클릭하시면 윗글이 새 탭 또는 새 창으로 뜹니다 .
 

 윗글을 참조해서 Autoruns에서 저장하는 로그를 

 .arn으로 저장해 역시 블로그에 올려 놓고 알려주시기 바랍니다 .

 

 그러나 가장 좋은 방법은 이 글에서 알려준 방법과 정보를 바탕으로  

 스스로 해결하는 것일 겁니다 .

 

 만약 스스로 해결해 보실 분들은 아래 추천 박스 內 글도 도움이 될 것이니 참조바랍니다 .

 

추천 박스 內 글 제목을 클릭하시면 윗글이 새 탭 또는 새 창으로 뜹니다 .
 

 

최근 며칠 동안

 

 

위 창과 같은 오류 창이 뜨는데

이 창을 꺼도 꺼도 계속 오류 창이 생성되어 컴퓨터를 사용하기 힘든 경우들이 발생하고 있습니다 .

(오류 창이 뜨지 않는 경우에는 계속적으로 오류 경고음이 띵띵하고 난다고 하고요 .)

 

                    [그림1]

 

이런 경우에 작업 관리자를 켜 보면

위의 그림에서 보이는 것처럼 rundll32.exe가 계속 생성됨이 확인이 되는데요 .

 

이런 경우 어떻게 대처를 해야 할까요 ?

 

오늘은 그에 대하여 정리를 해보고자 합니다 .

 

정리 전에 말씀을 드릴 것은

저는 이 악성코드 샘플을 수집하지는 못하였기 때문에

제 경험적 지식과

이 문제를 질문한 질문자들로부터 얻은 정보

그리고 검색으로 얻은 지식을 기반으로 글을 쓸 것이기 때문에

사실과 틀린 부분이 존재할 수도 있다는 겁니다 .

그리고 더 중요한 것은 문제가 해결이 안 될 수도 있습니다 . ㅠ ㅜ

 

그러나 현재 뾰족한 해결책이 없어 보이는 이 문제에 대하여

이 글을 통해 정보를 주고받을 수가 있다면

우리는 이 문제 해결에 한 걸음 더 접근하게 될 것입니다 .

 

글은 이렇게 진행을 합니다 .

 

1 . 이 글을 읽기 위하여 먼저 읽어야 할 글들 .

     (글의 이해를 위한 기반 지식 확립)

 

2 . 대처 방법의 요약 .

 

3 . 요약에 대한 해설 .

 

그러면

이 글이 이 문제를 겪고 있는 사람들에게 도움이 되기를 희망하며

글을 시작합니다 .

 

제가 쓰는 글을 이해하시려면

우선 Process Explorer에 대한 이해를 가지고 있어야 합니다 .

아래 추천 박스 內 글들을 읽어 보시면 Process Explorer를 빠른 시간 內

이해하시는 것이 가능할 겁니다 .

 

추천 박스 內 글 제목을 클릭 시 추천 박스 內 글이 새 탭 또는 새 창으로 뜹니다 .

 

 

 

이제 Process Explorer를 이해하셨으면 대처 방법을 요약합니다 .

요약에 따라 대처를 하는 경우에도 해설 부분을 한 번은 읽어 보시기 바랍니다 .

주의해야 할 사항들은 해설 부분에 쓰여졌으니까요 .

 

1 . 

 

프로세스 익스플로러에서 scrcons.exe를 더블 클릭해서 뜨는 properties 창에서
scrcons.exe가 물고 있는 파일을 command line에서 확인합니다 . 

 

 추가하는 내용 - 1st

 

scrcons.exe가 물고 있는 파일이 없다고 합니다 .

(scrcons.exe의 command line에는 C:\WINDOWS\system32\wbem\scrcons.exe -Embedding이라고 적혀 있답니다 .)

 

그러므로 msconfig에서 scrcons.exe를 실행 해제 후에 요약에서 설명한 처리 과정을

밟아 보시기 바랍니다 .

 

그리고

 

현재 C 드라이브 루트의 .vbs 파일로 인한 오류가 생긴다는 질문이 많이 보이는데

그 오류가 이 증상과 관련이 있을지도 모른다는 생각이 듭니다 .

 

그러므로 C:\**.vbs 파일이 존재한다면 그건 지우시기 바랍니다 .

 

 추가하는 내용 - the last

 

 

 

 위 오류 창들은 V3 Lite의 실시간 감시가 진단한 걸 삭제 후에

 재부팅했더니 , 부팅 시마다 뜨는 오류창이랍니다 .

 오류 창의 내용을 보면

 바로 위 첫 번째 추가 내용에서 언급한

 

 현재 C 드라이브 루트의 .vbs 파일로 인한 오류가 생긴다는 질문이 많이 보이는데

 그 오류가 이 증상과 관련이 있을지도 모른다는 생각이 듭니다 .

 

 라는 추측은 맞는 추측이었다는 걸 알 수가 있습니다 .

 그러므로 C 드라이브 루트에 .vbs가 존재한다면 반드시 그거부터 제거를 해야 합니다 . 

 만약 C:\**.vbs가 안전모드에서도 제거가 안 되는 경우가 있다면

 아래 링크 글에서 소개한 MoveFile을 활용해 보시기 바랍니다 .

 

  MoveFile v1.0 - 지워지지 않는 파일 지우기

 

 추가하는 내용 - 2nd

 

프로세스 익스플로러에서 system.exe라는 게 존재하거나

system이 두 개이고

그중 하나가 Run a DLL as an App로 작동한다면

Run a DLL as an App로 작동하는 system을 더블 클릭해서

Command line을 확인해 주시기 바랍니다 . 

 

프로세스 익스플로러에서 보이는 System은 하나입니다 .

 

 

 

 

 추가하는 내용 - 3rd

 

 

 

 두 번째 추가하는 내용에서 언급한 Run a DLL as an App로 작동하는 system

 위 그림에서 보이는 것처럼 Program Files에 생긴 각 숫자 폴더마다 존재한다고 합니다 .

 그리고 Run a DLL as an App로 표시된다는 점에서 추측이 가능했던 것처럼

 이것이 하는 일은 같은 폴더 內에 존재하는 ms임의의숫자.dll 파일을 등록하는 거로 보입니다.

 그러므로 이것도 이 증상을 일으키는 근본적인 원인은 아닙니다 .

 

 그러므로 제가 두 번째 추가하는 내용에서 Run a DLL as an App로 작동하는 system

 Command line을 보아 달라고 했던 것은 문제 해결에 도움이 안 되는 거였습니다 .

 

 참고로 언급하면 Run a DLL as an App로 작동하는 system의 

 Command line은 

 

 "C:\Program Files\62578\system" "C:\Program Files\62578\ms62718.dll",DllRegisterServer

 

 이라고 합니다 . 이 정보를 댓글로 주신 김대철 님께 깊은 감사를 드립니다 .

 

 

 

 같은 증상을 겪는 시스템에서 V3 Lite가 진단한 내역들 중에

 시스템의 임시 폴더와 관련된 것도 보입니다 .

 

 그러므로 임시 폴더를 비워줄 필요도 있어 보이는데요 .

 시스템의 임시 폴더를 여는 법은 시작>실행 또는 검색창에서

 %TEMP%라고 치고 엔터하면 됩니다 . 

 

 주의하실 점은 임시 폴더 , Temp 폴더를 자체를 지우는 것이 아니고

 그 안의 폴더 및 파일을들 지운다는 겁니다 .

 

 만약 삭제가 안 되고 남는 게 있다면

 안전모드에서 삭제하시기 바랍니다 . 

 

2 .

 

제어판에서 Windows 방화벽을 열고

윈도우 방화벽 설정을 아래 그림들에서 빨간 박스친 거를 택하는 설정으로 합니다 .

 

             Windows XP

 

Windows 7

 

참고로 언급하면

이렇게 설정을 해도 몇몇 대전 게임을 제외한

대다수의 게임 실행이나 일반적인 인터넷 사용에는 문제가 없습니다 .

 

3 .

 

프로세스 익스플로러에서 scrcons.exe를 끄고

1 .에서 확인된 파일을 제거합니다 .

 

4 .

 

시스템 구성 유틸러티의 시작 프로그램 탭에서
 scrcons.exe와 관련된 항목이 보인다면 체크를 해제합니다 .

 

시스템 구성유틸러티는 시작>실행 또는 검색창에서

msconfig라고 입력해서 접근이 가능합니다 .

 

시스템 구성 유틸러티를 잘 모르신다면 아래 추천 박스 內 글을 참조바랍니다 .

 

추천 박스 內 글 제목을 클릭하시면 윗글이 새 탭 또는 새 창으로 뜹니다 .
 

 

  추가하는 내용 - 4th

 

scrcons.exe는 스크립트에 반응하는 (자신에게 주어진) 정상 행동을 하는 것으로

     보이므로 따로 시작 프로그램 등록이 안 되었다고 보는 게 맞는 거 같습니다 .

     그러므로 제가 요약 및  첫 번째 추가하는 내용에서 언급한 

     msconfig에서 scrcons.exe와 관련된 거를 체크 해제하라는 것은

     틀린 정보로 보입니다 . 

 

5 .

 

이미 등록이 확인된 ms임의의숫자.dll 파일들을 찾아서 제거합니다 .
만약 제거가 불가능하면 안전모드에서 제거합니다 .

             

Program Files에 생성된 숫자로만 표시된 폴더들을 삭제하시면 됩니다 .

 

혹 재부팅 시에 파일이 없다는 오류 메시지가 뜬다면
아래 추천 박스 內 글에서 설명한 대로 Autoruns를 통한 조치를 하시기 바랍니다 .

 

추천 박스 內 글 제목을 클릭하시면 욋글이 새 탭 또는 새 창으로 뜹니다 .
 

6 .

 

백신으로 전체 시스템 정밀 검사를 합니다 .

 

만약 현재 사용 중인 백신이 제대로 잡아내지 못한다면

아래 추천 박스 글들에서 소개한 백신을 이용합니다 .

 

트렌드 마이크로의 무설치형 백신 하우스콜을 사용하시려면 윗글 제목을 클릭 .
  

AVG를 이용하시려면 윗글 제목을 클릭 .
 

요약은 이렇게 끝났습니다 .

위와 같이 조치 후에도 증상이 계속된다면 이 방법으로는 해결이 안 되는 경우입니다 .

 

어쨌든 이제 해설로 들어갑니다 .

 

해설은 번호 없이 그냥 쭉 설명을 합니다 .

 

VBScript 이용한 악성코드의 경우 특정 악성 .vbs 파일을 autorun.inf를 이용해서

wscript.exe가 실행을 하도록 합니다 .

 

 

그래서 예전에 일명 오토런 바이러스 , VBScript 이용한 악성코드가 처음에 유행할 당시

Trendmicro의 악성코드 분석 글들을 읽어 보면 wscript.exe를 죽이고 ,

악성 Autorun.inf라고 진단 또는 추정된 파일을 열고 거기에 적힌 명령을 보라는 설명이 많았는데요 .

 

이 과정은 결국 Autorun.inf가 무엇을 실행시키는지 알아내기 위한 방법이었는데 ,

그걸 알아내는 방법은 프로세스 익스플로러를 이용하면 간단합니다 .

 

위의 액자 內 그림에서 보시면 빨간 형광색으로 표시한 부분 ,

Command line에서 확인이 되는 파일 ,

그게 바로 Autoruns.inf가 실행을 지정한 파일이라고 보면 될 겁니다 .

(악성코드 파일 이름이 2.vbs라는 거는 아닙니다 .

그림에 보인 파일명은 설명을 위해 임의로 정한 이름입니다 .)

 

그렇게 스크립트가 실행이 되면

그 다음에는 스크립트의 명령에 따라 시스템에 변경이 가해지는 것이고요 .

 

그런데요 .

[그림1]에서도 scrcons.exe라는 파일이 보이는데 ,

 

 

현재 rundll32.exe가 무한정 실행되는 시스템들에서

rundll32.exescrcons.exe의 자식 프로세스로 실행이 됩니다 .

그런데

scrcons.exe

WMI scripts를 실행해서 주로 프로그램 오류 등을 보여주는 프로세스랍니다 . 

그리고

WMI script도 어떻게 쓰여졌든 어차피 그 확장자가 .vbs로 끝나야 한다고 합니다 .

간혹 배치 파일(.bat)로 만들어지는 경우도 있는 거 같고요 .

그러므로 프로세스 익스플로러에서 scrcons.exe를 더블 클릭하여 뜨는 Properties 창에서

그 Command line을 보면

확장자가 .vbs 또는 배치 파일(.bat)인 파일을 물고 있지 않을까 싶습니다 .

 

그런데 현재 이 증상으로 고생을 하시는 분께서 올려주신

rundll32.exeproperties를 보면

 

 

DllRegisterServer라는 명령줄이 보이는 걸로

rundll32.exe가 라이브러리(.dll)를 등록하려 한다는 걸 짐작이 가능합니다 .

 

그걸로 볼 때

scrcons.exe 파일이 rundll32.exe를 통해서 악성 .dll을 등록하려는 과정에서

오류가 일어나는 거로 보입니다 .

 

그러므로

scrcons.exe가 물고 있는 .vbs 또는 배치 파일(.bat)을 안전모드로 부팅해서 삭제를 해버리든가

또는 scrcons.exe를 종료 후에 삭제를 해버리면

이 오류는 일단 사라질 거로 보입니다 . 

 

삭제를 하셨으면 시작 > 실행 또는 검색창에서 msconfig라고 치고 엔터해 뜨는

시스템 구성 유틸러티의 시작 프로그램 탭에서 

scrcons.exe와 관련된 항목이 보인다면 체크를 해제합니다 .


관련 글 보기 - 시작 프로그램 관리만 잘해도 컴퓨팅이 편해진다

 

주의하실 점은 이 증상을 보이는 시스템에서 프로세스로 뜨는

scrcons.exe rundll32.exe는 정상 파일이므로 삭제를 하면 안 된다는 겁니다 .

 

방화벽에서 외부에서 내 시스템으로 오는 Inbound Traffic을 차단하라는 이유는

WMI(Windows Management Instrumentation)라는 게

시스템의 원격 제어를 통한 수정에도 사용될 수도 있는 서비스라서 혹시라도 만약을 위해서이고요 .

 

백신으로 전체 시스템을 정밀 검사하라는 이유는

같은 악성코드인지 아닌지는 알 수 없으나 만약 같은 악성코드에 대한 분석이라면

아래 링크를 보시면 ms99999.dll(=ms임의의숫자.dll)을 생성하는

악성코드가 시스템에 주는 영향은 좀 많기 때문입니다 .


http://www.threatexpert.com/report.aspx?md5=ca58da818f9f1b82e0571ea577fe0234

 

그리고 이미 이 오류가 뜨기 시작했다면

악성 .dll 파일들이 시스템에 꽤 심어졌다고 봐야 할 수도 있는 겁니다 .

아마도 악성 스크립트 작성자의 실수로 인젝션될 .dll이 지정되지 않은 구문에

등록에 실패한 경우 성공할 때까지라는 loop 명령어가 있어서 계속 오류가 뜨는 것일 수 있으므로

어차피 백신을 통한 처치는 꼭 이루어져야 한다는 겁니다 .

.dll이 제대로 지정된 명령 구문들의 명령들은 제대로 수행되어서

악성 라이브러리들이 시스템에 이미 상당히 심어졌을 가능성을 배제할 수 없으니까요 .

 

요약에서도 언급을 했지만 ,

다시 언급을 하면

이미 생성된

ms99999.dll (ms201812 등등 ms임의의숫자.dll) 등등의 파일들도 제거를 하셔야 합니다 .

이들을 제거 후에 오류가 뜬다면

부팅 시 뜨는 다양한 오류 창들에 대한 대처법에서 설명한 대로 조치를 하시고요 .


또 한 가지 참고로 언급을 한다면

ms99999.dll (ms201812 등등 ms임의의숫자.dll)의 경로 또한

프로세스 익스플로러에서 더블 클릭함으로써 쉽게 보시는 게 가능합니다 .

 

글이 좀 두서없이 진행이 된 거 같은데요 ...

모쪼록 이 문제를 겪고 있는 분들에게 도움이 되기를 바라며 이만 글을 줄입니다 .

 

 

이 글이 유익했다면 아래 손꾸락 모양의 추천 버튼을 꾹꾹 눌러 주시기 바랍니다 .
추천에는 다음 로그인은 필요 없습니다 .
그러나 이왕에 추천해 주실려면 다음에 로그인 후에 추천을 해주시면 더 좋은데요 .....
다음에 로그인 추천은 다음에 로그인 하고 이 글에서 추천을 한다고 되는 게 아니고요 .
아래 손꾸락 모양 버튼 오른쪽으로 구독이라고 보이실 터인데 그 구독을 눌러서 다음에 로그인 후에
글벌레를 구독하시면 이 글의 제목이 My View란 탭에서 보일 겁니다 .
그 글 제목을 클릭해 뜨는 창에서 추천해 주시기 바랍니다 ^ ^*

추천은 제 글이 유익했었다고 보내 주시는 메시지이고
그런 메시지는 글벌레가 글을 계속 발행할 수 있는 힘의 근원이 되어 줄 겁니다 ^ ^*
반응형

댓글