시스템구성 표류 - 데이터 변조

게시자: 김주철, 2011. 8. 2. 오전 1:51   [ 2011. 8. 21. 오후 8:18에 업데이트됨 ]

낙인된 격차 - 비인가 호스트에 의한 데이터 변조의 위험

낙인된 격차 - 비인가 호스트에 의한 데이터 변조의 위험

영향평가

사례 1 - 비인가 호스트가 접근 금지된 디스크를 독점적으로 점유해서 대기 호스트는 해당 볼륨을 마운트하지 못하고 파일시스템을 사용할 수 없는 경우이다. 문제를 확인하고 해소하는 데에 많은 시간이 소요되고, 이미 비인가 호스트가 접근 금지된 디스크를 사용한 경우에 복구는 불가능하게 된다.

사례 2 - 대기 호스트와 비인가 호스트가 해당 디스크를 동시에 접근하는 경우이다. 만일 비인가 호스트가 접근 금지된 디스크를 사용하려고 시도하는 순간 데이터는 오염되고, 바로 활성 호스트와 대기호스트 모두 즉시 가동중단이 일어난다.

기술적인 측면

사례 1은 상호간에 독점적인 접근 권한으로 디스크를 구성한 경우에 발생한다. 디스크를 제일 먼저 접근한 호스트가 독점권을 갖고, 다른 호스트는 접근할 수 없다. 사례 2는 복수 접근(Multi-Homed) 또는 잠금이 풀린(Non-Lock) 경우에 발생한다. 현재 출시된 대부분의 파일시스템은 외부로부터 변조할 수 없도록 개발되었다. 이런 기조는 DAS(Direct Attached Storage) 만이 유일하게 사용되던 시기에 형성되어 지금까지 바뀌지 않고 있다. 클러스터 파일시스템 또한 같은 위협에 취약하다. 즉 클러스터 파일시스템은 동일한 디스크로 복수의 호스트접근을 허용하지만. 허용된 호스트는 클러스터의 일부이어야 하고 예측이 가능한 범위 내에서 행동해야 한다는 전제가 있다. 일부 운영시스템은 외부로부터 자신의 데이터 구조를 변조하려는 시도에 격렬하게 반응해서 스스로 붕괴하기도 한다.

발생원인

이 격차는 RecoverGuard로 검색한 고객들 중에 거의 80% 가량에서 발견될 정도로 매우 일반적이다. 그 이유는 수십 가지가 있을 수 있지만, 한가지 확실한 것은 평소에는 잠잠히 있다가 실제 재해가 발생했을 때 본색을 드러낸다는 것이다. 

몇 가지 사례를 살펴보면 다음과 같다:

외장디스크로 장착되는 일부 어레이는 기본적으로 가용한 모든 포트에 모든 디스크를 매핑한다. 어레이 매핑을 다시 정의하거나 SAN(Storage Area Network) 포트나 HBA(Host Bus Adapter) 마스크을 사용하거나 또는 이 모든 방법을 사용해서 디스크로 접근을 제한하거나 분류하는 일은 오로지 사용자의 몫이다. 이것은 오류를 범하기 아주 쉽다. 게다가, 일단 마스킹이 성공적으로 구성되었다고 해도, 나중에 다른 SAN 포트로 이동하거나 HBA를 교체하거나 하는 일련의 유지보수 행위로 인해 오류가 발생하기도 한다.

접근 금지된 디스크로의 접근은 과거에 해당 스토리지로의 접근 권한을 부여 받았으나 매핑 제거를 소홀히 함으로써 나중에 해당 스토리지로 접근이 가능한  비인가 호스트에 의해 발생하기도 한다. 

디스크로 접근 성능이나 복원력을 올리기 위해 시시때때로 예외적인 매핑이 추가된다. 조닝과 마스킹이 총괄적으로 통제되고 관리되지 않으면, 경로 중에 하나는 실제로 삼천포(Astray)로 갈 것이다.

호스트의 HBA는 꼭 장애로 인해 교체하는 것은 아니다. 오히려 더 큰 성능에 대한 필요로 이루어지는 경우가 많다. 만일 소프트 조닝을 사용하고 있는 호스트에서 교체한 HBA에 적절하게 업데이트를 하지 않고, 구형 HBA를 다른 호스트에서 재사용한다면, 이전 호스트에서 부여받은 SAN 디스크에 대한 접근 권한을 그대로 갖게 된다.

위에 열거한 사례 외에도 이 격차가 발생할 수 있는 많은 가능성이 존재한다.


Comments