网络安全(黑客)自学的一些建议
1.选择方向
首先是选择方向的问题,网络安全是一个很宽泛的专业,包含的方向特别多。比如 web安全,系统安全,无线安全
,二进制安全,运维安全,渗透测试,软件安全,IOT安全,AI安全等等,具体看你想学习哪方面,你一般听到的是web安全,搞个站,玩玩xss,命令注入等等。你可以从大纲中找到你要学习的方向和技能。

如图片过大被平台压缩导致看不清的话,大家记得点个关注,关注之后后台会自动发送给大家!
2.学习方法与思路
我的的学习方法论分为三个方面,很直接有效,贵在坚持。
明确目标
学以致用细化你的目标
制定具体的学习内容反馈
1.明确目标,学以致用
你首先要明确学习网络安全的目标,你是想打CTF比赛,还是当个白帽挖CVE洞,还是想写个软件保护壳,开源个安全项目等,目标不同,你的学习路径也是不同的。不建议立即从基础学起,肯定有人给你说学c,学数据结构,学算法,学汇编等等,其实这是不聪明的,目标导向:之前说的每一门都是个大学科,其实用到安全上的 并不多,如果你在暂时用的不多的内容上花费了很多时间,那么你什么时候才能实现自己的目标呀,人的精力是有限的,永远准备好再出发,那是小学生的学习思路。
2.细化你的目标,制定具体的学习内容
例如咱们定个目标,写一个PE的保护壳,那你首先要做的是什么呢? 先去google 搜索 PE的保护壳有哪些种?比如压缩壳,加密壳,虚拟机等等,难度高低怎么样?对于入门者来说,压缩壳相对简单,那就从这个开始学。接着去github或者google搜索 开源的PE压缩壳和相应的教程。发现PE压缩壳有用汇编写的,有用C,C++写的,这个时候咱们可以先选择汇编来写。然后就查询一下压缩壳原理的教程和书籍,比如书籍推荐《加密与解密》,对比着开源壳的代码去理解,如果汇编不懂,找到一本汇编书,比如王爽的汇编入门书籍,不要全看完,对比着壳代码 看到哪去学哪。整体的学习过程变成了:PE保护壳 -》 压缩壳 -》 汇编压缩壳 -》搜索开源代码和原理教程 -》 对比着壳代码,看汇编书籍理解将目标越来越细化,你就越清楚自己做什么。
3. 反馈
学习是一个不断反馈的过程,你在第2步的学习过程中,作为初学者肯定不会这么顺利,看看开源代码也会遇到不懂得地方,自己写的代码得时候肯定也会调试不通,这时候就接着去找资料,看书,调试,搞懂。
正常得学习过程一般是:
学习 -》应用-》反馈-》接着学习
5. 书单推荐
其实书籍是非常系统的,非常适合入门,可以让你掌握这个领域的基本内容,但是时效性可能不会很高。我建议选择看哪个方面的书,不要人云亦云,肯定很多人让你学操作系统原理,学算法等等,这其实是不符合学习规律的,学什么就找对应的书籍学习,而不是从最基础的开始学。下面是我推荐的几本书籍。
计算机及系统原理
- 《编码:隐匿在计算机软硬件背后的语言》 【美】Charles Petzold
- 《深入理解计算机系统》【美】Randal E.Bryant
- 《深入理解Windows操作系统》【美】Russinovich,M.E.;Solomon,D.A.
- 《Linux内核设计与实现》【美】Robert Love
- 《深入理解Android内核设计思想》林学森
- 《Android系统源代码情景分析》罗升阳
- 《深入理解Mac OS X & iOS操作系统》【美】Jonathan Levin
- 《深入理解Linux内核》 【美】DanielP.Bovet
- 《代码揭秘:从C/C++的角度探秘计算机系统》左飞
- 《Android Dalvik虚拟机结构及机制剖析(第1、2卷)》吴艳霞;张国印
- 《Android Internals::Power User’s View》【美】Jonathan Levin,中译本《最强Android书:架构大剖析》

2023全套网络安全资源,大家记得点个关注,关注之后后台会自动发送给大家!

