kali渗透测试到底该如何学?

news2024/11/18 8:17:06

1、渗透测试是什么?

  • 渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制。渗透测试是通过各种手段对目标进行一次渗透(攻击),通过渗透来测试目标的安全防护能力和安全防护意识。
  • 打个比方:比如电视剧《我是特种兵》里面的演习,特种部队(进攻方)渗透到蓝军(防守方)的指挥部进行斩首,如果斩首成功,那么就可以知道蓝方的防守能力不够好,需要改进,反之就是特种部队的特种作战能力不足,需要提升。那么渗透测试工程师就相当于特种部队里面的特战队员,我们需要对我们的目标做一次渗透,以测试目标的防护能力。渗透测试工程师就相当于矛,目标就相当于盾。

2、学习渗透测试的战略方针是什么?

其实这个方针很简单,但是很多人就是无法严格贯彻执行。简单来说就是:多学,逮住几套视频,使劲看,使劲学,使劲啃透。

3、所谓技术大神是怎么样的呢?技术好?

说技术好是很宽泛的,很表面的。我们把技术好剖析开来就是:懂得多,解决问题能力强。其中,想要懂得多比较容易实现,多学习知识就行了,但是否能把知识用于工作,这就是解决问题的能力了,这个能力需要培养,也有的人解决问题的能力天生就比别人好,这也就是为什么有些学历低的人,却比很多学历高的人混的还要好的一个很重要的原因了。

知识的积累
 想要懂得多,就要话大量时间去看,去记,去实践,去总结。大家可以看到,无论是电视上还是现实中,绝大多数满腹诗论的人都较为低调,因为他们把自己一天中大量的时间花在了学习和研究上面。那么我们学习渗透测试,到底该如何去学呢?找到一个有足够多技术总结的文章或者是视频教程来学习,一定要静心学习,学习从来都不是浮躁的人能做好的事情,无论是学语文数学还是渗透测试。学完一套就学第二套,起码得看三套视频,这三套有很多知识点是重叠的,但是因为讲解人的讲解方法不同,你也就会有不一样的理解,更能帮助你消化吸收知识。三套视频总课时加起来得有250课,如果每课约为20分钟,那就是5000分钟,大约就是连续学习84个小时,如果这84个小时的知识你都懂了,那么恭喜你,你入门了,你能对小型网站发起渗透测试了。

4、解决问题的能力

解决问题之前要找到问题出现的根本原因。比如你觉得你跟你的女(男)朋友分手是因为某一件事出现了分歧的争吵,但事实上是因为你们的观念不同,因为你们不够相爱,争吵只是你们分手的导火索,并不是根本原因。

所以,透过现象看本质非常重要,这关乎我们能否彻底的把问题解决。

那时候有个人跟我说,他看了很多教程,也懂很多知识,但就是无法实战,所以他实习的时候不敢去面试安全公司。

他表达得有点粗俗:“我看过很多视频,也懂得怎么利用某个漏洞,但是当面对一个网站的时候,我就是不懂的怎么下手,就比如有个美女躺在我身下,我都不知道怎么下手。”

回到渗透测试上来,他不知道如何对一个网站下手,我问他为什么?他说不知道,这就是我们开头说到的,不知道如何对一个网站下手是他不敢去面试安全公司的一个原因,但是根本原因是他不会变换方法,没有舍我其谁的勇气。

