Toggle navigation
Qmsheng Blog
Home
About
Archives
Portfolio
Tags
Tags
keep hungry keep foolish
C
Exploit
LuaSocket
GCC
Phishing
Security
Pwned
Framework
OpenResty
Lua
Flame Graphs
cosocket
Recursive
tail call
LuaJIT
Tail Call
Recursion
log
Regex
pairs
cjson
libc
系统调用
Algorithm
TCP
Nginx
lua-resty-pyf
Socket
PRNG
Random
Lua-GD
Hash Collisions
JSHash
Open Addressing
KONG
Atomicity
Redis
Race Conditions
Kong
猛犸
C
Linux kernel perf_events local root exploit
Exploit
Linux kernel perf_events local root exploit
LuaSocket
luasocket getaddrinfo nil 问题
GCC
luasocket getaddrinfo nil 问题
Phishing
挖掘 iCloud 钓鱼站汇总
凡事留一线,日后好相见
Security
挖掘 iCloud 钓鱼站汇总
凡事留一线,日后好相见
Pwned
挖掘 iCloud 钓鱼站汇总
凡事留一线,日后好相见
Framework
Lor 源码解析
OpenResty
重新认识 randomseed
原生 Lua 的 randomseed 是不支持浮点数的
正确认识随机数
北京车牌摇号的算法是公平的
OpenResty 中的安全隐患
OpenResty 中写日志的套路
记录日志很重要,套路同样更重要
cosocket
cosocket 的 connect 是会有创建 sock 的行为的
Lor 源码解析
Lua
pairs 的遍历顺序
其实本质上还是按照顺序遍历的
Lua string hash 算法
JSHash
Lua string 哈希碰撞
Hash Collisions
TIME_WAIT 的 Timer
重新认识 randomseed
原生 Lua 的 randomseed 是不支持浮点数的
Lua 中的随机数
随机数生成对我们太重要了,我们不能让它随机生成
OpenResty 中的安全隐患
Lua 汉字拼音首字母提取
计算机内部只存储和处理字节,字符只是人类理解的概念。
Lua 排序算法 - 插入排序
Insertion Sort
Lua 排序算法 - 选择排序
Selection Sort
Lua 排序算法 - 归并排序
Merge Sort
Lua 排序算法 - 快速排序
Quick Sort
Lua 排序算法 - 冒泡排序
Bubble Sort
Lua 的标准输出与缓存
cjson 的抢占问题
默认的 cjson 其实是 “共享” 的
Lua 正确处理可变参数
一定要注意 table 中的 hole
Lua string.find 中的 “坑”
tail call 到底有啥用?
来体验下 proper tail call 强大的威力
Lor 源码解析
Flame Graphs
Lor 源码解析
cosocket
cosocket
cosocket 的 connect 是会有创建 sock 的行为的
Recursive
tail call 到底有啥用?
来体验下 proper tail call 强大的威力
tail call
tail call 到底有啥用?
来体验下 proper tail call 强大的威力
LuaJIT
重新认识 randomseed
原生 Lua 的 randomseed 是不支持浮点数的
Lua 中的随机数
随机数生成对我们太重要了,我们不能让它随机生成
Goto in LuaJIT
吊炸天的 LuaJIT
Tail Call
Goto in LuaJIT
吊炸天的 LuaJIT
Recursion
Goto in LuaJIT
吊炸天的 LuaJIT
log
OpenResty 中写日志的套路
记录日志很重要,套路同样更重要
Regex
Lua string.find 中的 “坑”
pairs
Lua 正确处理可变参数
一定要注意 table 中的 hole
cjson
cjson 的抢占问题
默认的 cjson 其实是 “共享” 的
libc
Lua 的标准输出与缓存
系统调用
Lua 的标准输出与缓存
Algorithm
pairs 的遍历顺序
其实本质上还是按照顺序遍历的
Lua string hash 算法
JSHash
Lua 排序算法 - 插入排序
Insertion Sort
Lua 排序算法 - 选择排序
Selection Sort
Lua 排序算法 - 归并排序
Merge Sort
Lua 排序算法 - 快速排序
Quick Sort
Lua 排序算法 - 冒泡排序
Bubble Sort
TCP
TIME_WAIT 的 Timer
警惕系统中那些异常的 RST
认真学习协议栈很重要
理解 timeout,这一篇就够了
对 TCP 协议栈的理解总是需要慢慢积累
Nginx
NGINX resolver 配置中的 "坑"
不要着急去当第一个吃螃蟹的人
理解 timeout,这一篇就够了
对 TCP 协议栈的理解总是需要慢慢积累
lua-resty-pyf
Lua 汉字拼音首字母提取
计算机内部只存储和处理字节,字符只是人类理解的概念。
Socket
警惕系统中那些异常的 RST
认真学习协议栈很重要
PRNG
浅谈 KONG key-auth 插件 token 的生成
CSPRNG or 真随机?
直观的表现 PRNG 周期性
无图无真相。真的真,真出声
重新认识 randomseed
原生 Lua 的 randomseed 是不支持浮点数的
Lua 中的随机数
随机数生成对我们太重要了,我们不能让它随机生成
正确认识随机数
北京车牌摇号的算法是公平的
Random
浅谈 KONG key-auth 插件 token 的生成
CSPRNG or 真随机?
直观的表现 PRNG 周期性
无图无真相。真的真,真出声
Lua 中的随机数
随机数生成对我们太重要了,我们不能让它随机生成
Lua-GD
直观的表现 PRNG 周期性
无图无真相。真的真,真出声
Hash Collisions
Lua string 哈希碰撞
Hash Collisions
JSHash
pairs 的遍历顺序
其实本质上还是按照顺序遍历的
Lua string hash 算法
JSHash
Open Addressing
pairs 的遍历顺序
其实本质上还是按照顺序遍历的
KONG
浅谈 KONG key-auth 插件 token 的生成
CSPRNG or 真随机?
谈谈 KONG rate-limiting 插件中的缺陷
Redis 高频卡控中的 Race Conditions 问题
Atomicity
谈谈 KONG rate-limiting 插件中的缺陷
Redis 高频卡控中的 Race Conditions 问题
Redis
谈谈 KONG rate-limiting 插件中的缺陷
Redis 高频卡控中的 Race Conditions 问题
Race Conditions
谈谈 KONG rate-limiting 插件中的缺陷
Redis 高频卡控中的 Race Conditions 问题
Kong
Kong 插件加载机制源码解析
以请求的视角窥探 Kong 的数据走向
Kong 插件加载机制概述
以请求的视角回顾自己的一生
猛犸
ESC连接数暴涨原因分析
以请求的视角窥探 猛犸 网络连接的变化