簡體   English   中英

安全地將信息從Web表單發送到電子郵件地址

[英]Securely sending information from a web form to an email address

是否可以讓用戶在HTTPS安全站點上的表單中輸入信息,然后使用PHP將該信息安全地發送到電子郵件地址? 如何加密電子郵件,以便從HTTPS站點發送和通過HTTPS電子郵件檢查它之間是否安全? 這有多可行,潛在的缺陷是什么?

您可以使用PGPS / MIME加密電子郵件。 這些將需要您的客戶端的特殊支持來解密。 大多數網絡郵件提供商都沒有這個(盡管可能有例如Firefox擴展使它工作)。

除了像PGP或S / MIME這樣的端到端加密之外,由於電子郵件的明文遺產,它實際上是不可行的:

  • 可以使用TLS(帶有SMTL STARTTLS擴展名)在MTA之間傳輸電子郵件。 但是,沒有辦法將消息標記為需要它。 您可以 MTA配置為需要STARTTLS,而不是其他任何人。 (請注意,除非您有root用戶,否則甚至無法配置MTA。)MTA的默認和正常配置將很樂意接受通過TLS發送的消息,並將其轉發為純文本。
  • 在需要時添加繼電器是正常的。 在實踐中,它們很常見。 因此,在最終交付之前,您的消息可能需要幾個跳。 您可以強制第一跳的TLS,但不能強制執行其他任務。 您可以檢查Received: headers以查看消息占用了多少跳,但這可能隨時發生變化(出於操作原因,它可能會因消息而發生變化)。
  • 一般來說,傳輸過程中的郵件會寫入磁盤。 正常的MTA進程是接受消息,寫入磁盤,確認接收,向下一個MTA發送消息,等待確認,從磁盤刪除。 您當然可以配置MTA以將這些存儲在加密的磁盤上,但通常不會這樣做。
  • 一旦“交付”,郵件通常以明文形式存儲在磁盤上。 您的網絡郵件提供商可能會這樣做。
  • 如果您使用非Webmail客戶端訪問該電子郵件,則很可能以純文本格式將郵件下載到磁盤。 然后,您可以在隨機桌面PC上找到未加密的消息。 MUA甚至可以通過因特網以純文本形式傳送消息。
  • 任何機器都可以輕松訪問電子郵件。 尤其是網絡郵件。 對於您或您公司中的其他人來說,登錄到從隨機設備發送消息的帳戶將非常誘人。 你能保證這些設備都沒有安裝任何惡意軟件密鑰記錄器,會話劫持器,屏幕刮板等嗎? 你能保證任何用戶都不會忽略證書警告,實現了中間人攻擊?

除了一些最大的網絡郵件提供商,他們可能沒有足夠的安全性來保護機密身份數據。 例如,如果你打電話給他們並說你忘記了密碼,他們如何處理? 或者,如果有人叫起來,假裝是你。

最后,即使使用PGP或S / MIME,您仍然會遇到以下問題:在現實世界中,電子郵件可能並且確實會丟失。 您的網站可能會發送郵件,確認郵件已被接受傳遞,然后該郵件永遠不會到達 - 甚至不會發送到垃圾郵件文件夾。 這對於有價值的數據通常是不可接受的。

注意:如果使用PGP或S / MIME加密消息,使用合理的設置(例如, 3072位或更高的 RSA密鑰對,AES密碼),那么電子郵件消息(密文)是否被公開並不重要; 沒有私鑰,它是不可讀的。 使用的加密與TLS非常相似(但遺憾的是,它不提供完美的前向安全性作為其離線協議)。 端到端加密可以防止端點之間的不安全感。 並不是說我主張在報紙上打印cihertext,但即使這樣也應該是安全的。 當然,您必須保持擁有私鑰的機器(並解密電子郵件)安全。

只發送最后四位數字。 比如!!!! - && - 8590。 如有必要,向他們發送安全鏈接以在線查看號碼。 還要記住,在某些地區存儲社會安全號碼或明文中的任何敏感信息是非法的,總是加密或編碼您的數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM