信息安全部技术岗技能整理

近期可能会从应用系统开发部转岗至信息安全岗,所以大概了解了一下安全岗的职位描述以及职位要求,顺便整理了一下学习路线。

安全人员基本技能

关键字:时间,翻墙,同步,行业

职位描述

  • 合理安排工作时间,完成上级交待的任务;

  • 打造属于自己的开发与测试环境;

  • 专属的网络上网环境;

  • 开发工具与代码同步;

  • 专业文档编写技巧;

  • 能无障碍读懂专业英文资料;

  • 关注行业态势和热点。

职位要求

  • 了解行业发展,目前大公司的产品和业务;

  • 熟悉 GTD 时间管理方式;

  • 能独立安装 Windows/Ubuntu 系统和虚拟机;

  • 客户端与服务器通信过程;

  • 浏览器插件与使用技巧(Firebug);

  • 突破网络限制,建立自己的私有网络(VPN,Wireshark);

  • 针对每种语言的开发工具(Sublime,Ulipad等),git 的使用技巧;

  • Office 编辑与格式注意(标题、封面、页眉、页码、字体等);

  • 英语水平良好,能阅读各种英文技术文档。

学习路线

科学的工作环境

打造适合自己的工作环境,主要包含:电脑,操作系统,科学网络,常用工具,虚拟机。

  • 学习安装操作系统(Windows、Vmware/VirtualBox、Ubuntu/Kali),学习方法 Google/SecWiki 搜索;
  • 学习自身安全意识:个人电脑安装杀毒软件、网站安全密码安全,可以参照这里,你得学几招保护自己
  • 科学上网环境(goagent 现已整合为 XX-NET、shadowsocks、vpn),学习方法 Google/SecWiki 搜索;
  • 提问的智慧,Google 搜索技巧

文档编辑技巧

Word 文档编写,PPT/Prize 基本操纵,Markdown 书写。

浏览器插件与技巧

高效与舒适的上网环境需要优秀的浏览器和众多插件支持。

网络配置与分析

熟悉掌握各类网络环境配置,并知道遇到网络问题如何解决。

  • Windows/Linux 环境下动态 IP 获取与静态 IP 配置,DNS 配置;
  • 利用 wireshark 分析系统网络问题,参见wireshark 实用技巧
  • 路由器上网拨号,路由器无线安全配置;
  • 浏览器网络问题分析,利用 Wireshark/Fiddler/Burp 工具进行分析;

个人时间管理

如何更合理地安排时间和完成任务。

  • 了解时间管理的解决方法(GTD、番茄工作法、四象限等);
  • 阅读《小强升职记》书籍;
  • 选择适合自己的时间管理软件(Doit.im、ticktick、番茄等);

团队协作与个人博客

学会git实现团协作,并通过 Github 建立自己的博客。

Web 安全工程师

关键字:渗透,攻防,编程,挖掘

职位描述

  • 对公司网站、业务系统进行安全评估测试(黑盒、白盒测试);
  • 对公司各类系统进行安全加固;
  • 对公司安全事件进行响应,清理后门,根据日志分析攻击途径;
  • 安全技术研究,包括安全防范技术,黑客技术等;
  • 跟踪最新漏洞信息,进行业务产品的安全检查。

职位要求

  • 熟悉主流的Web安全技术,包括 SQL 注入、XSS、CSRF、一句话木马等安全风险;
  • 熟悉国内外主流安全产品和工具,如:Nessus、Nmap、AWVS、Burp、Appscan 等;
  • 熟悉 Windows、Linux 平台渗透测试、后门分析、加固;
  • 至少掌握一门编程语言 C/C++/Perl/Python/PHP/Go/Java 等;
  • 熟悉渗透测试的步骤、方法、流程,具有 Web 安全实战经验;
  • 熟悉常见安全攻防技术,对网络安全、系统安全、应用安全有深入的理解和自己的认识;
  • 对 Web 安全整体有深刻理解,具备代码审计和独立漏洞挖掘能力;
  • 具有较强的团队意识,高度的责任感,文档、方案能力优秀者优先。

学习路线

Web 安全相关概念

