カテゴリー : セキュリティ

ブログ内検索
 

ApacheでLet's Encryptの自動更新する為にCertBotを導入した

Let's Encrypt - Free SSL/TLS Certificates 当サイトをHTTP/2対応して表示の爆速化してみたの記事で Apacheで運営しているサイトでLet's Encryptを利用してhttpsからはじまるURLでサイトを表示できるようにしている。 Let's Encryptは3ヶ月毎に更新のため、 Let's Encryptのインストールの際、cronで期限が切れそうになったら自動更新するコマンドを登録していたけれども、 先日、期限切れを伝えるメ...

Read More…

 

SOY Inquiryで同一IPアドレスからの連続した問い合わせをブロックする

SOY Inquiryで悪質なお問い合わせをブロックする機能を追加しましたの記事で、 10秒に一回のペースで内容が空のお問い合わせが届き、 データベースとメールボックスの容量が空になりかけた ということがあった。 この問題に対して、 メールアドレスを必須にしていても空だった場合や 特定のメールアドレスのドメインをブロックすることで 迷惑なお問い合わせを防ぐことが出来た。 上記の記事でも記載した通り、 この対処ではまだツメが甘いわけで、 更なる対応をしてみた。 そ...

Read More…

 

SOY Shopでクレジットマスターの対策を強化しました

クレジットカードの番号を盗む方法として最近聞くのが、 クレジットカード支払いが可能なネットショップで、 様々なカード情報を試してみるというブルードフォースアタック(総当り攻撃)のカード版のような話がある。 SOY CMSで総当たり攻撃に対応してみた クレジットマスター - Wikipedia ネットショップを設置したサーバはもちろん、 クレジットカード代行会社のサーバの負担は大きいだけでなく、 オーソリ毎に使用料が発生する代行会社のサービスを利用している場合、 ...

Read More…

 

SOY ShopのPAY.JPクレジットカード支払いモジュールでカード情報非通過化対応をしました

