본문 바로가기

sticky bit, SUID,SGID [요약] read/write/excute 외의 특수목적 접근 모드에 대해 정리한다. 1. sticky bit(code=t, 절대적 방법=1000) 1) 의미 : 실행 후에도 메모리를 점유하도록 설정 2) 목적 : 여러 사용자가 방을 공유하여 사용할 때, 서로의 파일을 보호하시 위해 sticky bit를 설정해 놓는다. 남의 파일을 삭제하면 에러가 발생한다. 2. SUID(set _user_id) x 대신 s로 표기, 실행 권한이 없으면 S로 표기 프로그램이 실행되는 동안 파일의 소유자와 같은 권한으로 실행. 3. SGID(set _group_id) x 대신 s로 표기, 실행 권한이 없으면 S로 표기(-rwxrws--) 프로그램이 실행되는 동안 파일의 그룹과 같은 권한으로 실행. 더보기
Unix Security - Objects 접근제어의 객체는 파일, 포더, 메모리 장치, 그리고 입출력장치들을 포함한다. 이러한 접근제어(access control)의 목적은 모든 자원을 균일하게 처리하는 것이다. 자원들은 tree-structured file system에서 조직화된다. 6.4.1 The Inode 폴더안에 각 파일 기재는 inode라 불리는 데이터 구조로 가리킨다. 각 디렉토리는 그 그자신을 가리키는 '.'와 부모 디렉토리를 가리키는 '..'를 포함한다. 모든 파일은 보통 그 파일을 생성한 유저를 소유자로 가진다. 모든 파일은 한 그룹에 속한다. 새롭게 생성된 파일은 생성장의 그룹 또는 디렉토리 그룹에 속한다. inode의 필드들을 논의하기 전에 우리는 ls -s 명령어를 통해 얻는 리스트로 디렉토리를 조사하자 -rw-r--r.. 더보기
Automatic account locking 특정 사용자가 지정된 횟수 이상 로그인 시도에 실패하면 자동으로 해당 사용자의 계정을 잠그는 것을 말한다. 더보기
Password aging Password Aging란? - 각 패스워드마다 패스워드가 변경될 수 있는 최소의 시간과, 변경되어야 하는 최대의 시간을 지정한다. 동일한 패스워드를 오랜 시간동안 사용하는 것은 패스워드 유출의 위험을 증가시킨다. 또한, 이미 유출된 패스워드를 계속 사용함으로써 시스템의 보안에 중대한 약점으로 작용할 수 있다. 따라서, 패스워드를 지정된 시간(maximum lifetime)의 경과 후, 패스워드 변경을 사용자에게 요구하여, 동일한 패스워드를 장시간동안 사용하는 것을 막는다. 또한 패스워드가 한 번 결정된 후, 다음 변경이 가능할 때까지의 최소의 시간(minimum lifetime)을 지정함으로써, 다시 이전의 패스워드로 돌아가는 것을 막는다. /etc/default/passwd 파일을 통해서 모든 사용.. 더보기
Solaris system security Solaris system Security [1] 솔라리스8 시스템 보안 개요 가. 시스템 보안이 필요한 이유 과거에는 사무실에 전기가 나가도 업무를 못하는 경우는 없었다. 타자기가 있었으니... 처음 직장생활을 시작할 당시 (1985년)에는 적어도 그러하였다. 요즈음 정전이 되면, 모두들 당연한 듯 일손을 놓게된다. 업무전산화가 그 이유임은 누구나 잘 알 것이다. 회사의 모든 기밀 및 정책사항은 철제 캐비넷에서 하드디스크로 옮겨졌다. 그안에는 회사의 미래를 좌우할 수 있는 각종자료가 빼곡히 채워져있다. 시스템의 불법침입은 옛날로 치자면 회사금고가 열리는 형태이다. 더욱 심각한 일은, 회사의 금고가 털린줄도 모른채 무사태평할 수 있다는 것이다. 인터넷의 등장과 함께, 이제 금고안의 서류는 순식간에 태평양.. 더보기
Unix Security - Subjects 각각의 프로세스는 프로세스 ID를 가진다(PID). 새로운 프로세스들은 exec 또는 fork에 의해 생성된다. 각 프로세스는 real UID/GID 와 effective UID/GID와 관련있다. real UID는 부모 프로세스로부터 물려받는다. 전형적으로 그것은 로그인한 유저의 UID이다. 실행 파일이 수행되면서 프로세스가 만들어질 때, 프로세스를 생성시킨 사용자의 UID를 real UID라 하고, 생성된 프로세스가 가지는 UID를 effective UID라 한다. 일반적으로는 real UID와 effective UID는 같다. 그리고 프로세스는 effective UID의 권한으로 수행된다 6.3.1 Login and Passwords 유닉스에서 유저는 usernames로 신원확인하고 password.. 더보기
Unix Security - PRINCIPALS 본인은 소위 UIDs와 GIDs라 불리운다. UIDs와 GIDs는 16비트 자리이다. 어떤 UID 값들은 시스템들 사이에 차이는 있겠지만 특별한 의미를 가지고 있다. 그러나 superuser(root) UID는 항상 0이다. 6.2.1 User Accounts 본인에 대한 정보는 user accounts와 home directories에 저장된다. User accounts 는 /etc/passwd안에 저장된다. 이 파일안에 기입은 user name:password:UID:GID:ID string:home directory:login shell 의 형태를 지닌다. user name은 최대 8글자의 길이를 가진다. 로그인할 때 유저임을 확인하지만 접근제어를 위해 사용되지는 않는다. 유닉스는 동일한 UID를 .. 더보기
Unix Security - Instruction 운영체제는 신원확인, 인증, 접근제어, 일관된 보안제어를 하기 위한 감사 같은 기본원칙들의 조합이다. 일단 우리는 유동성과 다양한 보안정책들, 점점 복잡해지는 보안 메커니즘들을 지원하기 위해 결정한다. 그러한 환경속에서, TCB는 너무 크기때문에 작은 보안 커널에는 적합하지 않다. 층 모델에서 우리는 지금 운영체제 레벨에서 제공되는 보안 제어들을 본다. 운영체제의 보안에 접근하고자 할 때, 다음 질문들이 너의 분석에 도움을 줄 것이다. 1.어느 보안 특징들이 향상되어 왔는가? 2.이러한 보안 특징들이 어떻게 관리어야 하는가? 3.보안 특징들이 효과적일 거라는 어떤 확신이 있는가? 대부분의 상업 운영체제들은 보안 제어가 정규화되어 있고, 일반적인 패턴이 있다. 유저들의 정보는 user accounts에 저.. 더보기
6. Passwords are entered by users and checked by computers. Thus, there has to be some communications channel between user and computer. So far we have taken a very abstract view of this channel and assumed that it exists and that it is adequately secu.. Passwords are entered by users and checked by computers. Thus, there has to be some communications channel between user and computer. So far we have taken a very abstract view of this channel and assumed that it exists and that it is adequately secure. When is this assumption justified? When is it unjustified? 패스워드는 유저에 의해 입력되고 컴퓨터에 의해 검사받는다. 따라서 유저와 컴퓨터 사이에 어떤 communication 채널이 있게 된다. 이 채널의 가장 .. 더보기
what are the differences between groups and roles,if there are any differences at all? 먼저 group과 role에 사이에 있는 차이점을 밝히기 전에 두 가지 단어의 의미를 파악할 필요가 있다. 일단 group은 Intermediate controls를 위한 방법 중에 하나로 users와 objects의 중간에 위치해 있다. 한 user는 자신이 속한 group을 통해서만 objects에 접근할 수 있고, group은 제한된 objects를 users에게 제공을 한다. 다음 role은 Intermediate layer가 privileges로 이루어져 있다. 이 말은 즉, user는 권한이 있는 objects에만 접근할 수 있다는 의미이다. 위의 설명을 보면 알 수 있듯이, gruop과 role의 차이점은 Intermediate layer의 구성요소가 서로 다르다는 것이고, 그렇기 때문에 u.. 더보기