土曜日, 6月 05, 2010

RSAキーマネージャSQL injectionセキュリティ問題(CVE-2010-1904)

RSA Key Managerとは安全なデータの保管とアプリケーションの運用を実施するために暗号化戦略を採用する動きが活発となり、実装例も増えています。この事実は、コンプライアンス遵守と個人情報の保護に対して暗号化戦略が有効であることを示しています。 また、クレジットカード業界のPCIデータ・セキュリティ基準など、業界独自でセキュリティ基準の強化が進められているのも一因です。

本件のセキュリティ問題について下記のソフトに影響があります↓
CVE: CVE-2010-1904
製品名:RSA Key Manager
メーカ:Vendor: EMC/RSA
ソフトのComponent: Key Manager Client
本セキュリティ問題に影響されたバーション:1.5.x
Vulnerability Type: SQL injection
メーカに報告日付: 4/20/2010
現在ステータス: メーカはパッチをリリースする予定がありません(Vendor does not want to fix the vulnerability)

問題の説明↓
RSA Key ManagerのクライアントソフトはSQLiteデータベースを使い暗号化キーのキャッシュデータを管理してます。RSA Key Managerのクライアントソフトのバグがあり、RSAキーマネージャに添付されたmetadataを正しく確認が出来ない可能性があります。このバグを使われたらハッカーがSQLコマンドをRSAマネージャで管理されている暗号化キーデータにSQL Injection攻撃が出来ます。つまりキャッシュで登録された暗号化キーの変更のSQL Injectionコマンドで実行する事が出来ます。
キーマネージャはメモリーキャッシュとファイルキャッシュ機能が持っていますが、本件のバグは両方にも影響があります。詳細説明はこちらへ

再現仕方↓
SQL Injectionで新しい暗号化キーを作るのコマンドはこちら↓
"; INSERT INTO KeyTable
VALUES('1111','MyClass','MyKeyData','ABC',1000,2000);--


下記のSQL Injectionコマンドを実行するとキーマネージャにある暗号化キー情報の変更が出来ます。
Injecting something like the sql code below can be used to replace
the encryption keys used by Key Manager.
"; UPDATE KeyTable SET keyData ='NewKeyData' WHERE classID='MyClass';--

解決方法↓
パッチ待ち状態。
ワークアラウンドはキャッシュ使わない方法で行くしかありません

リファレンスURL↓
http://japan.rsa.com/node.aspx?id=3013
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-1904
http://seclists.org/fulldisclosure/2010/Jun/87
http://www.gossamer-threads.com/lists/fulldisc/full-disclosure/74184

---
株式会社ケイエルジェイテック
http://www.kljtech.com
セキュリティモニターセンター

0 件のコメント:

コメントを投稿