编程开发
系统平台
Windows
- 《Windows程序设计》【美】Charles Petzold
- 《Windows核心编程》【美】Jeffrey Richter
- 《Windows环境下32位汇编语言程序设计》罗云彬
- 《Windows驱动开发技术详解》张帆
Linux/Unix
- 《UNIX环境高级编程》【美】W.Richard Stevens;Stephen A.Rago
- 《Linux程序设计》【美】Neil Matthew;Richard Stones
- 《Linux设备驱动程序》【美】Jonathan Corbet;Alessandro Rubini;Gerg Kroah-Hartman
macOS/iOS
- 《iOS编程》【美】Christian Keur;Aaron Hillegass
- 《OS X与iOS内核编程)【澳】Halvorsen,O.H.;Clarke,D
Android
- 《第一行代码——Android》郭霖
- 《Android编程权威指南》【美】Brian Hardy;BillPhillips
编程语言
C·
- 《C语言程序设计》【美】Brian W.Kernighan;Dennis M.Ritchie
- 《C Primer Plus》【美】Stephen Prata,入门书籍
- 《C和指针》【美】Kenneth A.Reek
- 《C陷阱与缺陷》【美】Andrew Koenig
- 《C专家编程》【美】Peter van der Linden
C++
- 《C++ Primer Plus》【美】Stephen Prata,入门书籍
- 《C++ Primer》【美】Stanley B.Lippman;Josée Lajoie;Barbara E.Moo,进阶书籍
ASM
- 《Intel汇编语言程序设计》【美】Kip Irvine
- 《Intel开发手册》
- 《汇编语言(第3版)》王爽
- 《x86汇编语言:从实模式到保护模式》李忠
Java
- 《Java核心技术》【美】Cay S.Horstmann;Gary Cornell,入门书籍
- 《Java 编程思想》【美】Bruce eckel,进阶书籍
JavaScript
- 《JavaScript DOM编程艺术》【美】Jeremy Keith;【加】Jeffrey Sambells
- 《JavaScript高级程序设计》【美】Zakas.Bicholas C.
- 《Vue.js项目开发实战》张帆
Python
- 《Python核心编程(第2版)》【美】Wesley J·Chun
Shell
- 《Linux Shell脚本攻略》【印】Sarath Lakshman
网络技术
《TCP/IP详解(卷1:协议)》【美】Kevin R.fall;W.Richard Stevens
《Wireshark数据包分析实战》【美】Chris Sanders
安全技术
安全开发
- 《天书夜读:从汇编语言到Windows内核编程》谭文;邵坚磊
- 《Rootkit:系统灰色地带的潜伏者》【美】Bill Blunden
- 《Rootkits——Windows内核的安全防护》【美】Gerg Hoglund;James Butler
- 《BSD ROOTKIT设计——内核黑客指引书》【美】Joseph Kong
- 《寒江独钓:Windows内核安全编程》谭文;杨潇;邵坚磊
逆向工程
- 《加密与解密》段钢
- 《恶意软件分析诀窍与工具箱——对抗“流氓”软件的技术与利器》【美】Michael Hale Ligh;Steven Adair
- 《C++反汇编与逆向分析技术揭秘》钱林松;赵海旭
- 《IDA权威指南》【美】Chris Eagle
- 《逆向工程权威指南》【乌克兰】Dennis Yurichev,多平台入门大全
- 《Android软件安全与逆向分析》丰生强
- 《macOS软件安全与逆向分析》丰生强
- 《iOS应用逆向工程(第2版)》沙梓社;吴航
Web安全
- 《黑客攻防技术宝典:Web实战篇》【美】Marcus Pinto,Dafydd Stuttard
- 《白帽子讲Web安全》吴翰清
- 《Web安全测试》【美】Paco Hope;Ben Waltber
- 《Web前端黑客技术揭秘》钟晨鸣;徐少培
- 《精通脚本黑客》曾云好
软件/系统安全
- 《0day安全:软件漏洞分析技术(第2版)》王清,入门书籍
- 《漏洞战争:软件漏洞分析精要》林桠泉,进阶书籍
- 《捉虫日记》【德】Tobias Klein,进阶书籍
- 《黑客防线2009缓冲区溢出攻击与防范专辑》
- 《内核漏洞的利用与防范》【美】Enrico Perla;Massimiliano Oldani
- 《Fuzzing for Software Security Testing and Quality Assurance(第2版)》【美】Charlie Miller,博文视点翻译中
- 《iOS Hackers’s Handbook》【美】Charlie Miller,不推荐中文版
- 《The Mac Hacker’s Handbook》【美】Charlie Miller
- 《Android安全攻防权威指南》【美】Joshua J.Drake;【西】Pau Oliva Fora;【美】Collin Mulliner
- 《The Art of Softwar Security Assessment:Identifying and Preventing Software Vulnerabilities》【美】Mark Dowd
- 《Android Security Cookbook》【美】Keith Makan; Scott Alexander-Bown,中译本《Android安全攻防实战》
- 《模糊测试-强制性安全漏洞挖掘》【美】Michael Mutton
- 《Exploit编写系列教程》【美】Corelan Team
- 《MacOS and iOS Internals,Volume Ⅲ: Security & Insecurity》【美】Jonathan Levin,博文视点翻译中
- 《灰帽黑客:正义黑客的道德规范、渗透测试、攻击方法和漏洞分析技术》【美】Allen Harper;Shon harris
- 《威胁建模:设计和交付更安全的软件》【美】Adam Shostack
要学会对标,自己学了一些技能,看了一些书,怎么检验自己呢?可以对着余弦大佬提供的技能图表进行对标,这里面包含了一个安全人员必备的技能。

