보안SUID SGID STID suid나 sgid는 루트가 아닌 사용자들이 잠깐 루트의 사용권한을 써서 프로그램을 샐행해야할 필요가 있을때 주는 권한 설정이다..... (1). SUID는 절대표기값은 4000이다 일반사용자가 소유자 권한으로 실행할수 있도록 하는 것 보안상 문제가 있기 때문에 조심해서 사용하여야 한다. (2). SGID는 절대표기값은 2000 일반사용자가 소유그룹의 권한을 실행할수 있도록 하는 것 파일 적용이 되면 다른 그룹이 소유그룹의 권한으로 파일을 실행하는것과 같다. (3). STICKY BIT는 모든 사용자가 쓸 수 있는 디렉토리를 적용하여 디렉토리내에 있는 파일을 임의대 로 삭제할수 없고, 오직 소유자에게만 삭제,변경 권한이 있다. 리눅스에서는 /tmp디렉토리가 대표적 인 stick bit로 설정이 되어있다. 먼저 sticky bit부터알아본다....이파일을 알아보기위해선 다음과 같이 입력해보라. 먼저 예제로 통해 퍼미션에 대해알아보자. 4자리 퍼미션계산법을 알아보자. (- : 파일 , d : 디렉토리) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
퍼미션이 ex) s/rwx/rwx/rwx 이것은 잘못된 예이다...퍼미션은 각실행파일에 붙는다. 그럼 이제 4자리 퍼미션으로 변경하여 보자. ex)#root /admin 방안에 파일을 만들어서 chmod를 적용하여보자......... 참고로 추가를 할려면 다음과 같이 하면된다. chmod u+s 파일이름 -> suid를 적용한다는 뜻이다. (u -> user)
요번명령을 실행하는 것은 보안상 불가피한 파일은 위의퍼미션을 해제하는 것이 좋다. #find / -perm -04000 > setuid.txt 각각 다른창으로 실행을 하면 각각에 대한 정보가 txt로 입력이 된다. setuid.txt 에서 기본적으로 위퍼미션을 적용해야 될파일은 다음과 같다. 파일들을 찾아서 .txt안에 라인들을 일단 삭제한다. 다음은 삭제한 파일을 제외한 나머지 파일을 한꺼번에 퍼미션해제 한다. setgid.txt의 경우는 다음과 같다. /usr/bin/procmail 파일들을 찾아서 .txt안에 라인들을 일단 삭제한다. (그런데 파일이 있을수도 없을수도 있다) #cat setgid.txt |xargs chmod g-s 라적용하면 된다. stick key역시 위와 동일하다. 다음은 제대로 적용이 되었는지 한번 확인을 해본다. #find / -perm -02000 라 입력하고 다시찾아본다.
다른곳에서 원격접속시 telnet 자기자신의 계정안에서 자신의 파일을 지우기 위해선 !rm 파일명dmf 사용한다.(!란 자기자신의 파일이란 뜻이다.) 다른계정에서 파일받기 우선파일을 받을 디렉토리에서 ftp로 접속을 한다. ls -al /etc/passwd * 가 붙지 않은 것은 바로 telnet접속이 가능하다 즉암호없이 접속이 가능하다는 것이다. #pwunconv /etc/shadow라치면 암호화된 shadow파일들이 /etc/passwd파일안에 암호화된파일이 |
2007년 3월 13일 화요일
퍼미션에 대하여 보안SUID SGID STID
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기