setuid 파일을 찾으려면 find -perm을 사용하십시오.

setuid 파일을 찾으려면 find -perm을 사용하십시오.

모든 suid 바이너리 목록을 찾고 싶습니다. 나는 명령을 사용한다

find / -perm 4000

그러나 이것은 나에게 어떤 결과도 제공하지 않습니다. 내가 이해한 바로는 SUID 파일이 4xxx 권한 모드에 있을 수 있습니다. 하지만 내가 명령을 내리면

find / -perm -4000 (which all websites tell)

또는 명령

find / -perm +4000 

둘 다 나에게 같은 결과를 준다. 내가 이해한 바로는 항상 +4000이어야 합니다(사용자 suid 바이너리인 경우 첫 번째 바이트는 4여야 하고, 그룹 suid 바이너리인 경우 고정 비트가 디렉터리에 있으면 첫 번째 바이트는 2여야 하고 첫 번째 바이트는 1이어야 하기 때문입니다). 그렇다면 왜 -4000도 결과를 제공합니까?

답변1

더 이상 사용되지 않는 것 같습니다. 다음 도움말이 귀하의 질문을 해결하는 데 도움이 될 수 있습니다.-perm +modeman find

-perm모델

    파일의 권한 비트는 정확히모델(8진수 또는 부호 있음). 정확한 일치가 필요하기 때문에 이 형식을 기호 패턴과 함께 사용하려면 상당히 복잡한 패턴 문자열을 지정해야 할 수도 있습니다. 예를 들어 -perm g=w패턴이 0020인 파일만 일치합니다(즉, 그룹 쓰기 권한이 있는 파일이 유일한 권한 집합입니다). 예를 들어, /그룹 쓰기 권한이 있는 모든 파일과 일치하는 ' ' 또는 ' ' 형식을 사용하고 싶을 가능성이 높습니다 . 보다-perm -g=w섹션의 몇 가지 예시입니다.

-perm-모델

    모든 권한 비트모델파일에 대해 설정되었습니다. 이 형식에서는 상징적 패턴이 허용되며 일반적으로 이러한 방식으로 사용됩니다. 기호 모드를 사용하는 경우 " u", " g" 또는 " "를 지정해야 합니다. o보다섹션의 몇 가지 예시입니다.

-perm/모델

    모든 권한 비트모델파일에 대해 설정되었습니다. 이 형식은 기호 패턴을 허용합니다. 기호 모드를 사용하는 경우 " u", " g" 또는 " "를 지정해야 합니다. o보다섹션의 몇 가지 예시입니다. 권한 비트가 없는 경우모델설정되면 이 테스트는 모든 파일과 일치합니다(여기서의 개념은 의 동작과 일치한다는 것입니다 -perm -000).

-perm+모드

    다음 권한 비트가 있는 파일을 검색하기 위한 오래되고 더 이상 사용되지 않는 방법모델놓다. 을 사용해야 합니다. 기호 모드에서 ' ' 구문을 사용해 보세요.-perm /mode+놀라운 결과가 나올 것이다. 예를 들어 ' +u+x'는 유효한 기호 패턴(+u,+x, 즉 0111과 동일)이므로 평가되지 않고 정확한 패턴 지정자로 평가되므로 파일이 아닌 정확한 권한 0111을 가진 파일과 일치합니다. 실행 비트가 설정된 경우. -perm +mode-perm mode이 문단이 혼란스럽다고 생각되신다면 여러분만 그런 것이 아닙니다. 그냥 를 사용하세요.-perm /modePOSIX 사양에서는 선행 ' '이 기호 패턴의 일부로 -perm해석되어야 하므로 이 형식의 테스트는 더 이상 사용되지 않으므로 대신 ' '을 사용합니다.+/

인용하다:

  • 찾기(GNU findutils) 4.4.2

관련 정보