熟悉基本概念(SQL 注入、上传、XSS、CSRF、一句话木马等)。

  • 通过关键字(SQL 注入、上传、XSS、CSRF、一句话木马等)进行 Google/SecWiki;
  • 阅读《精通脚本黑客》,虽然很旧也有错误,但是入门还是可以的;
  • 看一些渗透笔记/视频,了解渗透实战的整个过程,可以 Google(渗透笔记、渗透过程、入侵过程等);

熟悉渗透相关工具

熟悉 AWVS、sqlmap、Burp、nessus、chopper、nmap、Appscan 等相关工具的使用。

  • 了解该类工具的用途和使用场景,先用软件名字 Google/SecWiki;
  • 下载无后门版的这些软件进行安装;
  • 学习并进行使用,具体教材可以在SecWiki上搜索,例如:Brup的教程sqlmap
  • 待常用的这几个软件都学会了可以安装音速启动做一个渗透工具箱;

渗透实战操作

掌握渗透的整个阶段并能够独立渗透小型站点。

  • 网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL 注入视频、文件上传入侵、数据库备份、dedecms 漏洞利用等等);
  • 自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
  • 思考渗透主要分为几个阶段,每个阶段需要做那些工作,例如这个:PTES渗透测试执行标准
  • 研究 SQL 注入的种类、注入原理、手动注入技巧;
  • 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架
  • 研究 XSS 形成的原理和种类,具体学习方法可以 Google/SecWiki,可以参考:XSS
  • 研究 Windows/Linux 提权的方法和具体使用,可以参考:提权
  • 可以参考: 开源渗透测试脆弱系统

关注安全圈动态

关注安全圈的最新漏洞、安全事件与技术文章。

  • 通过 SecWiki 浏览每日的安全技术文章/事件;
  • 通过 Weibo/twitter 关注安全圈的从业人员(遇到大牛的关注或者好友果断关注),天天抽时间刷一下;
  • 通过 feedly/鲜果订阅国内外安全技术博客(不要仅限于国内,平时多注意积累),没有订阅源的可以看一下SecWiki的聚合栏目
  • 养成习惯,每天主动提交安全技术文章链接到 SecWiki 进行积淀;
  • 多关注下最新漏洞列表,推荐几个:exploit-dbCVE中文库Wooyun等,遇到公开的漏洞都去实践下。
  • 关注国内国际上的安全会议的议题或者录像,推荐SecWiki-Conference

熟悉Windows/Kali Linux

学习 Windows/Kali Linux 基本命令、常用工具;

  • 熟悉 Windows 下的常用的 cmd 命令,例如:ipconfig,nslookup,tracert,net,tasklist,taskkill 等;
  • 熟悉 Linux 下的常用命令,例如:ifconfig,ls,cp,mv,vi,wget,service,sudo等;
  • 熟悉 Kali Linux 系统下的常用工具,可以参考SecWiki,《Web Penetration Testing with Kali Linux》、《Hacking with Kali》等;
  • 熟悉 metasploit 工具,可以参考SecWiki、《Metasploit渗透测试指南》。

服务器安全配置

学习服务器环境配置,并能通过思考发现配置存在的安全问题。

  • Windows2003/2008 环境下的 IIS 配置,特别注意配置安全和运行权限,可以参考:SecWiki-配置
  • Linux 环境下的 LAMP 的安全配置,主要考虑运行权限、跨目录、文件夹权限等,可以参考:SecWiki-配置
  • 远程系统加固,限制用户名和口令登陆,通过 iptables 限制端口;
  • 配置软件 Waf 加强系统安全,在服务器配置 mod_security 等系统,参见SecWiki-ModSecurity
  • 通过 Nessus 软件对配置环境进行安全检测,发现未知安全威胁。

脚本编程学习

选择脚本语言 Perl/Python/PHP/Go/Java 中的一种,对常用库进行编程学习。

  • 搭建开发环境和选择 IDE,PHP 环境推荐WampXAMPP,IDE 强烈推荐Sublime,一些 Sublime 的技巧:SecWiki-Sublime
  • Python 编程学习,学习内容包含:语法、正则、文件、网络、多线程等常用库,推荐《Python核心编程》,不要看完;
  • 用 Python 编写漏洞的 exp,然后写一个简单的网络爬虫,可参见SecWiki-爬虫视频
  • PHP 基本语法学习并书写一个简单的博客系统,参见《PHP 与 MySQL 程序设计(第4版)》、视频
  • 熟悉 MVC 架构,并试着学习一个 PHP 框架或者 Python 框架(可选);
  • 了解 Bootstrap 的布局或者 CSS,可以参考:SecWiki-Bootstrap

