• ベストアンサー

安全なお問い合わせフォームを安くつくる方法。

はじめて投稿します。よろしくお願いします(>_<) 会社の事情で、素人同然の私が「Webディレクター」的なことをしなければならないという状況になり、とっても困っています。 --------ミッション 会社からのミッションは、Webサイトに「お問い合わせフォーム」を設置するというものです。 ※ちなみに私は、お問い合わせフォームというのが、何と何で成り立っていて、どんな仕組みで動いているのか、それさえ分からない素人です。 個人情報を入力させることになるので、出来るだけ安全で、出来るだけ安く、つくれたらと思います。 ※ちなみに、現状は「mailto:」です。 ・なんかカッコ悪い ・お客さんから「使いにくい」とクレームがある ・お客さんのメアドや名前をラクに管理したい などの理由から、このたびお問い合わせフォームを設置することになりました。 お客さんの情報は、総務の女の子がエクセルに入力して、管理しているような状況ですので、それもどうにかしたいです。 --------いまの状況 自分で出来る限り調べましたら、 ・perlとCGIを使うのがメジャーな方法 ・SSLを使うと、クライアントとサーバー間は安全 ・レンタルサーバはSSL対応(エックスサーバという会社だそうです) ・SSLを使えば安全というわけじゃない ・HTMLでフォームのページをつくってから、証明書をもらう???(とは何のことだろう・・・) これだけのキーワードを拾うことができました・・・ がしかし、限界です・・・^^;;; --------知りたいこと ちなみに、私ができるのは、HTMLでフォームをコーディングすることだけです。 お問い合わせフォームには何が必要なのか・・・ そして何を外注して、何を自分でやればいいのか・・・ 段取りをご教授ください!

  • CGI
  • 回答数3
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • abril
  • ベストアンサー率69% (388/560)
回答No.2

単にお問い合わせフォームを作りたい・情報の管理を効率よくしたい、というご要望だけでなく、件名が「安全なお問い合わせフォーム」という事ですし、お調べになった項目の中にも「SSLを使えば安全というわけじゃない」とありますので、個人情報の流出を防ぐ対策も重要視している、という事ですよね? 入力フォームを作ってデータを受け取り且つ管理が楽になる様なシステムを作る、というだけであればANo.1の方が沢山挙げて下さっている様に、サンプル・プログラムは沢山ありますし、最低限の知識があればカスタマイズ可能です。しかし、セキュリティ対策…という事になるとやはりそれなりの知識とスキルが要求されるでしょう。そうなると専門のノウハウを持ったところへアウトソーシングするのもやむを得ない場合も出てくるかもしれません。 XSS(クロスサイトスクリプティング)、SQLインジェクション、といった様なキーワードでググってみるとこの点の更なるヒントが得られると思います。 下記のコンテンツなども一読されておくと参考になるかもしれません。 【参考】http://www.ipa.go.jp/security/index.html ちなみに、 > ・HTMLでフォームのページをつくってから、証明書をもらう???(とは何のことだろう・・・) ここで仰っている「証明書」とはSSLのデジタル証明書の事でしょう。SSL自体は質問者様ご使用のエックスサーバでもプランによって利用可能の様です(http://www.xserver.ne.jp/functions.php)が、実際にそのSSL使用のコンテンツを公開する際には”このSSLは安全です”といった太鼓判の様なものが必要です。それを、然るべきところ(レンタルサーバの会社とはまた別です)に手続きを申請して証明書を発行してもらい、コンテンツ上に所定のセキュアドシール(「証明書があるぞ」という様な事を示すマーク(リンク付き)の様なものです)を貼って、閲覧者へ安心感を与える事ができます。 有名なところではベリサイン(http://www.verisign.co.jp/)などがありますね。多分、ここのシールはよく目にしておられるのではないかと思います。

u9girl
質問者

お礼

大変丁寧にありがとうございます。 べリサインは見たことがありました! けっこうお金かかるんですね。(そりゃそうですよね・・・) セキュリティ対策、難しいけれど、とても勉強になります。。。 XSSとSQLインジェクションを調べました。 やはり詳細は理解できませんでした・・・ 素人なりの解釈ですが、つまり、WEBサーバとクライアント間はSSLで守られても、WEBサーバにあるデータベースから個人情報を盗んだりすることはできる・・・っていうことでしょうか? つまり、XSSとかSQLインジェクション対策をする必要があるのだけど、それだと、専門家に頼むのもやむをえない・・・と。

