-オープンソースのSNSエンジン OpenPNEプロジェクト-

OpenPNEからのおしらせ

Home

安定版 OpenPNE 3.4.16 リリースのお知らせ

10 / 13 木曜日 2011

OpenPNE 開発チームの今村です。

本日、安定版 OpenPNE 3.4.16 をリリースしました。

次回のリリースは 2011年11月10日(木) を予定しています。
今後、3.4系は新案定版の3.6系とリリース日を合わせ、毎月第2木曜日にリリースを予定しています。
また、3.4系のサポート期間は時期安定版のbeta(3.8beta)のリリースまでとなります。

バージョンアップ・インストール

ダウンロード

OpenPNE 3.4.16(zipアーカイブ) は以下のボタンからダウンロードできます。

  • zip版ダウンロード

パッケージの詳細は、こちらになります。
OpenPNE 3.4.16

インストール

OpenPNE 3.4.16 のインストールは、OpenPNE3.4 セットアップ手順 を確認ください。

3.2.x から 3.4 へのアップグレード、3.4 の以前のバージョンからのマイナーバージョンアップを行う場合は、このドキュメントを参考ください。

続きを読む

OpenPNE 3.6 の新機能について

10 / 07 金曜日 2011

OpenPNE 開発チームの今村です。

2010/3/13にOpenPNE 3.5.0 がリリースされてから約1年8ヶ月という長い道のりを経て、ついにOpenPNE 3.6.0 をリリースすることが出来ました。

OpenPNE 3.6.0 では非常に多くのバグフィックス、新機能追加、チューニングが施されています。
チケット数にすると約300チケットもの対応をし、紹介する新機能も非常に多くなっています。

非常に長いエントリになっていますので、時間ねーぜ!という方は、下記の見出しを参考に気になるところから御覧ください(^_^;)

ユーザー向け新機能・改良点
新機能では「部分SSL機能」や「インストール時にDBを造り直さないオプション」などが追加され、パフォーマンス面では、より高速化をめざし「opNonCountQueryPagerの利用」や「OpenPNE.ymlの結果をキャッシュする」といった改善が行なわれています。
バンドルプラグイン
opIntroFriendPlugin、opRankingPlugin、opFavoritePlugin が追加されました。
開発者向けの新機能・改良点
認証周りの仕様変更や、プラグインの依存性をサポートするようになりました。

3.6.0リリースにあたって、全ての機能の動作を確認する全機能テストも行なわれました。アクション一覧を参考に正常動作の確認がおこなわれ、新機能についても問題のないことを確認しました。

続きを読む

新安定版 OpenPNE 3.6.0 リリースのお知らせ

10 / 07 金曜日 2011

OpenPNE 開発チームの佐野です。

本日、安定版 OpenPNE 3.6.0 をリリースしました。
皆様お待ちかねの新安定版の誕生です。

新機能については別途詳細なエントリにて告知します。

今後、新安定版のリリースは旧安定版とタイミングを合わせ、毎月第2木曜日とします。
次回のリリースは 2011年11月10日(木)を予定しています。

グローバルナビやローカルナビの CSS を独自に書かれている方へ

OpenPNE-3.6.0 ではナビゲーション部分に関する問題を修正していますが、すでにお使いの OpenPNE を OpenPNE-3.6.0 にバージョンアップする場合に、独自に記述した CSS が無効になってしまう可能性があります。これは全ての SNS に影響する問題( opSkinClassicPlugin を使っている場合に限らない問題)です。

※この記事では、独自の CSS を記述している場合について注意していますが、 CSS に限らずともナビゲーション項目の id 属性値を記述している場合に当てはまります。 JavaScript などでも id 属性値を参照している場合には注意してください。

続きを読む

OpenPNE 3.6RC2 リリースのお知らせ

09 / 30 金曜日 2011

OpenPNE 開発チームの豊岡です。

本日、開発版 OpenPNE 3.6RC2 をリリースしました。

次回のリリースは 2011年10月7日(金)を予定しています。

続きを読む

OpenPNE3.6.0 のリリース延期および RC2 リリースについて

09 / 27 火曜日 2011