最后祝你早日成功,如果能帮助你,希望给个友情三连,同时关注我的动态,我最新的技术文章就可以看到!
相关文章:
网络安全(黑客)自学的一些建议
1.选择方向 首先是选择方向的问题,网络安全是一个很宽泛的专业,包含的方向特别多。比如 web安全,系统安全,无线安全 ,二进制安全,运维安全,渗透测试,软件安全,IOT安全&a…...
全志F1C200S嵌入式驱动开发(基于usb otg的spi-nor镜像烧入)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面既然已经搞定了spi-nor驱动,那么下一步考虑的就是怎么从spi-nor flash上面加载uboot、kernel和rootfs。目前spi-nor就是一块白片,上面肯定什么都没有,那么这个时候,我们要做…...
如何恢复损坏/删除的 Word 文件
有关如何修复不可读的 Microsoft Word 文件或 Rich Text 文件中的文本的分步说明。这些说明有助于从损坏的*.doc、*.docx、*.dot、*.dotx、*.rtf文件(任何版本和大小)中提取文本,只需单击几下: 从此处下载奇客数据恢复 ÿ…...
【论文阅读】Feature Inference Attack on Shapley Values
摘要 研究背景 近年来,解释性机器学习逐渐成为一个热门的研究领域。解释性机器学习可以帮助我们理解机器学习模型是如何进行预测的,它可以提高模型的可信度和可解释性。Shapley值是一种解释机器学习模型预测结果的方法,它可以计算每个特征对…...
TDesign 中后台系统搭建
目录 1 模板安装2 启动项目3 添加页面总结 一般如果希望开发小程序,是要给使用的用户提供一套中后台系统来管理数据的。现在中后台系统开源项目也比较多,本篇我们介绍一个腾讯开源的TDesign模板。 1 模板安装 先要在电脑里安装好nodejs,搜索…...
Android 实现阅读用户协议的文字控件效果
开发中,经常要用到一些阅读隐私协议的场景,原生的textview控件很难做到在一个控件里有两个点击事件,那现在就来安利一个强大的组件——SpannableStringBuilder。 先看看效果: 直接上代码,布局文件: <Li…...
19.主题时钟
主题时钟 html部分 <div class"btn">黑色</div><div class"clock-container"><div class"time">21</div><div class"date">21</div><div class"clock"><div class&qu…...
ChatGPT在智能电子设备中的应用如何?
ChatGPT在智能电子设备中有着广泛的应用潜力,可以为电子设备提供更智能、更个性化的用户体验,并为用户提供更多便利和高效的功能和服务。智能电子设备是指通过集成计算机、传感器、网络和人工智能等技术,实现智能化的功能和交互的设备。ChatG…...
MGRE之OSPF实验
目录 题目: 步骤二:拓扑设计与地址规划编辑 步骤三:IP地址配置 步骤四:缺省路由配置 步骤五:NAT的配置 步骤六:MGRE配置 中心站点R1配置 分支站点配置 中心站点R5 R1配置 分支站点配置 检测&…...
【Selenium+Pytest+allure报告生成自动化测试框架】附带项目源码和项目部署文档
目录 前言 【文章末尾给大家留下了大量的福利】 测试框架简介 首先管理时间 添加配置文件 conf.py config.ini 读取配置文件 记录操作日志 简单理解POM模型 简单学习元素定位 管理页面元素 封装Selenium基类 创建页面对象 简单了解Pytest pytest.ini 编写测试…...
如何负载均衡中的日志统一管理
详细部署步骤:将负载均衡中的日志统一管理 调研和规划 确定日志管理的需求和目标。调研可用的日志收集工具和中心化存储系统。 选择合适的日志收集工具 根据需求选择适合负载均衡环境的日志收集工具,如Logstash、Fluentd或Filebeat。 在负载均衡服务器…...
Java_26_Stream流
Stream 什么是Stream流? 在Java 8中,得益于Lambda所带来的函数式编程, 引入了一个全新的Stream流概念 ,用于解决已有集合/数组类库有的弊端。 Stream流能解决什么问题? 可以解决已有集合类库或者数组API的弊端。 Stream认为集合…...
周四见 | 物流人的一周资讯
京东支付年活跃用户数超1.9亿 7月27日消息,京东科技发布2022年环境、社会及公司治理报告。报告显示,在推动社会公平方面,2022年京东科技帮助超207万家中小微企业实现数智化转型,为42万中小微企业提供贷款,节省融资成本…...
uniapp 即时通讯开发流程详解
今天我将为您详细介绍UniApp开发中的即时通讯流程。本文将向您展示如何在UniApp中实现即时通讯功能,为您的应用程序增添交互性和实时性。 1. 准备工作 在开始开发之前,确保您已完成以下准备工作: 确保您已经安装好UniApp开发环境ÿ…...
【Terraform学习】Terraform-docker部署快速入门(快速入门)
Terraform-docker部署快速入门 实验步骤 创建 EC2 IAM 角色 导航到IAM 在左侧菜单中,单击角色 。单击创建角色该按钮以创建新的 IAM 角色。 在创建角色部分,为角色选择可信实体类型: AWS 服务 使用案例:EC2 单击下一步 添加权限&#x…...
C# 全局响应Ctrl+Alt+鼠标右键
一、简述 某些应用,我们希望全局自定义热键。按键少了会和别的应用程序冲突,按键多了可定用户操作不变。因此我计划左手用CtrlAlt,右手用鼠标右键呼出我自定义的菜单。 我使用键盘和鼠标事件进行简单测试(Ctrl鼠标右键ÿ…...
【Leetcode】54.螺旋矩阵
一、题目 1、题目描述 给你一个 m m m 行 n n n 列的矩阵 matrix,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例1: 输入:matrix =...
怎样计算一个算法的复杂度?
分析一个算法主要看这个算法的执行需要多少机器资源。在各种机器资源中,时间和空间是两个最主要的方面。因此,在进行算法分析时,人们最关心的就是运行算法所要花费的时间和算法中使用的各种数据所占用的空间资源。算法所花费的时间通常称为时…...
【问题记录】Ubuntu 22.04 环境下,打开 VS Code 老是访问密钥环该怎么解决?
目录 环境 问题情况 解决方法 环境 VMware Workstation 16 Pro (版本:16.1.2 build-17966106)ubuntu-22.04.2-desktop-amd64 问题情况 在Ubuntu下,每次运行 VS Code时,老是提示要输入密钥密码来解锁保存在密钥环&am…...
format格式化输出语法详解
hello,这里是Token_w的文章,主要讲解python的基础学习,希望对大家有所帮助 整理不易,感觉还不错的可以点赞收藏评论支持,感谢! 使用 % 操作符对各种类型的数据进行格式化输出,这是早期 Python提…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能
1. 开发环境准备 安装DevEco Studio 3.1: 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK 项目配置: // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...
MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)
macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...
