2022년 8월 9일 화요일

[PoC] Project - The Catcher in the Rye

저는 현재 보안회사의 개발직에 근무하고 있습니다

저희 회사에는 자체 분석기술을 가진 분석가로 구성된 팀이 있습니다

분석가들은 종류를 가리지 않고 모든 악성 샘플을 분석합니다 그러한 악성 샘플에는 랜섬웨어도 포함됩니다

저는 이번 프로젝트에서 랜섬웨어를 분석하는 시스템을 개발할 예정입니다

제가 개발하려는 랜섬웨어 분석 시스템의 프로젝트 명은 The Catcher in the Rye 입니다 (호밀밭의 파수꾼 이죠)

이 프로젝트에 대해 설명하기 전에 랜섬웨어의 개념부터 소개드리겠습니다

랜섬웨어란 희생자 pc에 침투하여 텍스트 파일이나 각종 문서류(ms office, hwp 등)등의 파일을 암호화하여 파일을 열고 사용하는 것이 불가능하게 한 상태로 몸값을 요구하는 악성 프로그램입니다

The Catcher in the Rye 프로젝트에서 구축하는 랜섬웨어 분석 시스템은 이러한 랜섬웨어를 vmware와 같은 하이퍼바이저 상에서 실행 시켰을 때 랜섬웨어가 동작하는 방식을 분석하는 데 필요한 정보를 편리하게 제공하는 것이 목표입니다

좀 더 구체적으로 랜섬웨어 분석 시스템의 제공 기능을 설명드리면 아래와 같습니다

목표 기능

  1. 동기  비동기 모드 제공

    모니터링 시스템의 가동 여부를 다음의 항목에 대해 제공하는 기능 지원

    • 프로세스 
    • 특정 경로  실행 파일
    • 특정 프로세스와 부모 자식 관계의 프로세스
    1. 동기 모드 - 특정 프로세스가 랜섬웨어라고 식별된 시점 이후 최초로 암호화를 수행하는 파일에 대해 파일 수정/삭제/이름변경동작  펜딩창을 팝업(허용/차단 선택권 제공), 사용자가 파일 I/O 제어권을 갖도록 한다
    2. 비동기 모드
      • 루트 드라이브 하위의 모든 폴더에 대해 폴더 변경 알림 콜백을 등록랜섬웨어가 파일을 수정/삭제/이름변경하는 동작이 감지되면 로깅을 시작한다
      • 랜섬웨어의 파일 암호화 동작을 로깅한다
      • 로깅하는 파일 I/O 유형은 wdm에서 제공되는 IRP  기준으로 지원한다
      • 발생한 IRP 기준으로암호화 동작에 대한 정보를 제공한다
        • 암호화 대상 파일 경로 --> 탐색기나 evertyhing  ui 제공암호화 완료 파일이나 해당 파일이 위치한 경로는 빨갛게 표시하여 가시성을 제공한다
        • 암호화 시각
        • 암호화 대상 파일 확장자(dummy decoy 이용)
        • 파일 검색 방법(파일 접근 방식)
        • 파일을 암호화하는 방식(write in place, rename and encrypt, create encrypt and delete)
        • 파일 암호화에 사용하는 api
    3. Anti-VM 기능을 갖는 랜섬웨어를 분석하기 위한 몇가지 anti-vm 우회 기능을 제공한다


구현에 대한 계획과 자료 조사는 다음 포스팅에서 다루겠습니다

댓글 없음:

댓글 쓰기