这是我的浏览器在登录某个网站时发送的内容:

POST http://www.some.site/login.php HTTP/1.0
User-Agent: Opera/8.26 (X2000; Linux i686; Z; en)
Host: www.some.site
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: en-US,en;q=0.9
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://www.some.site/
Proxy-Connection: close
Content-Length: 123
Content-Type: application/x-www-form-urlencoded

lots_of_stuff=here&e2ad811=my_login_name&e327696=my_password&lots_of_stuff=here

我是否可以声明任何人都可以嗅探该网站的登录名和密码? 也许就在我的局域网上? 点击 如果是这样(即使只在局域网上)那么我很震惊。我想用

<input type="password">

做了更多的事情而不是让所有角色看起来像'*'

P.S。如果重要的话我玩netcat(在linux上)并建立连接
浏览器<!> lt; = <!> gt; netcat(loged here)<!> lt; = <!> gt; proxy <!> lt; = <!> gt; remote_site

有帮助吗?

解决方案

发送到http连接的每个数据都可以通过您路由到服务器的人(中间人攻击)。

<!>

型= QUOT; <!>密码QUOT;只能在屏幕上隐藏字符,甚至计算机上的其他程序也可以读取数据。

保护数据的唯一方法是发送SSL(HTTPS而不是HTTP)

其他提示

<!>

型= QUOT; <!>密码QUOT;只隐藏屏幕上的角色。如果要停止嗅探,则需要加密连接(即HTTPS)。

您可以通过HTTPS加密HTTP连接,或者在JavaScript中实现MD5和其他哈希算法,可以在发送之前使用客户端对密码客户端进行哈希处理,从而阻止嗅探器读取您的密码

是的,您的凭据以明文形式传递,任何能够听到网络流量的人都可以嗅探它们。

POST主体的内容是可见的,即<!>;在clear,<!>中;如果在非加密频道上传输。如果您希望保护HTTP正文免受嗅探,您应该通过安全通道,通过 HTTPS

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top