自学网络安全有什么好方法?

news2024/11/23 5:15:24

一、网络安全学习的误区

1.不要试图以编程为基础去学习网络安全

不要以编程为基础再开始学习网络安全,一般来说,学习编程不但学习周期长,且过渡到网络安全用到编程的用到的编程的关键点不多。一般人如果想要把编程学好再开始学习网络安全往往需要花费很长时间,容易半途而废。建议在学习网络安全的过程中,哪里不会补哪里,这样更有目的性且耗时更少。学习编程能决定你能在网络安全这条路上到底能走多远,所以推荐大家自学一些基础编程的知识

2.不要刚开始就深度学习网络安全

学习讲究这方法,需要一步一步的来,由浅至深,慢慢的加大难度,很多人刚开始就猛学,很容易到后面的时候乏力,越学可能就越学得枯燥,到最后就很容易放弃了。

3.收集适当的学习资料

网上有很多网络安全的学习资料。而很多朋友都有“收集癖”,一下子很多书籍,收藏几十个视频,觉得学习资料越多越好,然而网上的学习资料重复性极高。建议选择大众受用的学习资料。

4.适当的报班学习

很多人觉得报班就是浪费钱财,觉得自己自学就很好了,但其实自学也是需要一定的天赋和理解能力,且自学的周期较长,一些急躁的学习者或者急于找到工作的学习者,还是报班学的比较轻松,学习周期不长,学到的东西也不会少,建议学习者根据自己的自身条件选择是否报班。

二、学习网络安全的前期准备

1.硬件选择

学习网络安全不需要配置很高的电脑,黑客用的电脑,从来不是根据高配置选择电脑,只要稳定就行。因为黑客所使用的一些程序,低端 CPU 也可以很好的运行,而且不占什么内存。黑客是在 DOS 命令下对进行的,电脑能使用到最佳状态就可以了。

2.软件选择

很多人会纠结学习黑客到底是用 Linux 还是 Windows 或者是 Mac 系统,Linux 系统对于新人入门并不友好。Windows 系统一样可以用虚拟机装靶机进行学习,当然是根据学习者自己的感觉来选择系统。

至于编程语言,Python、PHP、 C++、Java 都是可以的,学习编程只是工具不是目的,我们的目标不是成为程序员,而是成为网络安全员,编程只是为了看懂程序。

3.外语能力

计算机最早诞生于宾西法利亚大学,很多名词或者代码都是英文,一个漏洞翻译成中文需要一个星期的时间,在这个时间上漏洞可能都修补了。如果不理解一些专业名词,在与其他黑客交流时也会有障碍,所以需要一定量的英文量和了解一些专业名词。

4.基础操作入门

入门的第一步是学习一些当下主流的安全工具课程并配套基础原理的书籍,一般来说这个过程在 1 个月左右比较合适。

5.学习基础知识

在这个阶段,你已经对网络安全有了基本的了解。如果你认真学习完第一步,什么是 sql 注入,什么是 xss 攻击这些已经都明白了,对 burp、cs 等安全工具也掌握了基础操作。这个时候最重要的就是开始打地基!所谓的“打地基”其实就是系统化的学习计算机基础知识

6.实战操作

1.挖 SRC

挖 SRC 的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,更多的还是要进行实操,把理论知识运用到实践中,确保更好的掌握知识点。

2.从技术分享帖学习

观看学习近十年所有挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培养自己的渗透思维。

三、渗透测试学习路线

一、基础部分

基础部分需要学习以下内容:

1.计算机网络 :

重点学习 OSI、TCP/IP 模型,网络协议,网络设备工作原理等内容,其他内容快速通读

2.Linux 系统及命令

由于目前市面上的 Web 服务器 7 成都是运行在 Linux 系统之上,如果要学习渗透 Web 系统,最起码还是要对 linux 系统非常熟悉,常见的操作命令需要学会

