KUSANAGIハンズオン&徳丸先生のセキュリティセミナーに参加しました!

昨日の夜、品川マイクロソフトさんで開催された「KUSANAGIハンズオン&徳丸先生のセキュリティセミナー」に参加。軽く感想などを残したいと思います。

セミナー内容は以下の通り。

  1. Microsoft Azureのセキュリティについて

    キーワードは「セキュリティROI」で、以前は(社内ネットワークに)『侵入させない』だったが、現在は『侵入されたことをすばやく検知し、すぐに復旧』とのこと。

  2. KUSANAGI for Vagrantを使用したKUSANAGIハンズオン

    「KUSANAGI for Vagrant」は社員の方が個人的に開発していたものがベースとのこと。box名が「yuya_tajima/kusanagi」になっている謎が解けました。

  3. WordPressサイトはWAFでどこまで防御できるか

    WAFの概要とその効果をデモサイトを使いながら紹介。

KUSANAGI WAF

さてKUSANAGIハンズオンの中身ですが、(ちょっとズルをして)事前にKUSANAGI for Vagrantのインストールまで済ませておいたこともあり、個人的にはそれなりに進めることができました。それでも前半のyumコマンドの処理に時間がかかり、一部の方はここでだいぶ苦労された様子。後半のKUSANAGI WAFのパートがきつくなったのが残念でした。KUSANAGI WAFのところはう少し詳しく聞きたかった感じです。

KUSANAGI WAFのオン・オフはコマンドで簡単に切り替え可能ですが、初期設定のままではWordPressの管理画面の一部でも問題が発生するため、チューニング(設定リストの編集作業)は必須。実際に公開サイトで使用する場合は、適用しているテーマやプラグインに応じたチューニングが必要不可欠であり、緩い設定をしてしまうと攻撃を防ぐことができないため、それなりのノウハウが必要で、実運用は「ちょっと大変そう」というのが正直な印象です。今後、時間経過によって初期設定やチューニング方法が洗練されていくことに期待したい。

WAFの防御

デモサイトを使った攻撃とWAFの検知では、徳丸さんの会社でも扱っているWAF製品の「SiteGuard」が使用され、問題がありそうなリクエストを「検知」するだけでなく、その可能性がありそうなリクエストを「監視」する機能がありました。管理画面上で「監視」から「検知」に切り替えできる機能が紹介され、攻撃発覚後の対応は比較的容易にできるそうです。WAFは既知の攻撃を防げるだけでなく、(その時点で)未知の攻撃を防ぐ場合があり、それなりに有用ではあるものの、誤検知も少なからず発生することは意識しておくべきでしょう。

さて、徳丸さんのお話であらためて意識させられたのが、「ナチュラルなリクエストは(WAFで)検知しにくい」的なニュアンスの内容と、不具合が見つかった場合は速やかにアップデートしていく責任があるということ。またプラグインの機能そのものが脆弱性になりうる可能性があることはプラグインを公開している身としては肝に銘じておきたい。

参考:KUSANAGI for Vagrant

WordPress 5.0リリースに向けて

WordPressのアップデートが近づくと、公式サイトにプラグインを登録している方には「WordPress 5.0 is imminent! Are your plugins ready?」な感じのメールが届きます。このメールには登録しているプラグインのバージョン確認状況がリストされており、それらのアップデートの準備を始めます。ある程度の需要がありそうなものはWordPressのアップデートに合わせる感じで進める方針です。

  • Login rebuilder
    一番利用者が多いプラグインで、優先度がトップ。新機能を追加した2.5.0をリリース予定です。
  • Somewhere search box
    4.9.8+Gutenberg環境において投稿の複製機能に不具合が発生しており、GithubのIssuesに投稿し、少し前に解決した模様。5.0 RC版で動作確認して調整します。
  • Posts filter multiselect
    5.0 RC版で動作確認して調整します。
  • Slightly troublesome permalink
    5.0 RC版で動作確認して調整します。
  • HTML entities button
    いわゆる旧エディター向けのプラグインなので、様子見になります。
  • Paste JSON text
    旧エディター向けのプラグインで、新エディターに対応できるか検討中です。
  • その他のプラグインについてはペンディングです。

とりあえず5.0 RC版の公開待ちですね。

Bootstrap4でテーマ再構築

WordPress関連の情報を掲載している「WordPress私的マニュアル」のテーマをリニューアルしました。主な変更点は次の通り。

  • Bootstrap4を使用
  • キーワード検索機能を独自から標準フィルターを使用する方式に変更
  • ソーシャルブックマークの停止

まあBootstrap4を使ってテーマを作ってみたかっただけなんですけどね。

2年ぶりの機種変完了

使っているスマホの契約更新月に伴い2年ぶりに機種変しました。
iPhone 6 Plus を Xperia XZ Premium に、
iPhone 6s を iPhone 8 に、といった感じ。

