零基础如何学习Web安全渗透测试?这可能是史上最详细的学习路线图!

零基础如何学习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 技术串联起来 =>

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

是否能够从零开始搭建起一个网站?(网站架构)

是否了解过 HTTP 协议原理?例如用抓包软件分析过 HTTP请求和响应包有什么内容?(Web通信协议)

是否能看懂网页源码,或者用 HTML / CSS / JavaScript 做过前端页面?(Web前端)

是否清楚什么是 MVC/MTV 架构,或者用 Python / PHP / Java 做过后端架构?(Web后端 )

是否了解过常见的 Web容器/中间件,或者用过 Apache / Nginx / Tomcat?(Web容器)

是否掌握任一常见的数据库技术,包括但不限于 MySQL / SQLsever / Oracle?(数据库)

……

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

由于有 Web 前端语言基础,那么学 XSS 和 CSRF 漏洞会很快**(客户端安全)**

由于有 Web 后端语言基础,那么会很快搞定 Webshell木马、文件上传、代码执行等漏洞**(服务端安全)**

由于有 数据库 SQL 语言基础,那么你学 SQL 注入漏洞或者搞手工注入会感到轻而易举**(数据库安全)**

……

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

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

— 以下才是正文—

那么,Web 安全渗透的学习路线应该是怎样的?

考虑到很多朋友是新手,因此,接下来我会带领你一起来制定这条路线:

《Web 安全工程师/渗透测试工程师学习路线图》

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

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

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

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

第 1 阶段 Web 技术入门

1.0 学习导论

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

1.1 技能清单

Web 安全导论

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

Web 网站实战

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

HTTP原理与实践

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

1.2 工具软件

网站运行环境

Xampp / PHPstudy / WAMP / MAMP(任选一个)BitnamiPhpMyAdmin CMS 程序包

WordPressJoomlaDiscuzDedecms 抓包调试

PostmanNpcapWireshark

1.3 学习资源

推荐网站

W3schoolRunoob 推荐书籍

《 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 工具软件

WebstormSublime Text

2.3 学习资源

推荐网站

W3schoolRunoob 推荐书籍

《 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 ORMDjango ModelsDjango ViewsDjango TemplateDjango Blog 项目网站部署上线

.2 工具软件

PyCharmNavicatMySQL

3.3 学习资源

推荐网站

Python官网Python手册(中文版)Django官网Django项目W3schoolRunoob 推荐书籍

《 Python 核心编程 》《 Python 学习手册 》《 笨方法学 Python 》《 轻量级 Django 》《 Django Book 》

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 LinuxOWASP BWAPentesterLabWindows……

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子域名挖掘机) 漏洞扫描

BurpSuiteAWVSAppscanZAPWPscanJoomscan SQL注入漏洞

SQLmapPangolinHavijDiscuz注入漏洞利用exp XSS/CSRF漏洞

BeEF 文件上传

中国菜刀Cknifeedjpgcom一句话图片木马XISE WBMSWeevely 命令执行

……

Struts2漏洞利用exp

4.3 学习资源

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

4.4 学习周期

推荐 5 ~ 6 周

本文正式结束啦~~~

希望对所有想进入信息安全行业、或正在学习Web安全、渗透测试的朋友们带来帮助~~~

从靠劳力赚钱转变成靠脑力赚钱,想入门渗透测试的小白肯定想知道如何学好?

👉[[[CSDN大礼包:《黑客&网络安全入门&进阶学习资源》免费分享]]](安全链接,放心点击)

一、网安学习成长路线图

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)

二、网安视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

三、精品网安学习书籍

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

四、网络安全源码合集+工具包

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、网络安全面试题

最后就是大家最关心的网络安全面试题板块 这份完整版的学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关推荐

苹果电脑怎么改壁纸
365完美体育

苹果电脑怎么改壁纸

📅 07-31 👁️ 8007
魔兽世界怀旧服风蛇吃什么
mobile365体育

魔兽世界怀旧服风蛇吃什么

📅 08-23 👁️ 5914
世预-史上最小参赛国!冰岛2-0出线 克罗地亚第2
365完美体育

世预-史上最小参赛国!冰岛2-0出线 克罗地亚第2

📅 08-05 👁️ 3331
2400毫安电池能用多久
mobile365体育

2400毫安电池能用多久

📅 07-03 👁️ 406
汽车座椅套安装流程
365_体育投注英超和欧冠

汽车座椅套安装流程

📅 07-12 👁️ 7106
百万英雄提现多久到账? 什么时候能拿到钱?
365完美体育

百万英雄提现多久到账? 什么时候能拿到钱?

📅 08-15 👁️ 7357
炸金花规则详解:从发牌到比牌一学就会的完整指南
丰田威驰用什么型号机油最合适,新威驰0W20还是5W30
365_体育投注英超和欧冠

丰田威驰用什么型号机油最合适,新威驰0W20还是5W30

📅 08-03 👁️ 4952
qq下载在哪里可以找到?
365_体育投注英超和欧冠

qq下载在哪里可以找到?

📅 08-30 👁️ 5151