源码审计与漏洞分析

能独立分析脚本源码程序并发现安全问题。

  • 熟悉源码审计的动态和静态方法,并知道如何去分析程序,参见SecWiki-审计
  • 从 Wooyun 上寻找开源程序的漏洞进行分析并试着自己分析;
  • 了解 Web 漏洞的形成原因,然后通过关键字进行查找分析,参见SecWiki-代码审计高级PHP应用程序漏洞审核技术
  • 研究 Web 漏洞形成原理和如何从源码层面避免该类漏洞,并整理成checklist。

安全体系设计与开发

能建立自己的安全体系,并能提出一些安全建议或者系统架构。

  • 开发一些实用的安全小工具并开源,体现个人实力;
  • 建立自己的安全体系,对公司安全有自己的一些认识和见解;
  • 提出或者加入大型安全系统的架构或者开发;
  • 看自己发展咯~

Web 安全研发工程师

关键字:系统,开发,业务,调试

职位描述

  • 负责互联网运营平台、业务安全平台等系统的建设和开发工作;
  • 对安全产品的易用性改进和Web研发技术优化;
  • 根据公司安全的需要开发安全辅助工具或平台;
  • 参与安全系统的需求分析、设计、编码等开发工作;
  • 维护公司现有的安全程序与系统。

职位要求

  • 能熟练应用一门或几门以下的技术:PHP/Python/Shell/JavaScript/Ajax,熟练把握 LNMP 开发;
  • 熟悉MYSQL数据库开发、配置、维护、性能优化;
  • 优秀的数据库设计和优化能力,至少精通一种数据库应用,MySQL、Redis、mongoDB 加分;
  • 熟悉 Linux 下的开发,熟悉网络开发,具备一定的系统调优能力;
  • 了解常见安全攻击和漏洞及系统化的防护方案;
  • 必须拥有良好的职业道德,责任心,团队合作精神,代码风格;
  • 大访问量网站建设或数据库建设经验优先。

安全运维工程师

关键字:应急,加固,培训,产品

职位描述

  • 服务器与网络基础设备的安全加固;
  • 安全事件排查与分析,配合定期编写安全分析报告,专注业内安全事件;
  • 跟踪最新漏洞信息,进行业务产品的安全检查;
  • 负责信息安全策略/流程的制定,安全培训/宣传及推广;
  • 负责Web漏洞和系统漏洞修复工作推进,跟踪解决情况,问题收集。

职位要求

  • 熟悉主流的Web安全技术,包括 SQL 注入、XSS、CSRF 等 OWASP TOP 10 安全风险;
  • 熟悉 Linux/Windows 下系统和软件的安全配置与加固;
  • 熟悉常见的安全产品及原理,例如 IDS、IPS、防火墙等;
  • 掌握常见系统、应用的日志分析方法;
  • 熟练掌握 C/PHP/Perl/Python/Shell 等一或多种语言;
  • 具有安全事件挖掘、调查取证经验;
  • 网络基础扎实,熟悉 TCP/IP 协议,二层转发和三层路由的原理,动态路由协议,常用的应用层协议;
  • 较好的文档撰写能力、语言表达和与沟通能力。

安全测试工程师

关键字:测试,培训,审计,文档

职位描述

  • 负责公司产品的安全测试、漏洞扫描等工作,保障产品安全质量;
  • 负责安全测试技术积累,提升安全测试能力和效率;
  • 跟踪和分析业界最新安全漏洞、发展趋势和解决方案,引入业界安全测试最佳实践;
  • 负责设计系统的安全测试框架和测试流程,负责制定安全开发规范;
  • 对研发人员、测试相关人员进行安全规范培训,提升规范的可实施性。

职位要求

  • 熟悉常见安全攻防技术和安全漏洞,熟练使用常用渗透测试工具;
  • 熟悉PC客户端软件、手机客户端(Android、iOS)软件的测试流程和方法;
  • 熟悉常见的代码审计或白盒测试工具;
  • 熟练使用 C/C++/PHP/Java/JavaScript/Python 一到两种;
  • 具有良好的技术文档撰写能力,具有良好的沟通能力及协调能力;
  • 良好的职业道德,责任心,团队合作精神。

Windows 逆向工程师

关键字:漏洞,病毒,调试,挖掘

职位描述

  • 参与漏洞挖掘、分析和利用技术研究;
  • 分析当月高危漏洞原理和利用技巧,撰写相关技术总结文档;
  • 挖掘浏览器、Office、Adobe Reader、flash 等客户端软件以及网络协议常见漏洞;
  • 研发相应的漏洞挖掘和分析的一体化框架平台;
  • 恶意程序分析以及其他程序内部实现逻辑分析;
  • 对公司其他部门提供技术支持。

职位要求

  • 熟悉 x86/x64 系列汇编语言、C/C++ 语言,能熟练读懂汇编代码;
  • 有较好的逆向功底,熟练使用 IDA、Windbg、Ollydbg、Immunity Debugger、Bindiff 等分析工具以及 Metasploit 等渗透测试工具;
  • 至少掌握一门编程语言,包括 C/C++/python/ruby/perl/javascript;
  • 熟悉浏览器、office、adobe 以及 flash 等软件内部工作原理以及相应软件漏洞分析与利用技术优先;
  • 熟悉操作系统的相关安全机制,掌握绕过漏洞缓解措施的基本方法;
  • 熟悉 Windows 系统安全,掌握 Windows 核心编程优先;
  • 熟悉漏洞挖掘和分析相关技术、工具以及平台,如 Fuzzing 测试,补丁比较、符号执行技术等。
  • 能够流畅的阅读漏洞方面的英文资料,具备较强的漏洞学习和理解能力;
  • 熟悉技术文档的写作、PPT 制作、具备基本的工作汇报能力;
  • 学习能力强、富有团队精神、有责任心和进取能力;

学习路线

漏洞相关概念

熟悉基本概念和原理(二进制漏洞基本原理、漏洞类型、漏洞利用方法、常见漏洞挖掘、shellcode 编写)。

  • 通过关键字(栈溢出、堆溢出、整数溢出、UAF、double-free、shellcode)进行Google/SecWiki等了解基本概念;
  • 阅读《Q版本缓冲区溢出》《0day漏洞挖掘》等书籍,学习二进制漏洞形成的基本原理和基本的利用方法,并进行实践操作;
  • 学习《加密与解密》中部分章节,熟悉Windows系统的重要数据结构、函数传参方法以及PE文件结构等基础知识。

熟悉相关的工具和平台使用

熟悉 IDA、WinDbg、Ollydbg、Immunity Debugger、Bindiff,Metasploit 等常见的漏洞分析调试和集成平台使用;

  • 了解这些工具的使用背景和用途,可以通过 Google/SecWiki 等搜索了解。
  • 下载安装相应的工具和搭建相应的平台。
  • 学习这些工具的功能和基本使用方法,收集有用的工具插件(如mona、idapython)。教程可以通过 Google 或者 SecWiki 上搜索。
  • 学习常见工具的插件和脚步编写方法,如 WinDbg 插件编写、IDC 和 IDApython 脚步编写、od 脚本编写,具体可以 Google 相关教程。
  • 熟悉Metasploit渗透工具的使用,重点熟悉漏洞模块选择、查看、配置利用以及 shellcode 导出配置等功能,并利用 Metasploit 进行实践。具体教程可以Google:如 Metasploit 教程
  • 待基本工具都熟悉后将相关工具做成一个工具箱。

漏洞样本分析

