我想知道是否真的有必要在JS和PHP中进行验证? 我有我的提交按钮JS document.myform.submit()
与PHP POST发送到同一页面。 如果用户禁用JS,他无法发送表单。 所以我想问一下安全问题,有人可以绕过javascript以另一种方式发送变量吗?他们将如何做到这一点? 如果他们可以的话,如果我应该在PHP中验证的答案是YES,对吧?使用PHP和Javascript安全进行表单验证
0
A
回答
1
是的,有人可以使用python中的urllib2
发送变量。这很容易做到。如果你只打算做一组验证,那么在服务器端进行。做客户端不过是对用户的礼貌。
作为是多么容易的例子:
import urllib2
variables = {'variable1': value1, 'variable2': value2}
urllib2.urlopen('http://yoursite.com/index.php/yourform', variables)
# your form has now been spoofed.
添加页眉和cookie管理欺骗任何用户代理是一样琐碎
0
在服务器端始终验证。 JavaScript验证很好,但可以轻松绕过。 攻击者可以伪造带有恶意数据的HTTP POST请求到您的表单的URL,然后该URL将被无标注地输入您的系统。
3
答案很简单。
服务器端是强制性的,必须无条件地完成。
客户端验证是可选的,只是为了用户的方便。
因此,确认双方是没有必要的,但首选的可用性
如果用户禁用JS的缘故,他不能继续发送形式。
lol。用户可以将表单保存在本地磁盘上并以他们想要的方式进行编辑。
0
就像每个人都回答 - 不要只依赖客户端验证。这很容易滥用,甚至不必将网页保存到磁盘,他可以使用libcurl或任何其他HTTP库,或者只是玩Firebug等。
尽管在客户端验证是非常“用户友好”的。您可以将Ajax验证添加到您的表单中,但这仍然只是方便,应该依赖于服务器端代码。
0
我完全同意上面的所有人 - 客户端主要是为了填表人。服务器端更多的是确保你没有被定位。
如果你想要一个漂亮的客户端验证脚本,我写了一个 - 免费下载和使用,并非常可定制。它甚至会错误拼写电子邮件地址并提出正确的版本。如果你有兴趣,你可以在这里:
http://www.blackboxtechnology.co.uk/free-stuff/javascript-form-checker.php
享受!
相关问题
- 1. 使用javascript进行PHP表单验证
- 2. PHP表单验证和XSS安全
- 3. 使用php和javascript进行表单验证
- 4. 使用Javascript或PHP验证我的表单更安全吗?
- 5. 使用JavaScript进行表单验证
- 6. 使用javascript进行xsl表单验证
- 7. 使用Javascript进行HTML表单验证
- 8. 使用Javascript进行Django表单验证
- 9. 使用PHP进行表单验证
- 10. 使用PHP进行JQuery表单验证
- 11. 使用GUMP进行PHP表单验证
- 12. 使用PHP和JavaScript验证表单?
- 13. 表单验证 - 使用PHP和Javascript
- 14. 在一个PHP文件中使用javascript进行表单验证
- 15. 使用PHP和javascript进行HTML表单验证的简单方法
- 16. 表单验证 - 安全
- 17. 使用Javascript或PHP进行验证?
- 18. 良好和安全的表单验证
- 19. 使用JavaScript和html进行表单验证
- 20. 使用Data Annotations和JavaScript进行模型/表单验证
- 21. 同时使用HTML5和Javascript进行表单验证
- 22. 使用jQuery和php进行表单验证
- 23. 一起使用ajax,jQuery和php进行实时表单验证
- 24. 使用AJAX,Jquery和PHP进行表单验证
- 25. 使用JavaScript进行验证
- 26. 使用php的JavaScript表单验证
- 27. 使用javascript的php表单验证
- 28. 使用grails和spring安全进行跨域身份验证
- 29. Jquery验证:用javascript提交表单并且不进行验证
- 30. JavaScript表单验证改进
只是个人观点 - 您可以考虑允许在没有javascript的情况下提交。就我个人而言,我运行允许运行javascript的网站白名单。作为礼节,您的javascripted表单可以告诉我,在提交之前是否输入了错误的值。但是,在javascript被阻止的情况下,尽管我可以改变你的webform行为客户端或者使用套接字调用来完全绕过表单,但我完全不能使用你的网站作为普通用户。 – 2010-08-09 09:33:58