CMSについて

Uncategorized
この記事は約5分で読めます。

CMS(Contents Management System)はサーバー側で動くアプリケーション。

前回はWEBサーバー上で動くWordPressを検査するツール(WPScan)を取り上げました。

しかしながら、そもそもWEBサーバーの検査をする為には、調査される側のWEBサーバーの仕組みを理解しておく必要に(今更ながら)気付いた訳でして。

今回はその調べられる側(客体)の話です。

サーバー側で動いているアプリケーションが判明すると、その固有の脆弱性発見の手掛かりになります。

CMSとは

WEBサイトを見に来たお客さんに対して、サイトの内容を見せるソフトウェアです。

しかしながらWEBサイトは1種類のソフトウェアで実現できている訳ではなく、何層かのソフトウェアが協働しています。

お店に例えると

WEBサイトをお店に例えて、サイトへのアクセスをお店に訪れるお客さんに例えると、

Webサイトの構成要素具体的にはお店に例えると
ハード物理サーバーお店の建物
Webサーバーソフトウェア
[ミドルウェアの1つ]
Apache(ApacheHTTPserver)
Nginx
など多種あり
店舗の店構え
CMS(コンテンツ管理システム)
[アプリケーションソフト]
WordPress
Joomla!
Drupal
など多種あり
店内の商品陳列棚
コンテンツ記事、画像、動画など商品

つまりCMSは商品を陳列する仕組みに相当します。

そしてWordPressはCMSの1つです。

ホームページビルダーとの違い

サイト(ホームページ)を作成・編集するという機能は同じですが、いくつかの違いがあります。

サーバーサイドかクライアントサイドか

ホームページビルダーの方は、ローカル(手元のパソコン)で編集しておいて、それを後でまとめてサーバーに上げるという、昔ながらの方法をとりますが、CMSはサーバー上で直接サイトの編集をしていきます。

編集作業をローカル側で行うか、サーバー側で行うかの違いです。

データベースとPHP

CMSではサーバー側で作業を行う関係もあり、サーバー側で動くデータベースやPHPとの連携が前提となっています。

結果CMSでは動的なコンテンツが可能です。

CMSの種類

オープンソース型WordPress
Drupal
TYPO3
Joomla!
 など多数
商用パッケージMovable Type
Adobe Experience Manager
 など多数
クラウド型Share With
Blue Monkey
 など多数

上記以外にも多数ありますが、最も使用頻度が高いのは ” WordPress ” です。

CMSの特定方法

そのサイトがどのCMSを利用して作られているかを調べる方法。

オンラインツールWhatCMS
BuiltWith
Wappalyzer
左記のサイト上にあるツールから
調査出来ます
KaliのツールWhatWeb
WPScan
Nikto
Nmap
追加インストールが必要なツールとして
CMSeek
BuiltWith CLI
その他ソースコードの確認
識別ファイルの検索
後述

その他の方法について

ソースコードの確認

ブラウザのHTML表示機能を使い、HTMLソースコードを調べます。

CMSの種類HTMLソースコードに含まれる文字列
WordPress” /wp-content/ ” , ” /wp-includes/ ”
Drupal ” /sites/default/ ” , ” drupal.gs ”
Joomla! ” /media/system/js/ ” , ” com_content ”

識別ファイルの検索

特定のCMSで作成されたサイトには、特定のファイル(識別ファイル)が含まれている場合があるので、それを検索します。

例)

CMS識別ファイル
WordPress ” /wp-login.php ” , ” /xmlrpc.php ”
Joomla! ” /administrator ”
Drupal ” /CHANGELOG.txt ”

これらのファイルを、サイト内のディレクトリ探索ツール(dirbuster, dirb, gobusterなど)を使用して探す事になります。

注意事項)CMSを確認する行為をお店での行為に例えると

下記のように迷惑行為に当たります。

サーバーへの行為お店での行為
普通にサイトへのアクセスお店に入店して商品を見る
CMSを確認する検査カウンターの内側やバックヤードに入り、伝票やレジを探る

必ず相手方の許可を得て、若しくは自分の管理下のサーバーにのみ検査を行いましょう。

ツールを使って調べる行為は ” お店を荒らす ” 行為に相当しますが、上記方法の中で「ソースコードの確認」のみはこれに該当しません。

これは言わば、お店からもらってきたレシートを確認する行為に当たり、迷惑はかけません。

まとめ

 昔のホームページの作り方は、ローカルのPCでHTMLで記述したファイルを作って、それをブラウザで確認して、FTPでサーバーに上げるという作業をしていました。

今はサーバーに直接書き込む感覚でサイトの編集ができます。

これもWordPressを始めとしたCMSのおかげという訳です。ありがたい世の中になりました。

コメント

タイトルとURLをコピーしました