学习建议:学习常见的 10%左右的命令适用于 90%的工作场景,和 office 软件一样,掌握最常用的 10%的功能,基本日常使用没什么问题,遇到不会的,再去找度娘;常见的 linux 命令也就 50-60 个,很多小白囫囵吞枣什么命令都学,发现记不住啊!!!!这个学习方法也是不对的

3.Web 框架

熟悉 web 框架的内容,前端 HTML,JS 等脚本语言了解即可,后端 PHP 语言重点学习,切记不要按照开发的思路去学习语言,php 最低要求会读懂代码即可,当然会写最好,但不是开发,但不是开发,但不是开发,重要的事情说三遍

4.数据库

需要学习 SQL 语法,利用常见的数据库 MySQL 学习对应的数据库语法,也是一样,SQL 的一些些高级语法可以了解,如果没有时间完全不学也不影响后续学习,毕竟大家不是做数据库分析师,不需要学太深

二、Web 安全

1.Web 渗透

掌握 OWASP 排名靠前的 10 余种常见的 Web 漏洞的原理、利用、防御等知识点,然后配以一定的靶场练习即可

推荐靶场:常见的靶场都可以上 github 平台搜索,推荐以下靶场 DVWA、bWAPP、upload-labs-master、SQL-lib-master、WebBug、pikachu 等,有些是综合靶场,有些是专门针对某款漏洞的靶场

2.安全工具学习

Web 渗透阶段还是需要掌握一些必要的工具

主要要掌握的工具和平台:burp、AWVS、Appscan、Nessus、sqlmap、nmap、shodan、fofa、代理工具 ssrs、hydra、medusa、airspoof 等,以上工具的练习完全可以利用上面的开源靶场去练习,足够了。练习差不多了,可以去 SRC 平台渗透真实的站点,看看是否有突破,如果涉及到需要绕过 WAF 的,需要针对绕 WAF 专门去学习,姿势也不是特别多,系统性学习学习,然后多总结经验,更上一层楼

3.自动化渗透

自动化渗透需要掌握一门语言,且需要熟练运用,可以是任何一门自己已经掌握得很熟悉得语言,都可以,如果没有一门掌握很好的,那我推荐学习 python,最主要原因是学起来简单,模块也比较多,写一些脚本和工具非常方便

学习 python 不需要掌握很多不需要的模块,也不需要开发成千上万行的代码,仅利用它编写一些工具和脚本,少则 10 几行代码,多则 1-200 行代码,一般代码量相对开发人员已经少得不能再少了,例如一个精简得域名爬虫代码核心代码就 1-20 行而已

花几天时间学习一下 python 的语法,有代码基础得朋友,最快可能一天就可以学习完 python 的语法,因为语言都是相通的,但是学习语言最快的就是写代码,别无他法;接下来可以开始尝试写一些常见得工具,如爬虫、端口探测、数据包核心内容提取、内网活跃主机扫描等,此类代码网上一搜一大把;然后再写一些 POC 和 EXP 脚本,以靶场为练习即可;有的小伙伴可能又要问了,什么是 POC 和 EXP,自己度娘去,养成动手的好习惯

4.代码审计

此处内容要求代码能力比较高,因此如果代码能力较弱,可以先跳过此部分的学习,不影响渗透道路上的学习和发展。

但是如果希望在 Web 渗透上需要走得再远一些,需要精通一门后台开发语言,推荐 php,因为后台采用 php 开发的网站占据最大,当然你还精通 python、asp、java 等语言,那恭喜你,你已经具备很好的基础了

代码审计顾名思义,审计别人网站或者系统的源代码,通过审计源代码或者代码环境的方式去审计系统是否存在漏洞(属于白盒测试范畴)

那具体要怎么学习呢?学习的具体内容按照顺序列举如下:

掌握 php 一些危险函数和安全配置
熟悉代码审计的流程和方法
掌握 1-2 个代码审计工具,如 seay 等
掌握常见的功能审计法;(推荐审计一下 AuditDemo,让你产生自信)
常见 CMS 框架审计(难度大)

三、内网安全

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位

如果想就业面更宽一些,技术竞争更强一些,需要再学习内网渗透相关知识