5、学习渗透测试的具体方法是什么?

  1. 关注一些安全站点:这样可以了解最新的东西,提高对安全的亲切度,这样你不惧怕它,才能靠近它,占有它。
  2. www.freebuf.com www.anquanke.com xianzhi.aliyun.com/forum www.dark5.net
  3. 找几部高质量的视频教程,坚持学完,并做好每个视频的笔记。我以前学习是别人每讲完一个知识点我就把视频暂停,然后把笔记做好再继续看的,甚至把视频里面的代码抄下来,自己读再一遍那个代码(虽然读不懂,但是混个脸熟也挺好)。
  4. 制定一个小阶段的学习计划及目标。
  5. 建立一个自己的博客,把自己的所学、自己的笔记记录下来。这个很重要,因为这样你可以以一个第三者的视角看待自己的东西,找出不足,你就可以改进。
  6. 每天看几篇漏洞文章,以增加自己的漏洞知识储备量。
  7. 每天遇到新的问题,我们不妨用笔记录下来,一个一个地解决,不要着急,古人云:欲速则不达,慢慢的,你的只是储备量就会多起来的。
  8. 买两本纸质书籍当作理论支撑,因为视频里面讲的理论没有以文字呈现,大家理解起来也是有困难的。这里推荐几本:入门级别的《Web安全渗透剖析》,进阶级别的《白帽子讲web安全》、《网络攻防实战研究:漏洞利用与提权》。
  9. 找一些跟自己志同道合的朋友一起学习。比如加一些讨论氛围好的QQ群,一些小密圈,一些论坛。

6、学习过程中遇到的各种疑难杂症怎么解决?

渗透要不要学编程?

相信人都会有这个疑虑,那么作为职业的渗透测试的我,可以跟大家说一下我的看法。
学习渗透测试之前要明白渗透测试这个领域包含什么东西,渗透测试是集合计算机各领域的知识于一体衍生出来的计算机新领域。
请看下图:

从上图就可以清晰地看到,渗透测试会涉及包括但不限于数据库的知识、网络技术的知识、操作系统的知识、编程的知识。所以你觉得你要不要学习编程呢?

计算机各领域的知识水平决定你渗透水平的上限

比如你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;比如你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;比如你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张网络拓扑就能知道自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;再比如你操作系统玩得好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息。

7、计算机各领域的知识水平,我们该学到什么程度呢?

计算机各领域的知识水平决定你渗透水平的上限

那咱们零基础是不是要把上面的都学得很好了再搞渗透呢?

并不是的,作为初学者,可以先学习那些基础,比如你先学一个编程语言的基础,用PHP做例子,你起码要懂if else这些、连接数据库;比如学数据库,用MySQL做例子,那至少也是要会增删改查、子查询这几个操作;网络的话比较难,也是很抽象的,你做外网的渗透,至少要懂基础的http协议,知道端口是什么,知道网站是怎么架设起来的;操作系统的基础相对比较好学,主要是各种命令的作用,各种软件的安装和使用

8、渗透测试的思维是怎么样的?

  • 我们所谓的猥琐的思维就是渗透要的思维,也就是大家常说的鬼点子多,鬼主意多。这意味着我们要从不同角度去思考同一件事情,但我们在渗透的时候要始终贯彻一个方针:换位思考。比如管理员会怎么设置网站,管理员会怎么设置密码,管理员会… …

9、学习渗透的过程中遇到问题问谁?怎么问?

  • I、学会利用搜索引擎
    渗透测试注定是一个非常有破坏性的技术,所以很多问题都没办法直接搜索到答案,这就考验各位的学习能力了。比如用Google、Baidu变换关键字来搜索。
  • II、到论坛提问
     去问别人,一定要把问题描述清楚,最后是把出现问题的地方截图一起发出来,方便好心人回答
  • III、加入一些培训
     培训都是有答疑解惑的服务的。

10、渗透工具的问题

我一开始就是用的Baidu找的工具来用的,当然,现在也差不多,只是多了朋友间的相互传递。你 不要怕有后门,因为都是要放在虚拟机里面运行的,只要还原一下VM的快照就完事了。而且随着学习的深入,你就会发现,其实平常用的工具就几个:Burp suite、AWVS、App scan、SQLmap、浏览器。

至于其他的扫描器的话,很多都是脚本语言来写的,比如Python,只要是个正常人都不会往Python脚本里面加入后门。亦或者是Java。这些东西在官网下载,或者一些可信度高的网站下载就可以了,就比如上面的网址提供的下载。

11、关于渗透测试实战的问题

