- 2020/04/23
- |
- 未分类
- |
- 0 Replies
今天顺手写个汉字转拼音的脚本,意外发现有个字会导致产生语法错误:
print("乗")
稍微多试了几次,发现这么写反而没有错误:
print("乗"")
这个汉字实际上是导致 Lua loadstring 函数判断结束的引号出了问题,误以为字符串还没有结束,具体原因得有空追一下 Lua 的源码才知道。只是觉得如果谁使用 Lua 用作服务器脚本处理语言,用户可以利用这个字符,在读写用户数据的时候进行注入攻击。
后续
断点跟踪看了下, Lua 在处理字符串转义时的函数是按照 ASCII 值按位转义的。
static void addquoted (lua_State *L, luaL_Buf...
- 2020/04/09
- |
- 技术随笔
- |
- 3 Replies
发现
咸鱼好久没有更新内容,于是昨天想着来记录下最近的事情,结果上来发现网站页脚出现了奇怪的友链,于是登录进后台,元素审查一看,居然有人给我插了一条 XSS 进去了……
再一看网络记录,可以,我的 cookie 已经被上传了…… 赶紧把 token 改了,然后临时把管理页删了……
溯源
搞完在思考,为什么这里会有这么严重的问题。首先回到友链插件上,没想到这个作者居然显示文字的时候没有做任何安全性字符过滤,导致了 xss 的可能。
但是为何数据会出现在我的库里呢?想来想去没想通,于是顺手看了下友链插件的提交数据,然后把表单复制出来,去除 cookie 信息后从控制台直接 curl 提交...
- 2020/04/09
- |
- 技术随笔
- |
- 0 Replies
最近几天发生了一些事情,导致《剑网3免费版》(台服)关服,于是昨天突发奇想,是不是想办法修改字体文件,就可以在简体客户端里面显示出繁体呢。
思绪
得到这个想法后,我便顺手拿出一个字体文件,阅读起了TTF文件的数据结构,随手谷歌了一篇文章,大致了解到TTF文件由矢量图形表(Glyphs)、字符到矢量图的映射表 (cmap)、矩阵样式等信息表 (hmtx、hdmx、OS/2 等)构成,与想象中设计基本一致。那么我们要做的事情,就是通过一份繁简转换表,从一个繁体字体文件中读取每一个繁体字符的矢量图、矩阵样式信息、字符映射表,并修改其映射关系到对应的简体字符,然后替换或者追加到简体字体文件对...