Web 安全渗透方面的学习路线?

2020/11/11 11:06
阅读数 618

照例审下题,题主说对渗透感兴趣并且想真正搞 Web 渗透方面,在问题描述中提到「看了好多道哥的白帽子书和乌云(知识库)」,但感觉自己「瞎折腾了很久,没啥收获」

这个情况其实并不是书籍或其他学习资源出了问题,而是你本身的学习路线与知识体系出了问题,为什么呢?

正所谓「 Web 安全渗透」,你刚入门就把重心放在后面的「安全渗透」,而不是前面的「Web」,脱离 Web 技术搞渗透,这就属于典型的本末倒置。当然,这也是当前 90% 以上 Web安全/渗透测试 新人们刚入门时遇到的情况。

 

这里顺便做一次普及:Web 技术到底有哪些?

 

这里我们先来举个简单的例子:

 

上图是一个普通的不能再普通的上网模型,涉及到三个部分,第一部分就是左边的”你“,第二部分就是连接通信双方的互联网,第三部分就是右边的网站(以拼客学院为例)。

 

当“你”访问拼客学院时,从浏览器输入网址到最终看到网页,这个过程到底发生了什么?

  • 第一,浏览器将域名解析为 IP 地址(这里涉及到 DNS 域名解析技术)
  • 第二,浏览器根据源目 IP 地址封装 HTTP 请求包发送给网站拼客学院(这里涉及到 HTTP/HTTPs 通信协议)
  • 第三,网站拼客学院收到 HTTP 请求并解析,根据请求调用数据库并返回资源(这里涉及到 Web 后端开发 / 数据库 / 容器 / 框架/ 操作系统等技术)
  • 第四,网站资源包括网页、文档、音频、视频等,封装为 HTTP 响应包传输给浏览器(这里仍然涉及到 HTTP/HTTPs 通信协议)
  • 第五,浏览器收到拼客学院的 HTTP 响应包,调用前端技术进行解析并显示给用户(这里涉及浏览器与 Web 前端开发技术)

 

千万千万不要小看上面的每个步骤,看上去感觉挺简单,但其实每个步骤的背后又可以拆分为 N 多个步骤。拿第三个步骤为例,当网站收到 HTTP 请求后,到底是如何解析这个请求,并且又是如何调用数据库资源的?这里首先会涉及到后端开发技术中的 MVC/MTV 架构,如图:

 

除此之外,在网站部署的时候还会涉及到 Web 容器、网关接口、静态文件、负载均衡等模块的处理,如图:

上面这一次简单的不能最简单的 Web 访问过程,其实就勾勒出一个复杂的 Web 技术生态。我们必须认识到:

  • Web 技术不仅仅是 Web 前端开发技术(也指"网页开发"技术)
  • Web 技术不仅仅是 Web 后端开发技术(例如 “PHP网站开发” “Java网站开发” )
  • Web 技术不仅仅是 互联网通信技术(例如 DNS、HTTP、HTTPS 等)
    ……

 

我们可以用这张「 Web 技术架构图」将所有涉及到 Web 技术串联起来 =>

by 陈鑫杰老师

 

也就是说,要真正看懂道哥这本经典的《白帽子讲 Web 安全》或者读懂乌云上的渗透测试案例,首先,你得掂量下,自己是否具备这些前置知识:

  • 是否能够从零开始搭建起一个网站?(网站架构)
  • 是否了解过 HTTP 协议原理?例如用抓包软件分析过 HTTP请求和响应包有什么内容?(Web通信协议)
  • 是否能看懂网页源码,或者用 HTML / CSS / JavaScript 做过前端页面?(Web前端)
  • 是否清楚什么是 MVC/MTV 架构,或者用 Python / PHP / Java 做过后端架构?(Web后端 )
  • 是否了解过常见的 Web容器/中间件,或者用过 Apache / Nginx / Tomcat?(Web容器)
  • 是否掌握任一常见的数据库技术,包括但不限于 MySQL / SQLsever / Oracle?(数据库)
    ……

 

如果你真的掌握了以上这些 Web 技术,搞懂了网站前后端原理,甚至在代码层面能亲手开发出来。那么,你再回去看相关安全书籍或案例就不会「没啥收获」,相反地,你一定能获得这样的学习体验:

