羽根邦夫Blog

”工学博士、電磁波対策製品WAVESAFE発明者のブログ”

PHP言語はウィルスに弱い

 ここ数日PHP言語を使ったサービスが攻撃を受けており、サービスの停止が話題になっています。このPHP言語とは何か、と言えば、スクリプト言語、インタープリーター型とも呼ばれる、と有ります。インタープリーター型と呼んだ方が特徴をよく表しており、プログラムの1行ずつを実行する昔のBASICと同じ言語系です。インタープリーター型言語はほぼどんな言語やコンピューターにも使用可能で、BASICは50年前のパソコン上で使われていました。現在は、マイクロソフトのエクセル上で、マクロ処理と呼ばれて表計算にも使われています。
 マクロ処理を使った方は分ると思いますが、マクロを使う場合はエクセルから、安全性が損なわれることを予め納得した上でお使いください、という警告を受けます。つまり、マクロプログラムはエクセルのおまけに付いてくるほど簡単だが、外部からの攻撃の窓口(入口)になり易いということです。

 このインタープリーター型ソフトの動作は、命令の1行毎にコンピュータのOS言語に合わせて書き直しを行い、実行するものです。これはコンパイルしておけば、一見はセキュリティの穴が隠れている様に見えますが、元のプログラムが分かれば欠陥ポイントは容易に探し出せます。つまりウィルスからの観点では、インタープリーター言語の中でよく使われる命令の実行形に、OSへの進入路をみつければコンパイルされていても、そこからOSへ侵入するわけです。例えば、よくある「GO TO」命令はOSとのやり取りが沢山有って、入り込みやすいのではないでしょうか。
 公的な用途のソフトに、インタープリーター型などという脆弱なソフトを使っていることにまず驚きます。使い易いからと言って、大事な情報を扱うPHPを使うのは許されません。

Copyright © 2015-2021 Hane, Inc. & Beacon Associates, Inc.