パスワードを忘れた? アカウント作成

ミネソタ大研究者、研究のためとしてLinuxカーネルに意図的に脆弱性コードをコミット」記事へのコメント

  • by hinatan (24342) on 2021年04月26日 11時58分 (#4020648)

    *迷惑かけたとか道義的な話は一旦おいといて、*

    オープンソースに悪意のあるコードを差し込めるかどうかって興味深いし、
    そこにスポットを当てると意義のある実験。
    Linuxだからこそ対象にふさわしい。
    大手であり、重要なシステムに使われている。

    ここに返信
    • 意義なんて無いですよ。技術的にも・倫理的にも褒めるところがありません。

      技術的な点でいうと、この実験はたとえば以下のようなC言語で書かれたカーネルのソースに対して
      ----
      free(p);
      ----

      たとえばこんな2行に変更したり
      ----
      if (p)
          free(p);
      ----
      こんな3行に変更するだけの
      ----
      if (p)
       return;
      free(p);
      ----
      パッチを大量に投稿しただけなのです。

      悪意のあるコードを差し込むとかそう言うレベルには達しておらず、ただのイタズラ、ただの迷惑行為でしかありません。
      こんなパッチでは実験はおろか、「興味深い」とか「意義がある」議論も難しいと思います。

      次に倫理面ですが、被験者の同意を取らずに被験者実験をおこなった、という1点だけで
      研究倫理違反、研究業界から追放されてもおかしくないレベルの大失態です

      たとえば「ヘルシンキ宣言」という宣言があります。
      https://ja.wikipedia.org/wiki/%E3%83%98%E3%83%AB%E3%82%B7%E3%83%B3%E3%... [wikipedia.org]
      端的にいえば「被験者となる人間のこと・気持ちを尊重しましょうね」って話です。

      ヘルシンキ宣言は研究に携わる人なら知らない人は居ない話で(知らないという人が居たらその人はモグリの研究者)
      ヘルシンキ宣言を知らなくても
      普通なら「こんなことをしたらカーネルコミュニティの人は不快に思うはず」と予想できるはずです。
      カーネルコミュニティの人からみたら、こんなの時間の無駄でしかないからです。

      「Linuxだからこそ対象にふさわしい。」こんな馬鹿なことは言わないでください。
      Linuxはソースコードじゃありません。開発陣、つまり心を持った人間のコミュニティなのです。

      • by Anonymous Coward

        ただのイタズラ、ただの迷惑行為レベルの内容でもコミットされちゃうのか…

        • by Anonymous Coward

          そりゃコミットはされるよ。誰からでも受け付けてるもん。
          レビューで弾くからマージはされない(はず)だけど。

      • つまり心を持った人間のコミュニティなのです。

        だからやったんだと思うね。pakki001@umn.edu says:

        I will not be sending any more patches due to the attitude that is not only
        unwelcome but also intimidating to newbies and non experts.

      • by Anonymous Coward

        細かいですけど、
        if (p)
         return;
        free(p);
        が本当ならメモリリークしているので悪意ありますね
        if (!p)
         return;
        free(p);
        なら、(後続処理がなければ)害はないですが

      • by Anonymous Coward

        そういうcommitって、ある程度自動で判別できそうな気がするけど全部目で見てるのかな。

      • by Anonymous Coward

        いやいや、手段(技術的・倫理的)に問題があったからといって、目的の正当性まで否定されないでしょ。
        親コメの意図を全然汲めてないし、例えも間違ってる。

        > free(p);

        > if (p)
        > free(p);

        に変更するのは一般的にメモリの二重開放の脆弱性対策としてのセキュアコーディングに適っている。
        ただ、実際には変更しなくとも別のルーチンで二重開放を防いでいる場合があり、その変更が本当に必要なものかどうかはコードの文脈を読まなければならない。
        静的解析ツールが機械的に出力した結果は(しばしばGoogle翻訳があてにならないように)そうした文脈を読まないことが多く、

        • by Anonymous Coward
          >> if (p)
          >> free(p);
          >
          >に変更するのは一般的にメモリの二重開放の脆弱性対策としてのセキュアコーディングに適っている。

          適ってねえよボケ。
          if(p)で二重解放しようとしてるかのチェックなんてできないしfree(NULL)は無処理って決まってるからただの無駄コードだよ。

          5000兆歩譲って二重開放と強弁するならこうだろうが
          > free(p);
          > p = NULL;
          • by Anonymous Coward
            >5000兆歩譲って二重開放と強弁するならこうだろうが
            二重開放「対策」のtypo
        • by Anonymous Coward

          >> if (p)
          >> free(p);
          >
          >に変更するのは一般的にメモリの二重開放の脆弱性対策としてのセキュアコーディングに適っている。

          freeしても引数がNULLになるわけではないし、仮にNULLになったとしてもfree関数は引数がNULLの時は何もしないので意味のない変更ですよ。

        • by Anonymous Coward

          > いやいや、手段(技術的・倫理的)に問題があったからといって、目的の正当性まで否定されないでしょ。
          という仮定(例え)の後に、目的の正当性とやらをほったらかして長々と手段に関して書くセンスが根本的にわからん
          親コメの意図を全然汲めてないし例えとしても間違ってる

      • by Anonymous Coward

        Linuxカーネルですらそんなレベルの変更を(コードフォーマッターではなく)人間がレビューしなければならない体制しか組めないのに「あたたかみがある日本企業の手作業」とか馬鹿にされるのなんか納得行かないな。それでコミュニティが疲弊するとしたら結局無能の証なのでは?

    • by Anonymous Coward on 2021年04月26日 12時21分 (#4020662)

      だからと言って、許可なく本番環境でペネトレーションテストしてはいかんよ。

      そもそもセキュリティホールがあったら困る、という部分自体が、道義とか倫理・法律から来るソフトウェアへの要求なので、思考実験ならともかく現実の行為に対して、道義抜きに語るのがナンセンスでは。

      • by Anonymous Coward
        最初からLinuxなんて毎日許可なく本番環境でペネトレーションテストされてるようなもんだからなぁ
        世界中の善人のふりした悪人とか善人のふりした無能者からクソみたいなパッチが次々送られてくるのを選別してるわけで
        悪人のふりした悪人が1つパッチを送ってくるくらい対応できずにどうするよという話。
        だからリーナスもそんなには怒ってないんだろ。彼が怒らなきゃならないバカがそれこそ無数にいるから。
        • by Anonymous Coward

          その理屈ならこの研究者とこの実験を許した大学が有象無象のバカあるいは悪人と同様に怒られたってだけでは……。そこで言い逃れしようとするから余計怒られるんじゃん。

        • by Anonymous Coward

          対応できてるんじゃない? 倫理委員会を騙してコミッターで実験するようなバカは出禁って事で

          • by Anonymous Coward

            社会的に破滅させるというのがそういうイタズラ減らす対策としては有効だよね

            組織的な破壊工作は減らせないけど、カジュアルな破壊行為を減らせるだけでも通常メンテナンスや組織的な破壊行為に意識を向けやすくなる

    • by Anonymous Coward

      検出されて該当のコードはソースツリーに取り込まれていませんよ。
      信用できないから過去のコミットも取り消したという話。

      • by Anonymous Coward

        大学がいままでにコミットした全てを?

        • そう、ミネソタ大がコミットした分を全部… (すごい手間)
          • by Anonymous Coward

            その後変更入っておらず機械的にリバートできるものだけで190箇所で、他にもう別の変更がマージされちゃってるやつをGKHが自分の時間を費やして手作業すると言ってる。
            その他にも、公表された論文から他に変更があるはずで、@umn ではなく捨てアドとして生成された @gmail から投稿されているようで、全部吐けと言っている模様。

ソースを見ろ -- ある4桁UID

処理中...