※ 2011/09/28:この記事の本文に追記しました

OpenPNE 開発チームの今村です。

OpenPNE3.6 の次回のリリースについてお知らせです。
2011/09/30に OpenPNE3.6.0 のリリースを予定していましたが、
RC1 で発覚した重大な問題を対応するためリリースを1週間延期します。

この問題とは、opDiaryPlugin と opCommunityTopicPlugin に追加されたmigrateスクリプトに不備があり、正常にmigrateが終了できないという現象です。
詳細については、下記のチケットをご確認ください。

発覚した重大な問題を対応したバージョンを OpenPNE3.6RC2 として
リリースすることを予定しています。
今後の予定についてまとめると、下記の通りになります。

3.6 RC2
2011/09/30 (金) リリース
3.6 RC2対応項目
3.6.0
2011/10/07 (金) リリース
3.6.0対応項目

OpenPNE 3.6RC1 リリースのお知らせ

09 / 22 木曜日 2011

OpenPNE 開発チームの坂田です。

本日、開発版 OpenPNE 3.6RC1 をリリースしました。

次回のリリースは 2011年9月30日(金)を予定しています。

続きを読む

OpenPNE 3.4.16 リリース延期のお知らせ

09 / 16 金曜日 2011

OpenPNE 開発チームのきわです。

OpenPNE 3.4 次回リリースについてのお知らせです。
安定版 OpenPNE 3.4.15 リリースのお知らせ にて、

次回のリリースは 2011年9月8日(木) を予定しています。

とお知らせしましたが、リリースが延期となりました。

次回 OpenPNE 3.4.16 のリリースは 2011/10/13 (木) を予定しています。

なお、 OpenPNE 3.4 は 2011/9/15 に緊急リリース(OPSA-2011-004)をおこなっています。
最新バージョンは OpenPNE 3.4.15.1 となりますので、それ以前のバージョンをご利用のかたはバージョンアップをお願いします。

【緊急リリース】すべてのバージョンの OpenPNE に存在する、クライアント側キャッシュを経由した非公開情報漏洩の問題への対応のお知らせ (OPSA-2011-004)

09 / 15 木曜日 2011

OpenPNE 2 および OpenPNE 3 には、認証後のページをクライアントに送出する際に、キャッシュ制御に関する指示をおこなっていなかったため、ユーザの利用する環境によっては、非公開情報を含むページの情報がキャッシュ経由で他人に表示されてしまう問題が存在します。

本日 9 月 15 日 (木)、この問題の対策版リリースをおこないましたので、内容を確認のうえ、バージョンアップまたはパッチの適用をお願いいたします。

なお、 OpenPNE 2 については、設定によりこの問題を回避することが可能ですので、本エントリで併せて回避方法を解説していきます。

本問題について

影響を受けるシステム

以下のいずれかの条件に当てはまる場合、本問題の影響を受けます。

  • OpenPNE 3.0.8.4 以下、 3.2.7.5 以下、 3.4.15 以下、 3.6beta13 以下を利用しているサイト
  • OpenPNE 2 を利用しているサイトで、 OPENPNE_SEND_NO_CACHE_HEADER の設定値が false (デフォルト値)に設定されているサイト

概要

Web ブラウザやプロキシサーバといったクライアントは、パフォーマンス等の観点からレスポンスをキャッシュすることがあります。しかし、サーバから提供されるコンテンツのなかにはキャッシュするべきでない、またはキャッシュに際して留意が必要なものも存在しています。 HTTP では、そのような性質を持ったコンテンツを特定のヘッダを含めてレスポンスすることで、キャッシュの可否や有効期限などといった指示をクライアントに伝えることができます。

ところが、 OpenPNE では、非公開情報が含まれるであろうページであっても、このキャッシュに関する指示をレスポンスに含んでいなかったため、クライアント環境によっては、たとえば以下のような問題が生じていました。

  • Internet Explorer などのブラウザで、ログアウトしてもしばらくキャッシュからコンテンツが表示されてしまっていた
  • キャッシュ機能を持つプロキシを複数ユーザ間で利用している場合に、プロキシ側にキャッシュされた他のユーザのコンテンツが表示されてしまっていた

