专业技能
最后更新于:2022-04-01 04:32:30
[TOC]
## 原则
* 至少完整看完与练习好一本书
* 至少过一遍官方文档
## 基础必备
### HTTP抓包与调试
* Firefox插件
* Firebug
* 抓包与各种调试
* 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";`
* 正则解析(弱)
* JavaScript引擎解析(强)
### Office能力
* Word文档编写,看去要专业,尤其对外的
* Excel里面大量的统计、图表功能,需要善于使用
* PPT演讲、培训等必备,如何做好PPT?百度一下...
* 进一步
* yEd
* Visio
* FreeMind
* 本技能表就是这个制作
### 上手Linux
* 《鸟哥的Linux私房菜》
### 熟练VIM
* [实战至少3回合:http://coolshell.cn/articles/5426.html](http://coolshell.cn/articles/5426.html)
### 上手Python
* [https://www.python.org/dev/peps/pep-0008/](https://www.python.org/dev/peps/pep-0008/)
* [http://learnpythonthehardway.org/book/](http://learnpythonthehardway.org/book/)
* 《Python核心编程2》
* 第4章 Python对象
* 完整熟练
* 6.8 Unicode
* 完整熟练
* 8.11 迭代器和iter()函数
* 完整熟练
* 第9章 文件的输入和输出
* 完整熟练
* 第10章 错误和异常
* 完整熟练
* 第11章 函数和函数式编程
* 完整熟练
* 第12章 模块
* 完整熟练
* 第14章 执行环境
* 完整熟练
* 第15章 正则表达式
* 完整熟练
* 第18章 多线程编程
* 完整熟练
* 20.2 使用Python进行Web应用:创建一个简单的Web客户端
* 完整熟练
### 算法
* 快排
* 二分
### 正则表达式
* 调试工具
* Kodos
* RegexBuddy
* 支持多种语言
* 支持调试优化
* [http://www.regexper.com/](http://www.regexper.com/)
* 正则图解
* [正则表达式30分钟入门教程:http://deerchao.net/tutorials/regex/regex.htm](http://deerchao.net/tutorials/regex/regex.htm)
* [http://wiki.ubuntu.org.cn/Python正则表达式操作指南](http://wiki.ubuntu.org.cn/Python%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97)
* 《精通正则表达式》
### 研发能力
* 瀑布模型
* 需求->需求分析->设计->开发->测试->上线->运维/运营
* 需求分析能力
* 给你一个需求,如何给出一个优美的执行思路——方法论
* 这个能力非常非常非常的关键
* 调试能力
* 只要定位出,就没有解决不了的Bugs
* 肉眼看到的都是假象
* 一定要专业的工具与经验配合
* Bugs在哪出现,最终就在哪进行真实模拟调试
* 缩小范围
* 构建自己的测试样例
* 排除网络复杂未知情况
* 关联模块一个个排除
* Python单步调试
* import pdb;pdb.set_trace()
* 在需要单步调试的地方加上面这句,运行程序后中断在此,然后h查看指令进行一步步细细调试
* 粗暴调试:print
* 敏捷思想
* 快速迭代
* 任务拆细
* v1原则:定义好v1的目标,快速完成v1为优先
* 习惯Wiki记录,利于沉淀与分享
### 翻墙
* 优雅解决方案
* shadowsocks + 一台海外 VPS + Chrome(SwitchyOmega)/Firefox(AutoProxy)
* [详情了解:http://mp.weixin.qq.com/s?__biz=MzA3NTEzMTUwNA==&mid=210457700&idx=1&sn=322d1e4c13d3f33ade848e3889c410bf#rd](http://mp.weixin.qq.com/s?__biz=MzA3NTEzMTUwNA==&mid=210457700&idx=1&sn=322d1e4c13d3f33ade848e3889c410bf#rd)
* SSH隧道
* [http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/index.html](http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/index.html)
* 本地转发
* ssh -L ::
* 远程转发
* 反弹
* ssh -R ::
* 动态转发
* ssh -D
## Web安全
### 零基础如何学习Web安全
* [http://www.zhihu.com/question/21606800/answer/22268855](http://www.zhihu.com/question/21606800/answer/22268855)
### Web服务组件
* [8+1:一图胜千言哎:)](http://blog.knownsec.com/Knownsec_RD_Checklist/res/web_component.png)
* 钟馗之眼
* 网络空间搜索引擎
* [http://zoomeye.org](http://www.zoomeye.org/)
* [大量样例:http://www.zoomeye.org/search/dork](http://www.zoomeye.org/search/dork)
* 组件具有影响面,越底层的组件影响面可能越大
### 安全维度
* 漏洞
* 风险
* 事件
### Web安全标准
* OWASP
* WASC
### 实战环境
* XSS
* 内部平台:ks-xsslab_open
* 可以上手
* XSS
* CSRF
* ClickJacking
* [http://xss-quiz.int21h.jp/](http://xss-quiz.int21h.jp/)
* [答案:xss_quiz.txt](http://blog.knownsec.com/Knownsec_RD_Checklist/res/xss_quiz.txt)
* [http://prompt.ml/0](http://prompt.ml/0)
* [答案:https://github.com/cure53/XSSChallengeWiki/wiki/prompt.ml](https://github.com/cure53/XSSChallengeWiki/wiki/prompt.ml)
* [http://escape.alf.nu/](http://escape.alf.nu/)
* [答案:http://blog.nsfocus.net/alert1-to-win-write-up/](http://blog.nsfocus.net/alert1-to-win-write-up/)
* SQL
* [https://github.com/Audi-1/sqli-labs](https://github.com/Audi-1/sqli-labs)
* SQLI-LABS is a platform to learn SQLI
* i春秋
* [http://www.ichunqiu.com/](http://www.ichunqiu.com/)
* Sebug + ZoomEye
* [http://sebug.net](http://sebug.net/)
* [http://zoomeye.org](http://zoomeye.org/)
* 你懂得...
### 工具
* 我的渗透利器
* Firefox
* Firebug
* 调试JavaScript,HTTP请求响应观察,Cookie,DOM树观察等
* Tamper Data
* 拦截修改
* Live Http Header
* 重放功能
* Hackbar
* 编码解码/POST提交
* Modify Headers
* 修改头部
* GreaseMonkey
* [Original Cookie Injector for Greasemonkey](http://userscripts.org/scripts/show/119798)
* NoScript
* 进行一些JavaScript的阻断
* AutoProxy
* 翻墙必备
* Chrome
* F12
* 打开开发者工具,功能==Firebug+本地存储观察等
* SwichySharp
* 翻墙必备
* CookieHacker
* [http://evilcos.me/?p=366](http://evilcos.me/?p=366)
* Web2.0 Hacking
* XSS'OR
* 常用其中加解密与代码生成
* [http://evilcos.me/lab/xssor/](http://evilcos.me/lab/xssor/)
* [源码:https://github.com/evilcos/xssor](https://github.com/evilcos/xssor)
* XSSEE 3.0 Beta
* Monyer开发的,加解密最好用神器
* [http://evilcos.me/lab/xssee/](http://evilcos.me/lab/xssee/)
* Online JavaScript beautifier
* JavaScript美化工具,分析JavaScript常用
* [http://jsbeautifier.org/](http://jsbeautifier.org/)
* BeEF
* The Browser Exploitation Framework
* [http://beefproject.com/](http://beefproject.com/)
* HTTP代理
* Fiddler
* 非常经典好用的Web调试代理工具
* Burp Suite
* 神器,不仅HTTP代理,还有爬虫、漏洞扫描、渗透、爆破等功能
* mitmproxy
* Python写的,基于这个框架写神器实在太方便了
* 漏洞扫描
* AWVS
* 不仅漏扫方便,自带的一些小工具也好用
* Nmap
* 绝对不仅仅是端口扫描!几百个脚本
* Python自写脚本/工具
* 漏洞利用
* sqlmap
* SQL注入利用最牛神器,没有之一
* Metasploit
* 最经典的渗透框架
* Hydra
* 爆破必备
* 抓包工具
* Wireshark
* 抓包必备
* Tcpdump
* Linux下命令行抓包,结果可以给Wireshark分析
* Sebug + ZoomEye
* 类似这类平台都是我们需要的
* Sebug类似的
* https://www.exploit-db.com/
* ZoomEye类似的
* https://www.shodan.io/
* Kali Linux
* 除了上面介绍的一些工具,其他海量各类型黑客工具,自己去摸索
### 书
* 《黑客攻防技术宝典(Web实战篇)》
* 《白帽子讲Web安全》
* 《Web前端黑客技术揭秘》
* 我和xisigr出品
* 《Web之困》
* 《SQL注入攻击与防御》
### papers
* [http://www.exploit-db.com/papers/](http://www.exploit-db.com/papers/)
* BlackHat/Defcon/XCon/KCon/国内各安全沙龙等相关Papers需要持续跟进
## 嵌入式安全
### 路由器安全
* 基础
* 嵌入式Linux系统方面知识
* 开发系统互联参考模型-第三层网络层
* MIPS/ARM汇编知识
* VxWorks系统方面知识
* JTAG调试接口规范
* 嵌入式系统交叉环境开发
* 路由器芯片方案提供商
* 博通
* Atheros
* TrendChip
* ACROSPEED
* IC+
* 瑞昱
* ...
* 站点
* [https://www.openwrt.org/](https://www.openwrt.org/)
* OpenWrt is described as a Linux distribution for embedded devices
* [http://routerpwn.com](http://routerpwn.com/)
* 全球主流路由器相关漏洞大集合
* [http://see.sl088.com/wiki/Uboot_%E7%BC%96%E8%AF%91](http://see.sl088.com/wiki/Uboot_%E7%BC%96%E8%AF%91)
* Uboot_编译
* [http://www.devttys0.com/](http://www.devttys0.com/)
* Embedded Device Hacking
* 工具
* Binwalk
* IDA Pro
* gdb/gdbserver
* qemu-system
* qemu-user-static
* Smiasm
* Metasm
* JTAG硬件调试器
* 书
* 《揭秘家用路由器0day漏洞挖掘技术》
* 《Hacking the XBOX: An Introduction to Reverse Engineering》
* 《Hacking the Cable Modem: What Cable Companies Don't Want You to Know》
* 《MIPS体系结构透视 》
* 《计算机组成与设计:硬件、软件接口》
### 摄像头安全
* [http://www.openipcam.com/](http://www.openipcam.com/)
* [https://media.blackhat.com/us-13/US-13-Heffner-Exploiting-Network-Surveillance-Cameras-Like-A-Hollywood-Hacker-Slides.pdf](https://media.blackhat.com/us-13/US-13-Heffner-Exploiting-Network-Surveillance-Cameras-Like-A-Hollywood-Hacker-Slides.pdf)
### 工控安全
* 基础
* 工业生产环境的基本结构,如:SCADA、PCS
* 工业生产环境的信息安全风险点(可参考DHS出版物)
* Improving Industrial Control Systems Cybersecurity with Defense-In-Depth Strategies
* 工控网络组态、逻辑开发、应用组态的基本技术方法
* 抓包、看RFC分析几个常规工业以太网协议,如:Profinet、Modbus
* 买两款PLC玩玩,会真实感受到工业环境的信息安全问题(一定记得买以太网模块,不贵二手几百块)
* 站点
* 事件跟踪分析
* [http://plcscan.org/blog/](http://plcscan.org/blog/)
* [http://scadastrangelove.blogspot.kr](http://scadastrangelove.blogspot.kr/)
* [http://www.phdays.com/](http://www.phdays.com/)
* [http://www.scadasl.org](http://www.scadasl.org/)
* [https://scadahacker.com](https://scadahacker.com/)
* Duqu
* [https://scadahacker.com/resources/duqu.html](https://scadahacker.com/resources/duqu.html)
* Stuxnet
* [https://scadahacker.com/resources/stuxnet.html](https://scadahacker.com/resources/stuxnet.html)
* Havex
* [https://scadahacker.com/resources/havex.html](https://scadahacker.com/resources/havex.html)
* 标准协会/测试工具
* DHS CET套件
* [http://ics-cert.us-cert.gov/Assessments](http://ics-cert.us-cert.gov/Assessments)
* NERC ES-ISAC
* [http://www.esisac.com/SitePages/Home.aspx](http://www.esisac.com/SitePages/Home.aspx)
* ICS-ISAC
* [http://ics-isac.org](http://ics-isac.org/)
* NTSB美国国家工控测试床
* [http://energy.gov/oe/downloads/common-cyber-security-vulnerabilitiesobserved-control-system-assessments-inl-nstb](http://energy.gov/oe/downloads/common-cyber-security-vulnerabilitiesobserved-control-system-assessments-inl-nstb)
* NIST SP 800-82
* [http://csrc.nist.gov/publications/nistpubs/800-82/SP800-82-final.pdf](http://csrc.nist.gov/publications/nistpubs/800-82/SP800-82-final.pdf)
* ISA-99控制系统安全协会
* [http://isa99.isa.org/ISA99%20Wiki/Home.aspx](http://isa99.isa.org/ISA99%20Wiki/Home.aspx)
* NERC CIP标准
* [http://www.nerc.com/pa/Stand/Pages/ReliabilityStandards.aspx](http://www.nerc.com/pa/Stand/Pages/ReliabilityStandards.aspx)
* 工具
* 仿真类
* 电力仿真软件testhaness
* Modbus仿真软件ModScan
* 电力104协议仿真软件PMA
* 测试类
* Wurldtech Achilles
* Codenomicon Defensics
* Spirent
* BPS
* 源代码
* 发现
* [https://code.google.com/p/plcscan/](https://code.google.com/p/plcscan/)
* [https://code.google.com/p/modscan/](https://code.google.com/p/modscan/)
* [https://github.com/arnaudsoullie/scan7](https://github.com/arnaudsoullie/scan7)
* [https://github.com/atimorin](https://github.com/atimorin)
* [https://github.com/digitalbond/Redpoint](https://github.com/digitalbond/Redpoint)
* 操纵
* [https://www.scadaforce.com/modbus](https://www.scadaforce.com/modbus)
* [https://github.com/bashwork/pymodbus](https://github.com/bashwork/pymodbus)
* [https://rubygems.org/gems/modbus-cli](https://rubygems.org/gems/modbus-cli)
* [http://libnodave.sourceforge.net](http://libnodave.sourceforge.net/)
* [https://code.google.com/p/dnp3](https://code.google.com/p/dnp3)
* 异常监测
* [http://blog.snort.org/2012/01/snort-292-scada-preprocessors.html](http://blog.snort.org/2012/01/snort-292-scada-preprocessors.html)
* [http://www.digitalbond.com/tools/quickdraw/](http://www.digitalbond.com/tools/quickdraw/)
* Fuzz
* [https://github.com/jseidl/peach-pit/blob/master/modbus/modbus.xml](https://github.com/jseidl/peach-pit/blob/master/modbus/modbus.xml)
* 其他
* [ZoomEye工控专题: http://ics.zoomeye.org/](http://ics.zoomeye.org/)
* [Shodan工控专题:https://www.shodan.io/report/l7VjfVKc](https://www.shodan.io/report/l7VjfVKc)
* [https://github.com/evilcos/papers/blob/master/网络空间工控设备的发现与入侵.ppt](https://github.com/evilcos/papers/blob/master/%E7%BD%91%E7%BB%9C%E7%A9%BA%E9%97%B4%E5%B7%A5%E6%8E%A7%E8%AE%BE%E5%A4%87%E7%9A%84%E5%8F%91%E7%8E%B0%E4%B8%8E%E5%85%A5%E4%BE%B5.ppt)
### zoomeye.org
* 全球可以找到无数真实路由器/摄像头/工控设备等
* [如:http://www.zoomeye.org/search?q=app:%22MikroTik%20RouterOS%22&from=dork](http://www.zoomeye.org/search?q=app:%22MikroTik%20RouterOS%22&from=dork)
## 研发清单
### 编码环境
* pip
* Vagrant
* tmux/screen
* vim
* Markdown
* zsh + oh-my-zsh
* Python2.7
* >Django1.4
* [http://djangobook.py3k.cn/2.0/](http://djangobook.py3k.cn/2.0/)
* [Django Debug Toolbar](http://django-debug-toolbar.readthedocs.org/en/latest/)
* 其他框架
* web.py
* Flask
* Tornado
* node.js
* Ubuntu/Gentoo/Centos
* ipython
* 版本控制
* 废弃SVN,全面拥抱Git
* GitLab
* Nginx+uWSGI
### Python
* 官方手册
* 至少过一遍,这都没过一遍,视野会局限
* 行之说:「我没看过Python的书,却熟读官方手册...」
### Linux/UNIX
* 书
* 《鸟哥的Linux私房菜》
* 《Linux Shell脚本攻略》
* 《UNIX编程艺术》
* 《Software Design 中文版 01》《Software Design 中文版 02》《Software Design 中文版 03》
* 让你的电脑默认操作系统就是Linux...
### 前端
* 书
* 《JavaScript DOM编程艺术》
* 了解DOM
* 这同样是搞好前端安全的必要基础
* 库
* jQuery
* 优秀的插件应该体验一遍,并做些尝试
* 官方文档得过一遍
* D3.js
* ECharts
* 来自百度
* Google API
* ZoomEye Map组件
* ZoomEye团队自己基于开源的打造
* AngularJS
* Google出品的颠覆性前端框架
* Bootstrap
* 应该使用一遍
### 爬虫进阶
* 代理池
* 爬虫「稳定」需要
* 网络请求
* wget/curl
* urllib2/httplib2/requests
* scrapy
* 验证码破解
* pytesser
### 调度
* crontab是最原生的定时调度
* 基于redis实现的分布式调度
* 基于rpyc实现的分布式调度
* celery/gearman等调度框架
### 并发
* 线程池
* 进程内优美的并发方案
* 协程
* 进程内另一种优美的并发方案
* gevent
* 多进程
* os.fork
* multiprocessing
### 数据结构
* JSON
* cPickle
* protobuf
### 数据存储及处理
* 数据库
* MySQL
* MongoDB
* Cassandra
* Hadoop体系
* Redis
* Sqlite
* bsddb
* ElasticSearch
* 大数据处理
* Hive
* Spark
* ELK
* ElasticSearch
* Logstash
* Kibana
### DevOps
* SSH证书
* Fabric
* SaltStack
* puppet
* pssh/dsh
* 运维进阶
* 运维工程师必须掌握的基础技能有哪些?
* [http://www.zhihu.com/question/23665108/answer/25299881](http://www.zhihu.com/question/23665108/answer/25299881)
### 调试
* pdb
* logging
* Sentry
* strace/ltrace
* lsof
* 性能
* Python内
* timeit
* cProfile
* [Python性能分析指南:http://www.oschina.net/translate/python-performance-analysis](http://www.oschina.net/translate/python-performance-analysis)
* Python外
* top/htop/free/iostat/vmstat/ifconfig/iftop...
### 算法
* 分词
* 贝叶斯
* 神经元
* 遗传算法
* 聚类/分类
* ...
### 持续集成
* 自测试
* nose
* Jenkins
### 安全
* 我的分享
* [程序员与黑客:http://www.infoq.com/cn/presentations/programmers-and-hackers](http://www.infoq.com/cn/presentations/programmers-and-hackers)
### 协作
* 类似Trello的在线协同平台
* Slack
* 微信
* 立会
## 设计思想
* 人人都是架构师:具备架构思想是一件多酷的事
* 实战出真知
* 如何设计
* [任务架构设计变迁.pdf](http://blog.knownsec.com/Knownsec_RD_Checklist/res/arch_design_evolution.pdf)
* 松耦合、紧内聚
* 单元与单元属性
* 生产者与消费者
* 结构
* 队列
* LRU
* 分布式
* 存储
* 计算
* 资源考虑
* CPU
* 内存
* 带宽
* 粗暴美学/暴力美学
* 大数据,先考虑run it,然后才能知道规律在哪
* 「run it优先」能快速打通整体,洞察问题
* 「run it优先」能摆脱细节(繁枝末节)的束缚
* 「run it优先」能快速迭代出伟大的v1
* 一个字总结
* 美
## 牛人1,2,3
* 1研究:研究东西,有足够洞察力,研究水准不错
* 2研发:Hack Idea自己有魄力实现,不懂研发的黑客如同不会游泳的海盗
* 3工程:研发出来的需要实战、需要工程化,否则只是玩具,而不能成为真的武器