by 陈鑫杰老师

  • 由于有 Web 前端语言基础,那么学 XSS 和 CSRF 漏洞会很快(客户端安全)
  • 由于有 Web 后端语言基础,那么会很快搞定 Webshell木马、文件上传、代码执行等漏洞(服务端安全)
  • 由于有 数据库 SQL 语言基础,那么你学 SQL 注入漏洞或者搞手工注入会感到轻而易举(数据库安全)
    ……

 

总而言之,我们要真正学懂学通「Web 安全渗透」,一定需要一个科学合理、循序渐进、第一原理驱动的学习路线,千万不要「瞎折腾」,不要急着学「渗透」,更不要一上来就用「工具」。因为 Web 安全渗透技术,首先是建立在 Web 技术之上的,绕开这些技术谈安全谈渗透,那便是 "空中楼阁"。

因此,如果你真正热爱安全技术,目标是一名合格的白帽子黑客,甚至希望未来从事网络空间安全相关职位,那么,前期潜心花费几个月的时间,把这些未来干活必定会用到的技能耐心打磨好,是不是稳赚不赔的?毕竟,大学读 4 年也未必能让你找到工作。

 

--- 以下才是正文---

 

那么,更科学合理的 Web 安全渗透学习路线应该是怎样的呢?

考虑到题主是一个新手,因此,接下来我会带领你一起来制定这条路线:

《 100 天晋升 Web 安全工程师/渗透测试工程师学习路线图》(知乎视频解读版,戳这里。)

by 陈鑫杰老师

所谓「授之以鱼不如授之以渔」,本学习路线图中我会告诉你每个阶段需要学什么、为什么要学这些、需要花费多少时间、学完之后要达到的目标。

更重要的是,本学习路线图提到的所有技术内容和推荐资源,都可以通过搜索引擎免费找到,包括书籍、文章、教程、工具等等。因此,只要足够耐心,即便 0 基础,按照这个路线图,坚持学习 100 天,你也能够通过自学的方式掌握这些技术。

 

注:100 天是我个人推荐的学习周期,结合了我自己在拼客学院多年的安全教育经验(始于2013年),从企业雇主和学员们的各个数据反馈综合得出。因此,这个周期未必适合每一个人,你可以根据自身情况来动态调整。

 

接下来,我们对这张路线图进行阶段拆解,分为学习导论、技能清单、工具软件、学习资源、学习周期等方面详细展开 =>


第 1 阶段 Web 技术入门

1.0 学习导论

此阶段,我们的学习目标是了解网络安全行业的法律法规 / 学习方法 / 求职目标,搭建属于自己的博客 / 论坛 / 网站(成为一名站长)、掌握 Web 技术架构、搞懂浏览器和网站之间的通信原理。

1.1 技能清单

Web 安全导论

  • 法律法规
  • 行业趋势
  • 安全标准
  • 学习指南

Web 网站实战

  • Web 建站指南(WordPress在线建站)
  • XMAPP 原理与实践(Web集成环境解读)
  • XAMPP 安装 WordPress
  • Joomla 介绍与安装
  • Discuz 介绍与安装
  • Dedecms 介绍与安装

HTTP 原理与实践

  • HTTP 协议概述
  • HTTP 请求响应
  • HTTP 请求方法
  • HTTP 响应方法
  • HTTP 消息报文之请求报文
  • HTTP 消息报文之响应报文
  • HTTP 消息报文之通用报文
  • HTTP 消息报文之实体报文

1.2 工具软件

  • 网站运行环境
    • Xampp / PHPstudy / WAMP / MAMP(任选一个)
    • Bitnami
    • PhpMyAdmin
  • CMS 程序包
    • WordPress
    • Joomla
    • Discuz
    • Dedecms
  • 抓包调试
    • Postman
    • Npcap
    • Wireshark

1.3 学习资源

  • 推荐网站
  • 推荐书籍
    • 《 W3school 网站建设教程》
    • 《图解 HTTP 》

1.4 学习周期

  • 推荐 1 周

 

第 2 阶段 Web 前端开发

2.0 学习导论

此阶段,我们的学习目标是掌握 Web 前端开发技术,学习 HTML、CSS、JavaScript 编程语言,能独立制作 Web商业级页面。

