Безопасная контактная форма?

В настоящее время я работаю над контактной формой (контактная форма электронной почты) для сайта somebody.

После некоторого исследования я услышал, что есть способы обеспечить вашу контактную форму, и это заставило меня задуматься.

1. Есть ли реальная большая угроза, если вы не «застрахованы», вы не контактируете с формой обратной связи? Какой будет худший возможный сценарий?

2. Если бы я следовал некоторым рекомендациям о том, как сделать безопасную контактную форму, с чего бы лучше всего начать? (Плагины, учебники, любые рекомендации помогут!)

Спасибо, парни !

0

Решение

«Безопасность» является чрезвычайно широкой темой, но для начала вы можете обезопасить передаваемые данные, купив (или создав свой собственный самозаверяющий) сертификат SSL. Это зашифрует любые данные, отправленные в вашу форму. Нужно ли вам шифрование, зависит от того, какую информацию вы запрашиваете. Если вы просто запрашиваете предложения, вам, вероятно, не нужно, чтобы он был слишком безопасным, но если вы запрашиваете конфиденциальную информацию, такую ​​как номера CC или SSN, на самом деле запрещено не иметь SSL (по крайней мере, здесь, в штатах).

0

Другие решения

1. Есть ли реальная большая угроза, если вы не «защищаете» свою контактную форму?

Вы должны рассматривать все вводимые пользователем данные как потенциальную угрозу. Это ваша ответственность, чтобы смягчить потенциальные угрозы в зависимости от вашего воздействия.

Серьезность угрозы не может быть обобщена: вам нужно посмотреть на ценность ваших активов, видимость приложения и тип атакующего, с которым вы можете столкнуться (автоматический / пассивный или целевой / активный).

2. Если бы я следовал некоторым рекомендациям о том, как сделать безопасную контактную форму, с чего бы лучше всего начать? (Плагины, учебники, любые рекомендации помогут!)

Многие прикладные платформы поставляются с некоторыми функциями безопасности форм, но вы по-прежнему несете ответственность за понимание механизма. Не существует таких вещей, как безопасность под ключ: контекст — это все.

Безопасность — это глубокая тема, но вот несколько рекомендаций:

  • никогда не доверяйте предоставленным пользователем данным
  • предпочитать белый список в черный список; если вы не можете внести в белый список, чем вы действительно должны понимать выходной выход
  • на самом деле так или иначе вы действительно необходимо понимать выходной выход: понимание данных в контексте и выходной выходной
  • понять протокол HTTP и понять, как PHP абстрагирует его

Вот несколько хороших прыжковых точек:

1