質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

2回答

406閲覧

ページにアクセスせずフォームを送信する方法はありますか。

taiga39

総合スコア18

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2020/10/13 02:17

起きている問題

1000通ほどの大量のメールが届いた。

メール送信はPHPの「mb_send_mail」を使っている。
セッションを使い、リロード時の多重送信などは防いでいる。
そのため、入力欄を自動でランダムな文字列で埋めるBotのようなものを使っていると予想した。

reCaptchaなどはまだ入れていない。

しかし、Google analytics(以下Ga)ではページビューが増えていなかった。
この場合どうやって大量のメールを送信したのでしょうか。

疑問

ページにアクセスせずにフォームを送信する方法があるのでしょうか?
Botだとしてもアクセスはされるためページビューは増えると思うのですが、ここが間違いでしょうか。

なにかしら方法や対策があれば教えていただきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gouf

2020/10/13 02:22

話題が混ざっているような気がします。知りたいことは「フォーム無しにも ページにアクセスする方法」でしょうか、それとも「多量メール送信に対する対策」でしょうか? 質問内容は1つに絞り込むと、回答が得られやすくなると思います。
m.ts10806

2020/10/13 02:40

ひとまず、そのページおよびフォーム、リクエストへのアクセスを閉じる必要があるのでは。
guest

回答2

0

たとえば、フォームの項目を直接 Action 先のPHP にPOST メソッドで、送信することで、フォームの入力画面を経由せずに送信は可能と思います。

Google analytics は、フォームのあるページに付けていると思われますので、 Webサーバーのアクセスログを確認すると Action 先の PHP に直接アクセスしているということはないでしょうか?

投稿2020/10/13 02:23

CHERRY

総合スコア25175

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

リクエストは様々な方法で送ることができます。
リクエスト先のURLが分かっていればcURLなどの機能を利用すれば画面にアクセスする必要はありません。
公に提供されているAPIなどはその方式で必要なパラメータを受け取ってそれに応じたデータを返しています。

対策はそのAPIが取られているような対策をすることになるかと思います。

  • 不要なパラメータを含んでいないか
  • 必要なパラメータを含んでいるか

画面にアクセスしない直接のリクエスト=フォームが管理されているサーバーを経由していない
と言えますので、フォーム画面にアクセスのたびにランダムな文字列を発行しておき、セッションに保存し、セッションに保存された文字列として送られたパラメータが合っているかを確認したり。
用語的には「ワンタイムトークン」とかでしょうか。「CSRF対策」とかでも結構出てきます。
(必ずしもワンタイムではなくても良いらしいです)

ただ、メール送信のフォームとなると他にも脆弱性対策は必要に思います。
安全なWebサイトの作り方」や俗に「徳丸本」と言われるウェブアプリケーションのセキュリティ関係の資料は確認しておいた方が良いかと思います。

※一定以上の対策ができるまでは、当該機能は閉じておいた方が良いです

投稿2020/10/13 02:51

m.ts10806

総合スコア80852

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問