보안 권고 981169 - VBScript의 도움말 키 취약점

오늘 오전 마이크로소프트 보안 권고 981169가 게시되었습니다. VBScript의 취약점에 대한 것인데 취약점 공격 방법이 독특합니다. 트위터를 통해 취약점이 많이 알려진 사례이기도 합니다.

이 취약점을 악의적으로 사용하는 웹 사이트는 이런 방식으로 공격할 수 있습니다.

  1. 사용자가 링크를 클릭하면 다이얼로그 박스를 띄웁니다. MsgBox 함수를 사용합니다.
  2. 나타나는 메시지에는 사용자가 F1 키를 누르도록 유도하는 속임수 문구가 들어있습니다. 사용자가 속아서 F1 키를 누릅니다.
  3. MsgBox의 인자로 사용하는 도움말 파일이 원격에 있을 수도 있고 로컬에 있을 수도 있습니다. 이 인자를 받아들이는 곳에 취약점이 있어서 버퍼 오버플로우가 일어납니다.
  4. 공격자가 원하는 코드가 실행됩니다.

즉 사용자가 링크를 누르고, 나타난 팝업 다이얼로그에서 F1을 눌러야 공격이 성공합니다.

이 공격은 윈도우 2000, 윈도우 XP, 윈도우 서버 2003에서 가능합니다. 윈도우 비스타, 윈도우 7, 윈도우 서버 2008에는 이 취약점이 없습니다. 인터넷 익스플로러의 버전에는 관계없습니다.

패치 일정은 아직 정해지지 않았습니다.

패치가 나오지 않은 현재, 대안(workaround)이 필요하신 분은 보안 권고SRD 팀 블로그를 읽어보시기 바랍니다. cacls를 써서 winhlp32.exe의 ACL을 변경하는 방법입니다.