自学黑客的12个步骤

news2024/11/26 15:33:49

 黑客攻防是一个极具魅力的技术领域,但成为一名黑客毫无疑问也并不容易。你必须拥有对新技术的好奇心和积极的学习态度,具备很深的计算机系统、编程语言和操作系统知识,并乐意不断地去学习和进步。

如果你想成为一名优秀的黑客,下面是10种最重要的基础条件,请认真阅读:

1. 了解黑客的思维方式

我们生活中用到的网站、软件等,都是由程序员编写的代码构成的。

这些代码在设计的过程中,都是基于一种正向的逻辑进行的,为了实现某个目的,完成某个操作的流程或数据传输逻辑。

而黑客的思维是逆向的,他们会去分析目前这个操作流程或数据传输逻辑中,是否存在一些验证不严谨或者隐秘信息被泄露的风险,并加以利用,从而绕过正常的操作逻辑达到未授权访问或操作的能力。

通俗点说,程序员是造房子的,而黑客则是看看房子是不是哪里漏了个风,缺了个口。翻进去为所欲为;有的甚至直接将房子拆了。

2. 学习UNIX/LINUX

笔者为大家挑选了一些适合初学者学习UNIX和Linux操作系统的最佳书籍,这些书不仅能教你学会Linux和UNIX的基础知识,其中包含了大量用于在UNIX环境中进行高级编程的大量代码示例。

《Linux/UNIX系统编程手册》

与许多较老的UNIX书籍不同,这是一本相对较新的Linux书籍,这本书是由Michael Kerrisk编写的,他是Linux手册的维护成员之一,与许多作者一样,他从1987年开始研究UNIX,并从20世纪90年代末开始关注Linux。如果只推荐一本书的话,我会推荐这一本,因为它更全面,它应该是学习UNIX/Linux系统编程的标准书籍。添加微信codingSmart免费领取。

《Linux命令行大全》

《Linux命令行大全》主要介绍Linux命令行的使用,循序渐进,深入浅出,引导读者全面掌握命令行的使用方法。每一个要在Linux中工作的新程序员都应该有一本这本书。

《UNIX环境高级编程(第3版)》

这是学习UNIX最好的书之一,是由Richard W. Stevens编写的经典,UNIX是有史以来最好的软件之一,它已经有30多年的历史了,而且仍然很强大,只要UNIX仍然存在,这本书就会一直经典。

这本书的优点在于,书中有成千上万的代码示例,并给出了清晰的解释,它还包含了数百个插图和图形,展示了不同的UNIX概念是如何工作的。简而言之,这是任何想学习UNIX并更好地理解它的人必读的UNIX书籍之一。

3. 学习一门编程语言

黑客&网络安全工程师的武器也是代码。想要成为黑客或者网络安全工程师,首先要学会一门黑客需要的编程语言。

对于没有代码经验的小白,下面三项,是安全行业的从业者都最好能掌握的语言,锤炼一下自己编程的功底。

Shell脚本

掌握常用的Linux命令,能编写简单的Shell脚本,处理一些简单的事务。

C语言(C++可选)

C语言没有复杂的特性,是现代编程语言的祖师爷,适合编写底层软件,还能帮助你理解内存、算法、操作系统等计算机知识,建议学一下。

Python

C语言帮助你理解底层,Python则助你编写网络、爬虫、数据处理、图像处理等功能性的软件。是程序员,尤其是黑客们非常钟爱的编程语言,不得不学。

4. 学习了解计算机网络知识

这是另一个必不可少的基础条件,学习网络知识,理解网络的构成。懂得不同类型网络之间的差异之处,清晰的了解TCP/IP和UDP协议。这都是在系统中寻找 漏洞的必不可少的技能。理解局域网、广域网,VPN和防火墙的重要性,精通Wireshark和NMAP这样的网络扫描和数据包分析工具等。

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

5. 学习使用黑客常用操作系统

注重安全性的操作系统是黑客最好的朋友,因为它可以帮助他们发现计算机系统或计算机网络中的弱点。

Kali Linux

由 Offensive Security 开发并重写 BackTrack,Kali Linux 发行版在我们用于黑客目的的最佳操作系统列表中名列前茅。这个基于 Debian 的操作系统附带了 600 多个预装的笔测试工具,使您的安全工具箱更加丰富。这些通用工具会定期更新,并适用于 ARM 和 VMware 等不同平台。对于司法鉴定工作,此顶级黑客操作系统具有实时启动功能,该功能为漏洞检测提供了理想的环境。

除此之外还有Parrot Security OS、 BackBox、Samurai Web Testing Framework、Pentoo Linux、DEFT Linux、Caine、Network Security Toolkit、BlackArch Linux、Bugtraq、ArchStrike Linux、Fedora Security Spin等多款操作系统

6. 学习密码技术

接着,来了解一些网络安全领域内经常打交道的编解码技术和加解密技术。包括base64编码、对称加密、非对称加密、哈希技术等等。

了解它们基础的概念、做什么用的,解决什么问题,最后再了解下工作原理。