掌握基本的漏洞原理和利用思路后开始分析分析各种类型的漏洞并撰写分析报告。

  • 通过搜索引擎各大漏洞披露平台(exploit-dbCVEbinvul等)搜集历年爆出来的比较经典的各种类型的二进制漏洞进行整理归类,并同时搜集相应的漏洞分析教程。
  • 根据漏洞描述搭建相应的漏洞调试分析环境,利用 Metasploit 生成样本来进行漏洞重现,并根据漏洞分析报告自己调试分析
  • 待调试分析完成并掌握了漏洞触发的原因和相应的利用方法后,认真总结,并撰写自己的调试分析报告。
  • 根据 Metasploit 中生成样本的 ruby 源码和调试过程的分析,自己尝试编写漏洞 poc 并进行验证。
  • 各个类型的漏洞分析 3 - 5 个,总结各种类型的漏洞的形成机理并及时进行归纳总结。

高级漏洞利用技术

学习掌握现在的主流高级漏洞利用技术,了解操作系统以及编译器的各种漏洞利用缓解和保护措施以及相应的绕过方法。

  • 了解现在操作系统以及编译器的漏洞利用缓解和保护措施,如GS、DEP、ALSR、CFI等。
  • 学习掌握针对这些缓解保护措施的基本方法,如SEH利用、堆喷射、ROP导向编程等。
  • 学习掌握一些针对特定应用程序的高级利用技术:如IE脚步引擎高级利用技术office漏洞利用绕过ALSRoffice漏洞利用堆喷射Flash高级漏洞利用技术
  • 通过一些在线扫描网站平台如malwrVirusTotalwidespread kits等搜集一些在真实环境中使用的样本(推荐通过阅读一些安全公司的分析报告并获取相关样本的MD5值然后搜索下载),分析这些在野外使用的样本中的各种高级漏洞利用技术并进行总结。
  • 关注一些安全峰会的分享议题(如BlackHat等),对其中涉及到漏洞利用的高级技术进行学习和研究。

漏洞挖掘平台使用

掌握主流的漏洞挖掘方法Fuzz测试以及各个Fuzz测试平台的使用。

  • 熟悉Fuzz测试的基本原理,了解主流的Fuzz测试平台,如Peach-fuzz,AFL等。
  • 搭建Peach-fuzz测试框架,熟悉Peach-fuzz的使用范围,熟悉Peach-Fuzz的各个模块的基本工作原理,掌握Peach-pit语法规则
  • 阅读peach-pit的模板,以简单的文档格式为基础,参照编写相应的Peach-pit文件并对目标软件进行Fuzz测试。
  • 了解AFL的基本工作原理,掌握AFL的基本使用方法,下载安装Windows平台的winafl,熟悉其使用,并利用其对Windows平台下的非开源软件进行Fuzz测试。
  • 在熟练使用以上Fuzz测试平台的基础上,阅读工具源码,对其工作原理进行更深层次的了解,并在此基础上根据自己需要开发定制化的工具。
  • 熟悉掌握其他Fuzz测试框架或者平台。

关注安全动态、安全社区与安全会议

关注相关的安全社区和安全大牛,掌握行业最新的安全资讯和安全发展动态。

  • 收集国内外与安全相关的站点并及时整理制作浏览器书签,每天定期抽时间查看,了解行业的最新动态和新时间。如SecWiki-安全维基Freebuf看雪论坛Binvul二进制安全吾爱破解;
    收集整理常见的漏洞披露平台制作成浏览器书签,如exploit-dbCVEProtekresearchlab,及时关注最新漏洞,对于感兴趣的或者重要的漏洞都去实际分析调试一下。
  • 通过Weibo、微信等平台关注国内一些安全大牛的博客或者一些知名的安全公账号,及时了解安全达人的最新分享以及安全研究进展。
  • 通过Twitter关注一些国外的安全界著名人士,,很多国外研究者都会定期在Twitter上发布其最新的研究成果,随时跟踪便可以了解国外的最新研究方向和研究现状。
  • 关注一些重要的安全峰会,如BlackHat、RSA等,收集相关感兴趣的议题,对其中相关的议题进行学习研究。

脚步编程和符号执行框架学习

