Vue2.x 组件基础

  组件就是可复用的 Vue 实例,所以它们与 new Vue 接收相同的选项,例如 datacomputedwatchmethods 以及生命周期钩子等,仅有的例外是像 eldata 等根实例特有的选项。注册组件必须发生在根实例初始化前

HTTPS 和 CA

  HTTPS 就是是 HTTP 加入了 SSL/TLS 协议,在 TCP 三次握手的前提下又进行了 SSL 验证,SSL 的验证依赖于证书,服务端证书经过 CA 签名后才会通过验证,被认为是可信的站点,然后通过协商出的密钥对通信过程进行加密,本文就详述一下这个过程。

XSS 最短拆分

  XSS 中拆分法是绕过长度限制最常用的一种方法,那最短多少行能实现?实际环境中数据太多经常会有翻页的功能,比如邮件列表,发帖回帖,如果输入的可控长度小于 15 字符,超过五行就强行闭合标签并翻页的话,就算存在 XSS 基本上也无法引用外部 JS ,这也是研究最短行数实现外部 JS 引用的意义。

双系统 kali 下的折腾

  本来只是想破解一下 wifi ,结果虚拟机无法识别网卡,最终装了 Win10+Kali 的双系统,Kali 跟 Ubuntu 还有些区别,期间遇到了 kali 黑屏无法启动的情况,这里整理下几乎是必备的几个软件: 进程管理 supervisor、代理 ss、浏览器代理 switchyomega、容器 docker、下载器 aria2 等。

JSONP 劫持入门

  JSONP(JavaScript Object Notation with Padding) 是 JSON 的一种“使用模式”,主要解决跨域读取数据的问题,由此引发的 JSONP 劫持,原理上和 CSRF 类似,诱导用户访问恶意 JS 窃取用户敏感信息,当然还可能造成其他危害,具体取决于能获取到的敏感信息,以及对 callback 函数的处理方式,乌云有很多案例可参考。

WebSocket、Socket、HTTP

  WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。可以实现服务端主动向客户端推送信息,常用于即时通讯,替代轮询,因为轮询会导致过多不必要的请求,浪费流量和服务器资源,每一次请求、应答,都浪费了一定流量在相同的头部信息上。

浏览器、PHP、MySQL 编码问题

  我们输入一个 URL 到浏览器展现出相应的内容,到底经历了什么?今天不谈 ARP缓存、DNS解析、TCP/IP 握手,谈谈浏览器、PHP、MySQL之间请求的执行流程以及编码转换,编码不统一造成最直接的问题是乱码,还会引发一些安全问题,要合理使用编码函数才能避免这些问题。