自サイト内検索用CGIスクリプト

MyWebSearch Ver.1.23

本ソフトウェアは開発を終了しました。基本的に今後のバージョンアップはありません。詳しくは使用許諾書の「開発終了(TNZ指定)ソフトウェアについて」をご覧ください。

概要

小規模Webサイト向けの、自サイト内検索用CGIスクリプトです。Webサイト内のHTML文書やそのほかのテキストファイルから、特定の単語や文字列を含むものを探し出して一覧表示します。毎回すべてのファイルを読み込んで検索するいわゆるgrep型であり、インデックス構築の必要はありません。そのかわり(grep型の常として)動作は比較的低速で、サーバーへの負荷もそこそこかかります。検索対象文書の総数が100個から200個程度のWebサイトでの利用を想定しています。

特徴

動作環境

Perl 5.005以降をCGIで利用可能なWebサーバー

参考文書

本スクリプトは、設定ファイル、本体ともに漢字コードがEUCとなっているため、これに対応していないエディタでは編集できません。お使いのエディタがEUCに対応していない(あるいは自動判別できない)場合は、「Perlスクリプトの編集に適したテキストエディタの紹介」という文書を作成しましたのでご参照ください。

バージョンアップ時の注意点

新しいバージョンに入れ換える際、設定項目が増えている場合があります。その場合、添付の設定ファイル(config.pl)内で、どのバージョンでどの項目が加わったかが分かるようになっているので、必要なもの(自分の使っているバージョン以降に追加されたもの)を既存の設定ファイルにコピーしてください。

ダウンロード

lha形式とtar.gz形式のアーカイブを用意しています。内容は同一ですので、お使いの環境で扱いやすい方をダウンロードしてください。

mws123.zip(47.2KB)
mwsearch-1.23.tar.gz(43.1KB)

ドキュメント

配布ファイル内に入っているものと同一です。

mwsearch.readme.html

更新履歴

Ver.1.23 2011/12/08(Thu)

約10年ぶりのバージョンアップです。今回JPCERT/CCより脆弱性の指摘を頂き、修正を行いました。名も知らぬ報告者様と、仲介いただいたJPCERT/CCに感謝を。

脆弱性の内容は、入力されたキーワードのエスケープが適切ではないため、CGIの呼び出し時にパラメーター 「keywords」に対してHTMLを含む文字列を指定することにより、その内容がそのまま表示されるというものです。これにより、ブラウザー上で任意のスクリプトが実行される恐れがあります。

攻撃手段としては、スクリプトなどを仕込んだkeywordsパラメーターを含むCGI呼び出し用URLを生成し、別のWebページ上からのリンクなどで誘導する、といったものが考えられます。このように、攻撃者は攻撃対象者を何らかの手段で特定のURLにアクセスさせる必要があるため、本脆弱性の影響は、単にスクリプト等を仕込んだWebページへアクセスを誘導するのと同程度に限定的であると作者は考えています。

なおこの脆弱性により、本スクリプトを設置したサーバー上の情報が漏洩することはありません。

Ver.1.22 2003/03/23(Sun)

Ver.1.22 2002/01/28(Mon)

Ver.1.21 2001/06/06(Wed)

Ver.1.20 2001/05/30(Wed)

Ver.1.10 2001/04/18(Wed)

Ver.1.01 2001/03/05(Mon)

Ver.1.00 2001/03/01(Thu)

Copyright©1998-2005 Yujiro Nakamura All rights reserved.
本サイトに関するご連絡の方法はreadmeをご参照ください。
本Webページの無断引用、本Webページへの無断リンクを歓迎します(笑)。