パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

signed_execで実行時にプログラムの身元確認」記事へのコメント

  • リンク先の資料をざっと読みました。
    署名、と言う話だけど、コマンド自身のチェックサム結果を内部に埋め込むか、
    システム側に上記のコマンドのチェックサム結果のデータベースを持っていて、
    それを起動直前にチェックして、結果が合致すればコマンドが起動できる、って
    ものみたいですね。

    #コマンド単体だと、トロイの木馬が正直にチェックサムつけてたら
    #置き
    --
    ---- redbrick
    • reference implementationでは,署名DBはcd9660 fs上に,またはread-onlyなffs上でimmutableフラグをセットしたファイルに置くと書いてありますね.

      PPT資料でも

      Only as secure as the security of the signature database.
      と言ってますし,その辺はちゃんと分かってるみたいです.
      • まず最初に、このスレッドの最初からの間違いだけど、署名はチェックサムじゃなくてMD5ですね。

        で、ここからが本題。
        CDとかに署名DBを置くのであれば、セキュリティFixとかでバイナリが入れ替わる度に焼き直ししなきゃいけないんですよね?
        だったら最初からバイナリはCD上に置いて、CDからしかバイナリは実行できないようにした方が早いんじゃないかと・・・
        CDだと最初の一度目の実行には多少時間かかるかもしれませんが、それはDB参照する時も一緒だし、2度目からは(RAMさえ潤沢にあれば)ディスクキャッシュが効きます。
        何らかのバグでディスクキャッシ

        • >カーネル中にGPGの公開鍵を持っておいて、バイナリにはバイナリのMD5と、そのMD5へのGPG署名を持つというのはどうでしょう?

          .NET Frameworkの実行時検証がこれと似たような仕組みだったような気がします。あまりちゃんと勉強してないので違ってるかもしれませんが。
          自分の管理するシステム内をどこまで信頼するか、という問題と、アプレットなどのシステム外部のバイナリを信頼するかという問題とを同一視してはいけないのかもしれませんが、PKIの技術でシームレスに世界が広がるという観点からは、サーバよりはクライアントマシンに、もしくは動的なWebサービスとかに生きてくるんだろうか?という感じがします。
          親コメント

※ただしPHPを除く -- あるAdmin

処理中...