网络安全法规愈发完善,我们不小心可能就做了违法乱纪的事情,所以请大家切勿瞎搞。我们可以去一些在线靶场去测试我们的所学,比如墨者靶场;还可以在本地搭建一些本地靶场,比如Dvwa;

12、关于学到什么程度才能去工作?

如果是在校生的话,人家企业是会放宽条件的。安全方面的也有很多个方向的,比如有渗透、安服、审计,这个就要看你往哪个方向走了,360行,行行出状元,不要问我哪一行吃香,没有产出,你连呼吸都是错的!

至于学到什么程度,你可以去看人家招聘信息啊,然后去应聘啊,不要怕应聘,主要是测试自己是否达到人家的要求,如果达不到就继续学习呗,反正你还在读书。如果不是学生又要转行,最快的就是找培训。

最后

希望大家都能入门成为一名网络安全相关的行业的工程师!我这里也准备了一些kali渗透、内网渗透的教程,需要的小伙伴可以留言获取。

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

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

相关文章

手写spring12(把aop动态代理整合到spring生命周期)

文章目录目标设计项目结构四、实现1、定义Advice拦截器链2、定义Advisor访问者3、方法前置拦截器——MethodBeforeAdviceInterceptor4、代理工厂——ProxyFactory5、融入Bean生命周期的自动代理创建者——InstantiationAwareBeanPostProcessor 、DefaultAdvisorAutoProxyCreato…

什么是3dMax中的“块”?如何在3dMax中使用“块”?

3dMax 块简介 3dMax 是一款用于设计 3d 模型的软件,在 3d 建模图形专业人士中最受欢迎。我们可以在此软件中导入不同类型的预设计 3d 模型,以简化我们的工作。块是不同类型的 3d 模型,您可以从互联网上下载,然后将它们导入到 3dMax 软件的项目工作中,以节省您的时间。在本…

Python和OpenCV创建超快的“for”像素循环

这篇博客将介绍如何使用Python和OpenCV创建超快的“for”像素循环(逐像素循环),即Cython快速优化for循环; 使用Python和OpenCV逐像素循环图像是一个非常缓慢的操作,即使图像在内部由NumPy数组表示。 为什么会这样&am…

C语言-指针进阶-qsort函数的学习与模拟实现(9.3)

目录 思维导图: 回调函数 qsort函数介绍 模拟实现qsort 写在最后: 思维导图: 回调函数 什么是回调函数? 回调函数是一个通过函数指针调用的函数。 将一个函数指针作为参数传递给一个函数,当这个指针被用来调用…

57、JDBC和连接池

目录 一、JDBC基本介绍 二、JDBC快速入门 三、JDBC API 1、ResultSet [结果集] 2、Statement 3、PreparedStatement 4、DriverManager 四、封闭JDBCUtils 五、事务 六、批处理 七、数据库连接池 4、数据库连接池种类 (1) c3p0数据库连接池&…

MacBookPro 遇到pip: command not found问题的解决

学习Pyhton的时候,需要安装第三方插件pyecharts,执行以下命令: pip install pyecharts总是报错 pip: command not found 我很郁闷,于是上网搜索尝试各种命令, 命令1:curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 命…

Codeforces Round 507(div. 1) C(分类讨论,并查集)

题目链接: Problem - C - Codeforceshttps://codeforces.com/contest/1039/problem/C 题意: 计算机网络由个服务器组成,每个服务器有到范围内的加密秘钥。设是分配给第i台服务器的加密密钥。对服务器通过数据通信通道直接连接。由于加密算…

高性能分布式缓存Redis-第二篇章

高性能分布式缓存Redis-第二篇章一、持久化原理1.1、持久化流程(落盘)1.2、RDB详解1.2.1、介绍1.2.2、触发&原理1.2.3、实现1.2.4、RDB总结1.3、AOF详解1.3.1、概念1.3.2、AOF 持久化的实现1.3.2、开启1.3.4、命令追加1.3.5、文件写入和同步&#xf…

SQL 别名