选择脚步语言Python、Perl、JavaScript中的一种,对语法进行熟悉,对常见库进行学习,推荐学习Python,Python库比较完善,可以大大提高工作效率。

  • 搭建相应的开发环境,根据自己的喜好选择相应的IDE,推荐Sublime等。
  • 选择一本合适的教程学习Python基础语法,如《Python核心编程》
  • Python的基本语法学习完后,可以针对性的学习一些Python应用于逆向工程的库,推荐学习《Python灰帽子》里面介绍了常见的用于逆向工程的Python库以及Python应用于immunity debugger和IDApython等方面的应用,利用这些库可以开发很多自动化的分析工具,节省分析时间。
  • 学习一些动态插桩分析工具,如intel开发的pin,并利用pin插桩平台可以开发一些污点追踪分析的工具,同时可以在github上搜索与pin有关的项目,加入并学习。
  • 学习一些符号执行框架或者平台,符号执行在程序分析和漏洞挖掘上被认为是最有潜力的研究方向,符号执行已经有成熟的框架被用于程序程序分析、自动化漏洞挖掘与利用。推荐学习平台:s2ekleeangr
  • 搜集一些与符号执行相关的学术论文,进行学习。

漏洞自动化分析与挖掘安全工具的开发

随着人工智能的发展,安全领域的研究也将向着以机器代替人的方向发展,在今年举办的CGC挑战赛中,其主题”THE WORLD’S FIRST ALL-MACHINE HACKING TOURNAMENT”就体现了由机器来代替人进行网络攻防对抗的理念,开发自动化的工具也将是下一步进一步发展方向。

  • 在对各种漏洞类型成因有深入的研究和了解后,逐步对各个类型的漏洞建立相应的漏洞模型。
  • 综合利用符号执行以及机器学习等方法,结合建立的漏洞模型,开发相应的自动化漏洞挖掘原型系统,在人工尽量参与少的情况下自动化进行漏洞挖掘。
  • 深入分析漏洞触发的原因以及漏洞条件,结合符号执行的方法,建立一套针对漏洞自动化分析的平台,能够支持挖掘系统产出的异常样本进行可利用性评估以及利用生成等高级功能。
  • 深入分析漏洞利用的过程以及利用技巧,建立相应的攻击检测模型,并开发相应的检测系统,能够针对各种类型的漏洞攻击进行检测并报警。

系统研发工程师

关键词:系统,底层,开发,优化

职位描述

  • 内部安全系统的相关架构设计与开发;
  • 保障生产环境系统层的安全;
  • 高性能服务系统开发与优化;
  • 前沿安全问题研究。

职位要求

  • 熟练掌握Linux/Unix或Windows平台的各种开发技能;
  • 熟悉常用算法和数据结构,熟悉网络编程、多线程编程技术 ;
  • 熟悉Linux下的开发,网络安全、Linux系统安全;
  • 了解常见的应用层安全工具开发、了解APP安全;
  • 具备一定的系统调优能力,具有良好的分析和解决问题能力 ;
  • 善于学习和运用新知识, 对业界安全动态较为敏感;
  • 具有良好的沟通表达能力和团队协作能力。

Android安全工程师

关键字:移动,测试,应急,研究

职位描述

  • 负责移动应用安全测试和安全事件应急响应;
  • 负责移动应用安全平台建设;
  • 负责信息安全策略/流程的制定,安全培训/宣传及推广;
  • 跟踪最新漏洞信息,进行业务产品的安全检查。

职位要求

  • 熟悉Android开发环境,能够较为熟练的开发Android程序;
  • 了解ARM、Smali汇编语言;
  • 熟悉IDA、Gdb等调试分析工具;
  • 有Android漏洞挖掘、漏洞利用经验优先;
  • 最好熟悉Android/Linux底层框架,熟悉系统的工作原理和细节;
  • 最好能够深入研究Android系统底层,分析漏洞和潜在风险;
  • 最好能够跟踪国内外的Android安全动态,分享Android安全的最新技术。

学习路线

Android基础知识

学习Android开发编程,了解其原理。

  • 熟悉Java,C和C++三种在Android系统中使用较多的语言,了解几种语言的特性。
  • 学习Android开发,推荐使用Android studio进行开发,也可以使用eclipse。完成一些小程序,学习Native开发,利用NDK完成一些native程序。在过程中了解Android系统的层次结构,四大组件等Android系统的基本知识。尽可能的了解Andorid系统的概貌。
  • 在基础学习的过程中学习有效的使用搜索引擎,对不熟悉的属于进行了解学习。

逆向基础知识

