LUKS 비밀번호가 LUKS 헤더로 전송되어 복호화될 때, LUKS 헤더를 수정한 해커가 비밀번호를 탈취할 수 있을까요? 내 부팅 파티션이 정상이라고 가정합니다.
답변1
LUKS 헤더에는 실행 코드가 포함되어 있지 않으며 LUKS 파티션 마스터 키의 암호화된 복사본이 하나 이상 포함되어 있습니다. 구성된 각 비밀번호/키 파일/기타 액세스 방법은 암호화된 디스크에 액세스하는 데 필요한 마스터 키의 복사본을 해독합니다. LUKS 비밀번호는 "암호 해독을 위해 LUKS 헤더로 전송"되지 않습니다. 대신 cryptsetup luksOpen
다음 명령을 실행합니다.읽다LUKS 헤더를 복사한 다음 비밀번호를 사용하여 메모리에서 해독합니다.
해커가 LUKS 헤더 수정에 성공했다면 이는 해커(또는 해킹 도구)가 이미 LUKS 비밀번호를 알고 있다는 의미에 가깝습니다. LUKS 헤더를 손상시키지 않고 성공적으로 수정해야 하기 때문입니다.
가능한 시나리오 중 하나는 해커가 cryptsetup
루트 파티션의 initramfs 파일에 일반 명령을 대체하기 위해 수정된 명령을 추가한 것입니다. 수정된 명령은 cryptsetup
일반 명령과 마찬가지로 LUKS 비밀번호를 요청하지만 디스크 잠금을 해제하는 것 외에도 LUKS 비밀번호는 다음과 같습니다. 다시 시작되었습니다. - 공격자가 알고 있는 다른 비밀번호를 사용하여 LUKS 파티션의 마스터 키를 암호화하고 이를 LUKS 헤더의 여유 슬롯 중 하나에 저장합니다. 또는 암호화된 LUKS 파티션 외부의 숨겨진 위치에 암호화되지 않은 마스터 키를 저장할 수 있습니다. 수정된 파일은 cryptsetup
부팅 파티션의 수정된 initramfs 파일을 원본 파일로 대체하여 정확히 무슨 일이 일어났는지 감지하기 어렵게 만들 수 있습니다.
cryptsetup luksDump
사람이 읽을 수 있는 형식으로 LUKS 헤더의 내용을 보는 데 사용할 수 있습니다. 예상보다 더 많은 키 슬롯이 사용되고 있는 경우, cryptsetup luksKillSlot
해당 슬롯과 연관된 비밀번호를 몰라도 승인되지 않은 키 슬롯 비활성화를 사용할 수 있습니다. 이 명령을 주의해서 사용하십시오. 이 명령을 잘못 사용하면 암호화된 디스크가 잠길 수 있습니다.