前言

学习网络渗透技术是一件靠兴趣驱动的事情,只有强烈热爱一件事才能持之以恒的去做,对于那些三分钟热度的人来说还是劝你放弃吧,因为网络渗透技术自学需要很多方面的知识,没耐心是无法学会的。
当然除了有想要学习的决心之外还要有科学的学习方法。磨刀不误砍柴工,系统的学习方法可以让你事半功倍,那么渗透测试技术该如何高效地学习呢?

1. 什么是渗透测试?

渗透测试就是模拟真实黑客的攻击手法对目标网站或主机进行全面的安全评估,与黑客攻击不一样的是,渗透测试的目的是尽可能多地发现安全漏洞,而真实黑客攻击只要发现一处入侵点即可以进入目标系统。
一名优秀的渗透测试工程师也可以理解为是一个厉害的黑客,当然也可以称呼为白帽子。
一定要注意的是,在进行渗透测试前,需要获得目标客户的授权,如果未获得授权,千万不要对目标系统进行渗透测试,后果请自行查看《网络安全法》。同时要有良好的职业操守,不能干一些违法的事情。

2. 为什么要学渗透测试?

学渗透测试的好处不外乎以下几点:
• 心理满足感。
很酷,就像小时候看黑客的电影一样,自己也成为了他们。

• 有一份可观的收入。
可以去各大招聘网站上看下这个岗位的薪资。还可以做兼职,在业余时间参加漏洞众测,可以获得比较丰厚的收入。

• 没那么卷。
在软件开发、金融行业卷上天的时代,网络安全行业的竞争可以说相当小,因为这方面的人才缺口实在太大了。

3. 学习渗透测试需要的前置技能

学习渗透测试其实最重要的是有兴趣,要有一颗好奇的心,一个对知识渴望的心,以及足够的毅力,这样可以支撑我们在这条道路上不断学习。
当然,学渗透测试还是有一点门槛的,如果你是计算机专业的人,很快可以轻松上手,在一两个月内入门。如果是其它专业的,或者是电脑小白,那么还是比较有难度的,但是也不用担心,我身边有很多大牛都是零基础入行的,所以兴趣是你最重要的老师。
下面说一些渗透测试需要的基本前置知识:
• HTTP协议基础知识。
HTTP协议属于计算机网络的知识,因为渗透测试基本是对网站的请求数据进行修改,查找漏洞,所以了解HTTP协议请求的格式是必不可以的。
• cmd / shell 操作。
这里说的 cmd 操作是指会使用 Windows 系统的 cmd 命令行窗口执行一些常见的命令,按 win + R 键,输入 cmd 回车,可以打开cmd 窗口。还有就是要会使用 linux 执行一些常见的 shell 命令。
• Linux 操作系统使用。
由于很多渗透测试工具只能运行在 Linux 操作系统中,所以我们要会使用 Linux 系统,可以通过 VMWare 虚拟机软件安装 Ubuntu linux 虚拟机来练习使用,也可以直接安装 Kali Linux 来练习。

前面说的是一些基本知识,下面是一些可选知识,没有这些知识也可以做渗透测试,只是局限性会比较大。

• python 编程语言。
作为一个脚本小子,会 python 语言可以帮助我们开发一些工具减轻平时的工作量,用 python 来做一些重复性的工作,如自动化信息收集,最重要的是可以写一些漏洞利用工具。

• Java/PHP 编程语言。
渗透测试大部分时间都是对网站进行操作,这些网站大多数是使用 Java 或 PHP 语言开发的,有些是使用一些开源的系统进行二次开发的,我们可以对这些开源的系统进行代码审计,直接从代码中发现漏洞。

4.如何系统地学习渗透测试?

回到文章主题,如何系统地学习渗透测试。

前排提示:所有的资料进行整合并且整理成了一份 【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴可以扫描下方 CSDN官方合作二维码免费领取哦,无偿分享!!!

第一步,先确定要学习的方向

在学习渗透测试前,可以先了解一下渗透测试有哪些方向,因为渗透测试的范围还是比较广的,按方向分,可以大致分为 Web 渗透 、 APP 渗透、 内网渗透 、物联网渗透、 工控渗透。 按难度来排序,我认为的难度排序是 Web渗透 < 内网渗透 < APP 渗透 < 物联网渗透=工控渗透。理想情况下当然是所有都会最好,但凡事都需要一步步来,可以先从最简单的 Web 渗透开始学,当Web 渗透掌握了,再扩展到其它方向。