内网的知识难度稍微偏大一些,这个和目前市面上的学习资料还有靶场有一定的关系;内网主要学习的内容主要有:内网信息收集、域渗透、代理和转发技术、应用和系统提权、工具学习、免杀技术、APT 等等

四、渗透拓展

渗透拓展部分,和具体工作岗位联系也比较紧密,尽量要求掌握,主要有日志分析、安全加固、应急响应、等保测评等内容;其中重点掌握前三部分,这块的资料网络上也不多,也没有多少成型的书籍资料,可通过行业相关的技术群或者行业分享的资料去学习即可,能学到这一步,基本上已经算入门成功,学习日志分析、安全加固、应急响应三部分的知识也相对较为容易。

但是有很多零基础的小白代码基础通常较弱,很多小白会倒在前期学习语言上,所以推荐先学习 web 渗透和工具,也比较有意思,容易保持一个高涨的学习动力和热情。像 php 语言、自动化渗透和代码审计部分内容,可以放在最后,当学习完毕前面知识后,也相当入门后,再来学习语言,相对会容易一些

我下面也给大家整理了一些网络安全的资料,大家不想一个一个去找的话,可以参考一下这些资料哈

视频教程

78c4dbc0275a485ba46404d3feb73134.png

SRC&黑客技术文档

cc4ad7eae3334f3eb1c5bbda47d07d67.png

黑客工具合集

ee6f8c0f1fba462bbd07f32802a120fc.png

需要资料评论区留言!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/589522.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习AI编译器-TVM简介

1.为什么需要深度学习编译器 深度学习编译器主要为解决不同框架下训练的模型 部署到指定的某些设备上时所遇到的一系列复杂的问题,即将各种深度学习训练框架的模型 部署到各种硬件所面临的问题; 首先深度学习领域,从训练框架看,当…

C++ 编译过程(附简单实例)

C 编译的四个阶段:预处理、编译、汇编和链接。 这里以 g 为例,用到的文件分别为 mymath.h、mymath.cpp 和 main.cpp ,代码如下: // mymath.h extern int add(int, int);// mymath.cpp #include "mymath.h" // implemen…

攻防世界-web-newscenter

题目描述:打开链接,只有一个搜索框,然后就是一条一条新闻的记录 开启burpsuite,我们在搜索框中随便输入点什么,然后进行搜索,看下抓到的包 这里搜索的时候只有一个search参数,查询到的新闻数也变…

花6个月面过京东软件测试岗,拿个20K不过分吧?

背景介绍 计算机专业,代码能力一般,之前有过两段实习以及一个学校项目经历。第一份实习是大二暑期在深圳的一家互联网公司做软件测试,第二份实习由于大三暑假回国的时间比较短(小于两个月),于是找的实习是在…

通过Python的fitz库提取pdf中的图片

文章目录 前言一、fitz库是什么?二、安装fitz库三、查看fitz库版本四、pymupdf库是什么?五、安装pymupdf库六、查看pymupdf库版本七、fitz和pymupdf是什么关系?八、提取pdf中的图片1.引入库2.定义pdf路径3.打开PDF文件4.遍历所有页面5.获取页…

javaWeb ssh小区物业管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh小区物业管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0…

Pytest测试框架中,setup和teardown函数的作用及使用方法

作为一名Python开发人员,您一定知道Pytest是一个广泛使用的Python测试框架。 它具有易用性和灵活性,可以帮助您快速编写测试用例,并且能够支持包括单元测试、集成测试、功能测试等多种测试类型。而其中,setup和teardown函数是Pyt…

C++三大特性—多态 “抽象类与虚函数表”

抽象类和虚函数表是 C中实现多态性的重要概念,它们对于学习 C非常重要。 掌握抽象类和虚函数表的使用方法对于理解 C的多态性是非常重要的。在 C中,通过使用抽象类和虚函数表,可以实现基于多态性的各种功能,如继承、多态、模板等。…

极简JVM结构图示