2.1 技能清单

  • HTML 编程原理与实践
    • WebStorm使用
    • HTML 入门
    • HTML 标题
    • HTML 头部
    • HTML 段落
    • HTML 文本
    • HTML 链接
    • HTML 列表
    • HTML 表格
    • HTML 布局
    • HTML 项目
  • CSS 编程原理与实践
    • CSS 入门
    • CSS 选择器
    • CSS 背景
    • CSS 文本
    • CSS 字体
    • CSS 链接
    • CSS 盒模型
    • CSS 定位
    • CSS 浮动
    • CSS 项目
  • JavaScript 编程原理与实践
    • JavaScript 简介
    • JavaScript 基础
    • JavaScript 变量
    • JavaScript 数字
    • JavaScript 字符串
    • JavaScript 数组
    • JavaScript 词典
    • JavaScript 流程控制
    • JavaScript 流程控制
    • JavaScript 函数
    • JavaScript DOM基础
    • JavaScript DOM事件
    • JavaScript BOM事件
    • JavaScript 项目

2.2 工具软件

  • Webstorm
  • Sublime Text

2.3 学习资源

  • 推荐网站
  • 推荐书籍
    • 《 W3school 前端教程合集》
    • 《 HTML5 与 CSS3 基础教程》(图灵出版)
    • 《 JavaScript 基础教程》(图灵出版)

2.4 学习周期

  • 推荐 2 ~ 3 周

 

第 3 阶段 Web 后端开发

3.0 学习导论

此阶段,我们的学习目标是掌握 Web 后端开发,学习 Python 编程与 Django Web 开发框架,掌握 MySQL 数据库原理与操作。从零开始独立开发一个 Web 网站,并基于 LNMP 架构在 CentOS 服务器上进行部署。

这里要特别强调下,后端技术涉及的编程语言、Web框架、数据库、中间件、操作系统等技术众多,作为新手,可以遵循一个原则,即「深入某个技术栈,横向扩展其他」。

例如,在这个路线图里面,我们选择 Python/Django 作为后端学习的技术栈,因为相比 Java 或 PHP,Python 对于新手而言更加友好,代码简洁且语法清晰。不仅如此,由于众多安全工具和测试代码基于 Python 开发,其也被称为黑客或网络安全领域的第一语言

当我们完成了 Python / Django 的学习之后,后续也可以再横向拓展到 PHP/Thinkphp 或 Java/Spring 等后端技术栈,这样才能更好的胜任 Web 安全测试工作。

3.1 技能清单

Python 编程原理与实践

  • Python 导论入门
  • Python 环境安装
  • Python 对象类型
  • Python 流程控制
  • Python 函数模块
  • Python 面向对象
  • Python 输入输出
  • Python 异常处理

Django Web 项目开发实战

  • Django 框架入门
  • Django 环境安装
  • Django 项目搭建
  • Django ORM
  • Django Models
  • Django Views
  • Django Template
  • Django Blog 项目
  • 网站部署上线

3.2 工具软件

  • PyCharm
  • Navicat
  • MySQL

3.3 学习资源

3.4 学习周期

  • 推荐 3 ~ 4 周

 

第 4 阶段 Web 安全渗透

4.0 学习导论

此阶段,我们的学习目标是:

  • 熟练 Kail Linux 渗透测试原理与实践,包括信息搜集、漏洞扫描、漏洞利用、后门维持等。
  • 熟练 Web 安全攻防实验室搭建与靶机使用,包括 OWASP BWA、DVWA、Mutillidae II、PentesterLab 等。
  • 熟练OWASP TOP10 等 Web 漏洞原理与利用,包括 SQL 注入、文件上传、文件包含、Webshell木马编写、命令执行、XSS跨站脚本攻击、CSRF跨站伪造请求等。
  • 熟练编程开发与渗透测试等超 40 种常用工具使用,包括但不限于 BurpSuite、SQLmap、Wireshark、Metasploit、Nmap、Nessus、OpenVas、AppScan、AWVS、ZAP、Havij、Postman、Pangolin、Cknife、Weevely、Jexboss、Tamper、Xampp、edjpgcom、Google Devtools、PyCharm、WebStorm、Navicat、SET、Meterpreter、Shodan、Dirbuster、BeEF、WPscan、Joomscan、httpprint、Whatweb、Layer子域名、御剑后台、中国菜刀等。
  • 熟悉CTF靶机渗透测试实战,通过CTF4、CTF6、CTF7等攻防实践,真正掌握黑盒测试、攻击链、红队等一系列方法。
  • 熟悉Windows与Linux常见漏洞复现实践,包括CVE-2017-7494-SambyCry远程代码执行、CVE-2017-16995-Ubuntu16.04本地提权、MS17-010-永恒之蓝-Windows提权等。