为什么这样排序,说下我的理由:

Web 渗透主要是要找网站的漏洞,只需要了解一些基础的计算机网络知识,也就是 HTTP 协议的知识,然后会一些工具的使用就可以了,剩下的就是了解一些常见 Web 漏洞的测试方法,相对来说最为简单

内网渗透是指在我们通过 Web 渗透获取 Web 服务器权限或者使用钓鱼邮件等方式获取了目标内网主机权限后,对目标公司的内部网络进行渗透测试。其中需要掌握更加多的计算机网络知识,比如子网划分、网络拓扑图、各种网络协议。还要了解 Windows 域知识,权限提升技术、横向移动技术、权限维持技术、免杀技术。要学习的内容难度也不算大,所以只要肯花时间,也是可以掌握的。由于知识点比 Web 渗透多,所以难度比 Web 渗透大

APP 渗透可以理解是 Web 渗透的扩展,主要是对 安卓 APP 和 iOS APP 进行渗透测试,APP 也需要和服务器后台进行数据交互,这部分的测试和 Web 渗透一样。另外还需要对 APP 本身的漏洞进行测试,这需要逆向分析的能力,而逆向分析其实也属于安全的一个大方向,需要我们掌握一些脱壳技术、动态调试技术、反编译工具使用、Java 编程语言、C/C++ 编程语言、汇编语言、 Swift 编程语言、Object-C 编程语言。在编程语言方面,我们不需要像软件开发人员一样精通,但至少需要能看懂代码。由于 APP 渗透需要逆向分析能力,并且学习的计算机底层知识更多,而因此 APP 渗透难度更大

物联网渗透、 工控渗透其实都差不多,区别其实就是物联网设备需要联网,工控设备一般是在隔离的网络中,相同点是都需要接触物理设备。不同于上面的各项渗透,只需要有网络就可以开始,如果没有物联网和工控设备,根本无法开始,或者只能做部分的测试,在能否接触到设备这里,就拦住了很多人。这方面的学习需要花钱买硬件,或者公司进行投入采购硬件。在技能方面,除了要会逆向分析外,还需要了解各种硬件知识、电气知识、工业协议、物联网协议,因此难度是最高的

第二步,了解所学习方向的框架和知识点。

了解所学习方向的框架和知识点比较重要,这样不至于盲目学习不重要的知识点。要入门渗透测试,先从最简单的 Web 渗透开始,入门级的 Web 渗透知识点框架我认为可以分为三部分。

一、信息收集流程。
如子域名收集、备案查询、github 敏感信息查找等等,知道的方式越多,收集的信息也越多。

二、渗透测试常用工具使用。
对于入门级的渗透测试,会使用 nmap、Burpsuite、Kali Linux 、sqlmap 就基本足够了。

三、Web渗透常见漏洞测试。
对于入门级的渗透测试,可以先掌握 OWASP Top 10 的漏洞、如最常见的 SQL 注入漏洞、XSS 漏洞、文件上传漏洞、越权漏洞、弱口令等。

确认了三个大的知识框架后,就需要我们通过搜索引擎来查找这三个方面的知识点,搜索引擎这里我只推荐使用谷歌(怎么用谷歌自行找资料),百度太多广告,搜索出来的东西远远不如谷歌有价值。

第三步,学习渗透测试知识点

大致了解渗透测试的框架和知识点后,接下来就是如何学习这些知识点了。

首先是自学,适用于想不花钱或者花很少钱的情况下入门渗透测试,比较适合在校大学生,或者空闲时间比较多的人。

自学需要使用谷歌对各个知识点进行搜索学习。现在国外也有一些渗透测试的指南,可以跟着来学。

如渗透测试执行标准,里面会介绍一些渗透测试的理论知识,侧向理论多一点,不推荐初学者看,这里只是提一下,网址如下:

http://www.pentest-standard.org/index.php/Main_Page

其中也有一些实操指南,但也是文字居多,内容是全英文的,英文不好的可以使用 chrome 浏览器的网页翻译来看。

http://www.pentest-standard.org/index.php/PTES_Technical_Guidelines

还有就是 OWASP Web 安全测试指南 项目,里面有一些漏洞的测试步骤,可以作为入门指南来看
https://owasp.org/www-project-web-security-testing-guide/stable/

