“스피어피싱, 자격증명 탈취해 공격 목표 달성”
상태바
“스피어피싱, 자격증명 탈취해 공격 목표 달성”
  • 김선애 기자
  • 승인 2020.11.22 10:37
  • 댓글 0
이 기사를 공유합니다

KISA 보고서 “개발자·관리자 권한 탈취한 공격자, 측면이동하며 공격 이어가”
탈취한 자격증명 이용 소스코드 유출·랜섬웨어 공격…복합 악성코드로 지속적 공격

[데이터넷] 사이버 공격에 가장 많이 사용되는 악성메일은 첨부파일에 악성코드를 숨겨 정상 업무 메일인 것처럼 위장해 사용자를 속인다. 그 후 어떤 과정을 거쳐 공격 목표인 데이터를 탈취할까?

한국인터넷진흥원(KISA)은 ‘스피어피싱 공격 타깃별 피해 시나리오 분석; 악성행위에 사용되는 도구를 중심으로’ 보고서를 통해 악성도구가 개발자와 서버 관리자 계정을 탈취한 후 공격 목표를 달성하기 까지 과정을 상세히 설명했다.

개발자 PC 장악해 소스코드 탈취

첫번째 사례로 소개한 것은 개발환경에 침투해 소스코드를 유출하는 과정이다. 공격자는 개발자 컨퍼런스 발표를 요청하는 메일을 보냈다. 이 메일에는 정보유출 기능을 가진 문서형 악성코드가 첨부돼 있었다. 개발자가 첨부파일을 열어 악성코드가 다운로드 되면 개발자 컴퓨터의 계정정보를 탈취한다.

일반적으로 계정정보는 OS나 웹브라우저, 비밀번호 관리 프로그램 등에 저장되는데, 개발 편의성을 위해 평문으로 노출된 ID/PW를 파일로 저장하는 경우도 있다. 웹브라우저에 자격증명을 저장하는 경우, 간단한 스크립트를 통해 저장된 자격증명 평문과 방문이력 등을 확인할 수 있다. 따라서 로컬 컴퓨터에서는 자격증명 정보를 웹 브라우저에 저장하지 않아야 한다.

개발자 자격증명을 탈취한 공격자는 개발자의 작업기록을 검색해 저장소 주소를 획득하고 SSH 개인키를 이용해 소스코드를 유출한다. 보통 소스코드 저장소 접근은 공개키 알고리즘을 이용한 인증을 적용해 개인키가 없으면 접근할 수 없도록 한다. 그러나 로컬 컴퓨터가 공격자에게 장악돼 있으면 개인키를 탈취하고 소스코드 저장소에 접근할 수 있다.

브라우저에 저장된 소스코드 저장소 자격증명을 획득한 공격자는 웹을 통해서도 직접 접근할 수 있다. 개발자 개인에게 부여된 저장소별 권한에 따라 유출되는 정보 범위가 달라질 수 있지만, 전체 저장소 관리자 권한이 탈취당하면 모든 소스코드가 유출될 수 있다.

소스코드 저장소에 접근하는 모든 계정에 대하여 2단계 인증을 요구하거나 접근 가능한 IP를 설정하면 불법 접근 가능성을 낮출 수 있지만, 로컬 PC를 장악한 공격자는 개발자 작업기록을 검색해 접속 가능한 방법을 찾아낼 수 있다.

조직에 속한 저장소 권한을 제어하는 것도 매우 중요한 일인데, 깃허브의 경우 모든 조직원이 저장소에 접근할 수 있는 READ 권한으로 초기값이 설정돼 있어 모든 저장소에 접근하여 소스코드를 확인하고 복제할 수 있기 때문에 전사 소스코드가 유출될 수 있다.

▲서버관리자 단말기 침투로 인한 전사 네트워크 랜섬웨어 감염 시나리오
▲서버관리자 단말기 침투로 인한 전사 네트워크 랜섬웨어 감염 시나리오

AD 관리자 계정으로 랜섬웨어 유포

서버 관리자의 AD를 장악하는 시나리오는 지난해부터 꾸준히 이어지고 있다. 공격자는 스피어피싱을 통해 다수의 단말기를 관리하는 AD 관리자의 PC에 직접 침투하거나 일반 사용자 PC에 잠입한 후 측면이동으로 관리자 단말기로 침투한다. PC에 자격증명 정보가 저장돼 있으면 공격이 더 쉬워진다. 혹은 제로로곤(Zerologon) 취약점이 있다면 서버 관리자 단말기 뿐 아니라 도메인에 연결된 단말기가 공격에 노출됐을 때 AD 서버에 접근해 관리자 계정을 획득할 수 있다.

AD 서버를 장악한 공격자는 내부 네트워크에 포함된 정보와 정책을 수집하는데, 보통 이를 위한 스크립트는 오픈소스로 공개돼 있다. 파일 업·다운로드, AD 서버에 연결된 단말기로의 정책 배포, 악성코드 삽입 등 관리자로서의 권한을 악용한 모든 행위를 수행할 수 있다.

금전적인 목적을 달성하기 위해 공격자는 AD 서버에 연결된 단말기 및 서버 등을 대상으로 랜섬웨어를 유포, 감염하는 행위를 수행한다. 랜섬웨어 유포·실행 스크립트로 인해 AD 네트워크에 연결된 모든 단말기로 랜섬웨어가 전파될 수 있으며, 감염파일이 생성될 수 있고, 랜섬웨어 유형에 따라 복구가 불가능할 수 있다.

여러 악성코드 이용하는 공격자

최근 탐지되는 악성코드는 특정 기능으로 국한되는 것이 아니라 복합적으로 구성되거나 다양한 기능의 악성코드를 조합해 공격자의 최종 목적을 달성하는 방식으로 침해사고가 전개된다. 미미카츠(Mimikatz), PsExec 등의 악성코드는 지속적인 업데이트로 최신 버전 윈도우 환경에서도 중요 정보에 접근할 수 있다.

원격 데스크톱을 이용한 원격접속(RDP)의 경우, 자격 증명정보가 접속하는 원격 서버 내에 저장되고, 접속을 시도하는 단말기에는 저장되지 않는다. 하지만 제한적인 관리자 모드(Restricted Admin mode)를 설정하고 접속하는 경우, 접속 단말기 내 NTLM 해시 등을 저장하기 때문에 이를 이용해 Pass The Hash 공격이 가능하다. 윈도우10의 경우 기본적으로 이 기능이 해제돼 있지만, 특권 로그인 계정 수를 줄이기 위해 대규모 조직에서는 설정해 사용하기도 한다.

브라우저는 자동완성 기능을 위해 사용자 정보를 DPAPI로 저장해 활용하는데, 악성코드가 이를 호출해 브라우저에 저장된 자격증명, 히스토리, 쿠키, 즐겨찾기 등의 정보를 평문으로 획득할 수 있다. 따라서 2채널 인증을 통해 이러한 위험을 낮춰야 한다.

개발 보안을 유의하는 기업은 특정 인증서에서만 동작하도록 등록하지만, 내부 저장소 별로 접근권한 설정을 해두지 않고 타 부서의 소스코드까지 열람할 권한을 부여했다면, 전사 관리 중인 소스코드가 유출될 우려가 있다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.