OpenPNE3 プラグイン リリース情報
opTimelinePlugin 1.2.11 以下に存在する XSS脆弱性 の修正のお知らせ(OPSA-2023-001)
12 / 14 木曜日 2023
opTimelinePlugin 1.2.11 以下 には、ニックネームに含まれる任意のスクリプトが表示時に実行されてしまう XSS脆弱性が存在します。
この問題の対策版として opTimelinePlugin 1.2.11.1 のリリースを行いましたので、内容を確認のうえバージョンアップまたはパッチの適用をお願いいたします。
概要
opTimelinePlugin 1.2.11 以下 には、ニックネームに含まれる任意のスクリプトが表示時に実行されてしまう XSS脆弱性が存在します。
本問題について
影響を受けるシステム
想定される影響
1. 管理画面 > デザイン設定 > ガジェット設定 にて、ホーム画面に「SNSメンバーのタイムライン」ガジェットを設置する
2. プロフィール編集にてニックネームに任意のスクリプトを設定する
3. JSON API を利用してタイムライン投稿を行う
対策方法
本問題への対応方法
「影響をうけるシステム」で示した条件を満たすすべてのサイトは、以下の対応を実施してください。
opTimelinePlugin
プラグインのリリース情報を参考に更新をおこなってください。
-
- opTimelinePlugin 1.2.11.1
- [.zip 版ダウンロード] [修正パッチ]
謝辞
本脆弱性は、GMOサイバーセキュリティ byイエラエ株式会社 の 石井 健太郎 氏よりご報告を頂きました。
また本脆弱性は、IPA によって報告がなされ、 JPCERT/CC による調整をしていただきました。
報告者の方、および、本問題の解決にあたられた関係者各位に対して厚く御礼申し上げます。
関連情報
この問題については、2024/02/29(木)に、「JVN#78084105 OpenPNE 用プラグイン opTimelinePlugin におけるクロスサイトスクリプティングの脆弱性」として下記の URL で公開されました。
https://jvn.jp/jp/JVN78084105/
English: https://jvn.jp/en/jp/JVN78084105/
セキュリティ上の問題の報告手順について
OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 (security@openpne.jp) を用意しています。
セキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 security@openpne.jp に連絡してください。 security@openpne.jp はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。
- コメント: 0
- トラックバック: 0
opTimelinePlugin 1.2.11 alpha版 リリースのお知らせ
12 / 27 火曜日 2022
本日、opTimelinePlugin 1.2.11 (alpha) をリリースしました。
今回のリリースでは、Google Map 小窓が正常に表示されない場合がある問題の修正を行なっています。
このバージョンは、OpenPNE 3.8.46 以降もしくは OpenPNE 3.10.11 以降にてご利用ください。
- コメント: 0
- トラックバック: 0
opCommunityTopicPlugin 1.1.5(alpha) リリースしました
02 / 28 月曜日 2022
OpenPNE 開発チームの西添です。
本日、2022/02/28(月)、opCommunityTopicPlugin 1.1.5(alpha)をリリースしました。
今回のアップデートでは、スマートフォン版の改修を行いました。
opTimelinePlugin 1.2.8 alpha版 リリースのお知らせ
12 / 19 木曜日 2019
本日、opTimelinePlugin 1.2.8 (alpha) をリリースしました。
今回のリリースでは、小窓機能に関する修正などを行なっています。
opDiaryPlugin 1.5.2 (alpha) および opMessagePlugin 2.0.0.4 (alpha) リリースのお知らせ
05 / 23 水曜日 2018
opDiaryPlugin 1.5.2 (alpha) および opMessagePlugin 2.0.0.4 (alpha) をリリースしました。
今回の対応は、iOS 11.3 において、値が設定されていない <input type=”file”> を ajax で送信できない問題を回避するためのコードを追加しました。
ダウンロードおよびインストール
ダウンロードおよびインストール方法については、下記リンク先を確認してください。
・opDiaryPlugin 1.5.2
・opMessagePlugin 2.0.0.4
opUploadFilePlugin 0.9.0 以下 に存在する XSS脆弱性 の修正のお知らせ(OPSA-2016-003)
12 / 15 木曜日 2016
opUploadFilePlugin 0.9.0 以下 には、HTMLファイルに含まれている任意のスクリプトがダウンロード時に実行されてしまう XSS脆弱性が存在します。
この問題の対策版として opUploadFilePlugin 0.9.1 のリリースを行いましたので、内容を確認のうえバージョンアップまたはパッチの適用をお願いいたします。
opUploadFilePlugin は、OpenPNE 3.8系 にて利用可能なプラグインであるため、OpenPNE 3.6 系ではこの問題は発生しません。
概要
opUploadFilePlugin 0.9.0 以下 には、HTMLファイルに含まれている任意のスクリプトがダウンロード時に実行されてしまう XSS脆弱性が存在します。
この問題は、Internet Explorer 8 にて実行可能であることが確認されています。
また、Internet Explorer 9 以降、Chrome 最新版、Firefox 最新版 では、この問題が発生しないことが確認されています。
本問題について
影響を受けるシステム
想定される影響
1. 任意のスクリプトを含む HTMLファイル を用意する
2. メンバーA (攻撃者) が opUploadFilePlugin のアップロード機能を使用して 1. の HTML ファイルをアップロードする
3. アップロードが完了するとファイルの共有用 URL が表示されるため、メンバーA (攻撃者) はその URL を他の SNS メンバーが開くように誘導する
4. メンバーB が Internet Explorer 8 を使用してその URL を開くと、ブラウザ標準のファイルダウンロードのダイアログが表示される
5. メンバーB がダイアログの「保存」ではなく「開く」をクリックすると、HTML ファイル内に含まれるスクリプトが実行される
対策方法
本問題への対応方法
「影響をうけるシステム」で示した条件を満たすすべてのサイトは、以下の対応を実施してください。
opUploadFilePlugin
プラグインのリリース情報を参考に更新をおこなってください。
-
- opUploadFilePlugin 0.9.1
- [.zip 版ダウンロード] [修正パッチ]
セキュリティ上の問題の報告手順について
OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 (security@openpne.jp) を用意しています。
セキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 security@openpne.jp に連絡してください。 security@openpne.jp はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。
[OPSA-2016-002] OpenPNEおよび一部ブラグインに存在する複数の脆弱性に対する修正
11 / 10 木曜日 2016
本日 (2016/11/10)、OpenPNE, opTimelinePlugin, opDiaryPlugin, opFavoritePlugin および opWebAPIPlugin に対して次の通りセキュリティリリースを行いました。内容を確認のうえバージョンアップまたはパッチの適用をお願いいたします。
- OpenPNE 3.8.21.1, OpenPNE 3.6.24.1
- opTimelinePlugin 1.2.6.1
- opDiaryPlugin 1.4.1.1, opDiaryPlugin 1.5.1.1
- opFavoritePlugin 1.0.1.1
- opWebAPIPlugin 0.5.1.2
これらのバージョンは、OpenPNE, opTimelinePlugin, opDiaryPlugin, opFavoritePlugin および opWebAPIPlugin に存在する下記の脆弱性に対する修正を含んでいます。
- SNSメンバー間におけるアクセス制限を回避する脆弱性
- ログイン可能なセッションCookieがOAuthを使用するサードパーティアプリに流出する脆弱性
- IPアドレスに基づくWeb APIへのアクセス制限を回避する脆弱性
- HTTPヘッダインジェクション脆弱性
各脆弱性の詳細については以下を参照して下さい。
1. SNSメンバー間におけるアクセス制限を回避する脆弱性
OpenPNE, opTimelinePlugin, opDiaryPlugin および opFavoritePlugin について、公開範囲設定やコミュニティ参加状態に基づくアクセス制限を回避する脆弱性が発見されました。
想定される影響
SNSに登録しているユーザーによって、下記のような操作を行われる可能性があります。
- JSON API を経由して、自身の参加していないコミュニティにアクティビティを投稿される可能性があります
- 「日記コメント記入履歴」機能を経由して、非公開に設定されている日記のタイトルを閲覧される可能性があります
- 「お気に入り」機能を経由して、アクセスブロック機能でアクセスが制限されているメンバーの日記およびブログのタイトルを閲覧される可能性があります
- アクセスブロック機能でアクセスが制限されているメンバーを「お気に入り」に追加される可能性があります
影響を受けるバージョン
- OpenPNE 3.8.21 以下
- opTimelinePlugin 1.2.6 以下
- opDiaryPlugin 1.4.1 以下 または opDiaryPlugin 1.5.1 以下
- opFavoritePlugin 1.0.1 以下
OpenPNE 3.6.x を使用している場合、上記のバージョンのうちopDiaryPlugin 1.4.1 以下 または opFavoritePlugin 1.0.1 以下 を使用している場合には当脆弱性の影響を受けます。
(opTimelinePlugin および opDiaryPlugin 1.5.x は OpenPNE 3.8.x でのみサポートされています)
対策方法
今回提供されるアップデートを適用して下さい。この脆弱性についてアップデートを行わずに回避する方法はありません。
2. ログイン可能なセッションCookie がOAuth を使用するサードパーティアプリに流出する脆弱性
(OpenPNE に標準で備わる OAuth 機能は https://redmine.openpne.jp/issues/2775 の不具合により使用できない状態となっています。当脆弱性は、独自にパッチを当てる等によりこの不具合を回避している SNS でのみ起こりうるものです。)
OpenPNE には OAuth 1.0a に基づいてサードパーティアプリの認可を行う機構が存在し、opWebAPIPlugin や opOpenSocialPlugin で使用されています。この機構を使用することで、サードパーティアプリが必要とするリソース (メンバーリストや日記など) および権限 (読み込みのみ, 読み書き両方) を SNS ユーザーに呈示し、その範囲内での操作を認可するアクセストークンをサードパーティアプリに発行することができます。
当脆弱性では、サードパーティアプリにアクセストークンを受け渡す際に、認可を行った SNS ユーザーとしてログイン可能なセッション Cookie が意図せず送信されていました。これにより、サードパーティアプリは受け取ったセッション Cookie の値を使用してセッションハイジャックを行うことが可能となり、ユーザーが認可する権限を越えた操作を行われる可能性があります。
想定される影響
第三者によって、流出したセッション Cookie の値を使用してユーザーになりすまされる可能性があります。
影響を受けるバージョン
- OpenPNE 3.6.24 以下 または OpenPNE 3.8.21 以下 (かつ、 https://redmine.openpne.jp/issues/2775 の不具合を独自に回避する修正をしたもの)
対策方法
この脆弱性は下記のいずれかの方法で対策が可能です。
アップデートを適用する (推奨)
今回提供されるアップデートによって修正が行われているため、アップデートを適用することで対策が可能です。
新規アプリケーションの登録を無効化し、既に登録されたアプリケーションを削除する
この手順によって脆弱性を回避する場合、既にSNSに登録されているサードパーティアプリは全て使用できない状態になります。
管理画面のSNS設定 (/pc_backend.php/sns/config?category=general) から「外部サービスとの接続設定の使用設定」を「使用しない」に設定することで、新規のサードパーティアプリの登録を禁止することができます。
さらに、既に登録されているアプリケーションは引き続きアクセストークンの発行が可能な状態となっているため、管理画面の「連携済みアプリケーション一覧」(/pc_backend.php/connection/list) から全てのアプリケーションを削除して下さい。
これらの手順によりアクセストークンの発行自体が行われなくなるため、当脆弱性は生じなくなります。
3. IPアドレスに基づくWeb APIへのアクセス制限を回避する脆弱性
管理画面の「API設定」(/pc_backend.php/opWebAPIPlugin) にて Auth type を IP address に設定している SNS で、許可された IP アドレスから Web API へのアクセスを行った際に意図せずセッション Cookie が発行されていました。
当脆弱性では、そのセッション Cookie の値を使用することで管理者が許可していない IP アドレスからも Web API にアクセスされる可能性があります。
想定される影響
第三者によって、許可されていない IP アドレスから Web API にアクセスされる可能性があります。
影響を受けるバージョン
以下のバージョンを両方とも満たす環境で影響を受けます。
- OpenPNE 3.6.24 以下 または OpenPNE 3.8.21 以下
- opWebAPIPlugin 0.5.1.1 以下
ただし、「API設定」(/pc_backend.php/opWebAPIPlugin) の Auth type に OAuth を選択している SNS、または Auth type に IP address を選択しているが Ip list が空欄となっている SNS は影響を受けません。
対策方法
この脆弱性は下記のいずれかの方法で対策することが可能です。
アップデートを適用する (推奨)
今回提供されるアップデートによって修正が行われているため、アップデートを適用することで対策が可能です。
また、今回のアップデートでは API アクセスにおいて本来発行する必要のないセッション Cookie を抑制するための修正を OpenPNE 本体に対して行っているため、opWebAPIPlugin を使用していない SNS であっても当アップデートを適用することが推奨されます。
opWebAPIPlugin を削除する
opWebAPIPlugin による Web API 機能を使用していない SNS では、opWebAPIPlugin を削除することでも当脆弱性を回避することが可能です。
4. HTTPヘッダインジェクション脆弱性
OpenPNE について、細工された HTTP リクエストを受け取ることで HTTP ヘッダインジェクションを引き起こす脆弱性が発見されました。
当脆弱性は、HTTP リクエストのプロトコルバージョンを表す部分に細工した文字列を含めることによって引き起こされるものです。例として、通常であればリクエストの最初の一行に GET / HTTP/1.1 といった内容が送られるところを GET / Set-Cookie: foo=bar; HTTP/1.1 のように細工した文字列を送ることで任意のヘッダを出力させることが可能となります。
想定される影響
第三者によって、レスポンスヘッダに任意のヘッダを追加される可能性があります。
ただし、上記に記載した GET / Set-Cookie: foo=bar; HTTP/1.1 のような不正な形式のリクエストを Web ブラウザ上で送信させる現実的な手段は確認されておらず、当脆弱性を悪用することは困難であると考えています。
影響を受けるバージョン
- OpenPNE 3.6.24 以下 または OpenPNE 3.8.21 以下
ただし、Lighttpd など一部の HTTP サーバーではプロトコルバージョンに不正な文字列が含まれる場合に 400 Bad Request のレスポンスを返すため、そのような環境においては影響を受けない可能性があります。
対策方法
今回提供されるアップデートを適用して下さい。この脆弱性についてアップデートを行わずに回避する方法はありません。
アップデート方法
OpenPNE 3
対策版へのマイナーバージョンアップもしくは修正パッチの適用を実施してください。
- OpenPNE 3.8.21.1
- [.zip 版ダウンロード] [修正パッチ]
- OpenPNE 3.6.24.1
- [.zip 版ダウンロード] [修正パッチ]
マイナーバージョンアップ手順
パッケージに同梱されているバージョンアップ手順書に記載されている通りに作業を実施してください。
各バージョンのマイナーバージョンアップ手順書は以下からも確認することができます。
パッチ適用手順
1. OpenPNEを設置しているディレクトリにパッチファイルをアップロードします
2. SSHでログインし、1 のディレクトリに移動します
3. 以下のコマンドを実行します
$ patch -p1 < パッチファイル名
4. 以下のコマンドを実行します
$ ./symfony openpne:migrate
OpenPNE プラグイン
OpenPNE 3.6 をご利用の場合は、OpenPNE 3 本体のマイナーバージョンアップをおこなうと opWebAPIPlugin、opFavoritePlugin、opDiaryPlugin のバージョンアップも自動的におこなわれます。
そのため、バンドルプラグインについては個別にバージョンアップする必要はありません。
OpenPNE 3.8 をご利用の場合やバンドルされていないバージョンを利用しているなどの理由により、自動的にバージョンアップがおこなわれない場合、プラグインのリリース情報を参考に更新をおこなってください。
-
opTimelinePlugin
- opTimelinePlugin 1.2.6.1
- [.zip 版ダウンロード] [修正パッチ]
-
opDiaryPlugin
- opDiaryPlugin 1.4.1.1
- [.zip 版ダウンロード] [修正パッチ]
- opDiaryPlugin 1.5.1.1
- [.zip 版ダウンロード] [修正パッチ]
-
opFavoritePlugin
- opFavoritePlugin 1.0.1.1
- [.zip 版ダウンロード] [修正パッチ]
-
opWebAPIPlugin
- opWebAPIPlugin 0.5.1.2
- [.zip 版ダウンロード] [修正パッチ]
セキュリティ上の問題の報告手順について
OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 (security@openpne.jp) を用意しています。
セキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 security@openpne.jp に連絡してください。 security@openpne.jp はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。
opCalendarPlugin 0.9.5 リリースのお知らせ
04 / 24 金曜日 2015
opCalendarPlugin リードメンテナの卜部です。
opCalendarPlugin 0.9.5 をリリースしました。
今回は Google Calendar の連携において OAuth 1.0 のサポートが 4 月 20 日で終了したため、
それに対応するための修正を行いました。
バグ、要望がありましたら、以下のページから作成ください。(チケット作成はRedmineに登録している必要があります。)
・opCalendarPlugin チケット作成
インストールコマンド
$ ./symfony opPlugin:install opCalendarPlugin -r 0.9.5
$ ./symfony openpne:migrate –-target=opCalendarPlugin
インストール後、OAuth 2.0 向けの JSON ファイルを Google Developers Console から取得し 管理画面 (pc_backend.php/opCalendarPlugin) に登録してください。OAuth 1.0 を使っていた場合も新規に JSON ファイルを取得する必要があります。
OAuth 2.0 での対応と同時に行えるようになったこと
- ・一つのプライマリーのカレンダーと紐付けられるのは SNS 内の 1 アカウントとする制限をいれた
- ・Google Calendar 側で削除された場合、SNS 側でも削除を行うようにした
- ・トークンを Revoke できるように改修した (SNS 内の連携しているスケジュール、アクセストークン削除、Google Calendar 側でトークンを無効にする)
OpenPNE 3.6.18、3.8.15 以下 および opCommunityTopicPlugin 1.0.5、1.1.2 以下 および opIntroFriendPlugin 1.0.0 以下 に存在する公開設定関連の修正対応のお知らせ(OPSA-2015-001)
04 / 02 木曜日 2015
OpenPNE 3.6.18、3.8.15 以下 および opCommunityTopicPlugin 1.0.5、1.1.2 以下 および opIntroFriendPlugin 1.0.0 以下 には、公開設定に関する複数の不具合が存在します。
本日(2015/04/02)、この問題の対策版として OpenPNE 3.6.18.1、3.8.15.1 および opCommunityTopicPlugin 1.0.5.1、1.1.2.1 および opIntroFriendPlugin 1.0.0.1 のリリースを行いましたので、内容を確認のうえバージョンアップまたはパッチの適用をお願いいたします。
概要
OpenPNE 3.6.18、3.8.15 以下 および opCommunityTopicPlugin 1.0.5、1.1.2 以下 および opIntroFriendPlugin 1.0.0 以下 には、下記の公開設定関連の問題が存在していました。
- 1. Web全体に公開しているプロフィールページで、Web全体に公開していないフレンドがフレンドリストに表示されてしまう
- 2. Web全体に公開しているプロフィールページで、紹介文を書いたフレンドのニックネームとプロフィール画像が表示されてしまう
- 3. コミュニティ参加承認待ちのメンバーがコミュニティ書き込みの転送を利用してトピックの情報を取得できてしまう
- 4. 特定の URL 指定をするとプロフィールページが公開範囲の指定にかかわらず閲覧可能となってしまう
- 5. 誕生日メール送信タスクが誕生日の公開設定を考慮していないため、非公開であってもフレンドに対して誕生日メールが送信されてしまう
本問題について
影響を受けるシステム
1. Web全体に公開しているプロフィールページで、Web全体に公開していないフレンドがフレンドリストに表示されてしまう
2. Web全体に公開しているプロフィールページで、紹介文を書いたフレンドのニックネームとプロフィール画像が表示されてしまう
3. コミュニティ参加承認待ちのメンバーがコミュニティ書き込みの転送を利用してトピックの情報を取得できてしまう
4. 特定の URL 指定をするとプロフィールページが公開範囲の指定にかかわらず閲覧可能となってしまう
5. 誕生日メール送信タスクが誕生日の公開設定を考慮していないため、非公開であってもフレンドに対して誕生日メールが送信されてしまう
想定される影響
1. Web全体に公開しているプロフィールページで、Web全体に公開していないフレンドがフレンドリストに表示されてしまう
2. Web全体に公開しているプロフィールページで、紹介文を書いたフレンドのニックネームとプロフィール画像が表示されてしまう
3. コミュニティ参加承認待ちのメンバーがコミュニティ書き込みの転送を利用してトピックの情報を取得できてしまう
4. 特定の URL 指定をするとプロフィールページが公開範囲の指定にかかわらず閲覧可能となってしまう
5. 誕生日メール送信タスクが誕生日の公開設定を考慮していないため、非公開であってもフレンドに対して誕生日メールが送信されてしまう
対策方法・回避方法
対応方法については、本エントリの「本問題への対応方法」をご覧ください。
この問題に対する回避方法はありません。
本問題への対応方法
「影響をうけるシステム」で示した条件を満たすすべてのサイトは、以下の対応を実施してください。
OpenPNE 3
対策版へのマイナーバージョンアップもしくは修正パッチの適用を実施してください。
- OpenPNE 3.8.15.1
- [.zip 版ダウンロード] [修正パッチ]
- OpenPNE 3.6.18.1
- [.zip 版ダウンロード] [修正パッチ]
マイナーバージョンアップ手順
パッケージに同梱されているバージョンアップ手順書に記載されている通りに作業を実施してください。
各バージョンのマイナーバージョンアップ手順書は以下からも確認することができます。
パッチ適用手順
1. OpenPNEを設置しているディレクトリにパッチファイルをアップロードします
2. SSHでログインし、1 のディレクトリに移動します
3. 以下のコマンドを実行します
$ patch -p1 < パッチファイル名
OpenPNE プラグイン
OpenPNE 3.6 をご利用の場合は、OpenPNE 3 本体のマイナーバージョンアップをおこなうと opCommunityTopicPlugin や opIntroFriendPlugin のバージョンアップも自動的におこなわれます。
そのため、バンドルプラグインについては個別にバージョンアップする必要はありません。
OpenPNE 3.8 をご利用の場合やバンドルされていないバージョンを利用しているなどの理由により、自動的にバージョンアップがおこなわれない場合、プラグインのリリース情報を参考に更新をおこなってください。
-
opCommunityTopicPlugin
- opCommunityTopicPlugin-1.0.5.1
- [.zip 版ダウンロード] [修正パッチ]
- opCommunityTopicPlugin-1.1.2.1
- [.zip 版ダウンロード] [修正パッチ]
-
opIntroFriendPlugin
- opIntroFriendPlugin-1.0.0.1
- [.zip 版ダウンロード] [修正パッチ]
セキュリティ上の問題の報告手順について
OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 (security@openpne.jp) を用意しています。
セキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 security@openpne.jp に連絡してください。 security@openpne.jp はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。
opBlogPlugin 1.0.3 リリースのお知らせ
12 / 12 木曜日 2013
OpenPNE 開発チームの今村です。
本日 2013/12/12、opBlogPlugin 1.0.3 をリリースしました。
今回のリリースでは、opBlogPlugin を使用しているメンバーが退会しようとすると500エラーとなる問題を対応いたしました。