推荐书籍:《加密与解密》

7. 学习使用黑客渗透工具

网络协议攻击、Web服务攻击、浏览器安全、漏洞攻击、逆向破解、工具开发都去接触一下,知道这是做什么的,在这个过程中去发现自己的兴趣,让自己对网络安全各种领域的技术都有一个初步的认识。以下是常见的web渗透使用工具方法。

8. 学习网络安全法

《中华人民共和国网络安全法》,是我们为了保障网络安全,维护网络空间主权和国家安全、社会公共利益、维护公民、法人和其他组织的合法权益,促进经济社会健康发展,制定本法。

我觉得作为一个技术人员了解和学习黑客知识是必要的,因为这样才能在日常工作中应对安全风险,在较高的安全意识上完成编程和运维工作;当然,如果你能成功掌握了一些黑客原理和技术,当你遇到攻击时,也不仅仅是严防死守,而是抓住内鬼,反将一军。

技术本身并不罪恶,滥用技术才会导致罪恶!

9. 编写漏洞利用程序

实际动手,开发路线需要多写代码,阅读优秀开源代码,二进制路线多分析样本,编写EXP等等,渗透测试多拿网站练手(合法方式)等

渗透实战操作

  • 掌握渗透的整个阶段并能够独立渗透小型站点。
  • 网上找渗透视频看并思考其中的思路和原理,关键字(渗透、SQL注入视频、文件上传入侵、数据库备份、dedecms漏洞利用等等);
  • 自己找站点/搭建测试环境进行测试,记住请隐藏好你自己;
  • 思考渗透主要分为几个阶段,每个阶段需要做那些工作,例如这个:PTES渗透测试执行标准;
  • 研究SQL注入的种类、注入原理、手动注入技巧;
  • 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架;
  • 研究XSS形成的原理和种类,具体学习方法可以Google/SecWiki,可以参考:XSS;
  • 研究Windows/Linux提权的方法和具体使用,可以参考:提权;
  • 可以参考: 开源渗透测试脆弱系统;

打CTF,多参与一些网络安全比赛,接近实战的环境下锻炼动手能力

10. 多向大佬学习

我们学习网络安全,很多学习路线都有提到多逛论坛,阅读他人的技术分析帖,学习其挖洞思路和技巧。但是往往对于初学者来说,不知道去哪里寻找技术分析帖,以下是个人搜集的一些安全圈大佬的个人微信公众号,可以看看大佬们最近在关注什么顺便学习下。

11. 参与开源安全项目

开源安全项目可以帮助你测试和打磨你的黑客技术。这并不是一件容易的事,一些机构,如Mozilla、Apache等,会提供开源项目。参与这些项目,即使你的贡献很小,也会给你带来很大的价值。

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。!!

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

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

相关文章

Java 获取七牛云存储空间中的所有图片列表

文章目录 获取七牛云密钥导入依赖编辑 YAML 配置文件添加七牛云配置类编写 QiNiuImgUrls 方法测试结果 七牛云官方文档:https://developer.qiniu.com/kodo/sdk/java 如果有还不会使用SpringBoot整合七牛云存储的小伙伴们,可以跳转查看这篇文章&#xff1…

Revit中如何画弯曲的轴网和显示实时轴号?

一、Revit中如何画弯曲的轴网 生活中,有很多圆筒样式的建筑,比如说鸟巢和土楼,他们的外壁是弯曲的。所以,当我们用Revit创建这类模型时,轴网就要画弯曲的,那么,Revit中如何画弯曲的轴网呢&#…

JMeter接口压测和性能监测

引言 今天我来和大家分享一篇关于JMeter接口压测和性能监测的文章。在现代互联网时代,应用程序的性能已经成为了一个非常重要的问题,并且对于许多公司的生存和发展都起着至关重要的作用。 而在这其中,JMeter是一个非常实用的工具&#xff0…

CSAPP - AttackLab实验(阶段1-5)

AttackLab实验 实验内容 官网:http://csapp.cs.cmu.edu/3e/labs.html “AttackLab”是一个Linux下的可执行C程序,包含了5个阶段(phase1~phase5)的不同内容。程序运行过程中,要求学生能够根据缓冲区的工作方式和程序…

【Flutter】如何移除 Flutter 右上角的 DEBUG 标识

文章目录 一、前言二、什么是 DEBUG 标识三、为什么我们需要移除 DEBUG 标识四、如何移除 DEBUG 标识五、完整代码六、总结 一、前言 欢迎来到 Flutter 的世界!在这篇文章中,我们将探索 Flutter 的一些基础知识。但是,你知道吗?这…

Science:“消除噪音”量子比特实现了纠错的重大突破

光子盒研究院 在《科学》杂志的一篇新论文中,芝加哥大学普利兹克分子工程学院Hannes Bernien助教实验室的研究人员描述了一种不断监测量子系统周围噪音并实时调整量子比特以减少误差的方法——他们引入了“旁观者量子比特(spectator qubit)”。 尽管他们有解决新型问…

数字图像处理实验报告

