[1] 모바일 운영체제 보안
: 모바일 기기의 운영체제는 일반 PC의 운영체제와 기본적으로 같으며, 취약점도 거의 유사함.
(1) 모바일 운영체제의 역사
- 2007년 아이폰의 첫 번째 버전인 아이폰 오리지널의 운영체제는 맥북의 운영체제를 모바일로 바꾼 OS X
- 2008년 3월 6일 아이폰 SDK의 첫 베타 버전이 배포
- SDK 발표 이후에 iPhone OS로 명명되었다가 2010년 6월 iOS4 발표와 함께 iOS로 변경
- 안드로이드 1.1 버전은 아이폰 오리지널을 딴 코드네임을 가진 최초의 버전
- 구글은 2009년 4월을 기점으로 이후에 출시한 안드로이드 버전에 디저트 이름을 붙여서 공개
1) 모바일 운영체제의 종류
팜 OS | - 1996년에 개발 - 주소, 달력, 메모장, 할 일 목록, 계산기, 개인 정보를 숨기기 위한 간단한 보안 툴 포함 |
윈도우 CE | - 1996년에 윈도우 CE 1.0으로 출시 - PDA(개인 정보 단말기)나 모바일 장치 등에 사용하기 위해 개발 - 1MB이하의 메모리에서도 동작이 가능 |
블랙베리 OS | - 2000년에 처음으로 명칭 사용 - RIM이 개발 - 메시지와 이메일 전송 기능 및 보안에 초점을 둠 |
iOS | - 2007년에 아이폰 오리지널의 운영체제를 시작으로 계속 업데이트 - 애플의 아이폰과 아이패드에 사용 |
안드로이드 | - 2007년 11월 구글 폰인 HTC Dream에 안드로이드 1.0이 탑재된 것이 시초 - 구글과 이동 통신 관련 회사 연합체가 개발한 개방형 모바일 운영체제 |
(2) iOS의 보안 체계
- iOS는 맥 OS인 OS X의 모바일 버전으로 시작함
- iOS의 원래 틀은 유닉스라고 생각할 수 있음
- iOS의 보안에 대한 기본적인 통제권은 애플이 소유하며, 완전한 통제를 위해 보안 모델에 4가지 시스템 보안 체계를 갖춤
1) iOS의 보안 모델
2) iOS의 4가지 보안 체계
① 안전한 부팅 절차 확보
: iOS를 사용하는 모바일 기기에서 모든 소프트웨어는 애플 암호화 로직의 서명된 방식에 의해 무결성이 확인된 후에만 동작함
② 시스템 소프트웨어 개인화
: 애플은 보안 문제에 즉시 대응할 수 있도록 아이튠즈를 통해 소프트웨어를 일괄로 배포하고 각각 고유한 코드 값으로 버전을 관리함
③ 응용 프로그램에 대한 서명
: iOS에 설치되는 모든 앱에 대해 코드 무결성 사인(앱의 코드 무결성 사인이 등록한 것과 다른 경우 설치 불가능)을 등록하고 설치한 앱에 문제가 있을 경우 강제로 삭제가 가능함.
④ 샌드박스 활용
: 사용자 앱은 앱 간에 데이털르 주고 받을 수 없으며 시스템 파일에 접근할 수 없기 때문에 애플이 만든 앱이 아닌 사용자 앱인 경우 샌드박스를 적용하여 독립적으로 실행
- 애플은 이 외에도 아래 2가지 사항을 통제하고 있음 -
⑤ 멀티태스킹 금지
: 악성 코드가 iOS에서 활동하는 것을 막기위해 음악 듣기 외에는 멀티태스킹 금지
⑥ 원격지에서 iOS 로그인 금지
: 유닉스에 바탕을 두고 있으므로 일반 유닉스처럼 SSH 서버를 실행할 수 있고 로컬 또는 원격지에서 SSH 서버에 로그인할 수 있으며, 단순한 파일 전송 기능 이외에는 명령 입력이 가능한 응용 프로그램을 허용하지 않음
(3) iOS의 취약점
- 외부 해커가 접근할 수 있는 방법이 제한적임
- 보안상 문제점은 대부분 탈옥한 iOS 기기에서 발생함(탈옥한 iOS 기기로는 iOS의 시스템 파일에 접근할 수 있음)
- iOS를 탈옥할 때 반드시 적용해야 할 보안사항은 기본 패스워드를 변경하는 것
(4) 안드로이드의 보안 체계
- 리눅스 커널(2.6.25)을 기반으로 하는 모바일 운영체제
- 구글은 애플의 폐쇄적인 정책과 달리 공개적인 프로그램 개발을 추구함
1) 안드로이드의 3가지 보안 체계
① 응용 프로그램의 권한 관리
: 안드로이드에 설치된 모든 응용 프로그램은 일반 사용자 권한으로 실행하며 사용자의 데이터에 접근할 때 모든 사항을 명시하고 사용자 동의를 받고 설치 시 자신의 고유한 사용자 아이디를 할당 받아서 동작함
② 응용 프로그램의 서명
: 설치되는 응용 프로그램에 대해 개발자가 서명을 실시함
③ 샌드박스 활용
: 샌드박스 프로세스 내부에서 실행하며 특정 형태를 갖추어 권한을 요청하는 것을 허용함
(5) 안드로이드의 취약점
- 사용자가 보안 수준을 선택할 수 있어서 iOS보다 자유로움
- 앱 마켓도 다양하기 때문에 각종 바이러스와 악성 코드가 유포되며 그에 따른 백신도 보급함
- 자유로운 개발과 변경이 가능하지만 iOS에 비해 보안이 취약함
- iOS의 탈옥과 비슷한 개념으로 안드로이드에서는 루팅(안드로이드 운영체제 상에서 최상위 루트 권한을 얻어 해당 기기에 걸어둔 제약을 해제하는 것)을 할 수 있음
(6) iOS와 안드로이드의 보안 체계 비교
: 위에서 iOS와 안드로이드의 보안 체계를 표로 정리
구분 | iOS | 안드로이드 |
운영체제 | Darwin UNIX에서 파생하여 발전한 OS x의 모바일 버전 | 리눅스 커널(2.6.25)를 기반으로 만들어진 모바일 운영체제 |
보안 통제권 | 애플 | 개발자 또는 사용자 |
프로그램 실행 권한 | 관리자(root) | 일반 사용자 |
응용 프로그램의 서명 | 애플이 자신의 CA를 통해 각각의 응용 프로그램을 서명하여 배포 | 개발자가 서명 |
샌드박스 | 프로그램 간 데이터 통신을 엄격히 통제 | iOS에 비해 상대적으로 자유롭게 애플리케이션 실행이 가능 |
부팅 절차 | 암호화 로직으로 서명된 방식에 의해 안전한 부팅 절차 확보 | - |
소프트웨어 관리 | 단말 기기별 고유한 소프트웨어 설치 키 관리 | - |
[2] 모바일 기기 보안
▶ 모바일 기기만의 보안 문제점
(1) 이동성
: 모바일 기기는 이동성이 뛰어나기 때문에 공격에 사용될 때 문제의 소지가 큼. 워드라이빙(노트북과 수신율이 좋은 안테나를 연결하고 차로 이동하면서 보안에 취약한 무선 랜을 탐색하며 해킹하는 것)으로 더 넓은 영역이나 접근하기 어려운 곳의 무선 랜까지 공격 가능
(2) 블루투스
: 선을 사용하지 않고 작은 규격과 적은 전력으로 여러 주변 장치들과 연결하기 때문에 높은 수준의 암호화와 인증을 구현하기 어려움
(3) 블루프린팅
: 블루투스 공격 장치의 검색 활동을 의미함. 블루투스 장치의 종류를 식별하기 위해 서비스 발견 프로토콜(SDP)를 보내는데 공격자는 이 프로토콜을 이용하여 공격 가능한 장치를 검색하고 모델을 확인함
(4) 블루스나프
: 블루투스의 취약점을 이용하여 장비의 임의 파일에 접근하는 공격
(5) 블루버그
: 블루투스 장비 간의 취약점 연결 관리를 악용한 공격으로 공격자가 10~15m 정도의 거리에서 블루투스 기기에 전화 걸기, SMS 보내기 등을 실행할 수 있음
'📋3-2 > 📌정보보안' 카테고리의 다른 글
[정보 보안] 정보 보안 개론 3장 연습문제 (1) | 2021.10.20 |
---|---|
[정보 보안] 정보 보안 개론 2장 연습문제 (1) | 2021.10.16 |
[정보 보안] 정보 보안 개론 2장 07. 취약점 관리 (0) | 2021.10.16 |
[정보 보안] 정보 보안 개론 2장 06. 로그 관리 (0) | 2021.10.12 |
[정보 보안] 정보 보안 개론 2장 05. 권한 관리 (0) | 2021.10.11 |
댓글