Major Study./System hacking

시스템 보안 06.네크웍서비스 데몬 설정 변경 문제

sosal 2010. 11. 22. 06:49
반응형

/*
 http://sosal.tistory.com/
 * made by so_Sal
 */

csh를 사용하는 솔라리스 시스템 로그인을 한 상태에서 파일을 새로 생성할때마다
파일모드가 -rw-r-r-- (644)로 된다. 하지만 이 파일모드는 다른 유저가 파일
내용을 열람할 수 있는 취약점이 있기 때문에 좋지 않아서 일일이 생성된 파일에 대해서
chmod명령어를 통하여 -rw------- (600)으로 바꿔줘야만 했다.
이 작업은 번거롭기 때문에 쉘환경변수를 적절히 변경하여 새로 파일을
생성할때마다 default 파일모드가 -rw------- (600)이 되도록 설정하시오.
단, 이문제에서는 현재 접속되어 있는 쉘에 대해서만 일회성으로 바로잡으면 되며,
쉘환경변수 값을 영구적으로 바로잡기 위해 resource파일을 변경할 필요는없다.



파일을 만들 때 마다 chmod 명령어를 통해 권한을 변경할 필요 없는 상태를
만들어야 하는,.. 그런 문제네요. 이때 umask를 사용합니다.


umask?

디렉토리는 777 권한에서 umask를 뺀 값이 디렉토리의 권한이 되며
일반 파일에 대해서는 666 권한에서 umask를 뺀 값이 파일의 권한이 됩니다.

디렉토리 파일을 만드는데, umask가 002라면, (--- --- -w-)
drwx rwx r-x 권한의 디렉토리가 생성됩니다. (777에서, 002 권한을 뺀 값) = (775)

일반 파일을 만드는데, umask가 022라면 (--- -w- -w-)
-rw- r-- r-- 권한의 파일이 생성됩니다. (666 에서,  022 권한을 뺀 값) = (644)




따라서, umask 007 명령어를 이용해 문제를 쉽게 풀 수 있습니다.

이것 뿐만아니라, 어떤 계정에 대해 쉘 환경변수값 (umask)를
쉘 재접속 후에도 계속 유지하고 싶다면,
 자신의 홈풀더에 .bashrc 파일에 umask 077 을 넣어주면 됩니다.



.bashrc에 umask 222를 넣음으로써,
sosal이란 계정의 쉘에 재접속 하더라도
지속적으로 umask를 222로 유지할 수 있게 되었습니다.

수고하셨습니다.