なお、 RFC 2616 Hypertext Transfer Protocol — HTTP/1.1“13.4 Response Cacheability” によると、今回のようなケースでは、クライアントは(特定の条件を除き)キャッシュの保存や表示をおこなうことができる(MAY)とされています。したがって、ログインユーザや特定の権限を持ったユーザにしか公開しない種類のコンテンツを多く有する OpenPNE でキャッシュ制御の指示がおこなわれていなかったのは、明らかな誤りでした。

想定される影響

クライアント側でのキャッシュを閲覧されてしまうことで、正当な権限を持たない者に非公開情報の取得がおこなわれてしまう恐れがあります。

キャッシュがおこなわれていない、またはキャッシュが削除されたコンテンツに関しては、この問題を利用して正当な権限を持たない者に閲覧されてしまうことはありません。また、プロキシサーバ等によりキャッシュが共有されるケースで、特定のユーザの非公開情報に絞って取得しようとすることは困難であると考えられます。

対策方法・回避方法

対応方法については、本エントリの「本問題への対応方法」をご覧ください。

サーバ側での回避方法

OpenPNE が動作する Web サーバ等において、レスポンスに以下のようなヘッダを強制的に付加するよう設定することで、この問題を回避することができます。

  • Expires: Fri, 22 Apr 1988 17:00:00 GMT
  • Cache-Control: no-store, no-cache, private, max-age=0, must-revalidate, post-check=0, pre-check=0
  • Pragma: no-cache

これらのヘッダを付加する Apache の設定の例は以下の通りです。

<IfModule mod_headers.c>
    Header set Expires "Fri, 22 Apr 1988 17:00:00 GMT" 
    Header set Cache-Control "no-store, no-cache, private, max-age=0, must-revalidate, post-check=0, pre-check=0" 
    Header set Pragma "no-cache" 
</IfModule>

ただし、すべてのユーザ間で共通のコンテンツを利用する(たとえば、 JavaScript や CSS などの静的ファイル)場合、常にこの設定値が適用されてしまうことでパフォーマンスが低下する恐れがあります。そのため、このような回避方法が採れる場合でも、「本問題への対応方法」を参考に、抜本的な対策をおこなうことを強く推奨します。

クライアント側での回避方法

キャッシュ機能を持つプロキシサーバを経由して OpenPNE を使用しており、プロキシサーバ側の設定でそのキャッシュ機能を無効にできる場合、ドキュメント等の案内に従ってキャッシュ機能を無効にすることで、この問題の影響を受けなくすることができます。

キャッシュ機能を持つプロキシサーバを経由していないか、キャッシュ機能を無効にしても OpenPNE のコンテンツがキャッシュされる場合、ブラウザ側でキャッシュをおこなっている可能性があります。このような場合は、ブラウザ側でキャッシュの更新確認に関する設定を変更することで、この問題の影響を受けなくすることができます。たとえば、 Internet Explorer を使用している場合は、 Microsoft 社のサポートページ内、「Internet Explorer のキャッシュ設定が Web の参照に与える影響」を参考に、「保存しているページの新しいバージョンの確認」を「ページを表示するごとに確認する」に設定してください。

本問題への対応方法

「影響を受けるシステム」で示した条件を満たすすべてのサイトは、以下の対応を実施してください。

OpenPNE 3

対策版へのマイナーバージョンアップもしくは修正パッチの適用を実施してください。

OpenPNE 3.6beta14
[.zip 版ダウンロード] [修正パッチ]
OpenPNE 3.4.15.1
[.zip 版ダウンロード] [修正パッチ]
OpenPNE 3.2.7.6
[.zip 版ダウンロード] [修正パッチ]
OpenPNE 3.0.8.5
[.zip 版ダウンロード] [修正パッチ]

マイナーバージョンアップ手順

パッケージに同梱されているバージョンアップ手順書に記載されている通りに作業を実施してください。

各バージョンのマイナーバージョンアップ手順書は以下からも確認することができます。

パッチ適用手順