学习逆向基础相关知识和工具、并试图动手实践。

逆向进阶学习

逆向实战

病毒分析语脱壳学习

漏洞分析与挖掘

学习漏洞类型和原理。

风控安全工程师

关键字:风控,检测,防御,开发

职位描述

  • 负责安全检测分析以及防御系统的研发;
  • 负责大数据分析、分布式计算平台研发;
  • 理解产品作弊生态,规划产品反作弊发展方向,并将方向拆解为可执行的项目;
  • 较强的数据分析能力,将数据规律抽象成机器可实现的策略,为解决问题把握方向。

职位要求

  • 熟悉Python/Java/PHP中的一种开发语言;
  • 熟悉 Linux 系统以及 服务器端开发经验;
  • 熟悉分布式系统部署与开发;
  • 对数据有亲切感,主动性强,细心,思维敏捷;
  • 有安全相关系统研发经验者优先;
  • 有很强的逻辑分析能力,对发现和思考问题充满乐趣;
  • 有反作弊、安全、数据分析专业领域经验优先。

安全产品运营员

关键字:产品,宣传,统计,优化

职位描述

  • 负责安全类产品运营、帐号安全保障、用户体验优化;
  • 负责建立并通过有效的运营,持续优化各项安全指标以及用户增长;
  • 负责用户安全教育,跟进解决用户的各类问题;
  • 负责产品数据的分析,进行上线后的及时优化;
  • 对产品整个生命周期策略,针对用户需求变化,制定产品运营战略和计划。

职位要求

  • 有安全类产品设计或运营经验者优先;
  • 对网络安全相关知识有一定了解;
  • 能够对各项有效资源进行整合,善于协调跨部门合作,优秀的沟通技巧;
  • 对数据敏感,善于数据统计分析,逻辑清晰;
  • 高度的责任心和合作精神,良好的文字表达能力;
  • 工作积极、善于学习、细致耐心、勇于接受挑战。

安全服务工程师(乙方)

关键字:实施,渗透,审计,规范

职位描述

  • 负责安全服务项目中的实施部分,包括:漏洞扫描、渗透测试、安全基线检查、代码审计、应急响应等;
  • 爆发高危漏洞后时行漏洞的分析应急;
  • 对公司安全产品的后端支持;
  • 掌握专业文档编写技巧;
  • 关注行业态势和热点。

职位要求

  • 有较强学习能力,能快速学习新的技术;
  • 熟悉风险评估、应急响应、渗透测试、安全加固等安全服务;
  • 熟悉常见黑客攻防方法;
  • 掌握一门编程语言;
  • 具有良好的语言表达能力、文档组织能力。

学习路线

安全概念和资讯

前期安全知识的补充学习。

  • 熟悉基本的安全术语和概念(SQL注入、上传漏洞、XSS、CSRF、一句话木马、渗透测试、应急响应、风险评估、等级保护等);
  • 阅读OWASP TOP 10 从漏洞分类和漏洞成因寻找安全漏洞的切入点 Link
  • 阅读经典的网络安全相关书籍 Link
  • 安全资讯来源:Secwiki、Reddit、Twitter、Weibo、Wooyun、Freebuf、91ri等。

安全工具使用

熟悉常用的安全测试工具和自家的产品。

  • 综合漏洞扫描工具的安装使用:Nessus、X-scan、Nexpose等;
  • Web漏洞扫描的工具的安装使用和漏洞验证:AppScan、AWVS、WebInspect等;
  • 辅助工具的安装和使用:Nmap、Burp Suite、Sqlmap、wireshark、iptables等;
  • 辅助脚本的收集和修改:各种漏洞利用的Exploit、定制化高的扫描脚本、字典等;
  • 自家安全设备策略部署和使用。

渗透测试

熟悉渗透测试报告的格式和内容。

  • 渗透测试流程:《渗透测试授权书》规定渗透时间和范围、《渗透测试免责书》描述渗透测试可能带来的危害、规定时间实施渗透测试,输出《渗透测试报告》,指导甲方进行漏洞修复;
  • 大多数情况下,渗透测试质量中技术能力占40%,报告书写占60%,必须熟练掌握各种word、exel基本功能;
  • 具体的技术细节、工具使用可参考老美的PTES渗透测试指南 Link

