GAC 구현은 특히 파일 액세스가 초당 수백 번 시도되는 경우 매우 효과적이지만 다음과 같은 제한 사항을 가지고 있습니다.
GAC_root=1
토큰의 기본값은 0입니다. 기본값을 복원하려면 토큰을 0으로 설정하거나 토큰을 제거합니다.
사용자가 이러한 루프홀을 활용하는 방식에 대해 예를 들어 살펴 보겠습니다. 사용자 Tony는 Accounts/tmp 파일에 액세스할 권한이 없습니다. 따라서 Tony는 Accounts/tmp에 액세스할 권한이 있는 사용자 Sandra를 /bin/su를 통해 대리합니다. Sandra가 Accounts/tmp 파일에 이미 액세스한 경우 이 파일은 Sandra UID를 통해 do-not‑call‑me 테이블에 나타납니다. Tony는 Sandra의 UID를 사용하여 이 파일에 대한 액세스 권한을 부여받습니다. 이는 커널 코드가 UID의 기록을 유지 관리하지 않기 때문에 가능합니다.
그러나 Sandra가 이전에 이 파일에 액세스하지 않은 경우 seosd를 사용하여 일반적인 방식으로 액세스 권한을 검사하고 Tony는 파일에 대한 액세스가 거부됩니다. 이 루프홀을 종료하려면 ADMIN 사용자가 데이터베이스의 SURROGATE 개체를 보호해야 합니다. 예를 들어, ADMIN 사용자는 다음 규칙을 데이터베이스에 추가할 수 있습니다.
newres SURROGATE USER.Sandra default(N) owner(nobody)
이 명령은 Tony가 su 명령을 사용하여 Sandra의 액세스 권한을 가져올 수 없도록 합니다.
| Copyright © 2011 CA. All rights reserved. | 이 주제에 대해 CA Technologies에 전자 메일 보내기 |