除了看国外的一些渗透测试指南,也可以买一些渗透测试的书籍来看。我看过觉得比较好的书有 《Web安全深度剖析》、《黑客攻防技术宝典:Web实战篇》

觉得看书枯燥的,也可以找一些视频教程,在 bilibili 上面也是有很多渗透测试的教程,其中有个视频合集我觉得讲的不错,大家有需求可以去看一看

当然除了自学,也是可以参加培训班,适合那些有一定经济能力的初学者。身边也有不少大牛是通过培训班入门的,如果有这方面需求的话也可以后台私信我

第四步,实践操作

根据第三步学到的知识点,进行实践操作,每学一个知识点后就进行实践,实践操作可以找一些专门设计用来进行漏洞测试的虚拟机靶场,下载靶场后使用 VMWare 虚拟机软件打开就可以访问进行测试了。下面列出一些靶场:
owaspbwa: 开放Web应用安全项目(OWASP)是一组易受攻击的Web应用程序,它们以VMware格式分布在虚拟机上,比较推荐这个虚拟机靶场,里面集成了大量存在漏洞的网站,比如 Webgoat、DVWA、bWAPP。下载地址如下:
https://sourceforge.net/projects/owaspbwa/

Metasploitable :
Metasploitable 是一个故意易受攻击的 Linux 虚拟机。该虚拟机可用于进行安全培训、测试安全工具和练习常见的渗透测试技术。这个虚拟机也不错,还有一些主机漏洞,如 vsftp 漏洞。下载地址如下:
https://sourceforge.net/projects/metasploitable/

Pikachu:
Pikachu 是一个中文的漏洞靶场
https://github.com/zhuifengshaonianhanlu/pikachu

Vulhub:
Vulhub 里面集成了大量漏洞的 docker 镜像,可以通过 docker 来启动各种漏洞的环境,地址如下:
https://vulhub.org/

下载好靶场后,还需要学会使用 BurpSuite 代理工具的使用,这个工具是渗透测试必须学会的工具,是个商业软件,价格也不算便宜,网上有破解的版本。可以查看 BurpSuite 的官方文档进行学习使用,地址如下:
https://portswigger.net/burp/documentation/desktop/getting-started

BurpSuite 官方也提供了漏洞测试教程和在线的靶场,还配有视频,可以直接在官网学习渗透测试,地址如下:
https://portswigger.net/web-security/getting-started

如果不会用虚拟机软件,也可以找一些在线的漏洞靶场来实践

Web Security Academy:
https://portswigger.net/web-security/getting-started

hackthebox:
https://www.hackthebox.com/

web for pentester:https://www.pentesterlab.com/exercises/web_for_pentester/course

当学习了一些常见漏洞的测试方法,burpsuite 工具的使用后,就需要到真实网站进行实战。可以到一些漏洞平台进行实战,如补天平台、漏洞盒子、各大互联网公司的 SRC,在这些平台上进行漏洞挖掘时,一定要看清楚各平台的规则,严格按照规则来进行。这里再提醒一下:不要未授权测试!不要未授权测试!不要未授权测试!重要的事情说三遍,后果请查看《网络安全法》

5.资料领取

渗透测试的入门介绍就到这里,当然如果你对渗透测试的资料有需求的话可以扫描下方 CSDN官方合作二维码免费领取哦,无偿分享!!!


如果二维码失效,可以点击下方链接,一样的哦
【282G】网络安全&黑客技术零基础到进阶全套学习大礼包,免费分享!

