본문 바로가기

Security20

DM-Verity 연산 dm-verity 보호는 kernel 내부에서 동작됩니다.부팅시스템이 커널을 시작하기전 루팅 소프트웨어가 시스템을 손상 시키면 해당 접근을 그대로 유지 시켜버립니다.이러한 위험을 줄이기 위해 각제조사들은 각Device에 특정key를 사용하여 커널 검증을 하게 됩니다.일단 해당 Device가 릴리즈가 되면 해당 key는 변경할수 없습니다. 일반적으로 제조사는 해당 key를 사용하여 시큐어부트(secure boot)메커니즘을 사용하여 부트이미지(boot image)들을 서명하고 이를 chain화 시킵니다. 이 서명된 이미지들을 부팅단계에 단계적으로 서명이 일치하는지를 검증 합니다. 이후 커널단계에서 부트로더와 커널 역시도 검증하게 됩니다. 이것을 커널의 무결성 체크라고 합니다. 또한 커널 검증이 완료되면 검.. 2019. 2. 21.
안드로이드 Device측면의 security Layer1 즉 Device 레벨에서의 Security 관련 기능에 대해 알아보자. 부트로더(Bootloader), 복구 이미지(Recovery Image) 마지막으로 검증된 부트(Verified Boot)기능에 대해 설명한다. Verified Boot는 임의의 악성 프로그램들로부터 system partition의 조작을 방어하는것이다.이에 대한 솔루션으로 App와 같은 user-data가 들어있는 user partition을 암호화하는 것이다.이 user partition을 암호화하는 방법에 대해 설명한다. OS 부팅과 설치 제어 installer control :임의의 해커들은 Device에 물리적인 영역에서 접근권한만 얻는다면, filesystem이나 Directory와 같은 상위레벨의접근은 물론이.. 2019. 2. 20.
Android에서 DM-Verity 동작되는 원리 이해 dm-verity 보호는 kernel 내부에서 동작됩니다. 부팅시스템이 커널을 시작하기전 루팅 S/W가 시스템을 손상 시키면 해당 접근이 그대로 유지시켜버립니다.이러한 위험을 줄이기 위해 각 제조사에서는 해당 Device에 특정key를 사용하여 커널 검증을 하게 됩니다.일단 해당 Device가 릴리즈가 되면 해당 key는 변경할수 없습니다. 일반적으로 제조사는 해당 key를 사용하여 secure boot 알고리즘을 사용하여 boot image들을 서명하고 chain화 시켜 이를 부팅단계에 검증을 합니다. 이후 kernel 단계에서 bootloader와 kernel image 역시도 검증하게 됩니다. 이것을 커널의 무결성 체크라고 합니다. 또한 커널 검증이 완료되면 검증된 커널은 block device를 .. 2019. 2. 18.
리눅스 시스템에서의 DM-Verity란? 안드로이드 4.4의 보안기능으로 들어간 Security 기능중 하나이다. 특히 안드로이드 4.4에는 SELinux가 강제 모드(Enforcing Mode)로 동작 가능하며 이 동작에의한 부팅도 검증이 되어 릴리즈 됩니다.Android의 Verified Boot 구현은 dm-verity Device - Mapper 무결성 검사 대상을 기반으로합니다. Device-mapper는 가상 블록 장치를 구현하기위한 일반적인 방법을 제공하는 Linux 커널 Framework입니다. 볼륨 관리 (LVM) 및 전체 디스크 암호화 (dm-crypt)를 구현하는 데 사용됩니다. Device - Mapper는 기본적으로 가상 블록 장치(Virtual block device)를 하나 이상의 물리적 블록 장치에 매핑하고 선택적으.. 2019. 2. 18.