- 首先,你要高度热爱网络安全这个领域,你要问问自己是否是真的热爱这个行业,自己是否会因为各种了理由半途而废,放弃掉你的热爱。曾经说要和我一起走安全路线的初中同学也因各种理由半途而废了
衡量热爱的方法:看看自己主动花了多少时间在哪些事情方面 - 其次渗透行业最注重的就是实战能力,并且知识更新较快。
例如:一个厂商更新了补丁就要去跟进,去掌握可能成为薄弱的渗透测试点,利用Nday作为突破。这也就要求你要有时间去搜集和跟进,各大软件厂商的更新内容。这里讲究时效性
要去了解一个东西,你要先知道他是怎样构成的,WEB渗透前期的入门阶段需要涉及到的内容
- 通信协议:TCP、HTTP、HTTPS
- 操作系统:Linux、Windows
- 服务架设:Apache、Nginx、LAMP架构
- 数据库:MySQL、SQL Server、Oracle
- 编程语言:前端语言(HTML/CSS/JavaScript)、后端语言(PHP/Java/ASP/Python)
- 上面的内容,如果全部都深入学习,估计很大一部分人都会对安全行业失去兴趣。所以才有了很多做渗透测试的都是半路出身,本身已经对WEB开发技术非常的熟悉,或者本身就是做运维的,对网络的架构有熟悉的认知。
- 深入学习一门数据库语言,建议大伙从MySql数据库学习,简单易上手,这就和选择自已的一门编程语言一样,我一开始就选择了C++作为第一编程语言,导致我前期学习难度大
入门路线
- 系统核心基础:了解虚拟机,虚拟机的作用,搭建虚拟机系统(Windows2008,Windows7,Centos7,Kali Linux)了解基本的网络知识、什么是IP地址(255.255.255.255)段划分、什么是A段、B段、C段等。windows,linux 基本语法,常用系统命令,网管协议,传输方式,网络传输协议,系统权限划分。
- WEB核心基础:了解http(超文本传输协议)协议概念、工作原理,WEB的静态页面和WEB动态页面,B/S和C/S结构。基本的网络架构、例如:Linux + Apache + MySQL + PHP。基本的Html语言,就是打开网页后,在查看源码里面的HTML语言,了解一种基本的脚本语言PHP,或JSP,APS等。
- WEB渗透 : 开始学习WEB安全漏洞的知识、SQL注入、XSS跨站脚本漏洞、CSRF、解析漏洞、上传漏洞、命令执行、弱口令、万能密码、文件包含漏洞、本地溢出、远程溢出漏洞,使用虚拟机搭建靶机,复现漏洞的利用。
- 内网渗透:利用系统漏洞进行提权,了解各种漏洞编号,和漏洞利用工具Metesploit学习,如果你经常挖洞就知道,kali常用的工具真的不多,很多工具在Windows安装也很方便。我觉得绕WAF还是得靠手工,工具不是那么的靠谱