お知らせ

  • パソコン関連

プロセッサ起因の脆弱性MeltdownとSpectre

noimage

プロセッサ起因の脆弱性MeltdownとSpectre

2017年末にパソコン、スマホ、IoT機器などのプロセッサ起因の脆弱性MeltdownとSprctreが公表されました。 これについてOS各社などが対策用のアップデートを行なっています。 先月から現在にかけての最新版アップデートを行なっていない人はすぐに適用するようにしてください。 これはOSやアプリケーションなどのソフトウェアが原因の脆弱性ではなく、コンピュータの計算機能を集約するプロセッサの脆弱性となり、影響範囲はかなりの大きさとなります。 個人用のパソコン、スマホなどにとどまらず、Webサーバーやその他組み込み型のものなどでも同じリスクを追うことになります。 ひとまず目の前のもののアップデートを先んじて行えば、個人としての対応は終わりです。 近年のプロセッサは予測実行や投機的実行という機能を備えており、これはプログラムの命令群を順番どおりでなく後の命令でも早く実行できるものから実行していくことにより処理速度の向上を図る設計になっています。 この機能の欠陥により、一つのプログラムが他のプログラムのデータを任意に取得することができるようになるというもので、例を挙げるとブラウザで動作するJavascriptが他のアプリやOSのパスワードを読み出すことができるようになるということがこの脆弱性の概略です。 これはIntelの代表的なプロセッサCoreシリーズやスマートフォンタブレットのARM系のプロセッサも同じ設計になっているため、今回発見された脆弱性は広範囲に及びます。 この問題を解決するためにはソフトウェア側で投機実行や予測実行の機能を部分的にオミットしていく必要があります。 そのため脆弱性修正後にパフォーマンスに大小の影響がでるということになります。 個人向けのパソコンよりも大規模なWEBサーバーなどでのパフォーマンス低下がかなり大きな影響を及ぼすことになりそうです。 根本的な修正のためにはプロセッサの入れ替えが必要になり、それをパフォーマンスを低く抑えながらソフト側で対応する状況となっています。

  • パソコン関連

ソフトウェアの脆弱性とは

noimage

ソフトウェアの脆弱性とは

OpenSSLの脆弱性が大きく取り上げられている中、WindowsXPも公式に脆弱性への技術サポートが終了する事になりました。 この脆弱性とは、いったいどうして発見されるのでしょうか。 なぜ脆弱性が発見されるとよくないのでしょうか。 ソフトウェアの脆弱性とは ソフトウェアの脆弱性とは、簡単に説明すると、ソフトウェアの欠陥です。 現在話題になっているOpenSSLを例にとります。 OpenSSLはサーバーとクライアントの間、Webサーバーと、Webブラウザの間の暗号化を行うものです。 この暗号化は、双方に保存された鍵ファイルがなければ、お互いのデータを暗号化以前に戻す事ができない事が基本の機能です。 インターネットの通信は、突然片方から切断する事、回線が遅くなってしまうこと、などを十分含めて設計を行わなければなりません。 OpenSSLはその機能を拡張していく中で、Heartbeat(心拍)というサーバーとクライアント間の接続を長く保持する機能を持ちました。 Heartbeatというデータを送信している限り、ネットワークは途切れていないので、接続を保持してくださいという指示を出します。 このHeartbeatという機能に欠陥があり、そのHeartbeatのデータを不正な形に加工する事で、OpenSSLが予期しない動作を起こす事が発見され、それが今回のHeartBleed(心臓出血)と名付けられた脆弱性になります。 このHeartbeatは定められた規格によれば、データの大きさというものを保持するようになっています。 そのデータそのものと、データの大きさを違ったものにすると、OpenSSLはサーバーのメモリに格納された余分なデータを返却してしまうという、欠陥です。 このような仕様以外のデータに対して、誤ったデータとして処理すべきものですが、その部分が大きく抜けてプログラムが作成されていた、ということが今回の問題を引き起こしています。 脆弱性が見つかるとどうなるか OpenSSLはオープンソースソフトウェアという、プログラムのコードがすべて公開されたソフトウェアで、組み込む事は無料です。 OpenSSLはWebサーバーをはじめとして、インターネットを介した暗号化通信のスタンダードとして利用されてきました。 しかし、本来あってはならない欠陥が発見され、修正は行われましたが、その適用をサーバーに対して行うのは、サーバーの管理者になります。 ですので、未だに脆弱性を放置されたサーバーは数多くあるという事です。 これらに対して、脆弱性が公開されると、同じ状態を再現する事は簡単な事になります。脆弱性を見つけるのは難しくとも、公開されてしまえば、再現は簡単なのがソフトウェアの世界です。 このOpenSSLのようなソフトウェアは、非常に膨大なコードから成り立っています。すべてのコードに欠陥があるかどうかを、一から洗い出しきる事はかなり難しい事です。 機能が増えれば増えるほど、あり得るケース、あり得ないケースのすべてを確かめる事が必要ですが、その部分に漏れがあったという事です。 OpenSSLほど広く使われているものは、すべてが最新版に置き換わるまでは非常に長い時間がかかり、その間ユーザーのデータは危険にさらされ続ける事になります。 脆弱性に対しどう向き合うのか コンピュータの世界は、このように複雑なプログラムの集合体で、それはスマートフォン、タブレットであっても全く同じです。 WindowsXPのように10年以上現役で使われていたシステムでも、すべての欠陥を洗い出す事ができないため、今後新たな欠陥が見つかる可能性はほぼ100%です。 それがユーザーにとって深刻なものか、あるいは公開されずに秘密裏に利用されるものかは、わかりません。 ただ放置されれば、悪用される危険性は一秒ごとに増していくものです。 システムがアップデートにアップデートを重ねているのは、現在のソフトウェアがより複雑になっていく中で、さけられない事です。 WindowsXPの更新が停止してしまったという事は、今後脆弱性は放置されるという事、そしてWindowsのプログラムのコードは公開されていないので、実質Microsoft社でしか修正できない、という二点が重要なポイントです。

  • シスキュー技術部

UPnP脆弱性

noimage

UPnP脆弱性

UPnP(ユニバーサルプラグアンドプレイ)機能をルーターなどに実装するにあたり、libupnpというライブラリを利用している場合、外部から攻撃を受けてしまう脆弱性が話題となっています。 US-CERT(米国の情報セキュリティ機関)がUPnP対応ルータが、該当するライブラリを利用している場合はUPnP機能を無効にするように勧告を出しています。 UPnPはかなりありふれた技術で、ネットワークに接続した機器を自動的に判別し、ネットワークの外部や内部での相互の接続を自動的に行えるような仕組みです。 Liveメッセンジャーや、Skypeなどで外部との接続を容易にするために、UPnPを利用するオプションがあります。 弊社ではヤマハのルーターを利用していますので、この脆弱性の影響を受けるのか、サポートに確認しました。 ヤマハでは当社で使用しているルータを含め、UPnPの実装にlibupnpの利用は行っていない旨の回答をいただきました。 ユーザーの不安に対し、迅速な対応を頂いたヤマハ株式会社様には感謝します。 国内のセキュリテイ機関、JPCERT/CCからも下記のリリースが出ております。 http://jvn.jp/cert/JVNVU90348117/