Web 丰富了我们的生活 ,World Wide Web 即万维网,已经成为 Internet 的重要组成部分
随着 Web2.0 技术 不断提升,Web 应用程序的功能也越来越丰富,如电子邮件、在线游戏,在线文档编辑、社交网站、网上购物等。
Web 应用技术门槛低,受众面广,攻击者攻击这些 Web 服务往往能够获得巨大经济利益。
因此对 Web 应用程序的渗透攻击已经超过了对操作系统和网络服务程序的漏洞攻击,成为攻击者最受青睐的目标。
维基百科定义:
跨站脚本 XSS 通常是指攻击者利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,是用户加载网页时会运行攻击者恶意制造的代码。
这些可以被称为脚本的代码可以是
攻击成功后,
攻击者:得到敏感信息-> 获取更高用户权限-> 以被攻击者身份执行操作
如发微博、加好友、发私信、进行不正当投票等活动
跨站脚本 XSS 分为三种类型:
DOM,全称是 Document Object Model),文档对象模型
当用户能够通过交互修改浏览器页面中的 DOM 并显示在浏览器上时,就有可能产生这种漏洞。
假设 www.victim.com 这段代码用于创建表单以允许用户选择首选语言,查询字符串也在阐述“默认”中设置默认语言。
应用安全国际组织 OWASP 给网站的建议;
对所有来自外部的用户输入进行完备的检查;
对所有输出到响应页面的数据进行适当的编码,以防止任何已成功注入的脚本在客户浏览器端运行
给普通用户的建议
XSS 攻击随着社会工程学的成功应用,个人用户还需要增强安全意识,只信任值得信任的站点或内容,不要轻信点击不明链接。
SQL 注入是指利用 Web 应用程序输入验证不完善的漏洞,将一段精心构造的 SQL 命令注入到后台数据库引擎执行。
SQL 注入的主要原因:
Web 应用程序没有对用户输入进行严格的转义字符过滤和类型检查
防范 SQL 注入攻击要注意:
攻击者利用合法用户与服务器的已认证会话,诱骗用户发送恶意请求到服务器,攻击者就可以合法用户身份,在目标服务器进行非法操作。
利用 Web 用户身份验证的漏洞:
基于 Cookies 的身份验证只能保证请求发自用户的浏览器,却不能保证请求是用户自愿发出的。
Cookie 又称浏览器缓存,是 Web 服务器保存在用户浏览器上经过加密的小文本文件,用于
持久 Cookie 可以保持登录信息到用户下次与服务器的会话。
从以下三个层次入手对 CSRF 攻击的防御
个人防止 CSRF 攻击:
养成良好的上网习惯,能够帮助用户减少 CSRF 攻击的危害