その他の回答 (2)

  • abril
  • ベストアンサー率69% (388/560)
回答No.3

ANo.2です。 > べリサインは見たことがありました! > けっこうお金かかるんですね。(そりゃそうですよね・・・) ベリサインは有名どころ、という事もあって安価な方ではないですね。もう少し低価格の会社もありますよ。下記の様なサイトで各社の比較チャートを見ることもできますのでご検討されてみてはいかがでしょう。 【参考】http://sslreview.jp/content/table/index.html > XSSとSQLインジェクションを調べました。 > WEBサーバとクライアント間はSSLで守られても、WEBサーバにあるデータベースから個人情報を盗んだりすることはできる そんな感じです。あとは、データを盗む以外にもサーバに対して攻撃をしかけてサイトに意図しないコンテンツを表示させる、といった行為も可能になります。 ごく大雑把に説明すると、入力フォームの欄は、クライアント(閲覧者の端末)側からデータをいれてサーバ側に送信する事ができますよね。その時に、XSS対策を何も施していないと、普通のテキストデータではなく実行力を持ったスクリプトを入力して送信する事も可能なんですね。 例えば、以下はWikiに載ってた例をそのまま引用させて頂きますが、文章を書き込めるBBSの様なものがありますよね。 そこの入力欄でただ”Hello”と入力した場合は単に、ブラウザには「Hello」と表示されるだけですが、入力欄にJavaScriptのコードで”<script>alert("警告")</script>)”と入力した場合、ブラウザ側はこの「スクリプト」を実行してしまうので、画面上に「警告」というメッセージがポップアップで表示されてしまいます。 【参考】http://ja.wikipedia.org/wiki/%E3%82%AF%E3%83%AD%E3%82%B9%E3%82%B5%E3%82%A4%E3%83%88%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0 SQLインジェクションは、やはり入力フォームから”別のSQL文(SQLというのはDBにアクセスして情報を引き出したり登録したりするのに特化した言語とでも解釈しておいて下さい)を「注入 (inject)」”する事で、制作者側が本来意図していなかったSQL文を発行してDBの操作をする事ができる攻撃方法です。注入されたSQL文によって、DBに登録された情報の漏洩・改竄・破壊という事も可能になってしまうのです。 【参考】http://ja.wikipedia.org/wiki/SQL%E3%82%A4%E3%83%B3%E3%82%B8%E3%82%A7%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3 これらの事態を防ぐ為に、通常は制作段階で入力された値をそのまま受け取らない様に各種サニタイズ(入力されたデータの危険な部分を無力化する操作)というのが施されます。例えば、HTMLタグを埋め込まれても実態参照に置き換えてただの文字列にしたり、SQL文が入力された場合は実行力のある文字に対して適切なエスケープをする事などで無効化したり、といった様な事です。 > XSSとかSQLインジェクション対策をする必要があるのだけど、それだと、専門家に頼むのもやむをえない 社内でそれに対応可能なスキルを持つ方がいるとか、それらの対策の為に必要な学習をして習得をした後に設置する、という事が可能な状況でなければそれしか選択肢がない様に思われます。 「安全」にはそれなりの対価を払う事が必要でしょうし、「安価」にはリスクを抱える事への覚悟もしくは社内で賄える様になる為の時間が必要でしょう。

u9girl
質問者

お礼

