我目前正在开发一个注册和登录系统与HTML,CSS,JavaScript和PHP。
Expiration
用户在html的with样式输入字段中输入他的电子邮件和密码。现在,如果用户按下登录按钮,JavaScript将获得这些输入字段的用户电子邮件和密码,并使用参数email和密码调用login.php脚本。PHP脚本执行比JavaScript更重要的工作,并返回对的访问或拒绝。最后,JavaScript将显示用户错误或根据JavaScript答案提供访问权限。
Javascript片段
function loginuser(email, password) {
if (email || password) {
query('./php/login.php', null, [['email', email], ['password', password]]).then(function(obj) {
console.log("REPLY");
if (obj.error) {
//ERROR
}
else {
//ACCESS
}
});
}
else {
//PASSWORD , EMAIL CAN NOT BE EMPTY
}
}
function query(url, cmd_type, data_array) {
var request = new XMLHttpRequest();
var params= '';
params = params + 'cmdtype=' + encodeURIComponent(cmd_type) + '&';
if (data_array) {
data_array.forEach(function(item) {
if (Array.isArray(item[1])) {
var serialized_tda = '';
item[1].forEach(function(tdai) {
serialized_tda = serialized_tda + "|" + tdai[0] + "," + tdai[1] + "|";
});
params = params + item[0] + '=' + encodeURIComponent(serialized_tda) + '&';
}
else {
params = params + item[0] + '=' + encodeURIComponent(item[1]) + '&';
}
});
}
return new Promise(function(resolve, reject) {
request.open('POST', url, true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.onreadystatechange = function() {
if (request.readyState === XMLHttpRequest.DONE) {
if (request.status === 200) {
var response = JSON.parse(request.response);
resolve(response);
}
else {
resolve({error: 'Cant connect!'});
}
}
};
request.send(params);
});
}怀疑-问题
由于我正在调用一个带有参数的脚本,所以可以在浏览器开发控制台中的“网络”选项卡中找到包含我发送的所有参数的脚本。

当我稍后在生产中使用SSL证书时,这种情况会消失吗?在通过参数将数据发送到php之前,是否必须对JavaScript中的数据进行加密,还是这是正常的?
发布于 2022-03-07 21:37:47
不,使用SSL不会导致该信息在生产中从“网络”选项卡中消失。
SSL加密客户端(即用户登录)和处理它的服务器之间的数据。以纯文本发送它通常是可以的,只要它总是通过HTTPS,因为这将加密流量,使它对任何嗅探攻击都是胡说八道。
此外,来自网络选项卡的信息仅对输入密码的客户端可见(因此他们知道),因此不应将其视为应用程序的安全漏洞。
发布于 2022-03-08 04:59:49
点击“提交”发送表单package
G 211
我们看到了步骤2内容
发布于 2022-03-08 09:37:42
正如前面的答案所述,浏览器的开发工具只显示浏览器看到的内容。一旦它离开您的浏览器在HTTPS,它是加密的。
不再建议在发送之前对应用程序中的密码进行加密,因为始终会有其他安全隐患。例如,这是在HTTP身份验证中实现的,其影响是必须将未散列的密码存储在服务器上。
以明文形式发送您的密码。确保您的服务器只接受HTTPS (永久重定向),并以散列形式存储在服务器上。
https://stackoverflow.com/questions/71387477
复制相似问题