애플리케이션 / 윈도우

How-To : 매크로 악성 코드 피해를 줄이는 유용한 엑셀 설정법

Susan Bradley | Computerworld 2022.07.14
마이크로소프트가 엑셀에서 매크로 차단을 기본값으로 설정하겠다는 결정을 약 5개월 만에 철회했다. 엑셀을 자주 이용하는 사용자라면 이번 결정으로 여러 보안 조치를 강화해야 할지도 모른다. 해커가 네트워크 공격할 때 자주 활용하는 것이 매크로이기 때문이다. 실제로 랜섬웨어나 다양한 해킹 활동은 평범해 보이는 오래된 엑셀 파일로 퍼지기도 한다. 
 
ⓒ Getty Images Bank

이번 결정은 일시적이다. 마이크로소프트는 언제든지 더 나은 경험을 제공할 수 있을 때 다시 매크로 차단을 기본 설정값으로 제공할 수 있다고 밝혔다. 새로운 정책이 나오기 전까지 필요하다면 다음과 같은 조치로 보안성을 높일 수 있을 것이다. 

매크로 디지털 서명 이용하기

업무용으로 엑셀 파일을 따로 만들어 이용하는 경우, 디지털 서명 기능을 이용하지 못할 때가 있다. 매크로의 디지털 서명을 이용하면 마치 웹사이트의 신뢰성 여부를 SSL 인증서로 확인하듯이 문서의 보안성을 더 높일 수 있다. 

서명 프로세스에서 가장 어려운 부분은 코드 서명 인증서를 구매할지 아니면 자체 서명된 보안 인증서를 사용할지 결정하는 것이다. 개인적인 경험으로 코드 서명 인증서를 구입하려면 비용이 많이 들고 복잡했다. 코드 서명 지원이 자주 필요한 대기업이 아니라면 코드 서명은 추천하지 않는다.

대기업 사용자가 아니라면 엑셀 매크로의 자체 서명을 이용해보자. 물론 자체 서명 이용법을 처음 배울 때는 어려울 수 있다. 일단 컴퓨터에서 selfcert.exe 파일이 어디에 있는지 알아야 한다. 자세한 위치는 마이크로소프트의 공식 도움말을 참고하면 된다. 필자의 경우, ‘C:\Program Files\Microsoft Office\root\Office16’에 파일이 존재했다. 만약 64비트 버전의 오피스를 사용하고 있다면, 같은 위치에서 해당 파일이 보일 것이다. 파일을 찾았다면 selfcert.exe를 실행하고 인증서 이름을 MyExcelFiles와 같이 맥락을 알 수 있게 입력하면 된다. 

그다음 윈도우 검색창에서 mmc.exe를 입력해 관리 콘솔을 실행한다. 파일을 클릭한 다음 “스냅 인(snap in) 추가/제거”를 선택하고, “스냅 인(snap in) 인증서”를 선택해 ‘관리 보기’에에 추가한다. 인증서>현재사용자를 클릭하고 개인 인증서 저장소를 선택하면, 사용자 계정에도 인증서를 추가할 수 있다. 이제 인증서 저장소에서 “MyExcelFiles” 인증서를 볼 수 있으며, 더블 클릭해 인증서를 검토할 수 있다. ‘CA 루트 인증서를 신뢰할 수 없습니다’라는 메시지가 나올 수 있는데, 자체 서명된 인증서라면 크게 문제없다.

이제 자체 서명된 인증서로 코드 서명하려는 엑셀 파일을 연다. 만약 엑셀 스프레드시트에 개발 도구 탭이 보이지 않는다면 추가한다. 파일>더보기>옵션을 선택한 후 왼쪽의 “리본 사용자 지정”을 선택한다. 그리고 오른쪽의 “기본 탭”을 고르고 “개발 도구” 체크 박스에 체크하고 “확인” 버튼을 눌러준다.

그다음 코드 그룹의 개발도구 탭에서, 비주얼 베이직을 선택하고, 비주얼 베이직의 도구 메뉴에서 디지털 서명을 선택한다. 디지털 서명 대화 상자가 나타나면, 인증서를 선택하고 확인을 클릭한다. 비주얼 베이직을 저장하고, 비주얼 베이직 인터페이스를 닫아준다. 이제 엑셀 파일을 다시 저장한다.