1. OpenPNEを設置しているディレクトリにパッチファイルをアップロードします
2. SSHでログインし、1 のディレクトリに移動します
3. 以下のコマンドを実行します

$ patch -p1 < パッチファイル名

OpenPNE 2

config.php で、以下の設定値を false から true に変更してください。

// ページのキャッシュをさせないヘッダを送信するかどうか
// ただしau端末の場合はこの設定にかかわらず、常に「ページのキャッシュをさせないヘッダ」が送信されます
define('OPENPNE_SEND_NO_CACHE_HEADER', false);

ただし、この設定項目は OpenPNE 2.8 以下のバージョンには存在しません。 OpenPNE 2.8 以下のバージョンをお使いの方は、前述の各種回避方法を参考に、この問題を回避するようにしてください。

セキュリティ上の問題の報告手順について

OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 ([email protected]) を用意しています。

http://redmine.openpne.jp/projects/op3/wiki/How_To_Report_Issue_%28ja%29#%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E4%B8%8A%E3%81%AE%E5%95%8F%E9%A1%8C%E3%82%92%E5%A0%B1%E5%91%8A%E3%81%99%E3%82%8B

もしセキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 [email protected] に連絡してください[email protected] はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。

【緊急リリース】opDiaryPlugin 1.3.2, 1.2.0.1, 1.0.0.1 以下に存在するWeb全体に公開機能に関するプライバシー上の問題対応のお知らせ (OPSA-2011-003)

09 / 01 木曜日 2011

opDiaryPlugin 1.3.2, 1.2.0.1, 1.0.0.1 以下には、日記をWeb全体に公開する機能に関するプライバシー上の問題が存在します。

本日9月1日、この問題の対策版として opDiaryPlugin 1.3.2.1, 1.2.0.2, 1.0.0.2 のリリースをおこないましたので、内容を確認のうえバージョンアップをお願いいたします。

本問題について

影響を受けるシステム

以下の「Web全体に公開」機能が実装された opDiaryPlugin を利用しているサイト

  • opDiaryPlugin 1.3.2 以下(OpenPNE 3.6beta/3.7 向け)
  • opDiaryPlugin 1.2.0.2 以下(OpenPNE 3.4 向け)
  • opDiaryPlugin 1.0.0.1 以下(OpenPNE 3.2 向け)

(OpenPNE 3.0 向けの opDiaryPlugin 0.8.x には本問題の影響はありません)

概要

「Web全体に公開」機能が実装された opDiaryPlugin では、メンバーが「Web全体に公開」に指定した日記を非ログイン状態でも表示できるようになっており、このページには日記と共にメンバーのニックネームとプロフィール画像が表示されます(携帯版の場合は、プロフィール画像は表示されませんがニックネームは表示されます)。

「Web全体に公開」の日記を書いたメンバーのニックネームとプロフィール画像が表示されるのは想定された仕様ですが、opDiaryPlugin 内の特定のページへアクセスすることにより、「Web全体に公開」の日記を書いているかどうかに関わらず、任意のSNSメンバーのニックネームとプロフィール画像が外部から閲覧できてしまう問題がありました。そのため、自分のニックネームやプロフィール画像が非ログイン状態でも閲覧されてしまうことについて認識していないメンバーの情報がSNS外部から閲覧可能な状態となっていました。

また、「Web全体に公開」機能を管理者が無効にすることができず、SNS内の情報は外部には非公開であることが前提でメンバーによる公開設定も禁止したいSNSで、opDiaryPlugin を利用することができませんでした。

想定される影響

ニックネームやプロフィール画像に含まれる、メンバーがSNS外への公開を意図していない情報を、SNSへのアカウント登録やログインなしで閲覧できてしまうことがあります。

対応方法・回避方法

対応方法については、本エントリの「本問題への対応方法」をご覧ください。

回避方法

以下を実施することで、この問題を回避することができます。

  • 管理画面の「プラグイン設定」において、 opDiaryPlugin を無効にする

本問題への対応方法

「影響をうけるシステム」で示した条件を満たすすべてのサイトは、以下の「プラグインバージョンアップ(必須)」および「日記をWeb全体に公開する機能の無効化(任意)」の対応を実施してください。