参考资料 JVM极简教程 JVM结构 JIT编译器,对于经常需要执行的字节码进行 类加载子系统 类加载器 tomcat的自定义类加载器 为了进行类的隔离,如果Tomcat直接使用AppClassLoader类加载类,那就会出现如下情况: 应用A中有个com.e…

Android中Binder在项目中的具体使用详解

前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。 👉点击跳转到教程 前言:Binder的介绍 在 Android 中,Binder 是一种跨进程通信&…

静默安装oracle

oracle依赖环境包 一、创建用户属组 [rootlocalhost ~]# groupadd oinstall[rootlocalhost ~]# groupadd dba[rootlocalhost ~]# groupadd oper[rootlocalhost ~]# useradd -g oinstall -G dba,oper oracle[rootlocalhost ~]# passwd oracle #修改oracle用户密码 二、创建目录…

二叉搜索树(BST)详解及代码实现

推荐可视化插入、删除节点的二叉树网站:Binary Search Tree Visualization (usfca.edu) 1. 概述 二叉搜索树(Binary Search Tree,简称BST)是一种特殊的二叉树结构,它具有以下特点: 有序性:对于…

Eureka入门 ; 服务注册中心,服务注册服务发现;SpringCloud eureka

一、引入 Spring Cloud封装了netflix公司的Eureka模块来进行实现服务治理。 在传统的RPC远程调用框架中,管理每个服务服务之间依赖关系比较复杂,所以需要服务治理,管理服务之间的依赖。可以实现服务注册、调用、负载均衡、容错等技术。 1. 服…

2023九坤投资暑期实习笔试复盘

5.22号笔试,5.24确认自己笔试挂。想想这也是自己第一次做量化私募基金的笔试,在此复盘一下。情况:北邮本硕。但开始准备暑期准备的比较晚,4月初才开始一边刷题一边投简历,所以手撕算法不太强,但运气和灵感好…

ChatGPT除了模型, 各个大厂、中厂、小厂们还在卷什么?

ChatGPT 问世后,各大公司都在「大模型」上下了苦功,模型能力也成为大家最关注的话题。ChatGPT 虽直接定义了基于大模型的生成式对话机器人这个产品类型,其模型的强大也导致大家都忽略了它在产品使用上的问题。 其实不管是底层模型开发的大厂…

印尼市场入门指南:品牌如何在当地获得市场份额?

2023年,印尼成为了全球最大的新兴市场之一。印尼是东南亚最大的经济体,拥有庞大的人口和潜在的消费市场,吸引着越来越多的国际品牌进入。根据预测,印尼的消费支出将在2023年达到1.3万亿美元,成为亚洲增长最快的消费市场…

个人博客搭建详细步骤

1. 安装 jdk 和 tomcat 下面将带大家安装 jdk 和部署 tomcat; 首先在本地下载好 jdk 和 tomcat 安装压缩包在服务器新建一个目录,比如在服务器新建一个目录 soft,上传 jdk, tomcat 到服务器 mkdir soft cd soft rz 选择上传的文件名称 //上传文件新建…

【windows脚本】使用diskpart命令管理未分配磁盘

环境 系统:win10 x64 概述 使用windows脚本管理未分配磁盘,手动操作需要做以下几步: 1、初始化磁盘GPT形式; 2、新建简单卷,设置大小和驱动器号。 3、格式化。 diskpart命令 使用diskpart工具,命令如…

PNAS| 绘制人脑发育曲线:横断面研究低估了人脑变化

文章目录 第一部分:横断面数据低估了与年龄相关的大脑变化。第二部分:横截面规范模型最小限度地帮助个体化预测。第三部分:非年龄相关因素对于预测个体变化的误差起到了贡献作用。参考 **按:**研究人脑毕生发展对于理解常见的精神…

springboot应用程序并发请求达到多少会被拒绝

文章目录 前言内嵌服务器tomcat测试 undertow 前言 前几天刷B站看到了一个问题,感觉挺有意思的,“忽略接口本身性能,springboot应用程序能处理多少请求不被拒绝?”,今天便来探一探这个问题 本文主要重点是侧重于spri…