アカウント名:
パスワード:
もう速度重視でないプログラムにCやCPP20辞めたらどうですか、根本的な解決にはならないとしても自分の足を撃っている事に、10年も気づかないのは致命的すぎますよ、呆れ・・・
// Rustが全てでは無いが、同様にCが全てとは限らない
良くも悪くもCはその出自からUNIX(POSIX) APIと親和性が高いからシステムプログラミングはやりやすいんだよね。バイナリサイズも小さいし。この辺書き直すなら Go か…?インタプリタで良ければ perl あたりも C 的だけど、perl に限らずスクリプト系はバージョン差異に悩まされるんだろうなぁ。
基幹のコマンドなら最新版を使う必要はなくて、perlなら5.005でいい。システムレベルで漢字/Unicodeを使う必要もなく、5.6移行は不要、かつ罠にはまってセキュリティ的にむしろ危ない。
で、セキュリティ脆弱性を踏むと
まずはsystemd-sudo が登場するのを待ってください。
systemdもCじゃなかったら起こらない感じの特権昇格バグが発見されたときに「Cである必要ないところは、rustかなんかで作れよ」と言われたけど「うっせボケ」で済ましていたので、systemd-sudoも絶対Cで書かれるよ。
俺もそう思うけど、書き直す人がいないので。
そう思うなら自分で代替品を作ればよいのでは?OpenSSLのHeartbleedのときもLibreSSLができたし。
まあ、代替品としてはdoasがすでにあるんですけどねC言語だったと思うけど
何で組もうが脆弱性はできるからしょうがない
バッファオーバーフローは、現代的な言語では仕組み的に作り込むのが困難でしょ。
そのせいでレガシィなコードを単純に移植しようとすると「これはセキュリティ的に許されない」とエラーになって、再設計が必要になったりする。再設計後に互換性が維持できてるかどうかのチェックも大変。
そんな大プロジェクトを軽々しく言われても困る。
まあ自分で作れない人ほど軽々しく言いがちなものだから...
いつまで言われても実際そうなっていかないんだから、嘆くのは外野ばかりで当事者はそう思わないんだろう
ランタイムが付いてくる言語だとランタイムの運用が必要になるってのと、ランタイムの容量がどっかに必要ってのが思いつく。
前者は脆弱性対応や非互換対応で他者起因でコードを修正しないといけなくなるし、後者はWindows版GoでHello World書くとexeファイルが2MBくらいになる。
ランタイムのバグを突かれるのは普通にありうるよね
sudo とかのレベルになると性能が要らないとは限りませんよ。プログラム中でループで毎秒何十回も呼ばれる処理で使われてたりする可能性あるし。
毎秒何十回って、性能が要らないって言っているようなものじゃないですか。
言語が悪いんではなく使い方(規約)が悪い。C/CPPで書け、の強制も規約の一つですけどね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
身近な人の偉大さは半減する -- あるアレゲ人
ヒープベースのバッファーオーバーフロー (スコア:1, すばらしい洞察)
もう速度重視でないプログラムにCやCPP20辞めたらどうですか、根本的な解決にはならないとしても
自分の足を撃っている事に、10年も気づかないのは致命的すぎますよ、呆れ・・・
// Rustが全てでは無いが、同様にCが全てとは限らない
Re:ヒープベースのバッファーオーバーフロー (スコア:1, 参考になる)
良くも悪くもCはその出自からUNIX(POSIX) APIと親和性が高いから
システムプログラミングはやりやすいんだよね。
バイナリサイズも小さいし。この辺書き直すなら Go か…?
インタプリタで良ければ perl あたりも C 的だけど、perl に限らずスクリプト系はバージョン差異に悩まされるんだろうなぁ。
[Q][W][E][R][T][Y]
Re: (スコア:0)
基幹のコマンドなら最新版を使う必要はなくて、perlなら5.005でいい。システムレベルで漢字/Unicodeを使う必要もなく、5.6移行は不要、かつ罠にはまってセキュリティ的にむしろ危ない。
Re: (スコア:0)
で、セキュリティ脆弱性を踏むと
Re: (スコア:0)
まずはsystemd-sudo が登場するのを待ってください。
Re: (スコア:0)
systemdもCじゃなかったら起こらない感じの特権昇格バグが発見されたときに
「Cである必要ないところは、rustかなんかで作れよ」と言われたけど
「うっせボケ」で済ましていたので、systemd-sudoも絶対Cで書かれるよ。
Re: (スコア:0)
俺もそう思うけど、書き直す人がいないので。
Re: (スコア:0)
そう思うなら自分で代替品を作ればよいのでは?
OpenSSLのHeartbleedのときもLibreSSLができたし。
Re: (スコア:0)
まあ、代替品としてはdoasがすでにあるんですけどね
C言語だったと思うけど
Re: (スコア:0)
何で組もうが脆弱性はできるからしょうがない
Re: (スコア:0)
バッファオーバーフローは、現代的な言語では仕組み的に作り込むのが困難でしょ。
Re: (スコア:0)
そのせいでレガシィなコードを単純に移植しようとすると「これはセキュリティ的に許されない」とエラーになって、再設計が必要になったりする。
再設計後に互換性が維持できてるかどうかのチェックも大変。
Re: (スコア:0)
そんな大プロジェクトを軽々しく言われても困る。
Re: (スコア:0)
まあ自分で作れない人ほど軽々しく言いがちなものだから...
Re: (スコア:0)
いつまで言われても実際そうなっていかないんだから、
嘆くのは外野ばかりで当事者はそう思わないんだろう
Re: (スコア:0)
ランタイムが付いてくる言語だとランタイムの運用が必要になるってのと、
ランタイムの容量がどっかに必要ってのが思いつく。
前者は脆弱性対応や非互換対応で他者起因でコードを修正しないといけなくなるし、
後者はWindows版GoでHello World書くとexeファイルが2MBくらいになる。
Re: (スコア:0)
ランタイムのバグを突かれるのは普通にありうるよね
Re: (スコア:0)
sudo とかのレベルになると性能が要らないとは限りませんよ。プログラム中でループで毎秒何十回も呼ばれる処理で使われてたりする可能性あるし。
Re: (スコア:0)
毎秒何十回って、性能が要らないって言っているようなものじゃないですか。
Re: (スコア:0)
言語が悪いんではなく使い方(規約)が悪い。
C/CPPで書け、の強制も規約の一つですけどね。