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でなければなりません。です)。それでは、なぜ-4000度の結果を提供しますか?

ベストアンサー1

もう使われていないようです。次のヒントがあなたの質問を解決するのに役立ちます。-perm +modeman find

-permモデル

    ファイルの権限ビットは正確にモデル(8進数または符号付き)。正確な一致が必要なため、この形式をシンボルパターンで使用するには、かなり複雑なパターン文字列を指定する必要があります。たとえば、パターン-perm g=w0020のファイルのみが一致します(つまり、グループ書き込み権限を持つファイルは唯一の権限セットです)。たとえば、/グループ書き込み権限を持つすべてのファイルに一致する「」または「」形式を使用したいと思うかもしれません。より-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

おすすめ記事