安全基线检查

学习安全业务与系统操作。

  • 不同的客户,不同的业务系统,有不同的安全基线文档,大致分类无外乎几种:从账户、授权、补丁、日志、冗余端口和服务等层面对主机系统、中间件和数据库进行配置[检查];
  • 阅读外网流出的各家厂商的安全基线检查内容,如:运营商-移动 Link
  • 掌握不同版本的配置方法和配置项,可自行安装系统、中间件、数据库进行实操。

应急响应

学习渗透实战,并了解应急响应流程。

  • 应急响应流程可分为两类:实时性应急响应和入侵后应急响应;
  • 实时性应急响应:大多为DDOS攻击,首要进行流量分析,若流量打满,能做的就是反查攻击IP,逆向渗透;若网络设备会话数被打满或者主机系统的CPU、内存、会话数被打满,可通过交换机做端口镜像,使用wireshark、tcpdump进行抓包,分析流量特征,确认攻击类型,在网络设备或安全设备上做相应阻断策略;
  • 攻击后应急响应:通过分析恶意文件和日志,查找入侵来源IP和入侵者所利用的漏洞,提出漏洞修补方案,并逆向追踪入侵者;
  • 应急响应对工程师的要求较为复杂,需多熟悉不同操作系统、应用、中间件、数据库特性,且能熟练使用编程语言或者vim等编辑器对较大的日志进行数据整理,还需要日常多多积累各种攻击特征和防护策略;
  • 多阅读网上已有的应急响应的文档,学习逆向分析思路。

代码审计

学习代码审计流程和实战。

  • 熟悉代码审计工具的安装使用,可参考SecWiki上的文章 Link
  • 根据工具报告验证问题是否为误报,并跟踪分析;
  • 参看各大资讯平台、论坛、旧杂志的文章,学习白盒分析思路;
  • Exploit编写。

安全边界建设

学习安全边界检查工作的流程和内容。

  • 安全边界检查的工作重点可总结为:根据是各个信息区域否需要外网接入、是否需要访问内部核心网络等行为特点,将信息安全系统划分为边界接入域、网络基础设施域、计算机安全域、运维管理域,并对现有网络是否有按照该标准做相应的安全域划分,或判断其划分是否合理;
  • 可参考规范:IATF Link

安全规范

学习国标和行业规范。

技术支持工程师(乙方)

关键字:售前,招标,培训,应急

职位描述

  • 负责客户的售前技术支持工作,包括分析挖掘客户需求,针对客户网络架构,设计合理的网络安全解决方案,设计完成产品演示与交流。
  • 配合销售人员,独立完成整个招投标过程。
  • 完成公司各类产品实施,部署上线。
  • 完成用户培训,完成项目售后维护,为客户提供必要的应急响应。

职位要求

  • 精通TCP/IP协议,熟悉网络交换原理和各类路由协议,可熟练调试路由交换设备。
  • 熟悉常见操作系统和数据库。
  • 熟悉公司各类安全产品特性与配置,完成产品部署上线。
  • 熟悉集成类项目管理,稳步推进项目开展。
  • 熟悉招投标流程,可独立完成标书制作与产品演示。
  • 良好的沟通能力。

学习路线

学习基本安全攻防概念

熟悉Web安全漏洞和网络攻击漏洞的方法。

掌握网络协议与路由交换

熟悉网络相关技术知识,能动手解决实际问题。

安全工具使用

熟悉相关安全工具的使用,在不同场景知道用什么工具。

  • 网络扫描工具的安装使用:X-Scan、SuperScan、Nmap等,通过SecWiki/Google进行关键字搜索;
  • Web漏洞扫描的工具的安装使用和漏洞验证:AppScan、AWVS、WebInspect、Netsparker、sqlmap、Burp Suite等,通过SecWiki/Google进行关键字搜索;
  • 其他工具安装使用:Metasploit、Tcpdump、wireshark等,通过SecWiki/Google进行关键字搜索;

本公司产品配置与管理

熟悉公司内部产品和竞争对手的相关产品。

安全规范与安全标准

学习国标和行业规范。

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2017-2021 Shadowalker
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信