1. Threats
취약점을 악용해서 공격할 수 있는 위협
- vulnerability : 취약점 (버그)
- exploit : 프로그램에 존재하는 버그를 악용하는 input
- exploitable : 버그를 이용해서 sw를 성공적으로 장악할 수 있다. (공격하는데 사용할 수 없다면 exploitable 하지 않다.)
2. Threat Model
공격자와 방어자의 능력을 정의하는 것
3. Hackers
- Black hat hackers
- White hat hackers
- Grey hat hackers : Black + White
4. Black hat hacker가 하는 일
- 컴퓨터 장악
- 사회공학적 기법 (피싱메일 / USB에 악성코드)
- 무식하게 비밀번호 모든 조합 시도
- DoS attack : 패킷 날려서 접속 안되게
- DDos attack : 좀비 PC 장악, 훨씬 더 많은 수의 패킷 날림
- Sniffing : 대화 엿들음
- Spoofing : 변조 (속이는 것)
- Attack physical system :
- Power systems
- IoT devices
- Medical devices : ex. 심장을 뛰게하는 시스템 정기적 패턴대로 뛰지 않게 / 약 주입 시스템 주입되지 않도록
- smart vehicles : 속도 갑자기 높아지게 / 브레이크 x
과거에는 해커만 나쁜 일 했으나, 현재는 해커 뿐만 아니라 정부, 일반적인 사람도
4. 보안 원칙 CIA
- Confidentiality (C) : 비밀성
- 데이터 비밀 유지
- ex. 친구와의 대화 내용을 보지 못하게 한다.
- Integrity (I) : 무결성
- 데이터가 수정되지 않도록 유지
- ex. 친구과의 메세지 대화 내용이 변조되지 않는다.
- Availability (A) : 가용성
- 시스템을 계속 실행하고 연결 가능
- ex. 어떤 시스템이 제공한 서비스는 항상 사용자들에게 가용한 상태로 있어야 한다.
5. CIA 이외
- Authentication : 인증
- 전자 메시지의 출처가 올바르게 식별되었는지 확인
- Non-repudiation : 부인 방지
- 일어난 일을 부인할 가능성을 없앤다.
- Access control
- 누가 무엇에 접근 할 수 있는 지를 정의한다. (ex. ACL on Linux)
6. 현실세계에서의 공격
Advanced Persistent Threat (APT)
- Advanced : 일반적인 방법이 아닌 특이한 (모든 방법을 총 망라해서) 공격하는 방법
- Persistent : 단순 일회성 공격에 그치는 것이 아니라 공격을 지속할 수 있는 방법
- Threat
APT가 완전히 새로운 방법은 아니다. 기존의 방법을 조합하거나 공격 대상을 확대했다.
기존 | APT | |
exploitation 수단 | SW의 취약점을 이용하여 장악, Social engineering | |
목적 | spam, Dos attack 등 | 국가 간의 스파이, 지적 재산권 (ex. 산업기밀) 훔쳐감 좀 더 대범해짐 |
동기 | 명성, 금전적 이득 | 군사, 정치, 기술력 |
타겟 | machine | 사용자 대상 공격 다수 |
시간 | 공격 확산 속도 빠름 | 느림 (나라, 공공기관 등은 개인 pc 보다 상대적으로 공격에 대한 대처가 잘 마련되어 있어 공격이 어려움) |
control | 자동화된 악성코드 | 완전히 자동화 되어있다기 보다는 manual 작업이 요구됨 |
7. 실제 발생한 APT 공격 사례
- Operation Shady RAT (2006 ~ 2011)
- Operation Aurora (2009)
- 공격자가 취약한 웹 페이지 변조
- 사용자가 웹 페이지에 접근
- 서버에 있는 악성코드 자동 다운 및 설치
- Attack on RSA (2011)
8. 정형화된 APT
- 소셜 엔지니어링 기법을 이용해서 피싱메일 등을 전송한다.
- 앞선 방법으로 사람을 속여서 악성코드를 설치한다.
- command and control 통해 설치된 악성코드를 조종하여 내부망을 탐색한다.
- 중요한 데이터를 외부로 유출한다.
9. 쉽게 정형화 될 수 없는 APT
- APT 공격은 위와 같이 쉽게 정형화 될 수 없다.
- APT 공격을 위한 매우 다양한 방법이 존재하며, 공격자는 항상 새로운 방법을 생각해낸다.
- Social network services
- Free USB sticks
- Recommended responses to a breach...
- 비밀 데이터는 HTTP, FTP 등 일반적인 통신 프로토콜 뿐만 아니라 다양한 방법으로 유출된다.