4.1 技能清单

Web安全渗透之实验室搭建

  • Kali Linux
  • OWASP BWA
  • PentesterLab
  • Windows
  • ……

Web安全渗透之信息搜集

  • 搜索引擎 Google Hacking
  • 搜索引擎 Shodan Hacking
  • 搜索引擎 Zoomeye Hacking
  • 目标扫描 Nmap 简介-命令行操作
  • 目标扫描 Nmap 图形化操作(Zenmap)
  • 目标扫描 Nmap 图形化操作(Zenmap)
  • 目标扫描 OpenVAS
  • 域名遍历 Dirbuster
  • 域名遍历御剑后台-Layer子域名
  • 指纹识别 Whatweb
  • 指纹识别 httprint
  • ……

Web安全渗透之漏洞扫描

  • Web漏扫原理与工具介绍
  • BurpSuite入门与安装
  • BurpSuite代理功能
  • BurpSuite目标功能
  • BurpSuite爬虫功能
  • BurpSuite扫描功能
  • BurpSuite入侵功能
  • BurpSuite辅助功能
  • BurpSuite+CO2实现SQL注入攻击
  • AWVS入门与安装
  • AWVS Web Scanner扫描功能
  • AWVS 站点爬取-目标查找-子域名查找
  • AWVS SQL盲注-HTTP编辑-嗅探-模糊测试
  • AWVS HTTP表单破解-任务计划-Web服务扫描
  • Appscan入门与安装
  • Appscan扫描执行-漏洞说明-修复任务
  • Appscan保存扫描-导出报告-扫描配置
  • Appscan手工探索-手工测试-调度程序
  • Appscan PowerTools - 表单破解
  • OWASP ZAP入门与安装
  • OWASP ZAP主动扫描
  • OWASP ZAP扫描报告-拦截代理-插件使用
  • OWASP ZAP模糊测试-编码解码
  • WPscan-Joomscan
  • ……

Web安全渗透之SQL注入与防御

  • SQL注入漏洞原理-影响-分类
  • 数据库原理-SQL语句讲解-CRUD操作
  • 数据库原理-数据表建立-注入流程
  • 手工注入-错误-布尔-Union注入
  • 手工注入-Union注入-时间盲注
  • 自动化注入-SQLmap入门与使用
  • 自动化注入-SQLmap GET注入详解
  • 自动化注入-SQLmap POST注入-带参数cookie注入
  • 自动化注入-SQLmap混淆-代理-高级注入
  • 自动化注入-SQLmap数据获取-提取操作
  • 自动化注入-SQLmap实战案例
  • 自动化注入-Havij使用详解
  • 自动化注入-Havij实战案例
  • 自动化注入-Pangolin使用详解
  • SQL注入安全防御思路
  • ……

Web安全渗透之文件上传攻击与防御

  • 文件上传漏洞原理
  • 低安全级别漏洞利用-上传Webshell-绕过大小限制
  • 中安全级别漏洞利用-绕过文件类型限制实现任意文件上传
  • 高安全级别漏洞利用-上传一句话图片木马
  • Webshell 原理-一句话木马代码解读
  • Webshell 实战-中国菜刀(China Chopper)
  • Webshell 实战-C刀(Cknife)
  • Webshell 实战-一句话图片木马原理与制作(edjpgcom-cmd制作)
  • Webshell 实战-XISE寄生虫
  • Webshell 实战-Weevely
  • 文件上传漏洞安全防御思路
  • ……

Web安全渗透之文件包含攻击与防御

  • 文件包含漏洞原理
  • 本地文件包含(LFI)
  • 远程文件包含(LFI)
  • 本地文件包含结合文件上传webshell
  • 远程文件包含结合webshell
  • 中高安全级别绕过分析
  • 文件包含安全防御思路
  • ……

Web安全渗透之命令执行攻击与防御

  • 命令执行漏洞原理-低安全级别漏洞利用
  • 命令执行漏洞原理-中高安全级别漏洞利用
  • 命令执行漏洞原理-Apache Struts2远程命令执行实战案例
  • 命令执行防御思路
  • ……

