본문 바로가기
IT관련지식

PC바이러스잡기

by 암흑탐험가 2021. 6. 1.
반응형

요즘은 각종 개인이 사용할 경우 무료백신(V3, 알약 등)이 많이 있습니다.  개인적으로 설치하는 백신이 없다면 Windows10에서 기본기능으로 제공하는 Windows Defender도 있습니다.  나름 잘 잡아주네요.  

 

도스시절 불법복제 프로그램이 판을 치던 시절... PC방이 생기면서 스타크래프트가 폭발적으로 늘어나던 것과 마찬가지로 PC의 발전(속도, 용량 등)이 불법프로그램들의 확산을 부추겼습니다.  그리고 바이러스가 우리 주변에 숨어들게 되었죠.  

 

컴퓨터 바이러스는 최초 자신의 실력을 선보이기위한 장난같은 방식에서 시작된 걸로 생각이 됩니다.  그러다가 하드웨어를 공격하는 방식으로 변경되었습니다.  도스시절 하드디스크에 배드섹터를 만들게 하거나 시스템섹터를 먹통으로 만드는 바이러스들이 생겨났습니다.  대표적인게 도스의 부트시스템을 공격하는 미켈란젤로 바이러스가 있습니다.  이전부터 컴퓨터에 대해 잘 알고있고 본인의 PC에 걸린 바이러스를 잡기위해 만든것을 버전을 개량하여 V1, V2를 거쳐 지금의 V3가 만들어지게 되었습니다.

 

당시의 백신은 지금처럼 메모리에 상주가 되지 않고 별도의 응용프로그램처럼 실행하여 검사하는 방식이였습니다.  그 이후 인터넷의 발달로 인해 네트워크 트래픽을 발생시켜 업무를 마비시키는 바이러스들도 많이 발생하였습니다.  그당시의 바이러스들로 인해 업무적 피해가 많이 발생했고, 오랫동안 도스를 사용하다보니 GUI가 보여주지 않는 Dos환경에서 바이러스를 찾아보기 시작했습니다.

 

역시 초반 잡설이 좀 길었지만 2000년대 PC의 바이러스를 확인하고 백신업체에 샘플파일 넘기던 기억을 되짚어 적어보겠습니다.

 

준비물 : 도스창, 도스명령어, regedit, 작업관리자, kill.exe프로그램 (기본프로그램)

           (도움이 되는 툴 : process explorer, Autoruns, TCP View)

 

프로세스 익스플로러, 오토런스, TCP View가 있으면 훨씬 편하긴 하지만 없다면 윈도 기본기능 + kill.exe파일만 있어도 충분합니다.

 

 

제가 알고 있고 조치할 수 있는 바이러스 탐지 및 제거방법은 다음과 같습니다.

 

1. 작업관리자에서 시작프로그램, 서비스 항목 확인 (Ctrl + Shift + Esc, 또는 주소표시줄 마우스 우클릭 -> 작업관리자)

  : 바이러스를 제거한다는것은 기존 설치되어있는 프로그램에 뭔가 수상한 프로그램이 있는지 확인하는 겁니다.  그래서 시작프로그램이나 서비스 항목에서 이름이나 주석만으로 수상한 프로그램이 있는지 확인할 수 있어야 합니다.

   (잘 모르면 몽땅 다 정상으로 보여요)

지금은 작업관리자에서 시작프로그램 및 서비스 상태를 확인할 수 있습니다.

2. 레지스트리 확인 (시작 -> 실행 -> regedit)

    레지스트리 파일은 컴퓨터 설정파일이라고 보시면 됩니다.  거의 모든 설정은 이곳에서 다 처리할 수 있어요.

 컴퓨터\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

 컴퓨터\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

 위의 두군데 위치 확인해보세요.  왼쪽창의 LOCAL_MACHINES 누르시고 S눌러서 Software, M눌러서 Microsoft, C눌러서 CurrentVersion, R눌러서 Run 찾아가시면 쉽고 빨라요.  이름에 올라와있는 것들과 데이터(파일경로명)의 파일실행경로를 보면 어느 위치 실행파일이 실행되는지 알 수 있습니다.  만약 의심스럽다면 검색을 통해 꼭! 확인하세요.

RunOnce 폴더에는 기본값만 있는게 정상이고 그외 추가된 내용이 있다면 꼭 확인해보세요.

 

보통 2~3곳 정도만 확인하면 됩니다. Run, RunOnce쪽이요.

3. 이곳에서 의심스러운 실행파일(경로가 Program files~ 가 아니거나 Windows\system32가 아닌경우)은 검색을 통해 확인해보고, 의심스럽다면 도스창에서 해당경로를 찾아가세요.  

만약 C:\123 이라는 폴더에 aaaa.exe라는 파일이 실행되는게 레지스트리 편집기나 작업관리자에서 확인을 했는데 해당경로로 찾아가보니 아무것도 없는경우... 바이러스의 냄새가 점점 짙어지게 됩니다.

 

