本文作为备份,给19,20的学弟学妹们学习。
多读书,多看推送,多学习
Week 1
我的学习过程
graph TD;
First[用Typora写md笔记];
T[有人教如何记笔记];
Auto[将md笔记自动生成博客,用hexo];
Blow[笔记过多,爆炸];
Obsidian[使用obsidian管理笔记,使用Zettelkasten 卡片盒笔记法];
Update[寻找笔记管理系统,笔记管理升级];
Final[挑选笔记写成文章放到博客中];
Keep[保持学习Keep Learning]
First-->T;
T-->|无|Auto;
T-->|有|Obsidian;
Auto-->Blow;
Obsidian-->Final;
Blow-->Update;
Update-->Final;
Final-->Keep;
任务:
-
学习 Markdown 语法。通过谷歌/百度,以及我附上来的简要文档学习
-
下载 Typora
-
注册 Github/Gitee 账户,进入 repository
-
报告交pdf格式的上传到群文件中。
学习Git 的使用
。简单几种先能使用就行,后续各种操作慢慢自学
-
打开 CMD 或者 Powershell,进入随便哪个文件夹,执行以下命令(
$
代表最前面的命令提示符):
$ git clone https://github.com/mrbelieve128/From_Zero_To_Keep_Learning.git
这样相当于把这个项目保存到当前文件夹
-
编辑完你的文件之后,执行:
$ git add .
.
代表当前文件夹- 这条命令相当于把当前文件夹下 修改 过的所有文件添加到 暂存区
-
提交 Commit
$ git commit -m "your message"
-m
是一个选项(Option),后面跟参数(Argument)- 在这条命令中,
your message
代表-m
选项的参数,-m
是指留言(Message),--message
与之等效 - 可以不留言直接
git commit
,但是团队开发中需要遵循一定的规范。比较著名的规范有来自 Angular 开发团队的 commitizen,可自行查阅
-
推送到代码仓库,这里用的就是 Github
$ git push
-
获取更新
$ git fetch
Git 是一个分布式代码托管工具,所以别人也会给这个仓库提交代码,用上述命令从远程仓库获取最新的代码
- 借助 Typora,使用 Markdown 语法的书写第一篇笔记,记录 Git 的常用使用方法等知识点
可选
Web方向
搭建以下环境:
- Kali
- BurpSuite Pro 2020.9.2 For Windows | 国光
- OWASP Top Ten Web Application Security Risks | OWASP
- 靶场-WebGoat
- 经典靶场-dvwa
同时可以去 BUUCTF 解题。
靶场给了,具体怎么搭一般项目的 README 文件里都有,不会再问我。
阅读清单
笔记管理方面
- 玩转 Obsidian | 打造知识循环利器 - 少数派
- 《how to take smart note》中文版
- 玩转 Obsidian | 基础设置篇 - 少数派
- 玩转 Obsidian | 间歇式日记 - 少数派
计算机底层方面(长期)
- 《计算机组成原理(第2版)》-唐朔飞
- 《深入理解计算机系统(原书第三版)》(长,厚,多)
书可以结合网课看,上完网课再看书补充知识点。记得做笔记。
Week 2
下载请在官网下载,先看操作系统部分的,网络部分可以往后放放
任务:
- 安装Vmware workstation pro 15,激活码自行网上搜索
- 安装 ubuntu 20.04,iso形式安装,了解过程
- ubuntu里面安装docker,安装步骤见官网
- 学习linux操作,包括安装软件(vim、proxychains4,vs code)(换源提升下载速度
- 学习vim和proxychains4的使用
可选:
- 安装渗透测试最常用的kali虚拟机
- 学习使用nmap,burpsuite
- 阅读linux相关的书籍,了解设计,以及linux和windows的差异
- 读书
阅读清单
linux:
《鸟哥的Linux私房菜:基础学习篇》(第四版)
计算机网络相关:
TCP/IP入门经典
Week3
任务:
- 学习linux部分软件操作,vim/vi/nano任选,建议vim。
- 学习vscode的使用,建议使用vsc写python。
- 安装vsc插件,vsc仅仅是个文本编辑器,插件才是灵魂。
- 学习快捷键。包括但不限于windows快捷键、vsc快捷键、游览器(chrome或者edge)、typora快捷键。
windows快捷键至少有:
- 切换窗口
- 隐藏当前窗口
- 按词往前、往后跳动(Ctrl + left/right)
vsc:
- 多行光标
- 快捷键替换
游览器:
- 恢复被关闭的页面
- 切换页面
typora:
- 高亮
- 加粗
- 切换标题级别(h1–>h2 或者h2–>h1)
可选:
- 读书
阅读清单
看以前那些
Week 4
- 学习sshSSH 教程 - 网道
- 学习bash脚本Bash 脚本教程 - 网道,看完变量那部分就差不多了,虽然不常用但是部分还是要学一下
- 学习sql语言。通过docker安装mysql并在其中创建表,添加信息,删除信息,查询信息,添加外键等。不要求全会,但这基本几个要会。
可选:
- 读书
阅读清单
看以前那些
知识基础(大一,大二时间多推荐看看)
计算机底层相关:
-
《计算机组成原理(第2版)》-唐朔飞
-
《深入理解计算机系统(原书第三版)》(长,厚,多,有空把几个lab也做一下最好)
-
《鸟哥的Linux私房菜:基础学习篇》(第四版)
-
计算机网络
Week 5-9+n
基础漏洞成因
All learning materials | Web Security Academy (portswigger.net)
按照top10来刷portswigger
-
sql注入
-
身份认证漏斗
-
XML(XXE)外部实体
-
访问控制和权限提升
-
跨站脚本XSS
-
CORS跨域漏洞
-
SSRF服务端请求伪造
-
不安全的反序列化(这个可以稍稍)
选择你的方向:渗透测试,代码审计? 至于攻防,非知攻焉知防.
目标是一专多强.无论哪个方向, 最好有开发能力来写点工具什么的.
渗透测试:
入门安全的基础。搞安全的没点基本渗透思路都不好意思出来说自己是搞安全的。
- 建议dvwa,burp实验靶场刷完。
- awvs,xray,goby工具装好,然后去挖挖学校漏洞,挖挖edusrc
- 装好阅读RSS的东西,每天抽时间看RSS记笔记
信息收集部分文章参考
代码审计:
代码审计也算是安全领域比较基础的能力。不会代码也可以在安全圈活下去,但是会了代码能够让你在安全圈形成一种降维打击
推荐路线
- 渗透的思路要有
- 基础的java开发
- 找个b站视频学着写一个小网站
- webgot靶场学习分析
- cc链分析
- weglogic系列漏洞分析
- shiro系列漏洞分析
- fastjson系列漏洞分析
- struts2系列漏洞分析
- spring系列漏洞分析
分析完你也就入门了
学习参考: Java安全 · 语雀
内网安全(红队):
学习路线:
- 熟练掌握渗透测试
- 目标系统获取(webshell,命令执行)
- 提权
- 免杀
- 内网代理
- 内网横向
- 域渗透。
参考书籍:
- 《内网安全攻防 渗透测试实战指南》
安全开发:
如果你喜欢安全,又喜欢开发。欢迎去搞安全开发。安全开发需要具备基本渗透测试能力。然后将渗透手法开发工具自动化完成。或者将渗透手法开发工具进行自动化拦截。
目前比较多的就红队工具开发,安全产品开发,甲方安全平台开发等等。
学习路线:
- 底层书要看完
- 渗透测试思路
- golang开发学习
- 分析知名开源工具源码
- 二次开发知名开源工具。
附录:Web方向说明
渗透测试, 代码审计,内网安全,安全开发,移动安全
安全是一个极其广泛的领域。有很多不同的分支,大多数人终其一生也很难达到一个分支的顶点,学不完也不用太悲伤,找准一个方向学习就好了。
现在基本都讲究一个一专多能,上面五个方向至少要拿得出手一样,这样才能保证你至少能找到一个工作。其他的了解的越多越好。
以上五个方向的简单了解:
从一个应届生(大三暑假投简历)的角度来看,以上五个方向。
渗透测试,内网安全更偏向乙方厂商(你学好这两个方向去安全厂商(奇安信,360,安恒)实验室的概率更大)。
代码审计,安全开发,移动安全(这三个方向学好至少一个冲一下甲方大厂(阿里,腾讯,字节)不是问题)。
毕业之后的话就都一样,技术好哪都能去。
「真诚赞赏,手留余香」
真诚赞赏,手留余香
使用微信扫描二维码完成支付