컨텐츠 바로가기

04.16 (화)

“구글 계정이 침입 통로” 시스코 해킹 사고의 전모

댓글 첫 댓글을 작성해보세요
주소복사가 완료되었습니다
엔비디아와 마이크로소프트, 유비소프트, 삼성, 보다폰에 이어 시스코가 유명 IT 업체의 해킹 피해 사례에 이름을 올렸다. 지난 5월 말 한 공격자가 시스코 네트워크에 침투하는 데 성공했다. 이른바 초기 액세스 브로커(Initial Access Broker, 돈을 받고 대상 네트워크로의 액세스를 제공하는 공격자)인 이 공격자는 UNC2447 사이버 범죄 조직, Lapsus$ 조직, 그리고 랜섬웨어 얀루오왕(Yanluowang) 운영자들과 연루된 것으로 보인다. 이번 공격에서 눈에 띄는 부분은 제로데이 취약점이나 패치 미설치, 네트워크 구성의 약한 지점이 아닌 전형적인 소셜 엔지니어링 기법을 사용했다는 점이다.
ITWorld

ⓒ Getty Images Bank

<이미지를 클릭하시면 크게 보실 수 있습니다>



제한적 피해만 발생
이번 공격은 다른 대규모 해킹 사건의 경우와 달리 가치 있는 데이터를 얻지는 못한 것으로 보인다. 해커로부터 이메일을 받았다고 주장하는 Bleepingcomputer.com에 따르면, 해당 해커는 약 3,100개 파일로 구성된 2.75GB 용량의 데이터를 훔쳤다고 한다. 파일의 대부분은 비밀 유지 계약(NDA), 데이터 덤프, 기술 도면 등인 것으로 알려졌다. 시스코는 공식적으로 “2022년 5월 말에 회사 네트워크에서 보안 사고가 발생했다. 공격자를 제압해 네트워크에서 제거하기 위한 즉각적인 조치를 취했다. 이 사고는 시스코 제품 또는 서비스, 민감한 고객 데이터 또는 민감한 직원 정보, 회사 지적 재산 또는 공급망을 포함해 시스코 비즈니스에 아무런 영향을 미치지 않았다”고 발표했다.

공격자가 훔친 파일 목록을 게시하자 시스코도 사고를 세부적으로 공개했다. 시스코가 사고에 대처하면서 얻은 교훈을 다른 여러 기업에 제공하는 것은 주목할 만한 일이다. 시스코 내부 보안 그룹인 탈로스(Talos)는 블로그를 통해 공격자가 어떻게 네트워크에 침투했고 거기서 무엇을 했는지를 자세히 설명했다.
해커가 시스코에 보낸 이메일 ⓒ Cisco Talos

취약한 구글 계정
해킹의 출발점은 시스코가 아닌 구글이었다. 공격자는 시스코 직원의 개인용 구글 계정을 탈취하는 데 성공했다. 이 사용자는 부주의하게 구글 크롬을 통한 암호 동기화를 활성화해서 시스코 자격 증명을 브라우저에 저장했고, 이렇게 저장된 정보는 구글 계정에 동기화됐다.

그러나 시스코의 VPN 액세스는 다중 인증을 통해 보호되므로 이 암호만 있어서는 공격자에게 아무런 쓸모가 없었다. 공격자는 다중인증을 통과하기 위해 전형적인 소셜 엔지니어링 기법인 보이스 피싱, 즉 “비싱(vishing)”을 사용했다. 직원은 며칠에 걸쳐 전화를 받은 것으로 보고했다.

해커와 해커가 사용한 툴
공격자는 첫 액세스 권한을 획득한 이후 여러 개의 새로운 디바이스를 다중인증용으로 등록했고 시스코 VPN 인증에 성공했다. 그런 다음 공격자는 관리자 권한을 획득해 여러 시스템에 로그온할 수 있었다. 하지만 이 행위로 인해 시스코 보안 사고 대응 팀(CSIRT)에 경고가 발령됐고, 바로 사고 대응 작업이 시작됐다. 공격자는 로그미인(LogMeIn), 팀뷰어(TeamViewer)와 같은 원격 액세스 툴, 코발트 스트라이크(Cobalt Strike), 파워스플로잇(PowerSploit), 미미캐츠(Mimikatz), 임패킷(Impacket)과 같은 공격적인 보안 툴을 포함한 다양한 툴을 사용했고, 자체 백도어 계정을 만들었다.

