Shiro 反序列化漏洞原理分析
1 概述 Apache Shiro 在 Java 的权限及安全验证框架中占用重要的一席之地,在它编号为 550 的 issue 中爆出严重的 Java 反序列化漏洞。 Shiro 反序列…
C++ Playground
0.1 返回局部变量的引用 #include <iostream> int &foo() { int i = 0 return i // warning: reference to local variable &lsquoi&rsquo retu…
zeromq 所谓的无锁消息队列
本文基于 zeromq 4.3.0 版本,分析其无锁消息队列的实现。 zeromq 这个网络库,有以下几个亮点: 从以往的面向 TCP 流的网络开发,变成了面向消息的开…
常见 Bypass Disable Functions 方法总结
1 背景 PHP.ini 中可以设置禁用一些危险函数,例如 eval、exec、system 等,将其写在 php.ini 配置文件中,就是我们所说的 disable_functions 了,特…
Golang 精编 100 题
能力模型 级别 模型 初级   primary 熟悉基本语法,能够看懂代码的意图; 在他人指导下能够完成用户故事的开发,编写的代码符合 CleanCode 规范;…
Rob Pike 谈 Google Go
1. Rob,你创建了 Google Go 这门语言。什么是 Google Go?能简明扼要的介绍一下 Google Go 吗? 我还是讲讲为什么要创建这门语言吧,和你的问题稍有…
74cms v4.2.126 因任意文件读取漏洞导致的任意用户密码修改漏洞
0x00 前言 厂商:74cms 下载地址: http://www.74cms.com/download/index.html 关于版本:新版的 74cms 采用了 tp3.2.3 重构了,所以可知底层是 tp,7…
用 D3.js 十分钟实现字符跳动效果
该效果基于 D3.js,主要使用到了 d3-selection 。 效果图 Step1 首先代码会随机生成一个字符串,该字符以绿色进入画面。 Step2 接下来,代码随机生成…
可视化 Python 包之间的关系
我使用了 BigQuery 上的 github 数据 ,提取 github repo 上的前 3500 个 python 包的共同出现关系。 通过速度 verlet 整合的 d3 中的力导向图 实现了…
Java 多线程 常见问题
Java 实现线程有哪几种方式? 1、继承 Thread 类实现多线程2、实现 Runnable 接口方式实现多线程3、使用 ExecutorService、Callable、Future 实现有返…
使用 Emacs frame 实现 Peek definition
在许多 IDE 中,都有 peek definition 这个功能,它在不离开当前 buffer 的情况下,在弹出框中打开定义(函数、类、符号等)。大多数情况下,跳到一个…