Xperia XZ Premium は久しぶりの Android 端末。発売から少し経っているのもあり、すぐにシステムアップデートとなって、アップデートの実行で 8.0.0 になりました。これの気になった点は、標準状態のバッテリーの減り具合。フル充電後の未操作で2日経過前にバッテリー残量が0になりました。とりあえず、標準でインストールされている「しゃべってコンシェル」と「スケジュール&メモ」を無効化して経過を見てみたところ、未操作の場合は1日約7%の減りとなりました。しばらくはこの状態で使ってみようと思います。

iPhone 8 の方はというと、こちらも立ち上げ直後にアップデートが来ていたのでとりあえず実行して iOS 11.2.5 に。パッと見で気になったのが、画面がやや赤みを帯びていること。ネット検索して「設定」で調整できることがわかったので、「Night Shift」-「色温度」の設定を初期状態よりも「冷たく」側にスライドして調整しました。
こちらの端末で戸惑ったのが Gmail のセットアップ。実は以前の端末が Google アカウントの2段階認証に使っていて、セキュリティコード発行の操作を行っても MNP したこの端末には通知が届きません。この問題の対処方法はいくつかあるようですが、PC で Google アカウントの「2段階認証プロセス」にアクセスして、Xperia XZ Premium の電話番号を追加し、そちらをデフォルトに変更。これで無事 Gmail のセットアップが完了しました。

最後に料金プランを紹介。自宅・事務所ともWiFi環境なので、データ通信料を低く抑えたプランを選択しています。

Xperia XZ Premium docomo
合計 5,500円(5,940円)
カケホーダイライト 1,700円(1,836円)
spモード 300円(324円)
データSパック(小容量)(2GB) 3,500円(3,780円)
iPhone 8 SoftBank
合計 6,500円(7,020円)
スマ放題 2,700円(2,916円)
ウェブ使用料 300円(324円)
データ定額ミニ(2GB) 3,500円(3,780円)

今回の機種変は2週連続で「ヨドバシカメラ マルチメディア横浜」さんで行い、iPhone 8 の月額料金はいくつか割引が適用されて上記の値段よりも安くなります(Xperia XZ Premium と同程度)。もう少し安くおさえたところですね。

yum updateした翌朝にsshできない

昨日、twitterにApacheの脆弱性に関するツイートがありました。

パッチが公開されているか微妙なタイミングだったのですが、昨晩中に手持ちのサーバーにアクセスして「yum update」だけ実行しておきました。日付が変わって今朝sshでログインしようとすると、タイムアウトでログインできません。全部ログインできないかというとそんなわけではなく、CentOS 6系は問題なくログインできましたが、CentOS 7系がログインできない状況でした。外は雨降ってるし、かなりブルーに。。。「まあ最悪はサーバーをリセットかな」と思ったわけですが、とりあえずサーバー(さくらのVPS)のコントロールパネルにアクセスして、「コンソール」からrootでログインを試行。なんとかログインできたので、原因の調査開始です。

はじめにsshのログを確認。ログインに失敗している形跡を示すログは見つかりませんでした。。。

ログがまったくないということなので、ファイアウォールの状況を確認。

# firewall-cmd --list-all
...途中、省略...
services: dhcpv6-client https ssh ...

サービスとして登録されていることは確認できたので、/usr/lib/firewalld/services/ssh.xmlを開いてみたところ、ポート番号がデフォルトに戻っていました。昨日の「yum update」によって、変更していたsshのポート番号が初期状態に戻ったようです。

<port protocol="tcp" port="22"/>

ポート番号を変更してファイアウォール設定を更新。無事、sshでログインできるようになりました。

# firewall-cmd --reload
# systemctl restart sshd.service

今回の件、反省すべきところは「yum update」したら、別のターミナルからsshでログインできることを確認しなかったこと。今後は徹底しないといけないですね。

「学年別常用漢字一覧」が「新学習指導要領(平成29年3月公示)」に対応

弊社サイトの1つ「joyokanji.info」では「小学校学習指導要領」に対応した「学年別常用漢字一覧」を公開しています。
このコンテンツについて今年3月に公示された「新学習指導要領」の「小学校学習指導要領」に対応し、以下のページを追加しました。

ざっと見た感じ、新しい小学4年に都道府県名の漢字が追加され、小学5年・6年とで字数調整したようです。

Login rebuilderのActive installsが10,000+達成

弊社で開発・公開しているWordPressのプラグイン「Login rebuilder」のActive installsがついに10,000+達成を達成しました。誠にありがとうございます。
「Login rebuilder」はログインページをサイト独自のアドレス(URL)に変更することで、ログインページへの不正アクセスをシャットアウトすることを目的に開発しました。ログインページ不正アクセスやログインのログ管理、管理者ログイン時のメール通知機能などを備えています。よろしかったらお試しください。