知道创宇研发技能表v2.1
创建时间:2012/12/1
2013/4/26 公开发布
2013/7/15 新增:牛人1,2,3
2013/7/20 优化:成长,增加:小事心态、任务拆分、方法论
2013/8/12 更新:Web安全->Web服务组件
-
说明
-
本技能表为知道创宇研发工程师必备技能
-
聪明的人会根据每个tip进行自驱动扩展
-
不聪明的,坐等别人手把手的人请绕行,不仅不适合知道创宇,也不适合任何有Geek精神的公司
-
附件标志是我们推荐的附加资源,感谢资源提供者
-
-
通用技能
-
公司与个人
-
公司是盈利性组织
-
个人和公司必须双赢
-
工作
-
在认同公司理念且能够给公司创造足够价值的基础上,为个人发展而工作
-
-
-
沟通、反馈、责任
-
一个无沟通能力的人,要么是天才,要么是不可爱的人
-
反馈要及时
-
避免出问题不反馈,影响进度
-
方式
-
正式的:邮件
-
临时的:QQ等即时通信
-
礼貌的:给个电话、短信
-
-
-
工作有大小,责任心无大小
-
周报的透明
-
意义:大家互相了解工作与心得,有利于自己的判断与成长
-
不是单纯的给领导汇报工作
-
-
-
任务四象限,决定优先级
-
紧急重要
-
重要不紧急
-
紧急不重要
-
不紧急不重要
-
-
新事物的敏感性
-
不跟进新的会落后的
-
不要局限在国内这些人或者自己的圈子人物
-
Google Reader(默哀)订阅国内外优秀博客,鲜果RSS阅读不错
-
选择性参与一些必要的会议,听必要的主题,讨论必要的话题
-
-
成长
-
对新事物的渴望程度决定了前进动力的大小
-
人要往前跑,还得往后看
-
不要矫情,要理性
-
和比你厉害的人在一起,和一流的人工作
-
指点往往是精华
-
防止笨蛋爆炸
-
二流的人招进来的人不太可能是一流的
-
-
-
思考
-
批判性思考
-
换位思考
-
-
小事心态
-
越基础的事越关键,需要越细心
-
不要一味盲目追求“高级感”,而忽视“小事”/“简单事”/“基础事”
-
基础不牢、地动山摇
-
小事做不好,别提大事
-
-
任务拆分
-
方法论
-
完成一件事有好几条途径,优秀的人的途径最短
-
任务拆分很容易得出做事的方法论
-
-
-
牛人姿态
-
即使现在不是牛人,也得具备这样的姿态
-
这种感觉只能意会
-
没有一定扎实内功与远见的人很少有这样的姿态
-
-
完成的定义
-
比如写个POC
-
1. 搞懂了目标Web应用漏洞的原理
-
2. 熟练运用Python各相关模块与机制
-
3. 熟练了解了HTTP协议
-
HTTP请求
-
HTTP响应
-
-
4. 代码写得够规范,让人看起来就是爽
-
5. 程序经过足够的测试
-
黑测试
-
白测试
-
-
6. 及时反馈进度
-
我遇到困难了
-
我搞定了
-
-
-
-
熟练的定义
-
比如熟练SQL注入
-
SQL语句这门“语言”能脱离文档顺手写出
-
主流数据库的SQL特有函数、存储过程、机制我都了如指掌
-
MySQL
-
MSSQL
-
Oracel
-
Postgre
-
Access
-
SQLite
-
...
-
-
牛逼的工具我不仅用的顺其自然,源码还读过几遍,我能修改
-
sqlmap
-
...
-
-
我具备创造性,而不仅仅是跟在大牛身后
-
研究出了几个不错的技巧
-
发了几篇不错的Paper
-
对外会议/沙龙等进行了几次分享
-
写出了自己的相关工具,爽
-
-
我实战了N回,遇到了很多奇葩环境,我有足够的信心绕过
-
以上这些之后,这才叫熟练!其他同理
-
-
-
好书推荐
-
推荐理由
-
打通任督二脉的书,怎能不看?
-
任何科学研究最终必须至少到哲学层面,触碰到上帝的脚
-
具体技术类书籍请见“专业技能”相关部分
-
-
黑客与画家
-
心得
-
-
浪潮之巅
-
感受IT帝国的崛起与没落,我们现在站在又一个互联网浪潮之巅
-
-
产品经理
-
人人都是产品经理
-
结网
-
-
高效程序员的45个习惯
-
代码大全2
-
神书
-
自私的基因
-
失控
-
万物由来
-
-
...
-
-
-
专业技能
-
基础必备
-
人品第一
-
HTTP抓包与调试
-
firefox插件
-
firebug/firecookie
-
抓包与各种调试
-
-
tamper data
-
拦截修改
-
-
live http header
-
重放功能
-
-
hackbar
-
编码解码/POST提交
-
-
modify headers
-
修改头部
-
-
-
fiddler
-
浏览器代理神器
-
拦截请求或响应
-
抓包
-
重放
-
模拟请求
-
编码解码
-
第三方扩展
-
watcher
-
Web前端安全的自动审计工具
-
-
-
-
wireshark
-
各种强大的过滤器语法
-
-
tcpdump
-
命令行的类wireshark抓包神器
-
-
python
-
urllib2
-
打开请求响应调试
-
编辑urllib2的do_open里的h.set_debuglevel
-
改为h.set_debuglevel(1),这时可以清晰看到请求响应数据,包括https
-
-
-
-
-
什么是跳转
-
服务端跳转
-
302
-
<?php header("Location: 3.php"); ?>
-
-
301
-
<?php header("HTTP/1.1 301 Moved Permanently"); header("Location: 2.php"); ?>
-
-
u=urllib2.urlopen(url)后,u.url能得到服务端跳转后的地址
-
urllib2自己的特性
-
所谓的会跟进去
-
-
-
客户端跳转
-
<meta http-equiv="refresh" content="0; url=http://www.evilcos.me" />
-
htmlparse解析就行了
-
-
location.href="http://evilcos.me";
-
正则(弱),js引擎(王道)
-
-
-
-
Python编码规范
-
Office能力
-
Word文档编写,看去要专业,尤其对外的
-
Excel里面大量的统计、图表功能,需要善于使用
-
PPT演讲、培训等必备,如何做好PPT?百度一下……
-
进一步
-
yed
-
visio
-
freemind
-
-
-
熟练VIM
-
实战至少3回合:http://coolshell.cn/articles/5426.html
-
-
算法
-
快排
-
二分
-
-
正则表达式
-
调试工具
-
Kodos
-
RegexBuddy
-
支持多种语言
-
支持调试优化
-
-
http://www.regexper.com/
-
正则图解
-
-
-
正则表达式30分钟入门教程:http://deerchao.net/tutorials/regex/regex.htm
-
http://wiki.ubuntu.org.cn/Python正则表达式操作指南
-
-
研发能力
-
瀑布模型
-
需求->需求分析->设计->开发->测试->上线->运维/运营
-
-
需求分析能力
-
给你一个需求,如何给出一个优美的执行思路
-
这个能力非常非常非常的关键
-
-
调试能力
-
只要定位出,就没有解决不了的Bugs
-
肉眼看到的都是假象
-
一定要专业的工具与经验配合
-
-
Bugs在哪出现,最终就在哪进行真实模拟调试
-
缩小范围
-
构建自己的测试样例
-
排除网络复杂未知情况
-
-
关联模块一个个排除
-
Python单步调试
-
import pdb;pdb.set_trace()
-
在需要单步调试的地方加上面这句,运行程序后中断在此,然后h查看指令进行一步步细细调试
-
-
粗暴调试:print
-
-
-
敏捷思想
-
快速迭代
-
任务拆细
-
定义好v1的目标,快速完成v1为优先
-
习惯wiki记录,利于沉淀与分享
-
-
-
FQ
-
http://code.google.com/p/goagent/
-
SSH隧道
-
http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/index.html
-
本地转发
-
ssh -L <local port>:<remote host>:<remote port> <SSH hostname>
-
-
远程转发
-
反弹
-
ssh -R <local port>:<remote host>:<remote port> <SSH hostname>
-
-
动态转发
-
ssh -D <local port> <SSH Server>
-
-
-
-
kscomm
-
知道创宇的公共模块,精华
-
threadpool
-
spider
-
charsetck
-
redirectck
-
...
-
-
-
原则
-
至少完整看完与练习好一本书
-
至少过一遍官方文档
-
-
Python
-
书
-
Python核心编程2
-
第4章 Python对象
-
完整熟练
-
-
6.8 Unicode
-
完整熟练
-
-
8.11 迭代器和iter()函数
-
完整熟练
-
-
第9章 文件的输入和输出
-
完整熟练
-
-
第10章 错误和异常
-
完整熟练
-
-
第11章 函数和函数式编程
-
完整熟练
-
-
第12章 模块
-
完整熟练
-
-
第14章 执行环境
-
完整熟练
-
-
第15章 正则表达式
-
完整熟练
-
-
第18章 多线程编程
-
完整熟练
-
-
20.2 使用Python进行Web应用:创建一个简单的Web客户端
-
完整熟练
-
-
-
可爱的Python
-
抽空品味下鸡汤是个不错的选择
-
-
-
官方手册
-
至少过一遍,这都没过一遍,视野会局限
-
-
-
Linux
-
书
-
-
前端
-
书
-
JavaScript DOM编程艺术
-
-
了解DOM
-
这同样是搞好前端安全的必要基础
-
-
库
-
jquery
-
优秀的插件应该体验一遍,并做些尝试
-
官方文档得过一遍
-
-
bootstrap
-
应该使用一遍
-
-
django
-
http://djangobook.py3k.cn/2.0/
-
-
-
-
Web安全
-
Web服务组件
-
钟馗之眼
-
网络空间搜索引擎
-
大数据,懂的人懂,不懂的人不懂
-
-
组件具有影响面,越底层的组件影响面可能越大
-
安全维度
-
漏洞
-
风险
-
事件
-
-
Web安全标准
-
OWASP
-
WASC
-
我们内部Wiki
-
-
实战环境
-
XSS
-
ks-xsslab_open(内部虚拟机)
-
可以搞通
-
XSS
-
CSRF
-
ClickJacking
-
-
-
http://xss-quiz.int21h.jp/
-
-
SQL
-
https://github.com/Audi-1/sqli-labs
-
SQLI-LABS is a platform to learn SQLI
-
-
-
100多个WSL靶场
-
渗透虚拟机/BT5/Kali
-
海量各类型黑客工具
-
-
-
书
-
黑客攻防技术宝典(Web实战篇)
-
白帽子讲Web安全
-
Web前端黑客技术揭秘
-
SQL注入攻击与防御
-
-
papers
-
http://www.exploit-db.com/papers/
-
blackhat/defcon/国内各安全沙龙等Papers需要持续跟进
-
-
-
设计思想
-
人人都是架构师——我还是一贯的想法:)
-
实战出真知
-
如何设计
-
松耦合、紧内聚
-
单元与单元属性
-
生产者与消费者
-
结构
-
队列
-
LRU
-
-
分布式
-
存储
-
计算
-
-
资源考虑
-
CPU
-
内存
-
带宽
-
-
粗暴美学/暴力美学
-
大数据,先考虑run it(运行之),然后才能知道规律在哪
-
“run it优先”能快速打通整体,洞察问题
-
“run it优先”能摆脱细节(繁枝末节)的束缚
-
“run it优先”能快速迭代出伟大的v1
-
-
一个字总结
-
美
-
-
核心存储与计算
-
MySQL
-
MongoDB
-
Cassandra
-
Hadoop体系
-
Redis
-
Memcached
-
RabbitMQ
-
Celery
-
Gearman
-
-
-
算法
-
分词
-
贝叶斯
-
神经元
-
遗传算法
-
...
-
-
牛人1,2,3
-
1研究:研究东西,有足够洞察力,研究水准不错
-
2研发:hack idea自己有魄力实现,不懂研发的黑客如同不会游泳的海盗
-
3工程:研发出来的需要实战、需要工程化,否则只是玩具,而不能成为真的武器
-
-