目录 实验二、图像在空间域上的处理方法 实验三、图像在频率域上的处理方法 实验二、图像在空间域上的处理方法 一、实验目的 了解图像亮(灰)度变换与空间滤波的意义和手段;熟悉图像亮(灰)度变换与空间滤波的MATLA…

买法拍房需要注意什么

法拍房,由于其价格亲民、房屋信息透明度高、竞拍过程公平公正而受到越来越多的人开始关注。但是其中又有着许多的风险及相关的注意事项。那么,如何做到成功“捡漏”,买法拍房需要注意什么呢? 买法拍房需要注意什么 1、隐藏的各种收费 税费&a…

优思学院|质量和可靠性是同一件事吗?

什么是质量? 质量是什么?早期的定义是“整体上用来决定产品或服务能否满足使用目的之固有性质与性能总合”,换言之,质量就是“可显示出品质与服务好坏的东西”。 不过,关于质量的想法随时代变化,有范围愈…

专访:诺奖得主Alain Aspect谈量子的挑战与未来

光子盒研究院出品 近期,诺贝尔物理学奖获得者Alain Aspect在接受电子工程专辑(EE Times Europe)采访时说:“诺贝尔奖是由于显示了纠缠的非凡特性而获得的,但我还研究了许多其他惊人的量子现象,包括将原子冷却到一光子反冲力以下。…

JavaWebHtmlCSS总结

目录 JavaWeb概述1.访问web的原理2.C/S软件和B/S软件区别3.静态网站和动态网站 HTMLHTML的概述Table表格详细用法见W3CSchool.chm合并单元格课程表 img标签table和img标签组合使用a标签表单表单Get提交和post提交 div和span CSS1.CSS概述2.CSS语法3.CSS三种写法行内样式内部样式…

专访泛境科技:如何借助3DCAT实时云渲染打造元宇宙解决方案

随着5G、VR/AR等技术的发展,元宇宙(Metaverse)这一概念越来越受到关注。元宇宙是一个由虚拟世界构成的网络空间,其中人们可以通过数字化的身份和形象进行各种社交、娱乐、创作和商业活动。元宇宙的核心是虚拟场景,它是…

教育信息化时代,如何打造中学理科信息化实验操作考场方案

近年来,我国考试招生制度不断改进完善,初步形成了相对完整的考试招生体系。但随着教育事业的逐步发展,国务院明确提出了改革考试形式和内容:完善中学学业水平考试,规范中考学生综合素质评价,加快推进中学院…

Promise.allSettled优化并行接口报错

问题背景 后端需要前端请求同一个接口三次,每次传参不同可以获取到不同的结果>构成计算资源的选项。 其中一个接口传参获取数据报错,导致整个计算资源都没有可选择的options: 前端代码使用Promise.all获取res1, res2, res3返回结果&…

云原生docker-cgroup资源限制

概述 Docker 通过 Cgroup 来控制容器使用的资源配额,包括 CPU、内存、磁盘三大方面, 基本覆盖了常见的资源配额和使用量控制。 Cgroup 是 ControlGroups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(如 CPU、…

【剑指offer】调整数组顺序使奇数位于偶数前面

文章目录 题目思路相对位置可以改变的思路相对位置不能改变的思路 题目 题目链接入口:调整数组顺序使奇数位于偶数前面 示例1: 输入:[1,2,3,4,5,6] 结果:[1,3,5,2,4,6] 示例2: 输入:[1,2,2,3,4,4,5,6,7…

2023年前端面试高频考点之 通信(渲染、http、缓存、异步、跨域)

目录 浏览器从输入url到渲染页面 过程⭐⭐⭐ Http和Https区别⭐⭐⭐ GET和POST发送请求⭐⭐⭐ 异同 http版本⭐⭐⭐ http状态码⭐⭐⭐ TCP⭐⭐⭐ 三次握手 四次挥手 流量控制(滑动窗口机制) 拥塞控制 keep-alive持久连接 TCP⭐⭐⭐ 三次握手…

Revit中绘制多坡度的迹线屋顶和构件对齐

一、Revit中创建特殊多坡度的迹线屋顶 在我们的日常生活中可以见到一些建筑屋顶为偏欧式风格的屋顶,而有时候在做迹线屋顶时也需要作出如图一所示的效果,说明特殊的多坡度屋顶也是应用非常广泛的,那我们应该如何实现绘制呢? 1.要得到如上图所…

Linux系统:安装及管理程序

安装及管理程序 一、linux源码包:1.源码包:2.二进制包:3.源码包的好处:4.源码包不足: 二、编译安装的过程:1.重点步骤: 三、挂载1.格式:2.挂载规则: 四、应用程序和系统命…

使用Jmeter进行性能测试的这套步骤,涨薪2次,升职一次

项目背景: 我们的平台为全国某行业监控平台,经过3轮功能测试、接口测试后,98%的问题已经关闭,决定对省平台向全国平台上传数据的接口进行性能测试。 01、测试步骤 1、编写性能测试方案 由于我是刚进入此项目组不久&#xff0c…