Security

守るべきものを、
公開しない。

いちばん確かな守りは、攻められる場所を置かないことです。Cocoro CMS で公開されるのは、Astro が作った HTML と画像だけ。編集・承認・ビルドはすべて別の場所で行い、公開しているサーバーには、動くプログラムも、ログインの入り口もありません。

Why it matters

脆弱性の多くは、
プラグインの中に。

WordPress の本体は、よく守られています。それでも、あとから入れるプラグインやテーマで、毎日のように新しい脆弱性が見つかっています。見つかってから悪用されるまでが短く、「気づいたら更新する」では間に合わないことがあります。

11,334件

2025 年に新しく見つかった WordPress の本体・プラグイン・テーマの脆弱性(前年の 1.42 倍)

91%

そのうち、プラグインにあったもの。本体は 6 件

46%

公表された時点で、直した版がまだ無かったもの

5時間

よく狙われる脆弱性が、大量に悪用されはじめるまで(中央値)

出典:Patchstack「State of WordPress Security in 2026」。2024 年は 7,966 件・うち 96% がプラグイン(同社 2025 年版)。Wordfence の年次報告でも、2024 年に登録された脆弱性は 8,233 件。

Architecture

違いは、設定の多さではなく、
作りにある。

WordPress

訪れた人→

公開サーバー

PHPプラグインテーマデータベースログインアップロード

開くたびに動く・すべてを更新し続ける

Cocoro CMS

別の場所

編集・承認・ビルド

→

公開サーバー

HTML・画像だけ

訪れた人は、ファイルを受け取るだけ

WordPressCocoro CMS
ページを開いたときそのたびに PHP が動き、データベースを読む作っておいたファイルを返すだけ
公開サーバーにあるものPHP・データベース・管理画面・プラグインHTML・CSS・画像
ログインの入り口公開サイトの中(/wp-admin など)公開サイトには無い
機能を足すときプラグインを入れるAstro の部品として作る(動くのはビルドのときだけ)
守るための作業本体・テーマ・プラグインを更新し続ける公開サーバーに、更新するプログラムが無い
公開の前の確認プラグインや運用の決まりで用意承認してから公開が最初から
変更の記録リビジョン(データベースの中)Git の履歴とプルリクエスト

Defense in depth

6 つの層で、守る。

公開面に動くものが無くても、編集する側が破られたら意味がありません。Cocoro CMS は、書き込み・管理画面・中身・実行・記録の、それぞれに守りを置いています。

公開面

01 · Public site

動くものを置かない

  • ✓公開されるのは Astro が作った HTML・CSS・画像だけ
  • ✓PHP・データベース・ログイン画面・プラグインが、公開サーバーに無い
  • ✓置き場は、お使いのサーバーか CDN。Cocoro CMS が止まっても、サイトは止まらない

書き込み

02 · Repository

GitHub の鍵を、1 か所に

  • ✓GitHub の鍵を持つのは専用の小さなサービス(keeper)だけ。本体・データベース・ログには無い
  • ✓求める権限は contents・pull_requests・metadata だけ。ワークフローは書けない
  • ✓書き込めるのは cocoro/ の枝の早送りだけ。.github/ の下は拒否
  • ✓承認は、確認したときの SHA に固定してマージ

管理画面

03 · Admin

入り口を固く

  • ✓管理者と開発者は 2 段階の確認が必須(認証アプリかパスキー・予備のコード 10 個)
  • ✓ログインは IP とメールで毎分 10 回まで。12 時間で自動ログアウト
  • ✓CSP は default-src 'none'・script-src 'self'・frame-ancestors 'none'
  • ✓Cookie は __Host- つき。HSTS は 1 年

中身

04 · Content

書けないものは、書けない

  • ✓編集者と AI は、script・iframe・on〜 の属性・javascript: を記事に書けない
  • ✓MDX の import・export・{式} も、編集者には書かせない
  • ✓アップロードしたファイルはウイルス検査。SVG のスクリプトは取り除く
  • ✓欄に入れた値はエスケープして書き戻すので、コードにならない

実行

05 · Sandbox

お客様のコードは、閉じ込めて動かす

  • ✓ビルドとプレビューは、名前空間をすべて分けた隔離環境で
  • ✓ネットワークは npm のレジストリだけ(ビルド中は無し)
  • ✓権限はすべて落とし、システムコールも絞る
  • ✓お客様ごとに別の利用者 ID と、CPU・メモリの上限

記録

06 · Audit

あとから、書き換えられない記録

  • ✓操作の記録は、1 行ごとに前の行のハッシュを入れた鎖
  • ✓毎日、鎖が切れていないかを確かめる
  • ✓鎖の先頭は、別の場所に鍵つきで控える
  • ✓保管はプランにより 30 日・1 年・3 年

Speed

静かなサイトは、
速いサイト。

ページを開くたびに組み立てる必要がないので、CDN から、できあがったファイルをそのまま返せます。中身は最初から HTML に書かれているので、検索エンジンもそのまま読めます。Astro の、必要なところにだけ JavaScript を使う作りも、そのまま活きます。

WordPress から移るには →
夜の街の上を、ローズとすみれ色の光の筋が走っていく

Cocoro CMS

伝えたいことを、
伝えたいときに。

Astro のサイトを、だれでも安全に更新できるように。フリープランは 1 サイト・2 人まで、ずっと無料です。