매크로 보안 설정 검토하기

매크로 보안도 설정을 해보자. 개발 도구 탭(다시 코드 그룹에서)에서 매크로 보안을 클릭한다. 매크로 설정 범주 안에서 원하는 옵션을 선택한다. 가지고 있는 엑셀파일에 자체 서명 인증서가 있다면, 매크로 설정을 ‘디지털 서명된 매크로만 포함’으로 변경해주면 된다.

다음 엑셀 파일에 매크로가 포함됐는지 검토할 차례이다. 만약 온라인에서 다운받았지만 정확히 어디서 파일을 얻었는지 기억이 나지 않는다면 파일을 열지 말자. www.reverse.itwww.virustotal.com에서 먼저 파일을 업로드하고 파일에 포함된 내용을 확인해 악성 프로그램이 아닌지를 확인해보자. 직접 만들진 않았지만 사용하고 싶은 엑셀 파일이 있고 그 안에 매크로가 포함됐다면, 엑셀 파일에 다음과 같은 과정으로 나만의 서명을 추가해 보안성을 높일 수 있다. 

우선 파일을 열지 말고, 엑셀 스프레드시트에서 마우스 오른쪽 버튼을 클릭해 속성을 선택한다. 일반 탭에서 ‘이 파일은 다른 컴퓨터로부터 왔으며 사용자의 컴퓨터를 보호하기 위해 차단되었을 수도 있습니다.’라는 표시를 찾아보자. 그리고 ‘차단 해제’ 박스를 클릭하고 ‘적용하기’ 버튼을 누른다. 이제 파일이 스캔되고 차단이 해제됐으므로, 파일을 열어 디지털 서명을 한 다음 다시 저장해야 한다. 이렇게 하면 엑셀 파일을 만든 사람의 서명을 넣을 수 있다. 나중에 열어보더라도, 언제나 조작 여부를 알 수 있다. 
 
ⓒ '이 파일은 다른 컴퓨터로부터 왔으며 사용자의 컴퓨터를 보호하기 위해 차단되었을 수도 있습니다'라는 메세지를 확인하자. 출처: Microsoft

신뢰할 수 있는 위치 설정하기 

소규모 기업에서 엑셀 파일을 자주 공유할 경우, 네트워크에서 신뢰할 수 있는 엑셀 파일을 구별할 수 있도록 위치를 미리 설정하기를 추천한다. 엑셀로 이동해 파일>옵션>보안 센터를 클릭하고 보안 센터 설정을 클릭한다. 여기서 적합한 위치를 검토할 수 있다. 

엑셀은 네트워크 위치 어떤 곳이든 신뢰하지 않는다. 그래서 마이크로소프트는 네트워크에 신뢰할 수 있는 위치를 추가하는 것을 권장하지 않지만 비즈니스 목적으로 특정 사이트나 장소를 추가하면 해당 위치에 접근한 사용자를 검토할 수 있다. 이때 누가 매크로 접근할 수 있는지, 특히 신뢰할 수 있는 네트워크 위치에 누가 접근할 수 있는지 미리 잘 정해 두어야 한다. 사무실의 모든 직원에게 접근 권한이 필요하지는 않다. 사실 작은 기업이라도 대부분 사용자는 접근할 필요가 없다. 이점을 고려해 계획을 잘 세워두자. 

신뢰할 수 있는 위치에 접근할 수 있는 사용자와 권한을 미리 정해두면 랜섬웨어 방어에도 유리한다. 모든 사람이 매크로가 포함된 엑셀 파일이나 신뢰할 수 있는 위치 정보가 필요하지 않다는 점을 잊지 말자. 이런 결정을 내리지 않았다면 해킹 공격 피해가 더 커질 수 있다. 

결국 마이크로소프트는 인터넷을 통해 다운받은 엑셀 문서에서 작동하는 매크로를 차단할 것이다. 이제 시간을 내어 그 변화에 앞서 나가야 한다. 마이크로소프트가 다시 계획을 변경할 때까지 기다리지는 말자. 
editor@itworld.co.kr
 Tags 엑셀 매크로

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.