将登录凭据作为纯文本传递到HTTPS URL是否安全?
https://domain.com/ClientLogin?Email=jondoe@gmail.com&Passwd=123password
更新:所以我们假设这不是在浏览器中输入,而是以编程方式生成并通过POST请求(而不是GET请求)进行请求.它安全吗?
在GET请求中使用这种类型的URL (即在浏览器中键入URL)是不安全的,因为请求的URL将保存在浏览器历史记录和服务器日志中.
但是,作为POST请求https://domain.com/ClientLogin提交(即提交表单)是安全的POST body,因为在POST body连接到请求的URL之后加密并发送凭证作为其一部分.因此,表单操作将是https://domain.com/ClientLogin,表单字段值将在中传递POST body.
以下是一些帮助我更好地理解这一点的链接:
StackOverflow的答案问题:https URL是否已加密?
如何使用ASP.NET MVC 2 Preview 2 Futures RequireHttps属性?
我想防止将不安全的HTTP请求发送到操作方法.我想自动重定向到HTTPS.
MSDN:
我该如何使用此功能?
嗨,我正在尝试获取推荐人网址,但当访问者从Paypal访问网站时,它不起作用
$ref = $_SERVER['HTTP_REFERER'];
echo $ref;
Run Code Online (Sandbox Code Playgroud)
如果访问者来自Paypal的网站,有没有一种简单的方法来获取paypal网址?
编辑和澄清: 我不打算在Paypal网站上进行任何特殊设置(包括但不限于:IPN,设置返回URL,付款数据传输或Paypal网站上的任何其他特殊设置)我只是当访问者从Paypal访问该站点时,查看是否获得URL引用,关于事务状态(如果有的话).
正如鲍勃从手册中指出的那样
$ _SERVER是一个包含标题,路径和脚本位置等信息的数组.此阵列中的>条目由Web服务器创建.无法保证每个Web服务器都能提供这些服务; 服务器可以省略一些,或提供此处未列出的其他服务器.
因此,唯一的问题是 - 如果没有在paypal网站上设置某些内容,是否有任何解决方法?
在Implicit Grant中,访问令牌在回调URL中发回.这不是安全风险,因为如果此回调URL缓存在跃点中.一般情况下,建议不要在URL参数中发送敏感数据,并且此访问令牌将是访问所有安全用户资源的令牌.那么为什么它会在URL中作为片段传递
我正在向 URL https://username:password@example.com发送 POST 请求在我的脚本中。我知道 HTTPS 加密凭据,因此它们不应该在网络上可见。
但是服务器日志呢,它们会在那里可见吗?
使用这种方法还有其他缺点吗?
如何使客户端/服务器端的身份验证更安全?
我有一个ASP MVC 3网站,它有一个反馈表,应该要求SSL.
现在,我在名为"ContactUs"的控制器中有一个名为Feedback的操作,负责查看和处理反馈.
当我[RequireHttps]在该操作上使用该属性时,它运行良好,并将URL更改为"https".但是,我注意到我页面中的所有链接现在都指向"https"!好像这个属性迫使路由引擎将相同的内容应用到所有链接!
当然,只有这个单一动作才需要SSL,其余所有动作都需要正常的http.
谁能告诉我如何解决这个问题?
我知道查询字符串的最大长度因浏览器而异.Internet Explorer最多可包含2048个字符.
如果我在代码中执行URLEncode,这些编码字符是否会被视为额外字符?
例如,假设我有两个文本框.在通过查询字符串HttpUtility.UrlEncode(TextBox2.Text)传递文本框的值之前,我执行然后通过查询字符串将这些文本框值传递给另一个网页.
假设URL可能如下所示:WebForm2.aspx?Username=Kutti&Password=Pa%26%26word.
这个编码的东西%26%26是否会被视为URL中的额外字符?
换句话说,它会采取Pa%26%26word相同的字符Pa&&word吗?
我正在研究如何使用pdfjs查看器来提供受保护资源背后的PDF.
根据我的理解,如果资源允许匿名访问,这将有效:
https://app.com/pdf.js/web/viewer.html?file=https://app.com/pdf/{id}
资源https://app.com/pdf/{id}返回内容类型的响应application/pdf.
但是,该资源要求OAuth2令牌出现在授权标头中.那么是否可以修改查看器创建的标头,包括授权标头并传递用户的标记?
最近我们从URL中删除了jsessionid做了基于cookie的会话管理,以防止"会话劫持攻击"
但我们发现,当启用cookie并且后续请求URL没有jsessionid时,第一个请求URL始终具有jsessionid.
使用第一个网址的jsessionid,我们可以直接点击工作流程中的其他页面
问题:是否有任何安全漏洞仅在第一次请求时暴露jsessionid?
有一个解决方案可以从第一个请求中删除jsessionid,但是想要检查一下,如果它真的很容易要求更改
谢谢J
编辑:我澄清了我的疑问.谢谢你的回复.
使用URL中的敏感数据进行HTTPS/SSL GET操作是否有任何安全隐患?这将在IIS日志中以明文形式记录吗?可以在开放的WiFi接入点上嗅探网络流量请求吗?
即 https://www.websiteurl.com/get.aspx?user=user&password=password
在过去的几个月里,我自己开发了关于java(servlets和jsp)中的web开发.我正在开发一个主要服务于应用程序的Web服务器.实际上它正在谷歌应用程序引擎上运行.我担心的是,虽然我使用SSL连接,但在URL中发送参数(例如https://www.xyz.com/server?password=1234&username=uname)可能不安全.我应该使用其他方式还是真的安全?我不知道这个url是否作为plaint文本整体传递(带参数)?
任何帮助,将不胜感激!
可能重复:
REST中的PUT与POST
我知道这已经讨论了很多,虽然我有点理解,但我并没有完全理解.我想如果有人可以通过以下示例回答这个问题,那么这将使其易于理解.
创建新用户 - 将新用户添加到发送用户名,密码,电子邮件的数据库.PUT还是POST?
我想也许是PUT,因为我不想拥有重复的用户,PUT就像删除和替换.但是,我有检查,以避免用户被添加两次,所以也许我应该使用POST?
更新用户 - 更改电子邮件或密码.PUT还是POST?
我可以使用URI api/update/my_username,然后通过正文发送新的电子邮件,那么这应该是PUT吗?我也可以在URI中发送它,例如api/update/my_username/email/new_email@email.com
现在我们可以直接从客户端调用 HTTPS 函数,我想知道是否可以将它用于敏感的事务请求以及它是否安全。之前我使用带有 POST 方法的表单,但这可以使事情变得更简单。
通话从头到尾都加密了吗?
firebase firebase-authentication google-cloud-functions google-cloud-firestore
security ×5
https ×4
asp.net-mvc ×2
ssl ×2
actionlink ×1
asp.net ×1
c# ×1
firebase ×1
http-referer ×1
hyperlink ×1
java ×1
javascript ×1
jsessionid ×1
oauth-2.0 ×1
paypal ×1
pdfjs ×1
php ×1
query-string ×1
requirehttps ×1
rest ×1
url ×1
url-encoding ×1
web ×1