web 常见的安全问题

web 常见的安全问题

本文主要是收集并科普一下 web 常见的安全问题,针对安全漏洞产生的场景和防御方式不详细的描述(仅作参考),后续将通过相关系列的文章进行补充和完善。想了解详细的内容,请点击对应的链接进入维基百科查看。

持续更新中…

前端安全

XSS 跨站脚本攻击

跨站脚本(英语:Cross-site scripting,通常简称为:XSS)是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。这类攻击通常包含了 HTML 以及用户端脚本语言。

XSS 攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是 JavaScript,但实际上也可以包括 Java,VBScript,ActiveX,Flash 或者甚至是普通的 HTML。攻击成功后,攻击者可能得到更高的权限(如执行一些操作)、私密网页内容、会话和 cookie 等各种内容。

防御措施:过滤特殊字符、使用 HTTP 头指定类型

阅读更多
四年前的旧版个人博客在 Heroku 中正常运行

四年前的旧版个人博客在 Heroku 中正常运行

今天在新网中更新个人域名 DNS 解析时,无意中发现四年前上传到Heroku云平台上的基于 Node 开发的个人博客(旧版)仍在正常运行,WoW,真是一件令人高兴的事情。

Heroku 是什么

Heroku 是一个支持多种编程语言的云平台。支持 Ruby、Java、Node.js、Scala、Clojure、Python、PHP、Perl 等开发语言,了解更多

Heroku 中如何部署 Node 应用程序

Heroku 官方在线文档很完善,推荐大家直接在线阅读传送门,也可以查看很早之前我写的一篇相关文章Ubuntu 下通过 Heroku 部署 Node.js 应用程序,里面有详细的介绍。

国内各大云平台

最近几年随着 Node 开发的火热,国内各大云平台也都支持了 Node 相关环境的部署,主要平台有:

早期我主要用过新浪云、百度云、阿里云部署过 Node 小应用程序,从体验角度来讲的话,阿里云的兼容性和可操作性较好,但每个平台都有各自的特点,大家可根据自身要求进行选择。

最后,大家有任何问题,欢迎共同交流。

再谈 async 和 defer 的区别

再谈 async 和 defer 的区别

我们常用的 script 标签有两个和性能、js 脚本文件下载执行相关的属性:asyncdefer

async 的含义【摘自https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/script

该布尔属性指示浏览器是否在允许的情况下异步执行该脚本。该属性对于内联脚本无作用 (即没有 src 属性的脚本)

defer 的含义【摘自https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/script

这个布尔属性定义该脚本是否会延迟到文档解析完毕后才执行。

async

对于 async,相信前端开发的小伙伴们都非常熟悉,很容易让人想到异步处理、非阻塞 I/O 等场景。在这里 async 是 HTML5 script 标签中新增的属性,它的作用是能够异步的加载和执行脚本,不因加载脚本而阻塞页面的加载,一旦加载到就会立即执行。下面让我们一起先看看两个 demo:

阅读更多
Git Flow最流行的代码管理模型

Git Flow最流行的代码管理模型

工作至今前前后后也用过了不少版本管理系统例如:CVSSVNMercurialGIT等,受硬性条件和软性条件因素的影响,不同团队会选择最适合自身的版本管理系统。在这篇文章中主要是介绍互联网型团队(敏捷型团队)中最常用的研发管理体系(gitlab + git + jira or redmine)中的代码分支管理流程 – Git Flow 模型。

Git Flow 是什么

Git Flow 是构建在 Git 之上的一个组织软件开发活动的模型,是在 Git 之上构建的一项软件开发最佳实践。Git Flow 是一套使用 Git 进行源代码管理时的一套行为规范和简化部分 Git 操作的工具。

阅读更多
聚是一团火,散是满天星 -- 新起点

聚是一团火,散是满天星 -- 新起点

时光的流逝总是在最后那一刻触发心灵最深处的情感,用友-深圳创新中心是梦想与激情的交汇点;是 0 到 1 的磨练经历;是一段充实、挑战、愉快的蜕变过程;也是一次过山车的体验(难忘的经历)。

……

最后

“聚是一团火,散是满天星” — 经历风雨,总能见彩虹!