1. 프로세스와 서비스
먼저 프로세스와 서비스 요 두놈의 개념부터 잡고 가자.
프로세스란 사전적인 의미로 과정, 처리 이런 뜻이다. 컴퓨터 분야에서의 프로세스는 "실행중인 프로그램"을 뜻한다.
프로세스에는 여러가지 명령어, 데이터, 카운터, 레지스터, 루틴 인자, 복귀 주소, 저장된 변수 등의 데어터를 포함하는 프로세스 스택 등이 포함된다. 프로세스는 각각 독립적으로 수행된다. (하나가 잘못 되도 다른 프로세스는 정상적으로 작동함.
다음은 서비스. 서비스란 사용자의 요청이 있을 때만 메모리 단에 올라가 실행되는 것이다. 프로세스는 항상 올라가 있다는 거랑 비교할 필요가 있다. 서비스는 전부다 필요한 것은 아니며 어떤 서비스는 운영되는데 필요 없는 서비스도 있다.
2. windows 핵심 프로세스
윈도우의 주요 프로세스들 중요한 몇가지를 알아본다.
보안적인 관점에서 주요 프로세스들을 알 필요가 있다. 왜? 대부분의 악성코드들은 상시로 메모리에 상주하는 주요 프로세스(대표적으 로 svchost)로 등록시켜 사용자가 별다른 작업을 하지 않더라도 항상 실행이 되어 있도록 설정이 된다. 그래서 주요한 프로세스들을 알 고 있어야 낯선 프로세스들에 대한 의구심을 품고 확인 작업도 해볼 수가 있는 것이다. 확인은 작업관리자를 통해 볼 수 있다.
자 그럼 윈도우 핵심 프로세스는 어떠한 것들이 있는지 알아보자.
1. CSRSS : 윈도우 콘솔을 관장하고, 스레드 생성/삭제를 하며 32비트 가상 MS-DOS모드를 지원한다.
2. EXPLORER : 작업 표시줄, 바탕화면과 같은 사용자 쉘을 지원한다. (이거 끄면 바탕화면 깨끗해짐.)
3. LSASS : winlogon 서비스에 필요한 인증 프로세스를 담당한다.
4. MSTASK : 시스템에 대한 백업이나 업데이트 등에 관련된 작업 스캐쥴러 이다.
5. SMSS : 사용자 세션을 시작하는 기능을 담당한다. winlogon, win32(csrss.exe)를 구동시키고, 시스템 변수를 설정
6. SPOOLSV : 프린터와 팩스의 스풀링 기능을 담당한다. (프린터 안쓰는 pc는 꺼버려도 무관.)
7. WINMGMT : 장치들에 대한 관리 및 계정 관리 네트워크 등의 동작에 관련된 스크립트이다.
8. MSDTC : 웹 서버 및 SQL 서버 구동 시에 다른 서버와의 연동을 관리한다.
9. SVCHOST(★) : DLL에 의해 실행되는 프로세스들의 기본 프로세스!? 이다. 따라서 거의 유일하게 한 시스템에 여러 개의 SVCHOST가 존재한 다. 이런 특징으로 인해 악성코드가 SVCHOST로 둔갑한 채로 메모리에 올라와 있는 경우가 많다.
10. SERVICES : 시스템 서비스들을 시작/정지 시키고, 그들 간의 상호작용 기능을 수행한다.
11. SYSTEM : 대부분의 커널 모드 스레드의 시작점이다.
12. SYSTEM IDLE PROCESS : 각 CPU마다 하나씩 실행되는 스레드로써 CPU의 잔여 프로세스 처리량을 %로 나타낸 값을 말한다.
13. TASKMGR : 작업 관리자임.
14. WINLOGON : 사용자 로그온과 로그오프를 담당한다.
15. CTFMON : 키보드, 음성, 손으로 적은 글 등 여러가지 텍스트 입력에 대한 처리를 할 수 있도록 지원한다.
16. DFSSVC : 분산 파일 시스템 (DFS)에 대한 지원을 위해 백그라운드로 실행되고 있는 프로세스 이다.
3. Windows 핵심 서비스
윈도우에는 응용 프로그램 서비스 프로세스를 포함하여 100여개의 서비스를 운영한다.
뭐 다필요한건 아닌데.. 필요한 것들이 있음. 필수적으로 실행해야 하는 것들을 알아 보겠다.
실행중인 서비스들은 프로세스 확인하듯이 작업관리자에서.
1. Logical Logging Manager : MS-SQL 서버와 마이크로소프트 메일 서버. IIS, 터미널 서비스, 파일 및 인쇄 서비스 등의 서버 제품 에 대한 클라이언트의 접근 라이센스 사용을 추적
2. Network Connections : 시스템에 관련된 모든 네트워크에 대한 서비스를 제공하며, 이에 대한 상태를 표시하며, 서비스 중지 시 네트워크에 대한 모든 접속이 불가능 해진다.
3. NTLN(NT LAN Manager) Security Support Provider : NTLM을 이용한 인증 서비스를 제공, 윈도우 2000의 경우 NTLM2를 이 용하지만 다른 OS와의 호환을 위해 필요하다.
4. Plug and Play(PNP) : 플러그 앤 플레이는 하드웨어에 대한 자동 인식과 설정을 도와 주는 서비스로, 최근 윈도우 시스템에는 PNP 서비스를 중지시키면 OS자체가 불안정해 진다.
5. Server : RPC(Remote Procedure Call) 지원 및 파일 인쇄 등을 위한 자원 공유 제공
6. Workstation : 네트워크 연결 및 통신을 제공
7. Removable Storage : 이동식 미디어 드라이브에 대한 연결을 제공, 안쓰면 꺼도됨.
8. (★)Security Accounts Manager(SAM) : 인증 관련된 서비스. 중지하면 다른 시스템이 접근 못한다.
9. WMI (Windows Management Instrumentation) : 시스템 관리 정보를 제공하는 서비스, WMI는 응용 프로그램과 서비스가 생성 하는 관리 이벤트를 포함하여 서비스에 접근 정보를 제공하며, SNMP(Simple Network Management Protocol)와 호환
10. Windows Management Instrumentation Driver Extensions : WMI 정보를 등록한 모든 드라이버를 추적하여 보여준다. 중지 하면 클라이언트가 WMI 정보에 접근을 못한다.
11. Application Management : 응용 프로그램의 설치, 제거와 같은 서비스를 제공. 중지하면 프로그램 추가/제거가 불가능하다.
12. RPC(Remote Procedure Call) : RPC에 관련된 서비스를 제공. 중지하면 컴퓨터 부팅이 되지 않는다.
* 13번 서비스 부터는 필수가 아닌 선택 항목 서비스이다.
13. ClipBook : 복사 & 붙여넣기를 지원하기 위한 서비스
14. COM+ (an extension to the Component Object Model) Event System(길다 길어..) : COM (Component Object Model)은 프로그램의 컴포넌트 객체들을 개발하고 지원하기 위한 하부 기반 구조로, 인터페이스 교섭과 언제쯤 객체가 시스템에서 제거될 수 있는지를 판단하며, 라이센스, 이벤트 서비스 등을 제공한다.
15. Computer Browser : 네트워크에 있는 컴퓨터의 최신 목록을 유지하고, 요청하는 프로그램에게 목록을 제공
16. Distributed Link Tracking(DLT) Client : 네트워크 도메인의 여러 컴퓨터에 걸쳐 있거나, 하나의 컴퓨터에 있는 NTFS 파일 시스 템 사이의 링크를 유지 및 관리, 대상 파일의 이름이 바뀌거나 이동된 후에도 바로 가기와 OLE(Object Linking and Embedding) 링크가 계속 작동하도록 함.
17. Distributed Link Tracking(DLT) Server : 볼륨간에 이동한 파일을 추적할 수 있도록 도메인 내의 각 볼륨에 대한 정보를 저장, 도메인 내의 각 도메인 컨트롤러에서 실행한다. 서비스 중지 시 DLT 클라이언트 서비스가 유지 및 관리하는 링크의 안정성이 시간이 갈수 록 낮아진다.
18. Distributed Transaction Coordinator : DB, 메세지 대기열, 파일 시스템, 트랜젝션 보호 리소스 관리자 등 여러 리소스 관리자 와 여러 컴퓨터 시스템 간의 분산된 트랜잭션을 조정
19. File Replication : 자동 파일 복제 서비스. 여러 서버에 존재하는 파일을 복사 및 관리하여 동기화 시킨다.
20. Internet Authentication Service(IAS) : VPN(Virtual Private Network)장비, RAS(Remote Access Server)장비 또는 무선 및 LAN, WAN 네트워크에 접속하는 사용자의 인증, 권한 부여, 감사 및 계정 작업을 수행한다.
21. Intersite Messaging(ISM) : 윈도우 서버간에 메세지를 주고 받을 수 있도록 하는 서비스
22. Logical Disk Manager : 이동식 하드디스크 등을 이용하면 PNP 이벤트가 발생하는데, 이를 관찰하과 Logical Disk Manager Administrative Service에 볼륨 및 디스크 정보를 전달하는 서비스
23. Logical Disk Manager Administrative Service : 이 서비스는 드라이브나 파티션을 구성하거나 새로운 드라이버가 검색된 경우에만 시작됨. 동적 디스크 구성이 변경될 때마다 또는 MMC(Microsoft Management Console) 스냅인이 실행 될때 활성화된다. (MMC는 실행창에서 'mmc'를 입력하면 실행되며, 시스템 관리용 프로그램을 중앙에서 제어할 수 있도록 하는 프로그램이다.)
24. Message Queuing(MSMQ) : 윈도우용 분산 메세지 응용 프로그램을 만들기 위한 메시징 인프라 및 개발 툴
25. RPC Locator : RPC 클라이언트에 대한 이름 서비스를 제공
26. Simple TCP/IP Services : TCP/IP 계층에서 사용되는 간단한 프로토콜의 묶음에 대한 지원
27. TCP/IP NetBIOS Helper : 넷바이오스를 이용해 이름을 확인할 수 있도록 하는 서비스
28. Trivial FTP Daemon : TFTP(Trivial File Transfer Protocol) 프로토콜을 지원하는 서비스로 원격 설치 시에 이용
다 외우고 인지해야 하는 부분이라기 보다는.. 다음에 프로세스나 서비스 확인할 때 참고하면 좋을것 같아서 정리(!)
'IT 그리고 정보보안 > Knowledge base' 카테고리의 다른 글
윈도우 XP 은폐 계정 생성 (0) | 2021.04.18 |
---|---|
윈도우 계정 및 패스워드 관리 (0) | 2021.04.18 |
윈도우 파일시스템 종류 (0) | 2021.04.18 |
xinetd 데몬 (0) | 2021.04.18 |
리눅스 환경의 프로세스(Process) (0) | 2021.04.18 |