大変丁寧な回答、ありがとうございます。 ものすごく勉強になりました。 (インターネットを利用することがちょっぴり怖くなりました(^^;) 社内での個人情報の取り扱いからして問題がありますので、やはり、慎重にことを進めないといけないですね。 フォームの設置やインターネット上でのセキュリティ対策は、専門家の方にお願いしようと思います。 有難うございました!

回答No.1

「メール フォーム cgi」 「メール フォーム PHP」などで検索すれば、無料のメールフォームはたくさん発見できると思います。 http://www.synck.com/contents/download/cgi-perl/mailform.html http://www.rocomotion.jp/phpms/pm_mail.php http://www.keitai-site.net/php/mailform_php/ http://www.yumemaboroshi.net/cgi4315/

u9girl
質問者

お礼

ありがとうございます! >http://www.synck.com/contents/download/cgi-perl/mailform.html​ これはすばらしいですね! こんなのを無料で使わせてくれるなんて・・・ セキュリティ面で会社と相談ということになってしまいそうですが、このサービスはすごく有益な情報でした。 ありがとうございました!

関連するQ&A

  • お問い合わせフォーム・・・送信できるようにするには?!

    はじめまして。お問い合わせフォームの作成の仕方について教えていただきたいのですが・・・、 独学で、HTMLとCSSでWEBサイトを作成しお問い合わせフォームも作成しました。ただしフォームの作成というのが初めてでこれを送信できるようにするにはどうしたらいいのかわかりません。 CGI?PHP?の知識が必要になるということはいろいろなサイトを見てわかってきました。いずれは勉強してみたいと思うのですが、友人に頼まれたサイトということもあってアップしたい時期も押し迫っています。もっとも簡単に設置する方法はないのでしょうか。 PHP・CGIフォームを「フリーでお使いください」などとプログラムを公開しているサイトもみつけましたが、素人の私には説明が足らず、それすらどうしたら良いのかわかりません(*_*;

    • ベストアンサー
    • PHP
  • 問い合わせフォームをSSL対応させたい

    HTMLに関しては素人以上の知識がありますが、プログラム言語やセキュリティに関しては全くの素人です。 現在サイトからの問い合わせフォームに入力された個人情報を含む情報がCGIによりメールで届くようになっているのですが、 これをきちんとSSL対応させたいと思い、認証局からの証明書は取得しました。レンタルサーバーを利用していますが、SSLには対応しています。 さてここからなのですが、このまま入力フォームのあるページに HTTPSからアクセスしてみたところで、入力された情報がメールで送信されるのでは サーバ→メーラー間の情報送信は暗号化されないのですよね。 いろいろ調べた結果、phpMyAdminを利用してデータベースを構築し、 フォームに入力されたデータをサーバー上のデータベースに格納、 WEBブラウザで管理画面に入りデータを閲覧する、という方法で これを実現するのが正解なのか、というのが自分の中での結論になりつつあります。 しかしそれを自分の力で解決するにはあまりに難しく非現実的そうです。 そこでお伺いしたいのですが、私のこの結論は考えすぎでしょうか? MacOSXでEntourageを使用しており、SSLのオン/オフが切り替えられるようなのですが、 これをオンにするだけで問題は解決されるのでしょうか。 (実際オンにしてもタイムアウトでメールは受信できなかったのですが) コストがかけられないのでなんとか自分の手で解決したいのですが、 調べていくうちに混乱してしまい途方に暮れています。 他にもっと簡単な方法があるとか、まずは何から勉強するのが良いのかなど、 どんなことでもいいのでアドバイスをいただければ幸いです。 サーバーシステムはLinuxでPHPのバージョンは4.4.1です。 よろしくお願いいたします。

  • お問い合わせフォームを作ったのですが・・・。

    HP作成ソフトでお問い合わせフォームを作りました。 色々なサンプルソースを見ながら初心者なりに仕上がりました(喜!) nameで指定したり、少しずつ理解しながら修正も出来る様になりました。 そんな中今頃になって一つ疑問が出てきてしまいました。 お問い合わせフォームの受信先の指定は必ず必要かと思いますが、色々参考にさせて頂いたお問い合わせフォームにもアドレスを指定していないものと、しているものとある様です。(SSL機能も利用しようと思っています。そこのサーバーでは、SSL機能は簡単にコントロールパネルでアドレスを指定するだけで利用出来る様です。) どうしてそれぞれ違うのかその区別が理解出来ていません。 ここにきて、かなりビギナーで未熟な質問ですみません。 ご面倒かとは思いますが、教えて下さい。宜しくお願いします。

  • SSLの領域で運用されているショッピングカートやお問い合わせフォームの記入内容の受け取り方

    オンラインショップを運営しております。まったくの自己流なのですが月商が百万円を超えるようになってきました。ショッピングカートやお問い合わせフォームなどを設置し、お客様が入力された内容はメールのかたちで受信できるようにしております。 最近になってセキュリティの観点からショッピングカートやお問い合わせフォームをSSLの領域で運用しなければならないように思い始めました。(対応が遅すぎるのですが。。。) SSLについて調べてみると、お客様と当店のホームページのやり取りは暗号化されて安心だということは分かったのですが、お客様にショッピングカートやお問い合わせフォームで入力頂いたデータを、これまで通りサーバーから送られてくるメールをメーラーで受信していては、サーバーからメーラーへ送信されている間のセキュリティに問題があるように思えてきました。 SSLの領域で運用されているショッピングカートやお問い合わせフォームに入力されたデータは、通常どのように受信されているのでしょうか? 的はずれな質問かも知れないのですが、ご指導頂ければ幸いです。宜しくお願い致します。

  • WEB問い合わせフォームの暗号化

    WEB問い合わせフォームの暗号化について調べているのですが、 問い合わせフォームだけSSLにしても、確認メールなどもなんとかしないと意味がないという記事をネットで見かけました。 一般的に、問い合わせフォームの暗号化などをちゃんとしているところは、問い合わせフォームの入力~確認メールを、どのような形で作られているのでしょうか。 よろしくお願いします。

  • SSL対応のお問い合わせフォームで問い合わせを受ける場合、その問い合わ

    SSL対応のお問い合わせフォームで問い合わせを受ける場合、その問い合わせ内容をメールで受信する場合、内容は暗号化されるのですか? 初歩的な質問ですみません。 会社サイトを運営していて、お客様のお問い合わせ内容と個人情報を通常のメーラーで受信する方法にするとSSLを使っている意味がなくなってしまうのでしょうか?

  • WEB問い合わせフォームのサーバメール暗号化

    WEB問い合わせフォームのサーバメール暗号化について質問です。 httpsでWEBからの入力はSSLで暗号化されていますが WEBサーバがphpやCGIなどでメールサーバを使い問い合わせ内容などを メール送信処理する際はメール自体は暗号化されていません。 これですが、対処法はあるのでしょうか? メールサーバにpop over sslをいれるなどあるかと思いますが そもそもクライアントのメーラーにもpop over ssl対応設定を入れる必要がある気がします。 問い合わせ者を答える人が特定されていれば有効ですが 同じ内容を問い合わせした人にも送るパターンの場合対応 メールを受けるクライアントが不特定であまり有効でない気がします。 一般的にはどういった対応をしているのでしょうか?

    • ベストアンサー
    • PHP
  • 企業サイトでSSLのない問い合わせフォームってどう思いますか?

    企業サイトを色々見ていたら、問い合わせフォームや見積もりフォームでもSSLのない問い合わせページって結構あることに気付きました。 これってどうなのでしょう?企業なら個人情報保護などの観点からSSLあって当然だと思ったりするのですが、そんなに神経質になるほどのことでもないのでしょうか? あと問い合わせボタンをクリックするとメーラーが起動するだけのものも結構見かけましたが、ひょっとしてその方が安全だったりするのでしょうか? 詳しい方お教えくださいm(__)m

  • WEBサイトのフォーム作成で送信情報を保護したい

    お問合せフォームを作成し、postで送信してもらいます. サーバは受け取るとsendmailを起動しWEB管理者や受付担当者にメールを送信します. (問合せしたフォーム送信者にもWEB管理者を送信元にして控えを送信します.) この流れにおいて全てのプロセスでSSLは有効でしょうか? 特にサーバが起動して送信するメールにもSSLが有効となるのか疑問に思いました. SSLが有効なのはhttpのプロトコルによるサーバとクライアントの間の送受信時のみと思っているのですが、考え違いはないでしょうか? また、サーバが送信するメールにSSLが効かないとすると、保護する方法はありますでしょうか?

    • 締切済み
    • PHP
  • お問合せフォームのエラーについて教えて下さい

    現在、お問い合わせフォームを友人のHPに設置しているのですが、フォームからのメールが友人に届く人と届かない人がいるそうなのです。 自動返信メールは送信者の方には届いていたそうなのですが。 友人にフォームメールが届いていなかった方は、いつまで待っても返事が来ない為 電話をかけて来たそうで、そこで友人も初めてわかったそうです。 そういう方が数人いて、何故なのか?と聞かれましたがさっぱり見当が付きません。 フォームから送られるすべてのメールが届かないのならともかく、大半の方は問題なく利用でき 数名の方からのメールのみが、友人に届かないなんて・・・。 共通点でもわかれば・・・と思ったのですが、友人もお客様に対してそこまでいろいろ状況を聞けなかった様で不明です。 とても、アバウトな質問で申し訳ないのですが、どなたか【これが原因じゃないか?】と思いつく 事があればお願いします。 ちなみにサーバーはGMOのサーバーをレンタルしており無料サーバーではありません。 フォームは、無料で配布されていたものですが、他のHPでも利用してますが 今まで特に問題があった事はありません。 宜しくお願いします。

専門家に質問してみよう