또 주변 영역에 접근한 후 액세스 권한을 유지하고 포렌식 흔적을 최소화하기 위한 다양한 활동을 수행했다. 시스템에 침투한 공격자는 환경을 스캔하기 시작했다. 이를 위해 일반적인 윈도우 내장 유틸리티를 사용해서 시스템의 사용자 및 그룹 멤버십 구성, 호스트 이름을 확인하고 자신이 사용 중인 사용자 계정의 성격을 파악했다.

액티브 디렉터리 공격
이후 시트릭스 환경에 침투해 여러 시트릭스 서버를 침해했고, 최종적으로 도메인 컨트롤러에 대한 특권 액세스 권한을 획득했다. 공격자는 도메인 컨트롤러 액세스 권한을 획득한 후 ntdsutil.exe 파일을 사용해 컨트롤러에서 액티브 디렉터리 서비스(이전의 NT 디렉터리 서비스(NTDS))의 삭제를 시도했다. 그런 다음 도메인 컨트롤러에서 수집한 NTDS 데이터를 SMB(TCP/445)를 통해 자신이 제어하는 VPN 시스템으로 가져왔다.

사용자 이름 “z”
공격자는 로그인 데이터베이스 액세스 권한을 획득한 후 특권 인증과 환경 내에서의 횡적 이동을 위해 머신 계정도 사용한 것으로 관찰됐다. 또한 내장된 윈도우 net.exe 명령을 사용해 시스템에 “z”라는 이름의 관리자 권한 사용자를 만들었다. 이 계정은 이후 로컬 관리자 그룹에 추가됐다. 탈로스가 다른 시스템에 대한 공격에서 이미 관찰한 적이 있는 과정이다.

이후 이 계정은 디렉터리 서비스 환경을 열거하고 추가 자격 증명을 획득하기 위해 "adfind" 또는 "secretsdump"와 같은 부가적인 유틸리티를 실행하는 데 사용됐다. 또한 해커가 침해된 윈도우 호스트의 SAM 데이터베이스를 포함한 레지스트리 정보를 추출하려 시도한 정황도 확인됐다.

범죄 흔적 삭제 시도
공격자는 이전에 생성한 로컬 관리자 계정을 삭제하는 방법으로 침해된 시스템에서 수행한 활동의 증거를 제거하기 위한 조치도 취했다. 또한 wevtutil.exe 유틸리티를 사용해서 시스템에 생성된 이벤트 로그를 찾아 지웠다. 많은 사례에서 공격자는 자신이 만든 로컬 관리자 계정을 제거해 흔적을 지운다.

침입자는 원격 데스크톱 프로토콜(RDP)과 시트릭스를 사용해서 환경 내의 여러 시스템 간에 파일을 옮겼다. 탈로스는 시스템에 대한 RDP 액세스를 허용하도록 호스트 기반 방화벽 구성이 변경된 것을 확인했다.
윈도우 로그인
공격자는 윈도우 로그온을 속여 승격된 권한이 있는 시스템에 대한 액세스 권한을 얻는 수법도 사용했다. 주로 “PSEXESVC.exe”에 의존해서 윈도우 레지스트리를 원격으로 수정하는 방법을 사용했다. 이를 통해 윈도우 로그온 화면의 접근성 기능을 사용해 시스템 수준 프롬프트를 생성함으로써 시스템에 대한 완전한 제어 권한을 획득했다.

또한 공격 내내 피해자의 환경에서 정보를 빼내기 위해 시도했다. 하지만 탈로스는 이 공격자가 침해된 직원 계정, 그리고 액티브 디렉터리에 있는 직원의 인증 자격 증명과 연결된 한 폴더 안의 내용만 훔칠 수 있었으며, 이 폴더에는 민감한 데이터는 없었다고 전했다.

은밀한 백도어
한편 침입자는 데이터를 훔치는 데 그치지 않고 시스템에 여러 악성 앱을 주입했다. 여기에는 예를 들어 C&C 서버로부터 명령을 수신해 최종 시스템에서 실행 중인 윈도우 커맨드 프로세서를 통해 전송하는 간단한 백도어가 포함됐다. 이 명령은 “JSON 블롭”으로 전송되며, 백도어에서 표준처럼 사용된다. “DELETE_SELF” 명령은 시스템에서 백도어를 완전히 제거한다.

더 흥미로운 “WIPE” 명령은 마지막으로 실행된 명령을 메모리에서 삭제하도록 백도어에 지시한다. 영향을 받는 모든 호스트에서 포렌식 분석을 방해하기 위한 목적으로 추정된다. 맬웨어는 작업 디렉터리 내에 “bdata.ini”라는 파일도 생성했다. 이 파일에는 감염된 시스템에 포함된 디스크의 일련번호에서 추출된 값이 포함된다. 이 백도어와 관련된 C2 인프라를 분석한 결과 C2 서버가 이 공격을 위해 특별히 준비된 서버임이 밝혀졌다.