PAY.JP - クレジットカード決済サービス 本題に入る前にPAY.JPクレジット決済モジュールですが、 詳しい説明が下記の記事に記載してありますので今回の記事を読む前に事前にご確認ください。 SOY ShopでPAY.JPクレジットカード支払いモジュールを作成しました SOY ShopでPAY.JP定期課金モジュールを作成しました 上記を踏まえた上で本題に入ります。 2018年8月1日14:00から加盟店(SOY Shopをインストールして、PAY.JPクレジット支払いモ...

Read More…

 

Apache上で利用しているLet's Encryptの失効

先日、当サイトのサーバを引っ越した。 引っ越した理由はバックアップスクリプトの実行時に使用するメモリが上限に達しつつあったため、 より大きなメモリを使用することができるVPSサーバを使用する必要が出てきた。 SOY CMSのサイトのバックアップをDropboxで行う 現在使用しているさくらのVPSでは、スケールアップというサービスがあって、実際はサーバの引っ越しせずとも対処はできたのだけれども、 スケールアップを行う – さくらのVPSニュース それを知らずにサーバを新規で借...

Read More…

 

さくらインターネットの共有サーバでLet's Encryptを利用して常時SSL化してみた

さくらインターネットから共有サーバでLet's Encryptが使用できるようになったという旨のメールが届いたので、 スタンダードプランで運営しているサイトで早速試してみた。 今回の文章を読む前に、 Let's Encryptと常時SSL化の記事のリンクを載せておきます。 Goで運営しているサイトでLet's Encryptを利用してみた 当サイトをHTTP/2対応して表示の爆速化してみた 常時SSL化はSEO上効果はあるか? それでは早速、Let's Encryptを設定...

Read More…

 

Socket.IOのチャットアプリでXSS対策

Socket.IOで個別チャットを作りたい後編 今までSocket.IOでチャットアプリを作ってきたけれども、 誰かが気軽に入力できて、他のブラウザで誰かから送信されたメッセージを表示できる。 送信時にHTMLタグを入れたらどうなるのだろう? そこらへんはSocket.IOはどういう対応になるのだろう? と気になったので、 strongで囲った文字列を投稿してみた。 ※strongで囲まれた文字列は強調文字(太文字)で表示される。 結果は太文字で表...

Read More…

 

PHPの古いバージョンでの不具合報告についての対応

公式のパッケージの更新が再開して、 それと連動して当サイトのお問い合わせが、多い週で週5回と格段に増え、 開発しやすい状態となりました。 お問い合わせの中で時々不具合の報告も入り、 不具合の報告自体は大変ありがたいのですが、 PHPのバージョンが低い環境での不具合の報告も多々あります。 PHPのバージョンが低いというのはPHPのセキュリティのサポートが終了しており、 重大な脆弱性が発見されても一切修正されないバージョンを指します。 ※この記事の投稿時点では、PHP5.5系...

Read More…

 

サイトを公開した直後にWordPressの管理画面ログインがあるか探られた

先日、公開ページを持たない管理画面側だけのサイトを公開したのよ。 ※Web上で使用できる業務アプリです。 SSLの設定の都合上、安いドメインを取得して設定した。 サイトを公開してから毎朝エラーログを確認していたんだけど、 突然エラーが急増した。 エラー内容を確認してみたら、 [Mon Apr 17 03:01:29.554689 2017] [:error] [pid 3538] [client 127.0.0.1:12345] script '/home/*********...

Read More…

 

人はネットワーク内から新しい信用のあり方を発見した

人は価値の象徴として鉱物から金を取り出した お金、すなわち貨幣の信用についての話題が出てきたら、 必ずといって良い程触れておきたいのが もちろんそう! ビットコイン! というわけで、 NTT出版のビットコインとブロックチェーンを何度も読んでみた。 これはコンピュータ関連に触れている人なら有名なオライリーという海外の出版社から発売されたMastering Bitcoinの翻訳版。 何故か、オライリーではなく、NTT出版から発売されている。 なに...

Read More…

 

総当り攻撃を仕掛けられたので、接続元を調べてみたら

どこのサイトとはここでは言いませんが、 知人のサイトが総当り攻撃を受けていた。 管理画面のURLは下記の方法を用いて、 わかりにくいものにしたにも関わらず、 ログイン画面を表示出来た時点でプロの仕業か? SOY CMSであれば、管理画面のURLを特定したい SOY CMSでは総当り攻撃らしきアクセスがあった場合、 SOY CMSで総当たり攻撃に対応してみた こんな感じで接続元のIPアドレスが記録されます。 接続元IPアドレスが身内でないか調べていたところ...

Read More…

 

SOY2DAOでプリペアードステートメントを利用する

前回、SOY2DAOクラスで、SQL構文をそのまま実行して、 一つの配列に結果がすべて入ったものを返すという内容を記載しました。 SOY CMS/Shopのモジュール内でSQLを実行する SQL構文をそのまま実行できることが分かれば、 次に知りたいのはプリペアードステートメントだよね。 プリペアードステートメントといえば、 例えば名前で検索するフォームを設置して、 入力した名前を元にSQL構文を作成して実行する時に用いられるもので、 これをしないと、SQLインジェクション...

Read More…

 

IP偽装をしてみた

少し前に、 接続元IPアドレスを知られたくない時にすることで ブラウザからどこかのサイトにアクセスする時、自身のIPアドレス(住所みたいなもの)を送ることを記載した。 IPアドレスで接続元の情報がどれだけわかるか調べてみたで、 実際にサイトにアクセスした時、運営側はどれくらいの情報がわかるのか?を調べてみた。 固定の回線であれば、地図情報である程度まで絞ることができ、 WiFiであれば全然違うところを指していたけど、 プロバイダ情報は常に知られているので、おそらく足が付く。...

Read More…

 

IPアドレスで接続元の情報がどれだけわかるか調べてみた

接続元IPアドレスを知られたくない時にすることで、 SNSのアカウントを乗っ取ることでどこから誰が接続しているかを隠すことが出来た。 そもそも、 接続元の情報ってどこまでわかるの?ということで、 What Is My IP Address? IP Address Tools and MoreというWebサービスでサイトにアクセスがあったIPアドレスを調べてみた。 ※接続があったと記載しているけど、自身でサイトにアクセスしています。 結果は、 どのプロバイダと契約...

Read More…

 

接続元IPアドレスを知られたくない時にすること

インターネット内に流れているパケットを傍受してみるでネットワーク内でやりとりされているパケットを傍受することが出来た。 傍受する際に利用したソフトをWiresharkという。 このWiresharkだけど、 データを取得した際、 こんな感じで、 SourceとDestinationにIPアドレスという住所みたいなものがやり取りの都度表示されている。 Sourceは この画面を表示したり、入力して送信したりしている、 いわゆる閲覧者側の位...

Read More…

 

インターネット内に流れているパケットを傍受してみる

Webサイトのフォームではhttpsにしないと大変なことになるよ という話をする機会が連日続いたので、 なぜ大変か?を実際に見てもらうことにした。 ※httpsは暗号化して通信する仕組み。httpの通信は暗号化していない。 SOY CMSの常時SSL化で対応したこと はじめにネットワークを監視するために Wireshark · Go Deep. オープンソース・ソフトウェアのネットワークアナライザをインストールしておく。 話を始める前に念を込めて書いておくと、 ...

Read More…

 

インストーラーで再インストール後にサイトを復元

SOY CMSでインストーラを削除せずにいたらどうなるか?で サーバに残っているインストーラを呼び出して再インストールしたら出来てしまった。 再インストールしたCMSにログインしてみると、 当然のことながら、サイトは存在していないが、 サイトを簡単に復元する方法があるので復元してみる。 インストーラで再インストールする時、 インストール先ディレクトリを_cms_の様な感じで、 前の管理画面URLとぶつからない様な値に変更する。 変更後にイン...

Read More…

 

SOY CMSでインストーラを削除せずにいたらどうなるか?

SOY CMSのフォーラムにインストーラを利用した方はインストール後にインストーラを削除してくださいと投稿されていたので、 インストーラを削除しなかった場合はどうなるのかを調べてみた。 SOY CMS フォーラム • トピックの表示 - インストーラー削除のお願い とりあえず、MySQL版のインストーラをダウンロードしてきて試す。 インストーラは /ルートディレクトリ/cms_installer となるように配置し、 ブラウザで、http://example.com/c...

Read More…

 

SOY CMS/ShopでPHPモジュールに使用の制限を設けました

CMSに不正にログインした後、何をする?の最後で、 SOY ShopのテンプレートエディタとSOY CMS/Shop両方のPHPモジュールで攻撃を仕掛けることが可能という内容を記載しました。 これは由々しい問題なので、 SOY ShopのテンプレートエディタにはSOY CMSのPHP許可モードを反映させ、 SOY CMSのPHPの記述を許可にしなければ、PHPは実行されない様に変更しました。 他にPHPモジュールも特別な設定をしなければ、使用出来ないようにしました。 ...

Read More…

 

CMSに不正にログインした後、何をする?

SOY CMSに総当り攻撃を仕掛けてみる。その4 前回までで総当り攻撃でログイン用のアカウントを特定することが出来た。 ログインできる様になったら何をする? これから記載することは世界中で使われているWから始まるなんちゃらプレスというCMSで起こったことをSOY CMSで再現してみる。 対象サイトにログインできるようになったら何をする? 顧客情報を除いて、顧客のメールアドレスを盗む? それとも公開しているサイトの改変してみる? いやいや、 もっ...

Read More…