Web安全渗透之 XSS 攻击与防御

  • XSS 跨站脚本攻击原理-分类-危害
  • 反射型 XSS-低安全级别-弹框-重定向-cookie获取及利用(tamper data)
  • 反射型 XSS-中安全级别-大小写-混淆写法绕过
  • 存储型 XSS-低安全级别-弹框告警-cookie获取
  • 存储型 XSS-中高级别分析及cookie获取
  • 自动化攻击- BeEF 入门简介
  • 自动化攻击- BeEF 基础使用(初始启动-脚本解读-服务管理)
  • 自动化攻击- BeEF 信息收集(浏览器重定向-链接修改-弹框-主机-网络)
  • 自动化攻击- BeEF 持久化控制-与Metasploit结合实现渗透测试
  • 自动化攻击- BeEF 社会工程学攻击(点击劫持-谷歌Facebook网页钓鱼-虚假更新)
  • XSS 跨站脚本攻击-安全防御思路
  • ……

Web安全渗透之 CSRF 攻击与防御

  • CSRF跨站请求伪造原理-会话机制(Cookie和Session)
  • CSRF跨站请求伪造-BeEF-XSS实现CSRF攻击(GET方法实现管理员密码修改)
  • CSRF跨站请求伪造-BeEF-Burp实现CSRF攻击(POST方法实现信息提交)
  • CSRF跨站请求伪造-安全防御思路(二次认证-Token认证-Refer头部检测)
  • ……

高级渗透测试系列

  • 网络服务渗透之 Windows 常用服务
  • 网络服务渗透攻击 之 Linux 常用服务
  • 客户端渗透之 Adobe PDF 渗透
  • 客户端渗透之 Office Word渗透
  • 社会工程学之伪装木马
  • 社会工程学之网站钓鱼
  • 自动化渗透 - 后渗透
  • ……

CTF 靶机渗透实战系列

  • 从零开始认识 CTF 夺旗赛
  • CTF 赛事题目解析
  • 快速拿下 WordPress 靶机
  • 一步一步教你拿下 CTF 4 靶机
  • 一步一步教你拿下 CTF 6 靶机
  • 一步一步教你拿下 CTF 7 靶机
  • ……

4.2 工具软件

  • 信息搜集
    • 搜索引擎(Google/Shadan hacking)
    • 目标扫描(Nmap、OpenVAS)
    • 指纹识别(whatweb、Appprint、御剑指纹识别)
    • 域名/目录/后台/暴破(DirBuster、御剑、Layer子域名挖掘机)
  • 漏洞扫描
    • BurpSuite
    • AWVS
    • Appscan
    • ZAP
    • WPscan
    • Joomscan
  • SQL注入漏洞
    • SQLmap
    • Pangolin
    • Havij
    • Discuz注入漏洞利用exp
  • XSS/CSRF漏洞
    • BeEF
  • 文件上传
    • 中国菜刀
    • Cknife
    • edjpgcom
    • 一句话图片木马
    • XISE WBMS
    • Weevely
  • 命令执行
    • Struts2漏洞利用exp

4.3 学习资源

  • 推荐书籍
  • 《 Kali Linux 渗透测试学习清单 》
  • 《 白帽子讲 Web 安全 》
  • 《 Web 安全深度剖析 》
  • 《 Metaspolit 渗透测试魔鬼训练营 》
  • 《 Web 前端安全揭秘 》
  • 《 黑客攻防技术宝典 Web 实战篇 》
  • 《 SQL 注入攻击与防御 》
  • 《 XSS 跨站脚本攻击剖析与防御 》
  • ……

4.4 学习周期

  • 推荐 5 ~ 6 周

 

本答案终于结束啦~ (后续有空再上来更新)


 

【推荐知乎文章】by @拼客学院陈鑫杰

 

【推荐知乎视频】by @拼客学院陈鑫杰

 

【公益训练营】by @拼客学院陈鑫杰

Web安全工程师

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

    熟悉渗透相关工具
    熟悉AWVS、sqlmap、Burp、nessus、chopper、nmap、Appscan等相关工具的使用。
    1. 了解该类工具的用途和使用场景,先用软件名字Google/SecWiki;
    2. 下载无后们版的这些软件进行安装;
    3. 学习并进行使用,具体教材可以在SecWiki上搜索,例如:Brup的教程sqlmap
    4. 待常用的这几个软件都学会了可以安装音速启动做一个渗透工具箱;
  • 5周

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

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

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

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

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

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

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

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部