추가 공격
시스코 보안 팀은 네트워크에서 공격자를 성공적으로 쫓아낸 이후 몇 주 동안 액세스 권한을 되찾으려는 해커의 지속적인 시도를 감지했다. 공격 이후 모든 사용자가 의무적으로 암호를 재설정했으므로 공격자는 취약한 암호 위생에 의존했다. 공격자가 주 표적으로 삼은 사용자들은 변경 전에 단일 문자로 된 암호를 사용한 것으로 추정되는 이들이었다. 공격 시도의 초반에는 흔적을 지우기 위해 토르(Tor)와 같은 익명화 서비스를 사용했다. 공격자는 여기서 성공적인 결과를 얻지 못하자 공격 초반에 이미 탈취해둔 계정을 사용해 사설 IP 영역에서 새로운 VPN 세션을 설정하는 방법으로 전환했다.

또한 공격자는 쫓겨난 뒤 고위급 시스코 직원에게 반복해서 이메일을 보내 접촉을 시도했지만, 딱히 위협하거나 협박하는 내용은 없었다. 훔친 데이터의 디렉터리 목록을 보여주는 스크린샷을 첨부한 이메일도 있었다.

시스코는 사고를 분석한 후 공격자가 이전에 초기 액세스 브로커로 확인된 적이 있으며, UNC2447 및 Lapsus$와 연관성이 있는 것으로 파악했다. 포렌식팀은 확보한 흔적 및 공격자의 전술, 기법 및 절차(TTP), 사용된 인프라, 백도어에 대한 분석 등을 근거로 이 같은 결론을 도출했다.

초기 액세스 브로커는 일반적으로 기업 네트워크에 대한 특권 액세스 권한을 획득한 뒤 이를 다른 범죄자에게 판매해 수익을 얻는다. 이를 구매한 범죄자는 이 권한을 다양한 용도로 사용한다. 또한 이 해커는 얀루오왕 랜섬웨어 조직과 관련된 활동 이력도 있는 것으로 파악됐다.

랜섬웨어 공격의 전조
이 공격에는 랜섬웨어가 사용되지 않았지만 사용된 TTP는 “랜섬웨어 사전 활동”, 즉 랜섬웨어가 배포되기 전에 피해 기업의 환경에서 공통적으로 관찰되는 활동에 해당한다. 시스코에 따르면 관찰된 TTP의 많은 부분이 시스코 보안팀이 이전에 관측한 활동과 일치한다. 또한 이 분석에서는 이전의 활동과 관련된 서버 측 인프라의 재사용도 확인됐다.

시스코가 얻은 교훈
시스코는 사고가 알려진 직후 전사적으로 암호를 재설정했다고 밝혔다. 또한 CSIRT와 탈로스의 오랜 연구 결과로 구현된 보안 대비책이 공격자의 활동을 억제하고 속도를 늦추는 데 도움이 됐을 수 있다고 분석했다. 사고 후 시스코는 기업 IT 관리자들에게 다음과 같은 보안 조치를 취할 것을 권했다.
  • 소셜 엔지니어링 수법에 관한 직원 교육 실시
  • 지원 담당자가 사용자에게 연락하는 정상적인 방법 숙지
  • 다중인증 회피 수법을 인지하도록 사용자 교육 실시
  • 강력한 디바이스 확인과 엄격한 디바이스 상태 제어를 시행하여 관리되지 않거나 알려지지 않은 디바이스의 로그인 및 액세스를 제한하거나 차단
  • 원격 엔드포인트의 VPN 연결은 기본 보안 컨트롤 모음이 적용된 경우에 한해 허용
  • 네트워크 세그먼테이션
  • 특히 공격자가 적극적으로 시스템 로그를 삭제하는 데 대비하여 중앙 로그 수집으로 높은 투명성 확보
  • 백업을 오프라인에 보관하고 정기적으로 테스트
  • 명령줄 수준의 명령 실행 모니터링. 특히 윈도우 내장 유틸리티에 대한 주의 필요
editor@itworld.co.kr

Jürgen Hill editor@itworld.co.kr
저작권자 한국IDG & ITWorld, 무단 전재 및 재배포 금지
기사가 속한 카테고리는 언론사가 분류합니다.
언론사는 한 기사를 두 개 이상의 카테고리로 분류할 수 있습니다.