作为一名 Web 应用开发人员,相信大家对「事务」这个名词一定不陌生。 不过,今天我们要介绍的是许多开发人员比较陌生的事务并发安全问题。在资金/业务数据敏感型系统中,事务并发安全是一道必须迈过去的坎,...
线程并发安全问题是许多编程语言中一个绕不过去的坎,也是日常开发过程中很容易被忽视的一个问题。 提到线程并发,就不得不提多线程。当然,有些编程语言默认并不支持多线程,但如果要实现一些特殊业务需求,或者想...
很早之前,就一直有一个想法:希望能够比较系统地介绍一下Web应用开发过程中的一些安全知识。 为什么呢? 因为从我个人在多家企业工作以及招聘面试的经历来看,我发现:大多数中小企业里的开发人员,甚至包括个...
arguments.callee属性用于返回当前正在执行的Function对象。 语法 [functionObject.]arguments.callee 返回值 arguments.callee属性...
一个 Web 应用的全部功能并非总是无条件地向所有用户开放,不同的用户角色拥有不同的功能操作权限,这在现实的场景中随处可见: 某些功能(比如发表文章、评论等)只有登录的用户才有权操作,未登录的普通访客...
文件的上传和管理,是绝大多数网站都必不可少的功能,不过,这也是Web应用中非常容易出现安全隐患的地方。 要实现一个基本的文件上传功能,这对绝大多数开发者来说都非常简单。 例如,我们可以在前端页面显示如...
跨站脚本攻击,英文为 Cross-site Scripting,通常缩写为 XSS 攻击。它也是互联网上最常见的攻击方式之一。 实际上跨站脚本的英文缩写应该是CSS,可是CSS在互联网技术领域更多被用...
跨站请求伪造,英文为 Cross-site request forgery,通常缩写为 CSRF 攻击。 什么是CSRF攻击? 假设在某银行网站(www.bank.com)上,有一个转账功能,当用户登...
SQL注入攻击 是 Web 应用所遇到的最常见的攻击方式之一。许多著名的开源程序(例如:Discuz、Joomla、WordPress、DedeCMS)也都被多次曝光过发现SQL注入攻击漏洞。 正确预...
为了提高用户体验,开发者一般都会在浏览器端通过JavaScript对用户提交的表单内容进行预校验,比如:标题是否非空、邮箱地址是否符合指定的格式、手机号码是否符合指定的格式、用户名是否符合指定的格式、...