プラグインバージョンアップ(必須)

利用している OpenPNE のバージョンが 3.6beta13, 3.4.15, 3.2.7.5 よりも古い場合、最新版へマイナーバージョンアップをおこなってください。

各バージョンのマイナーバージョンアップ手順書はパッケージに同梱されていますが、以下からも確認することができます。

手順書に従ってバージョンアップをおこなうとバンドルされているプラグインも更新されます。

既に最新版の OpenPNE を利用している場合、以下のコマンドを実行してください。

$ ./symfony openpne:migrate

※OpenPNE 3.2.7.5 を利用している場合、openpne:migrate 実行時に「PHP Strict standards」のエラーが大量に表示されてしまい処理が完了しないことがあります。この場合は openpne:migrate の代わりに以下のように opPlugin:sync タスクを実行してください。
(今回のリリース内容では opPlugin:sync でも問題なくアップデートすることができます。)

$ ./symfony opPlugin:sync

今回対策されたプラグインのうち、バンドルされていないバージョンを利用しているなどの理由により、自動的にバージョンアップがおこなわれない場合、プラグインのリリース情報を参考に更新をおこなってください。

opDiaryPlugin
opDiaryPlugin-1.3.2.1
opDiaryPlugin-1.2.0.2
opDiaryPlugin-1.0.0.2

日記をWeb全体に公開する機能の無効化(任意)

今回の対策版では「日記をWeb全体に公開する機能」を完全に無効化するための設定を管理画面に追加しています。この設定は任意です。

SNS内の情報は外部には非公開であることが前提のSNSを運用しており、メンバーがWeb全体に公開の日記を書いたり、それに伴ってメンバーのニックネームやプロフィール写真の情報が公開されてしまうのが問題である場合は、プラグインのバージョンアップと合わせてこの設定もおこなってください。

日記をWeb全体に公開する機能を無効化した場合には、メンバーが日記の作成・編集をする際に公開範囲として「Web全体に公開」を選択できないようになります。また、メンバーが過去に書いた日記ページも含めて、opDiaryPlugin 内のすべてのページを非ログイン状態では見られないようになります。

設定は以下の手順でおこなってください。

  1. 管理画面の「プラグイン設定」から opDiaryPlugin の「設定」をクリックし、日記プラグイン設定画面を開く
  2. 「Web全体に公開機能使用設定」で「使用しない」を選択し、フォーム下部の「確定」ボタンをクリックする

セキュリティ上の問題の報告手順について

OpenPNE プロジェクトでは、以下に案内している通り、セキュリティ上の問題の報告を受け付ける窓口 ([email protected]) を用意しています。

http://redmine.openpne.jp/projects/op3/wiki/How_To_Report_Issue_%28ja%29#%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E4%B8%8A%E3%81%AE%E5%95%8F%E9%A1%8C%E3%82%92%E5%A0%B1%E5%91%8A%E3%81%99%E3%82%8B

もしセキュリティ上の問題を発見した場合は、通常の公開されたバグ報告の手順を踏むのではなく、 [email protected] に連絡してください[email protected] はクローズドなメーリングリストであり、このメーリングリストでおこなわれた脆弱性の詳細情報などのやり取りがそのまま公開されることはありません。

OpenPNE 3.4.15 バンドルプラグイン更新のお知らせ

08 / 30 火曜日 2011

OpenPNE 開発チームの卜部です。

これまで、OpenPNE3.4.x 系のバンドルプラグインの
opAlbumPlugin は 0.9.3.1 となっておりました。

今回、opAlbumPlugin に管理機能が追加された 0.9.4.1 にあげたとしても、
安定性が損なわれるものではないと判断したため、
バンドルプラグインリストを更新しました。

すでに OpenPNE3.4.15 をお使いの場合は、以下のコマンドで opAlbumPlugin を更新することができます

$ php symfony openpne:migrate

新規で OpenPNE3.4.15 をインストールされる場合は、インストールコマンドを実行したタイミングで 0.9.4.1 がインストールされますので、上記のコマンドは不要です。

ページの先頭に戻る