1580, 1/79 회원가입  로그인  
   yl
   http://yl11.webice.co.kr
   ↓보충. 올바른 검색 조건으로, find명령어를 사용하자.

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=24 [복사]


질문과 답변에 글을 쓰다가 갑자기 이쪽에다가 쓰게 되었습니다.

find명령을 씀에 있어서 찾는 파일의 조건을 알맞게 주어야 쉽게 찾을 수 있겠죠.

--
#find명령어를 쓸 때 조건을 어떻게 넣어 줄까?

파일을 찾는 명령어의 사용은

find / -옵션 ㅁ -옵션 ㅁ 2> /dev/null

대충 요런 구조입니다.

옵션에는 user, name, size, perm, group 같은 것들이 올 수 있구요.

설명을 위해 setuid를 이용한 가장 기본적인 문제인 해쿨 level1을 예로 들겠습니다.

level1에서는 level2의 setuid를 가진 파일이 필요하므로.

즉, level1을 level2로 되게끔 해줄 수 있는 파일이 필요하므로 먼저 파일소유자인

user에 값을 level2로 합니다. -> -user level2

그리고 setuid가 걸려 있으므로, 퍼미션을 setuid를 찾을 수 있도록 해야하기 때문에

perm에 값을 -4000으로 합니다. -> -perm -4000

어!? 왜 4000앞에 -가 붙냐구요?

4000은 'setuid'를 말하며 앞에 붙는 -는 '적어도..' 라는 것을 의미합니다.

즉 setuid가 붙은것을 찾겠다는 말이죠.

수학에서 확률문제 풀 떄 보면,

"이름에 'ㄱ'자가 적어도 한개 이상 들어가는 사람이 xx할 확률을 구하라"

요런 문제가 나오듯이, setuid가 걸려있기만 하면 다른 권한이 어떻게 되든지간에

검색 조건에 맞다고 하여 찾아지는 겁니다. -가 안붙으면 찾기가 곤란하겠죠.

그래서 만들어진 내용이 find / -user level2 -perm -4000 입니다.

뒤에 2> /dev/null 은?

'2'는 에러를 말하며 '> /dev/null'은 '>' 앞쪽의 것을 /dev/null 즉 미지의 세계로 보내버린다는 뜻입니다.

뒤에 2> /dev/null을 붙여주면 검색 조건에 맞지 않는, 퍼미션 에러가 나는 것들은 절대로 나오지 않고

조건에 딱 들어맞는 결과만을 표시해 줍니다.

찾은 내용을 텍스트 문서에 넣고 일일이 찾아주는 것보다 효율적이니 꼭 알아두세요.

이렇게 해서..........

level2의 setuid를 가진 파일을 찾는 find명령어가 완성이 됩니다.

완성품 : "find / -user level2 -perm -4000 2> /dev/null"


#정리

find는 파일을 찾을 때 쓰는 명령어이며

find / [조건] 을 써 줘서 조건에 꼭 맞는 파일을 찾을 수 있습니다.

조건으로는 user, group, perm, name, size 등이 있으며

알맞은 조건을 넣어줘야만 파일을 찾기 수월해 집니다.

따라서 찾으려는 파일이 어떤지를 잘 알고 있어야합니다.

조건에 맞는 결과만을 출력되게 하고 싶으면 2> /dev/null 을 뒤에 붙입니다.

#응용을 향해

여러분이 컴퓨터를 하면서 꼭 레벨2의 setuid가 걸린 파일만을 찾지는 않을겁니다.

찾을 파일이 있을 때마다, 그 파일이 어떤 조건을 만족할지를 곰곰히 생각해 본 다음

find명령에 조건을 주어 검색하시면, 원하는 파일을 쉽게 찾으실 수 있을겁니다.

  Hit : 13483     Date : 2003/09/09 06:26



    
yl find명령어에 대한 설명은 아래 "소유"님의 글을 읽어보세요 ^^ 2003/09/09  
himykim 답변 보충해주셔서 감사합니다. 2003/09/09  
asdf 참고) 0 = 표준입력, 1 = 표준출력, 2 = 에러 2003/09/10
crakerhunter 명령어 2004/02/25  
minjuni level3 2004/03/30  
woohong7 level2 소유의 파일이 검샛 안되는데요 2004/06/23  
labdream find 2004/12/07  
eotjdtm 좋은정보 감사 2006/02/22  
trueness 역시 찾아보니 좀 낫네요.. 완전 맨땅에 해딩인데.. 고맙습니다..ㅋ 2006/03/08  
담임목사 level2 넘어가기 2006/04/05  
bboy6604 역시 예전 글부터 보니까 도움되는 것이 많네요. 출처 밝히고 블로그에 퍼가도록 하겠습니다^^ 2010/05/22  
yooadocjon 와 다양하네요 2011/07/16  
row66 감사 합니다 2012/07/07  
     [공지] 강좌를 올리실 때는 말머리를 달아주세요^ㅡ^ [29] 멍멍 02/27 18277
1579   리눅스 커널 2.6 버전 이후의 LKM     jdo
07/25 209
1578   쉘코드 모음     해킹잘하고싶다
01/15 952
1577   Call by value VS Call by Reference     해킹잘하고싶다
01/15 436
1576   (꼼수) L.O.B 한방에 클리어하기[1]     해킹잘하고싶다
01/14 631
1575   towelroot.c (zip) 코멘팅.[1]     scube
08/18 3156
1574   levitator.c (안드로이드 루팅) 공격 분석 소스 코드 공유.[4]     scube
08/17 3165
1573   무료 정보보안 기술인재 양성 과정 교육생 모집     chanjung111
06/17 3918
1572   K-Shield 주니어 5기 모집     lrtk
06/17 3639
1571   [팁] 파이썬 2소스를 3으로 변경해주는 사이트[3]     한승재
05/13 3401
1570   구글 백링크 작업 질문요     wkatnxka
03/30 2933
1569   [팁] 우분투 미러링서버     한승재
03/09 3533
1568 비밀글입니다  감을못잡겠네요ㅜㅜ     잉잉잉
01/15 3
1567   데비안 계열 리눅스 의존성 깨졌을때 해결법     한승재
11/27 3945
1566   홍보합니다. 신생 보안커뮤니티입니다.     kimwoojin0952
10/26 3816
1565   신기한 프로그래밍 언어[3]     koreal33t
09/06 4166
1564   윈도우,리눅스에서 내 ip를 확인해 보자 [1]     koreal33t
09/06 3405
1563   CTF 사이트[1]     koreal33t
09/06 3981
1562   자격증 (문제)사이트 [2]     koreal33t
09/06 3849
1561   [퍼온글]리눅스 기본 명령어     한승재
06/06 4517
1 [2][3][4][5][6][7][8][9][10]..[79]

Copyright 1999-2023 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org & Wowhacker.com