강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

리눅스 파일검색 강좌 find 3편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

리눅스 파일검색 강좌 find 3

 

 

-------------------                    ------------------------

 

1  : 리눅스의 파일검색 유틸리티 find 실무 개론

2  : 특정 UID 소유의 모든 파일찾기

3  : 특정 사용자의 ID 소유로된 모든 파일 찾기

4  : 특정 사용자의 홈디렉토리 내에서 특정 파일 찾기

5  : 시스템내의  특정파일들을 검색하여 자동삭제하는 방법

6  : 지정한 소유자의 모든 파일을 찾아서 확인하기

7  : 서버내부의 불필요한 파일들 모두 정리(삭제)하기

8  : 특정용량 이상되는 파일들 모두 찾기(용량단위로 파일검색)

9  : 특정 퍼미션을 가지고 있는 파일들 모두 찾기

10  : 지정된 일자 이후에 변경된 모든 파일 찾기(서버 보안점검시 사용)

11  : 지정된 파일보다 이후에 생성된 파일 찾기(서버 보안점검시 사용)

12  : 특정디렉토리내에 존재하는 모든 디렉토리 목록만 확인하기

13  : 서버내에 존재하는 모든 링크파일 검사하기(서버 보안점검시 사용)

14  : root소유의 SetUID파일 찾기 (서버 보안점검시 사용)

15  : 서버내의 백도어파일 찾기(서버 보안점검시 사용)

16  : 서버내부의 .rhosts 파일 찾아서 확인하기(서버 보안점검시 사용)

17  : 서버내부에서 .bash_history 파일을 모두 찾아서 확인하기(서버보안점검시 사용)

18  : 소유자가 없는 파일 또는 소유그룹이 없는 무적파일 찾기(서버 보안점검시 사용)

19  : 쓰기 권한이 있는 파일 디렉토리 찾기(서버 보안점검시 사용)

20  : 특정문자를 포함하는 파일찾기와 문자가 속한 찾기

 

 

 

 

ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><?xml:namespace prefix = st2 ns = "urn:schemas:contacts" />박성수

 

ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/

 

 

 

 

 

 

 

 

 

 

 

 

 

14 : root소유의 SetUID파일 찾기 (서버 보안점검시 사용)

 

SetUID파일중 root소유의 SetUID파일은 매우 제한적인 용도로만 사용합니다. (SetUID에 대해서는 이 책의 chmod명령어편을 참조하시기 바랍니다.)  root소유의 SetUID파일은 실행시에 root권한으로 실행이 되므로 반드시 관리되어야 할 파일들입니다.  

 

아래는 현재 필자가 사용하고 있는 리눅스서버 내에서 root소유의 SetUID파일을 점검한 것입니다.

 

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />image001.gif

 

이렇게 점검된 root소유의 SetUID파일들은 모두 하나하나씩 그 용도와 목적을 확인한 이후에 불필요한 것들은 삭제해야 합니다.

 

또한 아래와 같은 방법으로도 root소유의 SetUID파일을 찾을 수 있습니다.

 

image002.png

 

위의 예는 퍼미션에 SetUID가 있거나 SetGID가 있는 파일들을 모두 찾아서 보여주는 예입니다. 앞의 방법이 root소유의 SetUID만을 찾는다면 이번 예는 SetUID 또는 SetGID파일을  모두 찾는 예입니다. 

 

 

 

15 : 서버내의 백도어파일 찾기(서버 보안점검시 사용)

 

서버내에 백도어가 생성되는 위치는 거의 대부분 /dev입니다. /dev는 장치파일(device file)들이 존재하므로 일반적인 파일들이 존재하지는 않습니다. 따라서 /dev 내에서 일반파일을 검색하여 만약 존재한다면 거의 대부분 백도어로 사용되고 있는 파일이라고 볼 수 있습니다.

 

따라서 다음과 같이 find/dev내에 존재하는 파일들 중 일반적인 보통파일(-type f)을 찾아서 확인한 예입니다.

 

image004.gif

 

위의 예에서 /dev/MAKEDEV 파일은 장치파일을 만드는 용도로 사용되는 정상적인 파일입니다.

만약 위의결과 이외에 다른 결과가 추가적으로 나온다면 반드시 백도어로 사용되고 있는 파일이라고 볼 수 있습니다. 

 

 

 

16 :  서버내부의 .rhosts 파일 찾아서 확인하기(서버 보안점검시 사용)

 

.rhosts파일은 외부에서 아무런 제한없이 로그인할 수 있는 접근허용이 설정된 파일입니다. 이 파일이 존재한다면 반드시 확인해 보아야 합니다.

 

아래의 예는 시스템전체(/)를 대상으로 .rhosts파일이 존재하는가를 찾아서(find) 보여달라(ls -l {})는 의미입니다.  아래 결과에서는 현재 시스템에는 .rhosts파일이 검색되지 않았으므로 존재하지 않는다는 것을 알 수 있습니다.

 

image005.gif

 

따라서 위의 예와 같이 .rhosts파일을 모두 찾아서 만약 존재한다면 그 용도와 사용목적을 반드시 확인하시기 바랍니다.

 

 

 

17 : 서버내부에서 .bash_history 파일을 모두 찾아서 확인하기(서버보안점검시 사용)

 

.bash_history파일은 root를 포함하여 각 사용자들의 홈디렉토리에 존재하는 파일로서 각 사용자들이 사용했던 명령어가 저장되어있는 매우 중요한 파일입니다. 만약 이 파일들 중 파일용량이 0인 파일이 있다면 해킹가능성을 의심해 보아야합니다.

 

특히 root소유의 .bash_history파일의 용량이 0라면 이는 매우 심각한 경우로서 거의 99%이상은 해킹되었다고 보셔도 무방합니다.

 

image006.gif

 

위의 예는 시스템전체(/)를 대상으로 .bash_history파일을 찾아서(find) 보여달라(-exec ls -l {})는 의미입니다.  그 결과 모두 5개의 .bash_history파일이 검색되었음을 볼 수 있습니다.  이렇게 검색된 .bash_history파일을 가능한 모두 확인하셔서 정상적으로 사용되고 있는가를 확인해 보셔야합니다.

 

 

 

 

18 : 소유자가 없는 파일 또는 소유그룹이 없는 무적파일 찾기(서버 보안점검시 사용)

 

무적파일, 즉 소유자 또는 소유그룹이 존재하지않는 파일을 찾는 것 또한 서버보안과 관리에 매우 중요합니다.

 

지금까지의 예와 좀 다른 것은 논리연산개념이 들어간다는 것입니다. 즉 아래의 예에서 사용한 -o또는이라는 논리연산자인 “OR”를 의미합니다. (OR의 의미는 잘 아시죠.)  , -nouser가 의미하는 소유자가 없는 파일이거나, -nogroup이 의미하는 소유그룹이 존재하지않는 두가지 경우중 하나에 해당할 경우의 파일을 찾아줍니다.

 

이 의미 또한 정확하게 이해하셔야합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  94 명