回答編集履歴

1

ちょっと表現を変えました。

2017/06/25 11:39

投稿

raccy
raccy

スコア21735

test CHANGED
@@ -6,4 +6,4 @@
6
6
 
7
7
 
8
8
 
9
- CGIはWeb技術の初期からある仕組みです。標準入出力と環境変数のみでHTTPサーバーとやりとりするという方法で、極めて単純であり、それ自体が脆弱ではありません。むしろ、単純であるが故に、リクエストをそのまま渡していたと言うこと、リクエストから生成された情報が**信頼できない**と言う事実に対しての考慮が不十分であったと言うことです。ただ、これはCGI以外でも言えることであり、どのような方式であれ、リクエストから生成された情報であるかどうかの意識を持ってWebアプリを作る必要があります。ただ、スクリプトのコードではどうしようもない所、つまり、スクリプトのコードを動かすPHP本体やシェル自体で、その信頼できない情報を信頼できない情報として正しく処理できなかったというのが、PHP-CGIの脆弱性やShellShockだったと言うことです。
9
+ CGIはWeb技術の初期からある仕組みです。標準入出力と環境変数のみでHTTPサーバーとやりとりするという方法で、極めて単純であり、それ自体が脆弱ではありません。むしろ、単純であるが故に、リクエストをそのまま渡していたと言うこと、リクエストから生成された情報が**信頼できない**と言うことに対する考慮はCGIのプログラム側しなければならないと言うことです。ただ、これはCGI以外でも言えることであり、どのような方式であれ、リクエストから生成された情報であるかどうかの意識を持ってWebアプリを作る必要があります。ただ、スクリプトのコードではどうしようもない所、つまり、スクリプトのコードを動かすPHP本体やシェル自体で、その信頼できない情報を信頼できない情報として正しく処理できなかったというのが、PHP-CGIの脆弱性やShellShockだったと言うことです。