ML

악성코드 Open File Security Warning 우회 Zone.Identifier = 1

728x90
반응형

Zone.Identifier 란?

요즘 대부분의 악성코드는 문서형 악성코드인 Non-PE 악성코드로 유포되고 있다. 문서의 취약점이나 매크로를 이용하여 추가 악성코드를 다운로드 받아 실행하는 형태이다. 하지만 실행파일을 다운로드 받고 실행하는건 쉬운일이 아니며 우회해야할 것들이 많다. 그 중 Zone.Identifier를 우회하는 기법에 대해 알아보자.

앞서 언급한대로 요즘 악성코드는 추가 악성코드를 다운로드 받는 형태인데, 이 Zone.Identifier는 해당 파일이 외부에서 다운로드 받았는지, 신뢰할 수 있는 파일인지 등을 확인할 수 있는 것이다.

인터넷 상에서 어떤 파일을 다운로드 받아 실행을 하게되면 위와 같은 그림을 봤었던 적이 있을텐데, 이것이 바로 Zone.Identifier 때문이다. 의심스러운 파일을 사용자가 실수로 실행할 경우를 방지하기 위한 기법이라고 생각하면 된다.

Zone.Identifier 값 의미
1 인트라넷에서 다운로드 받은 파일
2 신뢰할 수 있는 사이트에서 받은 파일
3 인터넷에서 받은 파일
4 제한된 사이트에서 받은 파일

Zone.Identifier를 변경하는 소스 코드

아래 그림은 모든 사용자 레지스트리의 SEE_MASK_NOZONECHECKS = 1로 환경변수를 설정하는 코드이다.

해당 코드가 실행되면 Zone.Identifier 값이 1로 변경되면서 맨 위에 처럼 파일을 실행했을 때 경고창이 뜨지 않게 된다. 그러므로 1로 설정된 후에 프로그램이 실행되더라도 사용자는 모르게 되는 것이다.

추가로, 명령 프롬프트 창에서 setx SEE_MASK_NOZONECHECKS 1 /m 명령을 입력해도 Zone.Identifier 값을 1로 변경할 수 있다.

반응형

댓글

Designed by JB FACTORY