为什么浏览器允许编辑HTML源代码?

我想很多人都知道,鼠标右键点击一个网页的时候,弹出的菜单中有一个 查看源码 的功能!

打开后可以看到页面生成的HTML代码、CSS代码、以及JavaScript代码,我觉得浏览器这种做法让程序变得很不安全!

上述说的查看源码还仅仅是查看,下面说到的F12开发者工具就更不合理了,居然可以编辑HTML源码!

比如以下场景:根据权限,将一个提交按钮设置成了隐藏状态style="display:none;"

正常情况下,用户是看不到这个按钮的

然而通过F12开发者工具提供的编辑功能,只需通过修改CSS样式style="display:inherit"就可以显示出这个按钮

如果后台没有再进行二次权限验证,此时这种状态就可以正常提交了,完全绕过了权限控制

哪怕控制权限的时候不是通过CSS隐藏按钮,而是直接去除按钮的HTML代码,用户仍然可以通过浏览器提供的F12开发者工具手动输入一段提交按钮的代码既可以提交表单

上述说的这些问题都是经过测试并确实可以实现的功能

很不明白为什么浏览器为什么要提供这样的功能?

可以查看HTML源码就觉得挺诡异,居然还可以编辑HTML源码,实在想不明白为什么要这么做,浏览器开发商不是应该一起帮助开发者保护程序安全吗?

1个回答

客户端本身就是不安全的。浏览器允许编辑html仅仅为开发者提供了调试的功能。你以为浏览器不提供就安全了?

首先,基于浏览器内核自己写一个可以编辑html的程序非常容易,浏览器不提供,那么大家也能自己写。
其次,服务器只认你的http请求,而请求并非只有用户点击控件浏览器发送,这种简单的事情,用各种编程语言都能模拟。如果你了解下http协议,就会知道这个多么简单!

君不见各种投票软件、爬虫工具、机器人程序、页游外挂满天飞么?甚至很多小学生、中学生用e语言之类的工具,也能开发。

所以以为浏览器不能编辑html源代码就安全的想法太天真了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问