アカウント名:
パスワード:
・ソースを読解・ひたすら逐次実験的に・特別そうな数字に当たりを付けて
自作のUID検索(ランダムID生成、ユニークID生成等)関数の戻り値をエラー処理せずにsudoにぶち込んでたら、何故かroot権限で実行されるケースが起きて、原因調査してみたら、その自作関数がエラーで-1返していたのが発覚した。とか。
sudo開発陣がテストを充実させて境界値もチェックしたとか、ユーザが覚えやすいuidを考えてるうちに負数が使えることに気づくも-1の挙動が変だったとか、ファジング等のテストツールのテストがてらにsudoをテストしたとか、ソフトウェアテストの実習で仮のプロダクトとしてOSSを使った際にsudoで境界値チェックしたとか、発見に至るシナリオは沢山ありそう。
沢山あるにも関わらず今まで発覚しなかったのが怖いところだね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
最初のバージョンは常に打ち捨てられる。
4294967295 (スコア:0)
まあ、rootをID0として-1および設定最大値のIDに特殊な権限を与えるって発想は頷けるが、そんなに沢山のユーザがいることを想定しているのかな。不思議な数字だ。
どうやって見つけたんだ (スコア:0)
・ソースを読解
・ひたすら逐次実験的に
・特別そうな数字に当たりを付けて
Re: (スコア:0)
自作のUID検索(ランダムID生成、ユニークID生成等)関数の戻り値をエラー処理せずにsudoにぶち込んでたら、
何故かroot権限で実行されるケースが起きて、原因調査してみたら、その自作関数がエラーで-1返していたのが発覚した。とか。
Re:どうやって見つけたんだ (スコア:0)
sudo開発陣がテストを充実させて境界値もチェックしたとか、
ユーザが覚えやすいuidを考えてるうちに負数が使えることに気づくも-1の挙動が変だったとか、
ファジング等のテストツールのテストがてらにsudoをテストしたとか、
ソフトウェアテストの実習で仮のプロダクトとしてOSSを使った際にsudoで境界値チェックしたとか、
発見に至るシナリオは沢山ありそう。
沢山あるにも関わらず今まで発覚しなかったのが怖いところだね。