近况

于是一晃到了2016年底,最终还是去了美国工作……感谢scateu以前给我的劝诫。虽然还是很害怕,但是生存能力已经提高了。感叹国内公司工作强度、薪资和美国公司差距还是太大,特别是对于毕业不久的人来说,阿里星听上去好听却有何用,“机会很多”是说给冒险家听的。一位前老板问我为何选择出去,回答的理由一条是背书。他说平台和机会是创造出来的。毕业这一年看了那么多,感慨万千。身边的同学学长朋友也看到了好多想去国外大公司却被跨国工作壁垒拦下来的例子,毕业生的前几年是掉价最快的时候,感叹与国外master PhD差距不知凡几,尽力赶上去吧。好公司也非没有,过了这个村,就没那个店,这一年也曾有良缘经历过两家,但为了对得起拿的一点薄薪却是如履薄冰,别人对你的期望是只涨不跌的,这难以可持续发展。感谢几次DEFCON CTF大家带我玩,趁着游玩的机会终于看清了,如果再像毕业后一年那样混下去,以后职业发展肯定越来越难,道路越来越窄,机会越来越少。不知是否记错,有位最小费用流、线段树学长说人生不是冲刺,细水长流。现在有广阔的平台,有数不清可以学习的东西。干的活不是自己最喜欢的但感觉能发挥出自己足够的价值,努力做上更有趣的活。

Read More

Cyber Grand Challenge及DEFCON 24 CTF决赛介绍

今天在SHLUG 2016年9月月度技术分享会上做的展示。

距离9月6日主办方Legitimate Business Syndicate发布2016 DEF CON CTF Final Scores已久,仍然没有公布源代码,不得已根据libmaru、Riatre等的逆向结果,再粗糙分析了一些。

如果描述有不恰当或者没有提及到贡献的地方请各位队友饶恕……我会尽快改正。好想向0ops同学取经……一直想学Shellphish分享的东西但行动力不够……

slide.pdf

题目简单分析

References

WeeChat操作各种聊天软件

WeeChat

把Facebook Messenger、Google Hangouts、IRC、QQ、Telegram、Twitter、微信等整合起来,用同一个客户端WeeChat控制。配置文件:https://github.com/MaskRay/Config/tree/master/home/.weechat/,参考https://pascalpoitras.com/my-weechat-configuration/

效果图

界面参考https://gist.github.com/pascalpoitras/8406501,UI显示成这样主要靠autosort.pybuffers.pl,以及文中提到的Bar input。

Read More

无需每日扫码的IRC版微信和QQ:wechatircd、webqqircd

之前ftiasch提到webqqircd运行在服务器上,似乎可以持续运行无需每日扫码。最近听bigeagle推荐了x2go。于是实验了一下headless wechatircd & webqqircd。PhantomJS不可用,存储图片麻烦,会抛出SIGFPE异常,自带webkit旧不支持ES6。故弃用,尝试Firefox。

Read More

偃师——finite automaton生成工具

我一只上海的喵怎么到北京来了呢?……“苟利长亭生死以,岂因祸福避趋之”那么所以我就到了北京。到了北京我干了这二十几天我也没有什么别的,大概三件事:

一个,开发了一个安全产品(秘); 第二个,做了一个自动机生成工具; 第三个,就是见了一些同学,从学长那里听到了一点人生的经验。

Read More

终端模拟器下宽字符退格

折腾完https://maskray.me/blog/2016-03-13-terminal-emulator-fullwidth-color-emoji后发现canonical mode下emoji字符退格只后退了一列,后发现所有宽字符都有问题,因此做了一番调研。

Canonical/noncanonical mode

早期Unix有cooked/cbreak/raw mode三种模式,raw mode和cbreak模式区别在于signal和输入输出处理,输入都是以字符为单位,即read(STDIN_FILENO, buf, 1)在键入一个字符后即返回。Cooked mode与它们差别较大,最重要的区别是终端输入以行为单位进行,并自带一个基础行编辑器,可以使用退格和WERASE(默认为^W)删除光标前的单词。

Read More