본문 바로가기 주메뉴 바로가기 검색 바로가기
윈도 디펜더 취약점, 12년간 발견되지 않은 상태로 존재
상태바
윈도 디펜더 취약점, 12년간 발견되지 않은 상태로 존재
지난해, 보안 연구팀이 윈도 디펜더에서 버그를 발견하고, 마이크로소프트가 버그 패치 작업을 완료했다.
By LILY HAY NEWMAN, WIRED US

단순히 보안 취약점이 오래되었다고 해서 유용하지 않다는 뜻은 아니다. 어도비 플래시 해킹이든 이터널블루 윈도 버전을 악용한 해킹이든 더는 활성화되지 않더라도 일부 수단은 해커가 포기하기에는 아쉬울 정도로 성공적인 공격을 개시할 해킹 수단으로 악용될 소지가 있다. 그러나 최근까지 해커와 버그 방지 기업 모두 보편적인 마이크로소프트의 윈도 디펜더 바이러스 퇴치 프로그램에 12년간 존재한 중대한 버그는 간과했다. 이제 마이크로소프트는 패치 작업을 완료했다. 이는 해커가 재빨리 그동안 찾지못한 수단을 해킹 공격에 악용하지 못하도록 막기 위한 핵심적인 행동이다.

보안 기업 센티넬원(SentinelOne) 소속 연구팀이 발견한 윈도 디펜더의 보안 결함은 2020년, 마이크로소프트 디펜더로 이름이 바뀐 윈도 디펜더가 멀웨어를 생성할 수 있는 침입 파일과 인프라를 삭제하는 데 사용하는 드라이버에서 발견됐다. 해당 드라이버가 악성 파일을 삭제할 때, 복원하는 동안 삭제된 악성 파일을 일종의 플레이스홀더의 형태로, 유해하지 않은 새로운 파일로 대체한다. 결과적으로 해커가 전략적으로 잘못된 파일을 덮어쓰는 드라이버로 직접 연결되거나 심지어 악성 코드를 운영할 수 있는 시스템 링크를 삽입할 수 있다.

윈도 디펜더는 위와 같이 복원 과정에서 파일을 조작하는 데 끊임없이 유용하게 사용할 수 있다. 초깃값으로 윈도를 운영해, 결과적으로 전 세계의 무수히 많은 컴퓨터와 서버를 제공하기 때문이다. 윈도 디펜더는 윈도 운영 체제 내에서 매우 높은 신뢰도를 지녔으며, 취약한 드라이버는 마이크로소프트에서 암호화 사인을 해, 정통성을 입증한다. 실질적으로 윈도 디펜더의 결함을 악용한 공격을 개시하는 해커는 중대한 소프트웨어나 데이터를 삭제하거나 심지어 드라이버가 자체 코드를 실행해 기기를 장악하도록 제어할 수 있다.

센티넬원의 수석 보안 연구원 카시프 데켈(Kasif Dekel)은 “윈도 디펜더에서 발견된 버그는 권한 확대를 가능하게 한다. 권한 수준이 낮은 환경에서 운영되는 소프트웨어가 관리 권한을 높여, 기기 보안을 악화하는 것이다”라고 설명했다.
 
[사진=Freepik]
[사진=Freepik]

2020년 11월 중반, 센티넬원은 마이크로소프트에 처음 버그를 보고했으며, 마이크로소프트는 2021년 2월 9일(현지 시각)에 패치를 배포했다. 마이크로소프트는 중요한 경고가 있는데도 윈도 디펜더에서 발견된 보안 취약점을 ‘높은 위험’ 수준으로 등급을 분류했다. 윈도 디펜더의 취약점은 해커가 이미 접근했을 때만 원격으로나 물리적으로 악용해, 특정 기기를 공격 대상으로 삼을 수 있다. 즉, 해커가 여러 차례의 공격을 개시할 수 있는 것이 아니며, 대다수 공격 상황에서 다른 보안 문제를 함께 악용해 개시해야 한다. 그러나 윈도 디펜더의 취약점에 이미 접근했다면, 해커에게는 매우 매력적인 공격 수단이 될 수 있다. 해커는 보안이 취약해진 윈도 기기를 악용해 네트워크나 피해자 기기에 더 깊이 영향을 줄 수 있다. 이때, 관리자와 마찬가지로 사용자 계정에 접근할 권한을 먼저 얻을 필요는 없다.