탐색기에서 보면 C:\123폴더는 비어있으나 도스창에서 attrib 명령어를 치면 숨겨진 파일이 보이게 됩니다. 

이 경우 attrib -h -a -r -s *.* 하거나 attrib -h -a -r -s 123.exe 로 입력하면 해당 파일의 숨김옵션이 풀리게 됩니다.

이런경우 작업관리자에서 위쪽 제목부분에 마우스 우클릭하면 표시 열 추가하는곳이 있는데 이곳에 PID를 추가해줍니다.

위쪽 이름열 마우스 우클릭 -> PID선택하면 CPU왼쪽에 PID가 나타납니다.

4. 이미 실행중인 파일을 강제 종료하려면 작업관리자에서 마우스 우클릭 -> 작업끝내기를 해야하지만 바이러스 만든사람들은 그렇게 쉽게 해결하도록 안두죠.  강제끝내기가 먹히지 않을 수 있습니다. del명령어가 먹지 않을경우 kill이라는 파일을 사용합니다.

 

인터넷에서 kill.exe를 검색하면 쉽게 찾을 수 있습니다.

https://sourceforge.net/projects/bgkillexe/

 

Kill-Exe

Download Kill-Exe for free. Kill-Exe easy to use process killer :D one click and done Added: • Tool button "This makes it easier, no more right clicking on the kill button for more tools and accidentally killing the process" • Setting process priority

sourceforge.net

이 파일을 C드라이브, 또는 C:\Windows 또는 삭제할 파일이 있는곳으로 복사해둡니다.

그뒤 도스창에서 명령어를 입력하면 됩니다.

 

kill PID<enter> 

저는 바이러스가 없기때문에 위의 작업관리자의 카카오톡 프로세스를 kill명령어로 입력해봤습니다.  그럼 깔끔하게 2532 PID가 종료되고 해당 파일을 Del명령어로 삭제가 가능하게 됩니다.

 

 

번외로 위와 같은 방식으로 못찾을 경우 전 c:\, c:\windows, c:\windows\system32 폴더에서 수상한 프로그램을 찾았습니다.  파일 갯수가 많아 잘 보기 힘들경우 도스 명령어를 이용하여 txt파일로 변환하여 확인하였습니다.

 

1.txt파일의 왼쪽은 A로 되어있는데 만약 히든, 시스템 속성의 파일이 있다면 이부분에 A H S 이런식으로 표기가 됩니다.  그럼 그 파일이 속성을 보거나 검색을 통해 수상한지 여부를 확인하게 됩니다.

 

 

위와 같이 아~무것도 없는 상태에서 기본프로그램을 활용한 방법을 설명하였습니다.

다음은 도구를 활용하여 위의 작업들을 쉽고 빠르게 처리할 수 있습니다.

 

process explorer 프로그램은 sysinternals에서 만든 프로그램으로 나중에 MS에 팔렸습니다.  MS 사이트에서 무료로 다운로드 가능합니다.  특징은 현재 PC의 모든 프로세스 정보를 알려주게 됩니다.

 

실행파일명, CPU나 메모리 점유율, PID 등과 파일경로명 등을 쉽게 보여주기 때문에 수상한 파일을 찾기 편하게 해줍니다. 마우스 우클릭하여 kill명령을 수행할 수 있습니다.

https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer

 

Process Explorer - Windows Sysinternals

Find out what files, registry keys and other objects processes have open, which DLLs they have loaded, and more.

docs.microsoft.com

 

Autoruns 프로그램은 process explorer보다 조금 더 강력합니다.  레지스트리 파일과 연동된 내용도 같이 보여줍니다.

이 프로그램 역시 MS에서 구매해서 지원하고 있습니다.

 

조금 더 복잡하죠?  여러 프로그램 찾을필요 없이 이곳에서 전부 확인이 가능합니다.

https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns

 

Autoruns for Windows - Windows Sysinternals

See what programs are configured to startup automatically when your system boots and you login.

docs.microsoft.com

TCP View 프로그램은 PC의 프로세스가 통신을 할때 어떤 실행파일로 어떤 IP로 연결되는지 보여주는 프로그램입니다.  이것 역시 MS에서 제공해주고 있습니다.

 

https://docs.microsoft.com/en-us/sysinternals/downloads/tcpview

 

TCPView for Windows - Windows Sysinternals

Active socket command-line viewer.

docs.microsoft.com

 

과거 아무것도 없이 바이러스 잡던 생각이 들어 두서없이 이것저것 적어보았습니다.  

바이러스 걸리지 않는 방법은... 아무거나 다운받지 말것! 받아야 한다면 공식 사이트에서 다운받을것! 두가지는 꼭 지켜주시는게 좋습니다.  

반응형

'IT관련지식' 카테고리의 다른 글

1번터치 QR체크인  (0) 2021.06.06
검색엔진등록 - Google Search Console  (0) 2021.06.05
검색엔진등록 - 네이버  (0) 2021.06.04
무선랜속도향상 (EasyMesh)  (0) 2021.05.27
PC사용시간, 유튜브 차단방법  (2) 2021.05.24

댓글