APT 공격을 이용한 침해사고 실습 -3-

가상머신을 이용하여 외부망, 방화벽, 내부망을 설정하고 APT 공격을 통하여 외부망에서 내부망에 접근할 수 있도록하며, 
내부 DB서버를 공격하여 값을 빼내는 실습을 진행해볼 것이다.

들어가기전에 간단하게 가상머신의 환경 구조를 보겠다.

                                       

                  <일반적인 가상환경>                                                    <Vmware vSphere등 기업에서 사용하는 것>

이러한 환경 구조를 가지며, 일반적으로 기업에서 사용하는 것이 더 빠르다.


APT 공격을 위한 구성도는 다음과 같다.



APT 공격을 이용한 침해사고 실습 -2-

APT(Targeting attack) Life Cycle

1. Initial compromise(초기침투)
  공격자(해커그룹)이 표적 조직의 네트워크 호스트(서버에) 대한 제어 권한을 획득하는 단계
  ex) Watering Holes, Spear Phishing이 APT 공격에 많이 사용되고 있음

2. establish foothold(거점확보)
  첫번째로 감염시킬 때 모든 기는능ㄹ 담은 악성코드를 보내는게 아니라 최소한의 기능만 가진 악성코드를 밀어 넣는다.
이후 추가 공격을 수행하기 위해 필요한 도구/악성코드를 다운로드하고 설치하는 단계이다.
  http(s) 혹은 별도의 암호화된 채널을 이용해서 도구 다운로드, 특정 디렉토리에 설치
  UAC(User Access Control)설정은 매우 중요하다. * UAC : 관리자 권한이 필요합니다 라고 팝업 뜨는 것
  tmp 폴더 등을 통해 일단 쓸 수 있는 폴더에 악성코드를 올리고 추후 실행

3. privilege Escalation (권한상승)
  거점 확보를 통해 악성 코드를 올린다. 이후 원활한 공격을 위해 관리자 권한이 필요한 데, 이를 위한 권한 상승은 필수이다.
  시스템 혹은 서버의 관리자 수준 권한을 탈취하는 단계이다.
  ex) OS 또는 소프트웨어가 가진 취약점을 이용하는 경우가 대부분

4. internal reconnaissance (내부정찰) > Lateral Movement(측면이동) > Maintain persistence (제어 유지)
  스캐닝 기술들(포트 스캐닝 등)을 이용하여 내부 정찰하는 단계
  내부 정찰을 통해 내부망 등 VPN과 연결이 되어있는 핫라인을 발견하고, 그 핫라인에 연결되어 있는 컴퓨터에 접근(측면이동)
  Internal reconnaissnace : 내부 네트워크에 있는 호스트(서버)의 종류, 서비스하고 있는 포트/프로토콜 등의 정보를 수집
  Lateral Movement : 메모리에 존재하는 ID, PW등의 정보를 탈취하고 다른 PC로 로그인하거나 Actvie Directory 사용자의
로그 정보를 키로깅하여 다른 PC로 로그인. 익스플로잇을 이용하여 다른 PC의 취약점을 공격한 후 제어 권한을 획득
(워너크라이 확산)
  Maintain persistence : 레지스트리를 조작하여 백도어가 지속적으로 실행되게 한다. 최근 레지스트리 검사를 자주하여
WMI 저장소(Repository)에 트리거를 설치하여 시스템에서 특정 조건이 만족되면 파워쉘 명령어가 강제로 실행한다.
또는 테스크 스케쥴러, Crontab 등을 이용하여 지속적으로 접근할 수 있도록 하는 단계

5. complete mission(완료)
  Data Exfiltration(데이터 유출) : 그냥 유출하지 않고 분할 유출한다. 추출한 데이터를 희생자 시스템에 다운로드하여
분할 압축 한 후 긴 시간동안 간헐적으로 중계서버(Staging Server)에 전송한다. 한번에 보내면 트래픽이 튀어 들킬 수 있다.
  그리고 Storage Wiping 등을 통하여 흔적 제거한다.

APT 공격을 이용한 침해사고 실습 -1-

개요 및 잡담 

※틀린 내용이 있을 수 있으며, 개인적인 생각임.


