经过前两篇「每周干货」的引导,越来越多同学加入「一加」黑客手机的打造了,本周这篇干货先暂停深入这部黑客手机,给一些刚入门的同学一些时间尽快上手,我只想说你迟早会发现这两千多大洋的投入会很值得。
这里来点小建议:
既然已经打造成一部黑客手机,切忌不要把它当做正常手机使用,因为黑客的世界水坑很多,你还没足够能力玩好它时,很可能被它玩。
你可以注册个 Gmail 马甲,方便必要时用这个马甲来进行匿名操作。
你可以安装豌豆荚等国产良心市场,方便安装后续过程需要的 APP。
你可以买一个随身 Wi-Fi(3G 上网无线路由器,如华为家的),这样你的手机本身就没必要 SIM 卡,随时随地用 Wi-Fi。
最后提个点,我打造这部手机绝不仅是用 NetHunter 自家那些功能,兵器好不好,看怎么用,所以未来我的文章会在这个生态系统下扩展。
进入本周正题,这篇文章我一直想写,因为一年前我发布了知道创宇研发技能表v2.2:
http://blog.knownsec.com/Knownsec_RD_Checklist/v2.2.html
一年下来收到无数反馈,帮到了很多很多人,这点我确实欣慰。现在是时候浅析下这份技能表了。
看下面文章之前,建议你打开上面链接温故下。
# 诞生记
2008年毕业之前我加入了知道创宇,这家公司那时算是萌芽期,那时我的感觉是:我有幸加入。因为我身边存在着6名神一般的黑客(其中至少一名是美国人),虽然我并没和这6位都有多深的交集,但是氛围这东西很奇怪,是一种自发的,骨子里的,很容易耳濡目染的。直到现在,他们依然如雷贯耳,当然你不一定听说,这是圈子问题。
这家公司诞生那一刻就具备了国际视野与理想主义情怀。
之后几年让我体验到创业之艰辛,更难以想象几个创始人他们是如何熬过来的。这一路让我明白坚持的真谛。
虽然艰难,可是这种黑客创建的公司必然是从骨子里渗出那种细腻的黑客文化,这种文化真的可以很细腻,黑客本就是规则破坏者,但是破坏的是那种不合理的规则,他们在努力创造更合理更自由的规则,这种规则是自然而然的。
在这样的环境下,我在实战过程中完成了这份技能表的沉淀。这份技能表涵盖了知道创宇很多客观存在的东西,也融入了我主观上的东西,所以在里面能看到我的「脾气」。
技能表分为两大块内容:通用技能与专业技能。由于信息量很大,本篇先浅析通用技能。
# 通用技能
## 公司与个人
首先说明了「公司与个人」的关系,你只需明白对于一家公司来说,赚钱是天经地义的事。如果你在这个平台实现了自认为的个人价值却没实现公司价值,这是有问题的,反之亦然。你踏入职场的那一步就得明白这个道理,这是工作的本质。
## 沟通能力
在工作的过程中沟通能力非常之关键,如果因为自傲导致自己不愿意去沟通,那你应该尽快逃离这个团队,别让自己难受,也别让团队难受。
在沟通的过程中,有一个关键的形式叫做「反馈」,任何群体都有反馈机制,这种机制能让群体更像群体,更加高效,这就不会导致某个重要事务由于群体的忙碌(或混乱)而忘掉。
反馈是有技巧的,比如重要事务正式的应该邮件发出;临时紧急的如果能当面碰就当面碰,否则即时通信、电话等;反馈时你的态度是强势的、无所谓的、还是充满尊重的。这些都是我们平时工作中需要去注重的技巧。
这里面衍生出了团队协作机制,高效的协作机制导致高效的团队。你可以思考下你现在的团队是这样的团队吗?
在知道创宇,有一种反馈文化叫周报文化,我们的周报是足够透明的,透明周报的意义很多:
-
对团队透明,大家可以很好了解其他人的工作;
-
对个人来说是一种沉淀,这种沉淀可以回溯,你能够很好看到自己的成长;
-
公司需要关注每个人的进展,尤其是公司大了后,作为一个领导者不可能了解每个人手头关键的工作;
我知道有一些人懒,如我也有这样的懒心态,但有些事必须突破懒心态才能得到回报,在我的成长过程中,我会经常去 review 我的历史,去发现不足、有趣。这种 review 习惯非常的好,GTD 里如果缺少这个环节那就不是 GTD 了。
我们的周报格式:
-
本周进展,描述清晰;(如何描述清晰一件事务,确实是挺有技巧的,一言难尽,你有时候是不是会发现某些人沟通起来太罗嗦,或太没重点?)
-
下周计划;(会总结还不够,还得会计划,如果你发现你居然不知道下周该做什么,得有危机感了…)
-
唧唧歪歪;(大家可以在周报里吐个槽或分享心得,反正想说什么就说什么)
别小瞧团队透明的力量:)
## 任务四象限
任务的优先级由什么来决定?一个坐标轴,横坐标轴表示紧急,纵坐标轴表示重要,这两个坐标轴把空间分为四部分,所谓的四象限。
那么优先级就有如下四个象限:
-
紧急重要
-
重要不紧急
-
紧急不重要
-
不紧急不重要
我们需要特别警惕「重要不紧急」的事,以免哪天突然发现手头尽是紧急重要的事,这时,人与团队很容易乱掉。这要求我们杜绝拖延。
我们需要第一优先处理「紧急重要」的事,毕竟已经火烧眉毛了。
再次是杜绝拖延,及早开始处理「重要不紧急」的事。
然后那些「紧急不重要」的事偶尔出于「人道主义」可以处理,但是应该少接受这样的事,学会拒绝,因为你有更重要的事要做。
在工作中,尤其应该避免过多消耗在「不紧急不重要」的事上,这些事很多时候如娱乐调侃、私人琐事,偶尔为之,轻松气氛,但是如果没把握好平衡,不仅对自己不好,还会对团队进度造成干扰。
当你深刻体验到这四象限的精髓时,你保证可以有个漂亮的 GTD,包括你的团队。
很多人留言问我说如何做好时间管理,先做到这点吧。
## 成长
保持好奇心,你要知道这个团队所需要技能可远不止你所掌握的那点,好奇心是非常本源的成长驱动力。对知识的渴望程度(好奇心)决定了前进的动力大小。你会发现这种能量很可怕,你不用急于去影响身边的人或者急于证明什么,久而久之,潜移默化。
我经常给团队说:
我一个很重要的工作是,在你们的身边安排牛人,让你们和一流的人一起工作。不过,我也希望你在那位牛人的眼里是牛人,至少是一个潜在的牛人。
这时我们需要杜绝笨蛋爆炸,你可以这样想下,一个团队的 Leader 是笨蛋(二流的人),他能招进聪明的人吗(一流的人)?久而久之,这个团队就都是笨蛋了,笨蛋爆炸了。
在成长的过程中,我们一定要具备「牛人姿态」,这是自信的一种体现,不是自傲。和在某些方面比你优秀的人一起工作,用你同样优秀的另一方面去回馈他。这种公平的感觉,才爽。
成长除了如上基本共识之外,还有很多技巧,比如:
提问的智慧:千万别让自己成为「伸手党」或「拿来主义者」。
小事心态:越基础的事越关键,越需要细心,不应该盲目追求「高级感」而忽视小事。对于团队而言,你连这样基本的小事都干不好,怎么可能给你大事,别让自己成为团队中的「眼高手低」。
任务拆分与方法论:这是一种统筹规划的能力。关于这点我不打算这里来讲,有机会另起一篇。
最后特别提下成长过程中很容易进入盲区的两个点。
1. 完成的定义
很多人不明白这个定义,自认为的完成其实并不是团队所期望的那样,举个我们日常安全研究的一个小例子:
比如写个 POC(这指漏洞验证程序):
1. 搞懂了目标 Web 应用漏洞的原理
2. 熟练运用 Python 各相关模块与机制
3. 熟练了解了HTTP协议
4. 代码写得够规范,让人看起来就是爽。垃圾代码会被团队嫌弃
5. 程序经过足够的测试(黑测试+白测试)。没质量保证你敢说完成?哪怕你拍胸脯说质量100%也行啊,有的人喜欢虎头蛇尾,做那些自己爽后,而团队却要帮他擦屁股的事…
6. 及时反馈进度,如:我遇到困难了+我搞定了。如果你不反馈,团队如何知道你搞定了?
7. 更新相关文档,沉淀
当你深度领会这个定义时,不仅你的个人价值可以得到体现,团队的价值也得到了体现。
2. 熟练的定义
熟练都不敢常说,有人却满是精通…
这里我也举一个安全研究的小例子吧:
比如熟练 SQL 注入:
SQL 语句这门「语言」能脱离文档顺手写出
主流数据库的 SQL 特有函数、存储过程、机制我都了如指掌,如:
MySQL
MSSQL
Oracel
Postgre
Access
SQLite
…
牛逼的工具我不仅用的顺其自然,源码还读过几遍,我能修改,如:
sqlmap
…
我具备创造性,而不仅仅是跟在大牛身后
研究出了几个不错的技巧
发了几篇不错的 Paper
对外会议/沙龙等进行了几次分享
写出了自己的相关工具,爽
我实战了N回,遇到了很多奇葩环境,我有足够的信心绕过
以上这些之后,这才叫熟练!其他同理
其他,自己可以举一反三。
成长的过程,需要我们不断 review 自己,认清自己,明白团队,明白工作,明白我们现在所处的世界居然有一个叫做「公司」这样的伟大创造。而好奇心,会让你不断去明白更多更多未知,会让你在这个过程中不但敢于挑战权威,还抱着一颗敬畏的心。这种成长,你迟早会是一个牛人。
这些技能都是通用的,无论你在哪个公司,哪个团队,这些技能你都应该具备。
也许有的人看到这会对知道创宇这种黑客文化充满期待,是的,你可以期待,但如果你发现你也身处这样的环境,哪怕有一些不足,没事,从来就没有完美的文化,那些不足的点也许正是你的机会,从你自己开始,影响身边那些值得影响的人。如果你所处的环境并不这样的话,先看看自己,然后再想其他。
我很有幸,在知道创宇的7年,我被很多优秀的人影响,而我也在影响着更多的人。
这篇就写到这。
写到这我才发现,要浅析完这份技能表,估计得写一个系列,好,那就一个系列吧,我看心情穿插着写:)
精力有限,尽量保证每周一篇干货。有什么想法,留言必看,不一定回复。
如果这篇文章引起你的共鸣,可以试试长按下图,打赏之:)
—————–
余弦@知道创宇
共鸣的话,可以选择关注我这个公众号「Lazy-Thought」
永久 Blog:evilcos.me,技术同学可以订阅 RSS
原文始发于微信公众号(懒人在思考):浅析知道创宇研发技能表(一)