网络与安全
面试 -- 网络 HTTP
现在面试门槛越来越高,很多开发者对于网络知识这块了解的不是很多,遇到这些面试题会手足无措。本篇文章知识主要集中在 HTTP 这块。文中知识来自 《图解 HTTP》与维基百科,若有错误请大家指出。文章会持续更新。 面试 -- 网络 TCP/IP 了解 Web 及网络基础 对端传输…
CSRF 详解与攻防实战
本文从属于笔者的信息安全实战中 Web 渗透测试实战系列文章。建议先阅读下 Martin Fowler 的网络安全基础。
CSRF 攻击的应对之道
CSRF(Cross Site Request Forgery, 跨站域请求伪造)是一种网络的攻击方式,该攻击可以在受害者毫不知情的情况下以受害者名义伪造请求发送给受攻击站点,从而在并未授权的情况下执行在权限保护之下的操作,有很大的危害性。然而,该攻击方式并不为大家所熟知,很多网站都有 CSRF 的安全漏洞。本文首先介绍 CSRF 的基本原理与其危害性,然后就目前常用的几种防御方法进行分析,比较其优劣。最后,本文将以实例展示如何在网站中防御 CSRF 的攻击,并分享一些开发过程中的最佳实践。
HTTP 图解
俗话说好的开发,底层知识必须过硬,不然再创新的技术,你也理解不深入,比如 Python web 开发工程师,想要学习任何一个框架,底层都是 http 和 socket,底层抓牢了,学起来会很轻松。
HTTPS 理论详解与实践
随着面临的风险日渐增多,我们应该将所有的网络数据当做敏感数据并且进行加密传输。已经有很多的浏览器厂商宣称要废弃所有的非 HTTPS 的请求,乃 至于当用户访问非 HTTPS 的网站的时候给出明确的提示。很多基于 HTTP/2 的实现都只支持基于 TLS 的通信,所以我们现在更应当在全部地方使用 HTTPS。
图解 https 协议
简述 https 的基本原理
理解 TCP(一):端口
更好阅读体验:《理解 TCP 和 UDP》— By Gitbook 端口与进程 TCP 的包是不包含 IP 地址信息的,那是 IP 层上的事,但是有源端口和目的端口。就是说,端口这一东西,是属于 TCP 知识范畴的。 我们知道两个进程,在计算机内部进行通信,可以有管道、内存共享…
谈谈 HTTP 连接管理
HTTP/1.1 允许在持久连接上使用管道,但是在浏览器上却几乎不会开启管道功能,chrome 之前的老版本还可以在 chrome://flags 里面来选择开启或关闭管道功能,最新的版本已经移除了管道相关选项。为什么不加入管道化连接提升性能呢,主要有几个原因:其一是管道化持久连接实现复杂,容易出 bug,且不易调试。其二是一些不标准的代理导致管道化容易出现很多难以预料的问题,导致开发人员调试十分复杂。
如何让前端更安全?——XSS 攻击和防御详解
最近深入了解了一下 XSS 攻击。以前总肤浅的认为 XSS 防御仅仅只是输入过滤可能造成的 XSS 而已。然而这池子水深的很呐。
理解 TCP(三):连接的建立和释放
更好阅读体验:《理解 TCP 和 UDP》— By Gitbook TCP 的整个交流过程可以总结为:先建立连接,然后传输数据,最后释放链接。 三次握手和四次挥手.png 三次握手,建立连接 TCP 连接建立要解决的首要问题就是:要使每一方能够确知对方的存在。 三次握手就像,在…
九个问题从入门到熟悉HTTPS
女朋友也是软件工程专业,因为快要毕业了,最近一边做毕设一边学习编程。前两天她问我 HTTPS 的问题,本来想直接扔一篇网上的教程给她。后来想了一下,那些文章大多直接介绍概念, 对新手不太友好,于是我干脆亲自给她解释一下,顺便整理了一份问答录。 Q1: 什么是 HTTPS? BS…
谈谈对 Web 安全的理解
谈谈对 Web 安全的理解: 作为一个前端 er,详细介绍了 CSRF 攻击,XSS 攻击,SQL 注入,SYN 攻击等等。
给你的 Node.js 项目部署 HTTPS
最近上线了一个面向前端领域技术干货的邮件订阅服务,全站启用了 HTTPS,于是有了这篇文章来分享一下我是如何部署 HTTPS 的。
掌握 HTTP 缓存——从请求到响应过程的一切(上)
为什么使用 CDN?CDN 缓存都做了什么?HTTP 头都用了哪些?
http、https、web 开发、协议、tip/ip、状态码等简要手册 http 权威指南
一直比较喜欢《http 权威指南》这本书,因为它涵盖了网络开发这一块的很多技术知识,而且比较通俗易懂!我也看了好几遍,但觉得这本书内容太多了,为了方便自己对相关概念的印象,所以特别把每一个章节的信息提炼出来,方便自己查看,也希望分享给大家当作手册随时翻看!当然了,难免因为自己提炼的方法不读,可能有些地方不能详尽,所以建议大家先看原书!也希望多 issue!
理解加密算法(三)——创建 CA 机构,签发证书并开始 TLS 通信
使用 openSSL 创建自己的 CA 机构,签发证书并观察普通 tcp 通信和 tls 安全通信的区别,最后将证书用于 https 服务。
理解 TCP(二):报文结构
更好阅读体验:《理解 TCP 和 UDP》— By Gitbook TCP 是面向字节流的,但传送的数据单元却是报文段。 什么是报文?例如一个 100kb 的 HTML 文档需要传送到另外一台计算机,并不会整个文档直接传送过去,可能会切割成几个部分,比如四个分别为 25kb 的…
浅谈 CSRF 攻击方式
CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。
Nginx 配置 HTTPS 服务器
Chrome 浏览器地址栏标志着 HTTPS 的绿色小锁头从心理层面上可以给用户专业安全的心理暗示,本文简单总结一下如何在 Nginx 配置 HTTPS 服务器,让自己站点上『绿锁』。
前端必备 HTTP 技能之 WebSocket 协议详解
WebSocket 是一个计算机通信协议,通过一个 TCP 连接提供全双工的通信频道。2011 年 IETF 在 RFC6455 文件中标准化了 WebSocket 协议,WebSocket 的 Web IDL 格式的 API 是 W3C 标准化的。
前端经典面试题: 从输入 URL 到页面加载发生了什么?
这是一篇 web 开发的科普类文章,涉及到 DNS, HTTP, 优化等多个方面。
面向前端的 CDN 原理介绍
内容分发网络(Content delivery network 或 Content distribution network,缩写:CDN)是指一种通过互联网互相连接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、视频、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。
HTTPS 为什么更安全,先看这些
HTTPS 是建立在密码学基础之上的一种安全通信协议,严格来说是基于 HTTP 协议和 SSL/TLS 的组合。理解 HTTPS 之前有必要弄清楚一些密码学的相关基础概念,比如:明文、密文、密码、密钥、对称加密、非对称加密、信息摘要、数字签名、数字证书。接下来我会逐个解释这些术…