网站攻击中的CSRF和XSSCSRF(Cross-siterequestforgery)中文名称是跨站请求伪造,它所做的就是以你的名义在其他网站上登录并验证你的网站所做的事情。XSS(Cross-sitescripting)的中文名称是跨站脚本。它的作用是在易受攻击的网站上编写dom攻击,或者将替代数据保存到网站数据库中,给网站用户造成困扰。是现场攻击。他们怎么让你哭CSRF攻击姿势悄悄在B网站写一个可以访问A网站的链接或者脚本(用户已经登录,客户端存了cookie)。触发方式是用户意外触发(例如:点击某个按钮),或者偷偷用iframe访问。这个时候会用A网站的cookie去请求A服务器,因为用户已经登录了,如果服务器不做任何保护,那B网站就开心了,东西很多那是可以做到的,比如你想获取你的好友列表信息,然后发垃圾邮件什么的,或者直接转钱他们都跑了。.如果你做了保护,B网站就会想方设法为所欲为,不断攻击,直到无路可走。XSS攻击姿势1.检查提交的表单是否对用户输入有限制。如果没有做好限制,攻击者可以编写脚本、sql语句或者包含html标签的内容。想象一下进入一篇文章的场景,攻击者写的文章被用户看到,可能发生的事情是:执行js脚本()结束了,用户的cookie就要丢失了,有了用户的cookie,你可以做的事情就很多了;或者你可能会攻击数据库,操纵数据,考验你的数据库的承受能力。2.根据url参数是否相关显示内容,并进行参数攻击。如何保持自己国家的CSRF防范措施1.使用cookie的httpOnly,设置为true,无法通过document.cookie获取用户cookie。2.使用token,为每个请求设置一个token,特别是post,delete等危险方法,例如django使用csrf_token机制来防止csrf3.检查reffer,检测链接访问源4.确保没有xss在你的站点中,这样用户信息就不容易丢失,csrf也不会得到冒充用户的机会。5.使用X-iframe-options标头控制其他网站将您的内容嵌入到iframe中。6.利用框架本身的特性,比如django的csrf_token。XSS防范措施1.警惕用户可以输入信息的地方,做好防护,比如转义什么的。2、加强数据库,存储数据前考虑安全性。3.url中的参数考虑encode4。使用框架本身的功能,比如django默认会处理特殊字符