【2023年最新版】渗透测试入门教程,手把手带你进阶渗透测试工程师,学完即可就业相关推荐

  1. 网络安全工程师零基础入门:(企业级)从入门到精通学习路线规划,学完即可就业

    前言 最近总能在网上看到很多诸如:"怎样成为网络信息安全工程师"等相关问题,这可能与近几年网络安全事件频发,国家对于互联网信息安全和互联网舆情的重视程度不断提升有关,似乎网络信息安 ...

  2. 网络安全自学入门:(超详细)从入门到精通学习路线规划,学完即可就业

    很多人上来就说想学习黑客,但是连方向都没搞清楚就开始学习,最终也只是会无疾而终!黑客是一个大的概念,里面包含了许多方向,不同的方向需要学习的内容也不一样. 算上从学校开始学习,已经在网安这条路上走了1 ...

  3. 2023年最系统的网络安全自学路线,学完即可就业

    网络安全学什么? 1.网络安全法 网络并不是狂徒张三的法外之地,在学习网络安全技术之前,首先要学会如何在法律范围之内行事.在2017年6月1日,我国第一部网络安全法<中华人民共和国网络安全法&g ...

  4. 【网络安全】价值上万的机构培训教程,对标大厂岗位要求,学完直接就业

    对于网络安全的发展与就业前景,想必无需我多言~ 其作为当下应届生收入较高的专业之一,在转行领域中占据相当热门的位置. 网络安全目前的薪资如何? 这是求职者非常关心的点,网络安全程序员的薪资是怎么样的? ...

  5. Android渗透测试Android渗透测试入门教程大学霸

    Android渗透测试Android渗透测试入门教程大学霸 第1章  Android渗透测试 Android是一种基于Linux的自由及开放源代码的操作系统,主要用于移动设备,如智能手机.平板等.目前 ...

  6. 100个Python实战项目(附源码),练完即可就业,从入门到进阶

    前言: "读"代码是不能给你带来任何收益的,正如"读书"一样,如果在读的时候你不琢磨,保管你读完仨月准忘了一大半.真正需要的是去"试"代码, ...

  7. 求知讲堂python+人工智能 99天完整版 学完可就业+某某教程Python 100例————作业(持续更新)

    个人答案仅供参考,不喜勿喷. 求知讲堂python+人工智能 99天完整版 学完可就业 1.day1 1. import random index=1 error=0 age=random.randi ...

  8. 渗透测试工程师零基础学习教程2023年最新版,想入门学习这一篇就够了。

    什么是渗透测试? 渗透测试是指通过模拟黑客攻击的方式,评估一个系统或网络的安全性能,以发现潜在的漏洞或安全弱点.渗透测试通常包括对目标系统或网络进行多种攻击方式的测试,如密码破解.漏洞利用.社会工程学 ...

  9. 黑客零基础入门教程《Python安全攻防:渗透测试实战指南》极致经典,学完即可包吃包住

    前言 网络江湖,风起云涌,攻防博弈,从未间断,且愈演愈烈.从架构安全到被动纵深防御,再到主动防御.安全智能,直至进攻反制,皆直指安全的本质--攻防.未知攻,焉知防! 每一位网络安全从业者都有仗剑江湖的 ...

最新文章

  1. c# typeof() 和 GetType()的区别
  2. 彻底理解Toast原理和解决小米MIUI系统上没法弹Toast的问题
  3. ubuntu安装使用ffmpeg
  4. 码农如何快速打造一个有设计感的网站
  5. CRM Web Client UI异步搜索介绍
  6. 利用反射操作bean的属性和方法
  7. Github上最受欢迎的Python轻量级框架Flask入门
  8. 一次 .NET Core 中玩锁的经历:ManualResetEventSlim, SemaphoreSlim
  9. mysql outfile 变量_转mysql dumpfile 与 outfile 函数的区别
  10. Codeforces Round #598 (Div. 3) F. Equalizing Two Strings 思维 + 逆序对
  11. STL源码剖析 5中迭代器型别
  12. java spring mvc_java spring mvc 全注解
  13. 网易云api如何调用_分析网易云音乐API的经历
  14. devops 开发_DevOps如何消除开发瓶颈
  15. python计算机视觉库_荐 python计算机视觉入门
  16. java 分布式 重复提交_Java接口防重复提交
  17. 2021最新Java零基础自学教程,java从入门到精通
  18. RapidMiner Studio入门
  19. 微软office办公系列软件的具体用处及办公作用说明指南
  20. .NET 6 Minimal API 的经验分享

热门文章

  1. python实现商品管理系统_python编写商品管理
  2. Spring Boot集成Hprose
  3. 宾西法尼亚大学强制对齐标注软件(P2FA)介绍以及使用说明
  4. 计算机系统导论与计算机导论,计算机系统导论之学习心得.doc
  5. Python xlrd和xlwt操作Excel实现自动化
  6. 计算机保研er的个人陈述应该怎么写?
  7. Linux ssh命令
  8. 免费高效的Speedpdf,一款好用的在线转换神器
  9. 树莓派基础实验33:TCRT5000红外循迹传感器实验
  10. python 经验模态分解_经验模态分解下的日内趋势交易策略 附源码