센티넬원과 마이크로소프트 모두 연구팀의 분석이 이루어지기 전, 해커가 먼저 윈도 디펜더의 결함을 발견했다는 증거가 없다는 사실에 동의했다. 또, 센티넬원은 해커가 윈도 디펜더의 결함을 악용해 마이크로소프트의 패치 시간을 늘릴 방법을 구체적으로 설명하지 않았다. 이제 윈도 디펜더에서 결함이 발견된 사실이 대대적으로 공개되었다. 그러나 이제 해커가 윈도 디펜더의 결함을 악용하는 방식을 발견하는 것만이 문제가 될 것이다. 마이크로소프트 대변인은 2월 9일에 배포된 패치를 설치하거나 자동 업데이트 기능을 활성화했다면, 윈도 디펜더의 결함으로부터 보호를 받을 수 있다고 밝혔다.

주요 운영 체제에 있어 12년이라는 시간은 보안 취약점이 드러나지 않고 숨어있기에는 매우 긴 시간이다. 또, 연구팀은 윈도 디펜더의 보안 취약점이 실제로는 12년 넘게 존재했을 수도 있다고 말했다. 그러나 연구팀의 조사 범위는 보안 툴 ‘바이러스토탈(VirusTotal)’이 바이러스 방지 제품에 정보를 보관하는 기간으로 제한되었다. 2009년, 윈도 비스타(Windows Vista)가 현재의 마이크로소프트 배포로서 윈도 7로 대체되었다.

연구팀은 윈도 디펜더 버그가 오랫동안 숨어있던 이유는 취약한 드라이버가 프린터 드라이버처럼 컴퓨터의 하드드라이버에 풀타임으로 저장되지 않았기 때문이라고 가정한다. 대신, 버그가 ‘동적 링크 라이브러리(dynamic-link library)’라고 불리는 윈도 시스템에 있었으며, 윈도 디펜더는 필요할 때마다 버그를 삽입한 것이다. 그리고, 드라이버가 작업을 완료하면, 디스크에서 버그가 다시 사라진다.

데켈 수석 보안 연구원은 “센티넬원 연구팀은 드라이버가 동적으로 삽입되고 필요하지 않을 때 삭제된 사실에 주목했다. 이는 일반적인 버그와는 다른 행동이다. 따라서 윈도 디펜더의 버그를 자세히 연구했다. 다른 제품에도 윈도 디펜더와 비슷한 버그가 존재할 수 있다. 그리고, 이번에 발견한 사실을 공개하면서 다른 바이러스 방지 제품이 안전한 상태를 유지하기를 바란다”라고 말했다.

역사적으로 버그는 20년 된 맥 모뎀 결함부터 아바야 데스크 전화의 10년 된 좀비 버그에 이르기까지 불규칙적으로 나타났다. 개발자와 보안 연구원이 항상 모든 문제를 발견할 수는 없다. 심지어 과거, 마이크로소프트에서 윈도 디펜더 결함 이외에 장기간 알려지지 않은 보안 문제가 발견된 적이 있다. 2020년 7월, 마이크로소프트는 잠재적으로 위험한 17년된 윈도 DNS 취약점 패치 작업을 시행했다. 많은 버그가 존재하고 있음으로 늦게나마 대처를 하는 것이 아무것도 하지 않는 것보다 낫다.

** 위 기사는 와이어드US(WIRED.com)에 게재된 것을 와이어드코리아(WIRED.kr)가 번역한 것입니다. (번역 : 고다솔 에디터)

<기사원문>
A Windows Defender Vulnerability Lurked Undetected for 12 Years
이 기사를 공유합니다
RECOMMENDED