HTTPS查询字符串是否安全?

HTTPS查询字符串是否安全?

我正在创建一个使用HTTPS的基于Web的安全API;但是,如果我允许用户使用查询字符串配置它(包括发送密码),这是否也是安全的,还是应该强制通过POST来完成呢?



慕田峪9158850
浏览 337回答 3
3回答

斯蒂芬大帝

是的,是的。但是使用GET处理敏感数据是个坏主意。有几个原因:主要是HTTP引用程序泄漏(目标页面中的外部图像可能泄漏密码[1])密码将存储在服务器日志中(这显然是错误的)浏览器中的历史缓存因此,即使Querystring是安全的,也不建议通过querystring传输敏感数据。[1]尽管我需要注意的是,RFC声明浏览器不应该将引用从HTTPS发送到HTTP。但这并不意味着一个糟糕的第三方浏览器工具栏或外部图像/闪光灯从HTTPS网站不会泄露。

天涯尽头无女友

从“嗅探网络数据包”的角度来看,GET请求是安全的,因为浏览器将首先建立安全连接,然后发送包含GET参数的请求。但是get url将存储在用户的浏览器历史记录/自动完成中,这不是一个存储密码数据的好地方。当然,这只适用于使用更广泛的“Webservice”定义(该定义可能从浏览器访问服务),如果只从自定义应用程序访问服务,这不应该是一个问题。因此,至少对于密码对话框,最好使用POST。此外,正如在链接中指出的,发布的Littlegeek更有可能将GET URL写入您的服务器日志。
打开App,查看更多内容
随时随地看视频慕课网APP