Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 人们可以在我的网站域中修改/创建cookie吗?_Javascript_Php_Cookies_Web - Fatal编程技术网

Javascript 人们可以在我的网站域中修改/创建cookie吗?

Javascript 人们可以在我的网站域中修改/创建cookie吗?,javascript,php,cookies,web,Javascript,Php,Cookies,Web,我有一个网站,正在使用cookies建立一个登录系统,这样用户就可以保持登录状态,我相信这是会话无法做到的。我想知道恶意用户是否可以创建或修改域上现有的cookie。我知道他们可以删除它们,这很好,但是他们可以创建或修改它们吗?任何人都可以控制他们的浏览器,不管他们喜欢什么。他们可以创建、编辑和删除cookie 因此,您的cookie应该是长的、随机的(或者至少是随机的,看起来与随机的不可区分) 它们应该对您的服务器有意义,服务器应该能够将它们与用户关联,但对服务器之外的任何人都没有意义。它们应

我有一个网站,正在使用cookies建立一个登录系统,这样用户就可以保持登录状态,我相信这是会话无法做到的。我想知道恶意用户是否可以创建或修改域上现有的cookie。我知道他们可以删除它们,这很好,但是他们可以创建或修改它们吗?

任何人都可以控制他们的浏览器,不管他们喜欢什么。他们可以创建、编辑和删除cookie

因此,您的cookie应该是长的、随机的(或者至少是随机的,看起来与随机的不可区分)

它们应该对您的服务器有意义,服务器应该能够将它们与用户关联,但对服务器之外的任何人都没有意义。它们应该足够长,足够复杂,以至于从统计上来说猜一个是不可能的


您的服务器应该小心,不要对接收到的cookie值做出任何假设。例如,我可以提交一个包含2000个字符的cookie,这不能导致它崩溃。

您可以创建、删除和编辑浏览器cookie,所有访问您的计算机的人都可以读取和复制这些cookie,例如,您可以窃取会话ID


您不能手动修改会话,因为这是“服务器cookie”,只有服务器软件才能修改。如果要存储密码或其他机密信息,则不应将其存储在cookie中。它是不安全的,您可以存储令牌或会话id,但不能存储密码之类的信息。

编辑/创建cookie非常容易,您最好使用php会话。会话将保持活动状态,直到用户清除其cookie或您使用
会话_destroy()当然。您永远不能信任来自客户端的任何数据。@HarrisonPickering“我相信您不能处理会话”是什么意思?您可以处理会话,也应该处理会话。因为您正在创建登录系统和。@JameyD:向客户端发送哈希密码是个坏主意。会话应该是签名的、随机的、可撤销的令牌。感谢您的回复。:)