アカウント名:
パスワード:
LD_PRELOAD 環境変数を用いてすべてのプロセスの実行時に読み込ませる仕組みだ。
ライブラリやらモジュールやらって、各アプリの起動時に、必要なもの読ませれば良いじゃん。なんでこんなリソースの無駄遣い+脆弱性の呼び水にしかならんような仕様があるのか理解できん。
auditとかptraceとか他にもやりようはあるけどもデバッグやテストで関数呼び出しをフックしたい時に、テストコードを埋め込まず手軽に実現できる。
LD_PRELOADで全てのプロセスにライブラリをフック出来てるってことは、/etc/ld.so.preload辺りを書き換えられてるんだろうし、そこまで出来てるならrootも奪取済みでしょ。
BPFの下りもだけど、脆弱性というよりroot取られてたらどうしようもねーって話題では?と思った。
問題は「知られない」という一点です。
権限取られるのは0デイ脆弱性や内部犯で事実上防げません。痕跡を消されるのは最悪なんです。対策が遅れるから。カーネルはROMにして再起動時に署名確認が必要かな。やっぱり
カーネル弄られてないから、署名検証でこれは検出できないぞ。
別人だが、ロードされるdllに署名が必要ということだと思うぞ。そもそもこの機能をフォルト無効にした方がいいと思うけどな。# そうしたらしたでsetenforce 0みたいなことになるんだろうが
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人は巨人ファンでA型で眼鏡をかけている -- あるハッカー
なんでこんな仕様があるのか (スコア:1)
LD_PRELOAD 環境変数を用いてすべてのプロセスの実行時に読み込ませる仕組みだ。
ライブラリやらモジュールやらって、各アプリの起動時に、必要なもの読ませれば良いじゃん。
なんでこんなリソースの無駄遣い+脆弱性の呼び水にしかならんような仕様があるのか理解できん。
Re:なんでこんな仕様があるのか (スコア:0)
auditとかptraceとか他にもやりようはあるけども
デバッグやテストで関数呼び出しをフックしたい時に、テストコードを埋め込まず手軽に実現できる。
LD_PRELOADで全てのプロセスにライブラリをフック出来てるってことは、
/etc/ld.so.preload辺りを書き換えられてるんだろうし、そこまで出来てるならrootも奪取済みでしょ。
BPFの下りもだけど、脆弱性というよりroot取られてたらどうしようもねーって話題では?と思った。
Re:なんでこんな仕様があるのか (スコア:1)
問題は「知られない」という一点です。
権限取られるのは0デイ脆弱性や内部犯で事実上防げません。
痕跡を消されるのは最悪なんです。対策が遅れるから。
カーネルはROMにして再起動時に署名確認が必要かな。やっぱり
Re: (スコア:0)
カーネル弄られてないから、署名検証でこれは検出できないぞ。
Re: (スコア:0)
別人だが、ロードされるdllに署名が必要ということだと思うぞ。
そもそもこの機能をフォルト無効にした方がいいと思うけどな。
# そうしたらしたでsetenforce 0みたいなことになるんだろうが