> 백엔드 개발 > PHP 튜토리얼 > javascript - 注册码是否可以防止跨站提交?

javascript - 注册码是否可以防止跨站提交?

WBOY
풀어 주다: 2016-06-06 20:42:10
원래의
1260명이 탐색했습니다.

如果在用户注册和登录页面,如果设了验证码功能,是不是就可以防止跨站提交呢?

回复内容:

如果在用户注册和登录页面,如果设了验证码功能,是不是就可以防止跨站提交呢?

只要把註冊碼也複製過去就又可以跨站提交了~

csrf(跨站请求伪造)是现在危害最大的web进攻手段之一,他通过伪造一个你已经登陆并且在cookie中留下登陆记录的网站的链接(可以嵌入在img a 等标签中)从而达成一定的目的,比如你登陆了银行网银账户,那么他伪造你转帐的链接,让你点击,从而把你的money给转出去(只是举个例子啊)。
防御手法有:

  1. 给每一个关键操作都添加验证操作,比如验证码,或者手机短信验证等等。
  2. 每次请求链接一个随机token,
  3. 保护好你的请求参数,不要被人猜出来。

当然也有绕过方法:

  1. 图片验证码的话可以通过人为交互或者是破译验证码的方式 搞定。比较安全的是短信验证码了
  2. token的话一定要足够随机,否则被猜出来就没用了
    同时不要认为只有get方法才有csrf,post也可以的,具体情况请自行查阅资料

如果验证码不对的话,本站也是没法提交的。如果跨站提交的js脚本里面给你识别了(虽然不大可能),提交肯定就可以了。目前还是比较有用的,建议是和token一起使用。

token和验证码只能解决正常用户的重复提交和频繁操作,对恶意的行为难以免疫。君不见现在各类群发和常见验证码识别技术如火如荼。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