최신 해킹 동향을 중심으로 윈도우와 리눅스에 관련 해킹 이슈와 취약점을 살펴본다. 특히 최근 이미지 파일을 열어 보는 것만으로 해킹의 위험에 노출되는 윈도우 취약점과 관련해 실제 공격코드를 중심으로 자세하게 살펴본다. 이런 취약점들은 세부적인 내용이 모두 틀리지만 대응하는 방법은 동일하다. 관리자와 사용자들의 꾸준한 관심과 패치 정도면 충분하다.
필자는 이미 윈도우 98을 사용하던 매니아 계층이 윈도우 2000 계열로 넘어가는 것을 보면서 해킹의 흐름이 유닉스 계열에서 윈도우로 바뀔 것으로 예상했다. 이러한 예상은 생각보다 빨리 현실로 나타났고 윈도우 플랫폼을 기반으로 굵직굵직한 취약점들이 출현하기 시작했다. 당시 국내에서는 유닉스 계열에서의 버퍼 오버플로우가 많이 알려져 있을 뿐 윈도우 관련 기술 자료는 거의 전무하다시피 했다. 언더해커들도 주로 유닉스 계열의 해킹 연구에 많은 시간을 투자했다.
그러나 최근 들어 중국 해커들이 윈도우 해킹에 뛰어든데 이어 국내 언더해커 커뮤니티도 윈도우 해킹에 대한 연구를 진행 중인 것으로 알려지고 있다(실제로 윈도우 해킹에 관한한 중국 해커들의 기술이 앞선 것으로 평가된다). 점차 해킹 패러다임이 윈도우 방향으로 기우는 추세와 함께 앞으로 해킹과 보안이란 양날의 칼이 국가적인 차원에서 어떻게 발전시켜 나갈 것인가가 국가 정보보호의 원동력이 될 것으로 보인다.
블래스터(Blaster) 웜과 새서(Sasser) 웜은 이러한 움직임의 단적인 지표다. 우리나라의 인터넷 망을 잠시 두절시켰던 SQL 웜도 해킹과 보안의 중요성을 뼈저리게 느끼게 해준 사건이지만, 블래스터와 새서는 해커들의 이목을 온통 윈도우 해킹으로 집중시킨 계기가 됐다. 이에 따라 현재는 방화벽과 바이러스 백신 그리고 악성코드 탐지 프로그램이 윈도우를 지키는 3대 기본 프로그램으로 인식되고 있다.
최근에는 꾸준하게 윈도우를 패치하지 않고는 인터넷을 쓸 수가 없을 정도로 윈도우 해킹이 난무하고 있고 수많은 변종 웜이 시시각각 PC를 노리고 있다. 수많은 해커들이 윈도우 해킹으로 이동하면서 윈도우의 방화벽 기능을 무력화시키거나 윈도우의 리소스를 고갈시키는 소위 낸드(LAND) 어택이라는 개념까지 나오고 있다.
윈도우 공격과 관련해 현재 가장 이슈가 되고 있는 것 가운데 하나가 바로 제로데이 어택이다. 취약점이 공개된 직후 공격코드가 하루 이틀 새에 바로 출몰하는 경우나 혹은 비공개 해킹기법(Non-Public exploit)을 이용한 해킹 공격을 뜻하는 말로, 해외에서 큰 주목을 끌고 있다. 만일 제로데이 익스플로잇이 존재하고 외부에 관련 공격코드가 공개되지 않고 벤더조차 그 취약점을 인식하지 못해 패치를 하지 않은 상황이라면 막대한 피해가 발생할 수 있다. 인터넷에 접속만 해도 감염되는 블래스터 웜과 같은 공격이 계속 발생하고 이를 주요 업체들이 인식하지 못한다면 누구도 인터넷을 마음놓고 사용할 수 없을 것이다. 제로데이 익스플로잇은 익스플로잇 개발자를 제외한 그 누구도 막을 수 없다. 제로데이 익스플로잇을 벤더에 제공하고 공개할 수 있도록 이런 개발자들을 공개 커뮤니티로 유도하는 것이 최선책이다.
윈도우 플랫폼의 해킹 동향
올해 들어 마이크로소프트(이하 MS)에서 발표한 윈도우 관련 취약점은 현재까지 총 15개로 취약점 코드 MS05-015까지 릴리즈됐다. 취약점의 상당 부분은 악성코드와 관련된 패치이다. 지난 한해 동안 바이러스, 웜 등의 신종 악성코드가 최근 16년간 발생한 양을 모두 합한 것보다 많다고 한다. 요즘은 휴대폰이나 PDA 같은 모바일 환경까지 악성코드가 출몰하고 시대와 환경이 발달함에 따라 해킹의 대상도 점점 다양해지고 있다.
<표 1>은 올해 MS에서 발표한 취약점들의 상세한 내용이다. 다양한 방면의 취약점이 아니라 인터넷 익스플로러에 집중되고 있음을 알 수 있다. 이전에도 해커들에게는 인터넷 익스플로러가 공격 대상이긴 했으나 근래 들어서는 노골적으로 인터넷 익스플로러의 취약점만을 노리고 있다. 특히 원격코드 실행 공격이 상승세를 타고 있으며 서버 대신 개인 사용자를 공격 대상으로 삼는다는 점도 특징적이다. 이는 윈도우 2000/XP 계열로 사용자층이 이동하면서 서버와 개인의 구별이 모호해지고 역할 상의 서버만 존재할 뿐 운영체제가 제공하는 기능은 서버와 동일하기 때문인 것으로 보인다.
MS05-002와 MS05-009는 특히 주목할 만하다. MS05-002는 아이콘 파일인 ani, ico 파일을 오픈했을 때 버퍼 오버플로우가 발생하면서 악의적인 코드가 실행되는 공격으로 원격코드 실행 취약점이다. MS05-009 역시 PNG 파일을 MSN 메신저의 공개사진으로 등록했을 때 버퍼 오버플로우가 발생하면서 악의적인 코드가 실행되는 원격코드 실행 취약점이다. PNG 파일의 라이브러리에 문제가 있기 때문에 관련 라이브러리를 쓴 프로그램들이 모두 취약하고 윈도우 미디어 플레이어 9 시리즈(8.0 버전도 포함)에서도 동일한 버퍼 오버플로우가 발생되는 것으로 확인됐다. 이것은 인터넷에서 다운받은 이미지 파일을 볼 때도 해킹을 당할 수 있다는 것을 의미하는 것으로 일반 사용자들에게는 섬뜩할 만한 해킹 기술이다. 실제로 이 두 취약점의 패치가 긴급 등급으로 발표된 이유도 운영체제와 별개인 애플리케이션 레벨의 취약점이기 때문이다.
현재 MS05 취약점 시리즈 가운데 MS05-002와 MS05-009의 공격코드는 이미 인터넷에 공개된 상태다. MS05-005 MS 오피스 XP 취약점을 이용한 웜도 이미 인터넷을 떠돌고 있다. MS05-013 또한 POC(Proof Of Concept : 개념적 근거로 공격코드를 만드는 기초가 됨)가 인터넷에 공개됐다(다른 취약점들은 현재까지 공격코드가 공개되지 않은 상태이다).
MS04-028 취약점을 이용한 분석
<화면 1> 변조된 이미지 파일 선택
<표 1> MS 윈도우 관련 취약점
구분 | 내용 |
MS05-001 | HTML 도움말 취약점으로 인한 원격코드 실행 문제 |
MS05-002 | 커서 및 아이콘 형식의 처리의 취약점으로 인한 원격코드 실행문제 |
MS05-003 | 인덱싱 서비스의 취약점으로 인한 원격코드 실행 문제 |
MS05-004 | ASP.NET 경로 유효성 검사 취약점 |
MS05-005 | MS 오피스 XP 원격코드 실행 취약점 |
MS05-006 | 윈도우 세어포인트 서비스 & 셰어포인트 팀 서비스 크로스 도메인과 스푸핑 취약점 |
MS05-007 | 윈도우 정보노출 취약점 |
MS05-008 | 윈도우 셀의 원격코드 실행 취약점 |
MS05-009 | PNG 프로세싱 원격코드 실행 취약점 |
MS05-010 | 라이센싱 로깅 서비스의 원격코드 실행 취약점 |
MS05-011 | 서버 메시지 블럭(SMB)의 원격코드 실행 취약점 |
MS05-012 | OLE 및 COM의 원격코드 실행 취약점 |
MS05-013 | DHTML 에디팅 컴포넌트 액티브X 컨트롤 원격코드 실행 취약점 |
MS05-014 | 인터넷 익스플로러 누적 보안 업데이트 - 드레그 익스플로러 누적 보안 업데이트 - 디코딩 존 스푸핑 취약점 - DHTML 메쏘드 힙 메모리 오류 취약점 - 채널 정의 포맷(CDF 파일포맷) 크로스 도메인 취약점 |
MS05-015 | 하이퍼링크 개체 라이브러리의 원격코드 실행 취약점 |
<화면 2> 윈도우 XP의 기본 뷰어로 변조된 JPG 파일 열람
<화면 3> 이미지 뷰어에서 오류가 발생함
<화면 4> 인터넷에 공개된 POC 이미지 파일
<화면 5> 에러 발생지점 디버깅
지금부터 실제 공격이 가능한 익스플로잇 코드를 이용해 취약점 분석을 해보자. 현재 대부분의 PC에 패치가 적용됐을 것으로 판단되는 MS04-028 JPEG Processing (GDI+) 코드실행 취약점은 지난해 9월경에 MS에서 발표됐다. 이를 이용하면 크기가 조작된 JPG 이미지 파일을 윈도우의 기본 이미지 뷰어로 열면 인티저 언더플로우(Integer Underflow : 정수를 음수 값으로 만들어 버퍼용량 계산에 착오가 생기도록 해 버퍼 오버플로우를 발생시킴)가 발생해 버퍼 오버플로우가 유발되고 힙 메모리의 조작할 수 있다.
이 취약점은 MS에서 발표된 지 하루도 안돼 유명 보안업체인 eEye DigitalNetworks에서 POC를 공개했다. 필자는 이를 이용해 3일 만에 공격이 가능한 익스플로잇을 만들었다(이달의 디스켓 www. imaso.co.kr). 뒤이어 외국 해커들도 시큐리티포커스에 공격코드를 공개했다. MS에서 긴급으로 발표한 MS04-028 JPEG(GDI+) 취약점은 MS05-002와 MS05-009 등 이미지를 이용한 취약점의 시발점이라고 할 수 있다. 그 이전에도 이미지 파일 취약점은 존재했지만 공격코드가 나온 것은 MS04-028이 처음이다.
<화면 1>은 인터넷에 공개된 POC 이미지로 JPG 파일 포맷의 형태를 취하고 있다. 패치가 되지 않은 상태에서 윈도우 XP의 기본 이미지 뷰어 프로그램으로 열어보면 <화면 3>과 같이 버퍼 오버플로우가 발생하면서 프로그램이 비정상 종료한다. 문제의 이미지 파일을 열어서 내용을 확인하면 <화면 4>와 같이 41414141과 같은 헥사(16진수) 코드가 가득 차 있는 것을 볼 수 있다.
그렇다면 어떻게 이런 일이 발생하는 이유는 무엇일까. <화면 5>는 오류가 발생했을 때 디버깅 모드로 진입해 JPG 이미지 파일의 조작된 부분이 어디인지 확인한 것이다. 오류가 발생하는 원인은 이미지 파일의 41 값으로 뒤덮인 곳에서 오버플로우가 일어나기 때문이다. 이는 EAX 레지스터와 ECX 레지스터 모두 0x41414141 값으로 바뀌어 있는 것으로 쉽게 추측할 수 있는데, 즉 JPG 이미지 파일에 조작돼 있는 41 값들은 EAX와 ECX 레지스터 값을 오버라이트(overwrite)시키기 위해 입력해 놓은 것이다. 디버거의 브레이크 포인트가 걸린 곳을 살펴보면 다음 코드가 존재한다.
MOV DWORD PTR DS:[EAX], ECX 브레이크 포인트(오류 발생 지점)
MOV DWORD PTR DS:[ECX+4], EAX
오류가 발생하는 이유는 첫 번째 줄 때문이다. EAX 레지스터의 값이 0x41414141이므로 0x41414141 주소에 ECX 레지스터 값을 써넣으려고 시도하다 메모리 접근 에러(Access Violation)가 발생해 <화면 3>과 같은 오류 메시지가 나타나는 것이다. 오류 메시지가 표시되면 내부적으로 익셉션 핸들러(Exception Handler)가 호출되는데 이는 접근 에러가 발생할 때 실행돼 디버깅을 할 수 없는 영역이다.
해커들은 지금 보는 것과 같은 오류를 이용해서 어떻게 원하는 공격코드를 실행할까. 해커들은 EAX 레지스터와 ECX 레지스터를 이미지 파일 변조를 통해 원하는 값으로 바꾸는 방법을 이용해 쉽게 원하는 코드를 실행한다. 앞서 브레이크 포인트가 걸린 핵심명령 두 줄을 자세하게 분석해보면, 첫 번째 MOV DWORD PTR DS:[EAX], ECX 명령은 데이터 세그먼트의 EAX 레지스터 값이 가리키는 주소에 32비트 ECX 값을 써넣는 명령이다. 그러므로 EAX 레지스터에 익셉션 핸들러 주소를 넣으면 ECX 레지스터가 갖고 있는 값으로 주소가 바뀐다. <화면 6>은 윈도우 XP 서비스팩 1 버전에서 익셉션 주소를 출력한 것이다.
두 번째 MOV DWORD PTR DS:[ECX+4], EAX 명령은 ECX 값 더하기 4에 해당하는 주소에 32비트 EAX 레지스터 값을 써 넣는 명령으로 여기서 메모리 접근 오류가 일어난다. 메모리 접근 오류가 일어나면 익셉션 핸들러가 실행되는데, 첫 번째 명령에서 익셉션 핸들러 주소(0x77E973B4)를 ECX 레지스터 값으로 바꿨기 때문에 익셉션 핸들러 코드 대신 ECX 레지스터 값에 해당하는 주소의 코드가 실행된다.
외국의 유명 해커들이 발간한 셸코드 핸드북에서 힙 버퍼 오버플로우 관련 내용을 찾아보면 ECX 레지스터에 CALL DWORD PTR [EDI+0x74] 명령 코드 주소를 입력하면 정확히 힙 버퍼의 위치로 EIP(Extension Instruction Pointer : 현재 실행될 명령어를 가리킴)가 점프한다고 기술돼 있다. 실제로 ‘이달의 디스켓’으로 제공하는 전체 소스에서도 조작한 JPG 이미지의 본체에는 공격코드(셸코드)가 삽입되어 있고 힙 버퍼에 들어가게 되기 때문에 공격코드가 삽입되어 있는 이미지 본체로 실행포인터(EIP)를 옮기기 위해서는 ECX 레지스터에 CALL DWORD PTR [EDI+0x74] 명령의 주소를 넣어서 익셉션 핸들러 주소(0x77E973B4)와 바꿔치기 한다. 그 후 메모리 접근 오류로 익셉션 핸들러가 실행될 때 힙버퍼로 EIP의 흐름을 바꾸는 트릭을 사용하는 것이다. 참고로 윈도우 XP(홈에디션/프로) 계열에서 CALL DWORD PTR [EDI+0x74] 명령은 공통적으로 RPCRT4.DLL 모듈에서 0x78055C9E라는 주소 위치에서 똑같이 찾을 수 있다.
<화면 6> 스트럭처드(Structured) 익셉션 핸들러 주소출력
<화면 7> RPCRT4.DLL 모듈에서 CALL SWORLD PTR [EDI+0×74] 명령 주소 찾음
<화면 8> 완성된 전체적인 공격 JPG 이미지 파일의 구조
<화면 9> 윈도우 XP 기본 이미지 뷰어로 조작된 JPG 파일 열기
<화면 10> 조작된 JPG 파일 열람 후 루트 계정이 생성됨
<표 2> 2003~2005 리눅스 커널 취약점 계정이 생성됨
2005년 1월 12일 | 리눅스 커널 i386 SMP페이지 폴트 핸들러 권한 상승 취약점 |
취약한 버전 | 취약한 커널 2.2~2.2.27-rc1 취약한 커널 2.4~2.4.29-rc1 취약한 커널 2.6~2.6.10 |
2005년 1월 7일 | 리눅스 커널 커널 uselib() 페이지의 권한 상승 |
취약한 버전 | 취약한 커널 2.4~2.4.29-rc2 취약한 커널 2.6~2.6.10 |
2004년 12월 14일 | 리눅스 커널 scm_send 로컬 서비스 거부 취약점 |
취약한 버전 | style="padding-left:10"취약한 커널 2.4~2.4.28 취약한 커널 2.6~2.6.9 |
2004년 11월 10일 | 리눅스 커널 IGMP |
취약한 버전 | 취약한 커널 2.4~2.4.28 취약한 커널 2.6~2.6.9 |
2004년 8월 4일 | 리눅스 ELF 로더 취약점 |
취약한 버전 | 취약한 커널 2.4~2.4.27 취약한 커널 2.6~2.6.8 |
2004년 8월 4일 | 리눅스 커널 파일 오프셋 포인터 레이스 컨디션 취약점 |
취약한 버전 | 취약한 커널 2.4~2.4.26 취약한 커널 2.6~2.6.7 |
2004년 4월 20일 | 리눅스 커널 setsockopt MCAST_MSFILTER 정수 오버플로우 |
취약한 버전 | 취약한 커널 2.4.22~2.4.25 취약한 커널 2.6.1~2.6.3 |
2004년 2월 18일 | 리눅스 커널 do_mremap() VMA 제한 로컬 권한 상승 취약점 |
취약한 버전 | 취약한 커널 2.2~2.2.25 취약한 커널 2.4~2.4.24 취약한 커널 2.6~2.6.2 |
2004년 1월 5일 | 리눅스 커널 do_mremap() 로컬 권한 상승 |
취약한 버전 | 취약한 커널 2.4 series 취약한 커널 2.6 serise |
2003년 12월 1일 | 리눅스 커널 do_brk() 인자 경계검사 미비 취약점 |
취약한 버전 | 취약한 커널 2.4~2.4.28 취약한 커널 2.6~2.6.9 |
익스플로잇 전체 소스코드는 이달의 디스켓(www.imaso.co.kr에서 다운로드 가능)으로 제공한다. 인터넷에 공개된 소스코드의 골격을 빌려 필자가 개발한 것으로 패치되지 않은 한글판 윈도우 XP SP0, SP1에 적용하면 <화면 10>과 같이 윈도우 계정에 아이디 AmesianX, 암호 NullRoot라는 계정이 관리자 권한으로 추가된다(악용될 소지를 없애기 위해 여기서는 헤더를 제거했다).
소스에서 \xFF\xD9는 외국 익스플로잇에는 없는 부분으로 JPG 이미지 종료코드이다. 일반 셸코드를 사용할 때는 이미지 미리보기가 작동하지 않으므로 셸코드도 실행되지 않는다. 따라서 \xFF\xD9를 셸코드 앞에 집어넣으면 이미지 종료코드로 인식해 셸코드 때문에 이미지 미리보기가 작동 실패하는 경우를 피하고 버퍼 오버플로우를 유도할 수 있다(외국 익스플로잇에는 없는 것으로 봐서 영문판과 한글판의 유일한 다른 점이다).
지금까지 JPG 이미지의 GDI+ 힙 버퍼 오버플로우에 관련한 기술적인 내용에 대해 실제 익스플로잇 개발 과정과 공격이 진행되는 내용까지 상세하게 알아보았다. 대부분의 프로그래머들은 유닉스 계열의 버퍼 오버플로우 기술에 대한 기본적인 사항을 알고 있을 것이다. 이미 상당히 많은 프로그래머들에게 알려진 기술이므로 한 번쯤 공부해 본 경험이 있을 것이고, 시큐어 코딩(secure coding)에 많은 도움이 되었을 것이다.
참고로 이달의 디스켓으로 제공하는 소스는 현재 대부분의 윈도우에 패치가 되어 있기 때문에 패치를 제거하지 않으면 작동하지 않는다. 필자의 경우는 테스트를 위해서 취약점이 존재하는 C:\Windows \WinSxS\x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.2600.1360_x-ww_24a2ed47\GdiPlus.dll 파일 버전을 5.1.3102. 1360보다 이전 버전인 5.1.3101.0 파일로 교체한 후 재부팅하여 테스트했다(참고로 GdiPlus.dll 파일에 취약점이 존재하기 때문에 안전한 버전은 5.1.3102.1360 이상 버전이다. 원래부터 이 버전보다 낮은 파일이 설치돼 있다면 최신 패치를 다운로드해 업데이트하는 것이 좋다).
원격코드 실행 문제의 대안은?
보안 관점에서 보면 결과적으로 지금까지 MS에서 발표한 여러 취약점 중 원격코드 실행 문제라고 발표된 상당수 취약점들은 서비스 대상만 틀릴뿐 앞서 살펴본 기술적 내용이 조금씩 진보한 것에 불과하다. 조작된 오피스 파일과 워드파일, 그림파일, 동영상, 스트리밍파일 같은 것을 열 때 이와 같은 공격이 발생된다고 가정하면 인터넷에서 다운로드하거나 직접 재생한 자료들이 과연 믿을 수 있을까. 프로그래머와 관리자 그리고 사용자들이 정보와 지식을 공유하고 관심을 가질 필요가 있다.
최근의 보안은 관리자나 프로그래머만의 몫이 아니다. 일반 사용자도 쉽게 해킹 툴을 이용해서 전세계 PC와 서버를 공격할 수 있다. 개인이 보안을 알지 못하면 자신의 PC조차도 해커로부터 지켜낼 수 없다. 해킹은 자기 자신을 보호하기 위한 것이란 오래된 말은 오늘날 인터넷 세계에서는 여전히 유효하다. 앞서 설명했던 제로데이 어택이 현실화된다면 방어할 수 있는 유일한 사람은 자기 자신뿐이고 가장 현실적인 대응책이기도 하다.
최신 리눅스 해킹 동향
리눅스에 관련된 해킹은 주로 일반인을 위한 공개 커널인 래드햇의 페도라 코어와 젠투리눅스, 데비안, 수세와 같은 공개 배포판에서 나타나고 있다. 페도라 코어나 젠투리눅스처럼 아직 안정화되지 않은 배포판을 위주로 애플리케이션 취약점이 발견되고 있으나 해커들이 윈도우로 해킹 대상을 옮겨감에 따라 자연히 취약점이 나와도 주목받지 못하고 있다.
발표된 취약점들도 해당되는 범위가 특정 애플리케이션에만 적용되는 경우가 많고 요즘 같이 리눅스 배포판이 넘쳐나는 상황에서는 FTP, 텔넷, SSH, SENDMAIL, BIND, SNMP, 아파치 웹 서버, WAS, RPC 같은 범용 서비스 취약점이 주목을 받을 수 있는데, 이 분야에서는 큰 이슈가 될 만한 취약점이 발표되지 않고 있다. 그나마 일부 해외의 유명 해커그룹이 이목을 집중시키는 리눅스 커널 취약점을 꾸준히 발표하며 리눅스 해킹과 취약점 분석 활동을 하고 있다.
<화면 11> uselib 함수의 취약점을 이용한 커널 익스플로잇
현재의 해킹 이슈는 대부분 패치됐을 가능성이 크나 커널은 단시간에 패치를 적용하기가 쉽지 않아 아직도 많은 서버에 문제가 남아있을 수 있다. 리눅스 커널 취약점은 2003년 말부터 짧게는 한 달, 길게는 서너 달 간격으로 꾸준히 발표되고 있다. 최근까지 발표된 리눅스 커널 취약점은 <표 2>와 같다. 여기에 해당되는 취약한 버전의 커널을 사용하고 있고 특별히 패치하지 않았다면 커널 취약점이 존재한다고 보아도 무방하다. 이를 이용해 자신의 시스템을 점검해 볼 것을 추천한다.
가장 최근에 발표된 취약점 가운데 해당 범위가 거의 모든 리눅스 서버에 적용될 만큼 위협적인 취약점이 바로 uselib()이다. 일반 계정의 사용자가 이 취약점을 이용한 커널 익스플로잇을 이용할 경우 얼마나 쉽게 루트(root)가 되는지는 <화면 11>과 같은 간단한 테스트를 통해 확인할 수 있다. 국내에서 많이 사용하는 레드햇 9.0 버전에서 일반계정으로 커널 익스플로잇을 실행하면 루트를 획득할 수 있다.
실제로 uselib()는 과거 ptrace 버그를 이용한 취약점과 맞먹을 만큼 위협적이므로 공격에 가장 널리 사용될 것으로 전망된다. 해당 취약점이 적용되는 서버는 신속히 패치를 해야 한다. 커널을 직접 패치하는 것이 부담스럽다면 루트 권한으로 다음과 같은 디렉터리 권한을 설정해 루트만 접근 가능하도록 바꾸는 것도 좋은 방법이다.
# chmod 700 /proc
지금까지 최신 해킹 동향을 살펴보고 윈도우와 리눅스 플랫폼 별로 이슈가 되고 있는 취약점을 살펴봤다. 각 취약점들은 세부적인 내용은 천차만별이지만 이에 대응할 수 있는 방법은 의외로 간단하다. 관리자와 사용자들의 꾸준한 관심이다. 지속적인 패치만으로도 윈도우와 리눅스 시스템을 악의적인 공격이나 웜/바이러스로부터 안전하게 지킬 수 있다. 시스템 보안 대책은 생각보다 쉽다.