通过使用 SQL,可以为表名称或列名称指定别名。 SQL 别名 通过使用 SQL,可以为表名称或列名称指定别名。 基本上,创建别名是为了让列名称的可读性更强。 列的 SQL 别名语法 SELECT column_name AS alias_name FROM table_name; 表的 SQL …

dubbo学习笔记4(小d课堂)

dubbo高级特性 服务分组及其配置 我们再来创建一个实现类: 接下来我们在xml中去进行配置: 现在我们去运行看是否会有错误呢? 我们有两个服务实现类,那运行的时候到底执行哪个呢? 但是我们想的是可以指定执行哪个实现…

设计模式——访问者模式

访问者模式一、基本思想二、结构图一、基本思想 将作用于某种数据结构中的各元素的操作分离出来封装成独立的类,使其在不改变数据结构的前提下可以添加作用于这些元素的新的操作,为数据结构中的每个元素提供多种访问方式。它将对数据的操作与数据结构进…

【安全硬件】Chap.7 对实体芯片采取物理手段破解;芯片IC逆向工程和拆分制造;物理上对芯片的攻击分类;侧信道攻击;Kocher针对RSA的计时攻击

【安全硬件】Chap.7 对实体芯片采取物理手段破解;芯片IC逆向工程和拆分制造;物理上对芯片的攻击分类;侧信道攻击;Kocher针对RSA的计时攻击前言1. 逆向工程Reverse Engineering逆向工程识别芯片上2输入NAND门逆向工程技术Decapulat…

CSS 实例系列

Hello 小伙伴们早上、中午、下午、晚上和深夜好,这里是 jsliang~本 CSS 系列文章:主推学以致用。结合面试题和工作实例,让小伙伴们深入体验 61 个工作常见的 CSS 属性和各种 CSS 知识。主推纯 CSS。尽可能使用 HTML CSS 完成学习目的&#x…

nohup命令详解

nohup命令详解一、背景说明:启动服务的时候,如果使用如下命令,则会在start.sh脚本所在的目录下,产生一个名为 nohup.out 的输出文件nohup ./startup.sh &可以看到下面这个例子,一开始当前目录是没有nohup.out文件的…

RocketMQ 多语言 SDK 开源贡献召集令

作者:艾阳坤 目前 Apache RocketMQ 5.0 SDK [ 1] 正在社区开源,开发与迭代也在火热进行中,欢迎广大社区的朋友们能够参与其中。我们欢迎任何形式的贡献,包括但不限于新 feature、bugfix、代码优化、生态集成、测试工作、文档撰写…

我与 CSDN 的 2022 年终总结

💂 个人网站:【海拥】【摸鱼游戏】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 转眼间2023年已经过去…

《后端技术面试 38 讲》学习笔记 Day 02

《后端技术面试 38 讲》学习笔记 Day 02 08丨软件设计的方法论:软件为什么要建模? 原文摘抄 所谓软件建模,就是为要开发的软件建造模型。模型是对客观存在的抽象,我们常说的数学建模,就是用数学公式作为模型&#xf…

flask + Pandas + echarts 使用饼状图等将二手房数据进行分析+可视化

目录 一、实战场景 二、知识点 python 基础语法 python 文件读写 pandas 数据处理 flask web 框架 echarts 图表 bootstrap jinja 模版 三、菜鸟实战 初始化 Flask 框架,设置路由 各行政区房屋数量柱状图分析 区域二手房房源朝向分布情况 二手房单价最…

Higress Kruise Rollout: 渐进式交付为应用发布保驾护航

作者:扬少 前言 在业务高速发展过程中,如何最大化保障功能迭代过程中业务流量无损一直是开发者比较关心的问题。通常在应用发布新功能阶段,我们会采用灰度发布的思想对新版本进行小流量验证,在符合预期之后再进行全量发布&#…

11、JS笔记-内置对象

1.内置对象 js中对象分为三种: 自定义对象、内置对象、浏览器对象(js独有) 内置对象: js语言自带的对象,供开发者使用,提供一些常用或基本的功能(属性和方法) 2.Math对象 Math中所…