1. 해커들은 바이러스 토탈에 올리지않는다. 바이러스 토탈에 해쉬값이 남기 때문이다. 따로 만들어서 백신에 걸리는지 검사한다.

2. 중국 침해 공격을 보통 더럽게 진행이 되며, 북한은 깔끔하다. MBR 등을 날려버리는 행동으로.. 러시아나 동부권 공격은 수학적으로 치밀하게 공격을 진행하고, 러시아의 경우에 공격 흔적을 찾기가 힘들다

3. 최근 북한이 중국 툴보다 러시아 툴을 자주쓰는 경향이 있다.

4. 15년도 방글라데시 은행을 공격해서 털었다. 주 공격자가 북한으로 추정된다.

5. 사고는 100% 막을 수 없다. 막을 수 없는 것을 기반으로 예산 편성할 필요가 있다.

6. 사고당한 담당자를 보직 이동시키거나 해고하는데, 이러면 경험해본 사람이 보직에 없게 된다. 

7. 이메일 훈련하는 이유는 해커는 피해자의 신상정보를 확실히 알고 보내기 때문이다.

8. 정보보호와 정보보안의 차이는 무엇인가? 보안은 통제이다. 하지마라~에서 시작하는 것이다.. (근데 다함) 보호는 부모가 자식을 보호한다는 느낌을 가지면 된다. 수많은 위협에서 모든 방법을 강구해서 지킨다는 의미.

9. 관리컨설팅을 할 때 첫번째가 위협 식별이다(?) 먼저 회사에 자산이 몇대 있는지 물어본다. 그 다음 회사가 꼭 지켜야 하는 자산이 무엇이고, 어디에 있는지 물어본다.

10. 공격자는 크게 3가지 목표를 가진다고 했다 1. 국가 교란 2...? 3...?

11. 현재 개인 정보는 다 털린 상태라고 보면 된다. 하지만 당신의 직책, 회사 등의 세부적인 정보를 더 얻을려고 한다. 이 정보를 통해서 나중에 써먹을 수 있기 때문이다.

12. 침해사고 당하면 조치하고 포맷하기 마련인데, 포맷하지 않는 것을 추천한다. 그 컴퓨터 말고 다른 컴퓨터에도 감염되어 있을 수 있기때문이다. 예를 들어 1번 컴퓨터에 드로퍼 설치, 2번컴퓨터 C&C연결 등 나누어 감염시킬 수 있기 때문이다. 그래서 포맷이 아닌 따로 격리하는 것이 좋다.

13. 스크라이크 존은 사고가 너무 오래되서 최초의 PC나 서버가 없어진 경우에 이때까지 조사한 것을 다 묶고 치료할 수 있는 자산을 다 찾고 네트워크를 전부다 끊는다. 한번에 다 치료하지 않으면 치료하는 도중에 재감염 될 수 있다. 

14. 나중에 침해사고 발생 후 벌금 등을 징수하려고 할 때, 동종 업계와 비교하여 얼마나 보안에 신경썼는지 확인한다. 그렇기 때문에 동종 업계의 보안 조치 등을 확인하고 조치를 취해 나중에 침해사고 발생시 책임 소지를 줄일 필요가 있다.

15. 로컬 어드민은 PC에서 Disable해놔야한다.

16. 현재 윈도우는 파워쉘, 리눅스 쉘도 지원가능하다. 이것은 백신에서 안잡히는 바이러스가 침투할 수 있는 요건이 된다.

17. 공격자가 데이터를 가져갈 때 어떻게 가져갈까? 우리가 쓰던 알집, 빵집 등을 이용하여 가져간다. 기존에 깔려 있기때문에 들킬 위험이 줄어든다

18. 근데 데이터가 너무 많아서 한번에 빼면 의심당한다. 그래서 쪼개서 나간다. 이를 통해 빵집, 알집이 돌았고 분할 압축이 많았다면 침해사고가 발생했을 가능성이 있다.

19. SIEM이 실패한 이유가 이러한 이유를 명확히 제시해주지 않았기 때문이다.

20. 현재 공격은 조직적으로 행해지기때문에 업무 협조등 획일화된 정책이 있다. 그래서 공격자를 알아내면 분석하는 데 큰 도움이 된다. 


+ Recent posts