z5onk0的补完计划
写在前头
2021.12.01
在这里记录一些学习计算机的路线和心路历程,主要用于提醒自己去整理、反思学习到的知识。
已经25岁,研究生毕业快一年了,感觉自己还是很多不会,甚至不如比自己还小的年轻人们,能力不足恐慌。
本科信息工程,除了焊了几块电路板也没学到什么,也不知道自己喜欢什么,应该学什么,只是为了成功保研,心思都用在应付考试,刷本科绩点上。读研选了信息安全,大部分时间都在忙活,有点自己的时间也是在看论文、写论文,学习到的技术方面知识较薄弱。本科4年属于门外汉,研究生插班到计算机领域,也没有花时间打基础,提升能力,计算机基础可以说是很差了,科班出身的人到我这个年龄本应该能独立完成大型项目,圈子里小有名气了,可我还啥都不会。
计算机基础差,没有系统的学过知识,水平不比高中生强多少。也知道现在开始学习已经很晚了,已经是满足大龄程序员、老年CTF选手的年龄了,现在从头来学,还没入行就撞上互联网中年危机?
但是如果现在再不学,以后就真的没机会了!
考虑到自己的年龄以及工作(我的本职工作和计算机关系不大),没有那么多时间允许自己去耗了,也只能用业余时间来进行学习,学习路线肯定不能和年轻人们一样了,原则是能省就省,能跳就跳,麻烦一点折腾一点的赶紧放弃,尽量做一些能较快看到效益的工作。
如果有大佬刚好能扫到这篇文章,希望能帮我指条明路,传授些经验,感激不尽!
第1周
2021.12.01
b站大学大一学年,开始计算机四大基础课程的学习
这周休假在家,在b站看完了中科大郑烇老师的《计算机网络》课程
视频链接:here
笔记链接:here
第2周
2021.12.08
收假,在b站看完了哈工大刘宏伟老师的《计算机组成原理》课程
视频链接:here
笔记链接:here
第3周
2021.12.15
运动会+考试
第4周
2021.12.22
听别人说学操作系统课前,要先学汇编知识,所以先去看了王爽《汇编语言第二版》
笔记链接:here
第5周
2021.12.29
在b站看完了哈工大李治军老师的《操作系统》课程,李老师的课太硬核了,对着代码将知识点,将深奥的底层知识讲得生动有趣,印象很深刻
视频链接:here
笔记链接:here
第6-7周
2022.1.6
花了10天时间,在b站看完了浙江大学陈越老师的《数据结构与算法课程》
视频链接:here
笔记链接:here
第8-10周
2022.1.13
这三周基本都在忙单位的事
- 做ppt
- 搬家
- 用matlab写了一个用于信号干扰资源调度的程序,一开始使用回溯法求全局最优解,但发现时间复杂度过高,信号数目超过20个后,跑个半天都跑不出结果,改成求局部最优解,来来回回测了很多组数据,改了很多遍,最后在时间和得分之间折中,实测效果较好,代码量从800L到3000L,最后压缩到1300L,链接:here
第11周
2022.2.1
- 过春节
- 整理前期学的知识,至此完成计算机基础四大件的学习,b站大学yyds!
第12周
2022.2.8
- 放假回家,来回路途奔波
- 见亲戚朋友,玩
第13周
2022.2.15
第14周
2022.2.22
练习CPlusPlusThings上的C++基础项目,下了个VS2022,配好环境,对着代码敲,做到第三节C++2.0新特性,10个day做完了,重点实战练习做完了,进行了重载、多态、抽象、泛性的编程实现
链接:C++那些事cdn github加速链接
第15周
2022.3.1
- 见女朋友
- 想了解网站的构造,学习了前端知识,链接:千古前端
- html骨架,了解了常用标签
- CSS样式,学习了怎么加载到前端,样式在哪里改
- JS动态交互,学习了jquery语法,选择子定位,如何操作DOM结点,链接:廖雪峰JS教程
第16周
2022.3.8
学习廖雪峰Python教程,这个教程是我见过最好的python电子教程了,既面向基础,又有一定深度,还比较全,继承和多态、定制类、装饰器、多线程多进程、异步、协程、生成器、高阶函数,以及一点Django的知识,对我的python编程能力提升很大,以前可能就是写个自动化的脚本,不知道的去网上搜,系统的学过这个后,一方面很多不用去查资料了,编程速度提升,另一方面,写程序时脑子里会想着如何去提升运行速度,用多进程、异步、类封装,使得程序结构更清晰、运行更快。
链接:廖雪峰python教程
第17周
2022.3.15
- 学习完理论知识,趁热乎练习了一些Python-100-days上的项目,把前面Day20的部分做完了,后面Django那部分简单看了下
- 继续学习了Python并发编程的知识,这部分C语言中文网上的教程写的特别好
- 给女朋友写了一个利用搜索引擎爬论文的脚本,觉得爬虫挺有意思,想系统学习下,爬虫链接:利用搜索引擎爬取会议论文
第18周
2022.3.22
花了一周时间,在b站上看了崔庆才的《python3爬虫从入门到精通》,学习了爬虫常用库requests、beautifulsoup、re、pyquery、selenium的使用,学习了同mongoDB、Redis、Mysql数据库的交互,做了大麦网数据爬取,浏览器驱动爬取ajax网页,动态代理池维护,代理反爬等项目,尝试装Pyspider(很难支持python3故放弃),部署了scrapy框架并爬取了知乎用户信息,掌握了pipeline和middleware的使用,框架确实强大,但个人觉得日常使用还是用requests+pyquery或者re更方便
视频链接:崔庆才python3爬虫从入门到精通
知乎用户信息爬取项目:here
动态代理池项目:here
大麦网演唱会爬虫:here
第19-20周
2022.4.1
- 给公司写了一个表格数据处理脚本,用来导出考勤系统的人脸数据,用openpyxl处理excel,学习了怎么操作单元格,以及将数据封装到dataFrame中,用pandas导出,学会了globals()变量的使用,类似于c语言中的指针解引用,还是挺方便,脚本链接:here,因为公司内网没有python环境,所以用旧版pyinstaller打包成了exe,下载链接:[貌似传不上去]
- 在b站看了peiqi关于PWN的入门视频,了解做pwn的基本步骤和工具,视频链接:here
第21-22周
2022.4.15
- 准备考试,做ppt,杂七杂八的事
- 给公司装了个视频会议系统jitsi-meet,微调了一下代码,打上公司Logo和定制符号,最后部署到公司服务器hyper-v上,通过浏览器访问,期间又有各种环境兼容问题,还是挺折腾的
- 过完了c语言中文网上的gdb教程,c语言中文网yyds,整理的很系统全面,思路格式都很清晰,看着很舒服,是鱼龙混杂的中文教程里的一股清流
第23周
2022.5.1
- 过端午节
- 加入天问星球群,开始天问学习计划:unix环境高级编程->unix网络编程->webserver->STL->编译器优化->内核->GC->codeql->fuzz
第24周
2022.5.8
- 看完了《unix环境高级编程一书》,写了一份笔记,笔记内容不多,知识点都收藏在谷歌浏览器书签里...,笔记链接:here
- 做了一遍apue的实验,链接:apue github
- 这部分加深了对Linux编程的认识,学到了linux进程间通信的8种方式,通过信号量和锁进行线程同步,文件管理(输入输出流、FILE结构体、从FILE指针到磁盘文件的过程),几个头文件(stdio.h\fcntl.h\unistd.h等),IO多路复用(epoll和select的使用),linux的信号机制,以及linux系统从加载内核到提供shell具体过程和代码实现,main函数开始和结束都干了什么(查看图片)
第25周
2022.5.15
- 跳着看完了《unix网络编程》,为什么要跳着看?因为这本书真的真的很厚,笔记链接:here
- 学习了socket通信常用函数,这一部分的关键应该是如何最大程度减小通信时延,提升通信效率,保证连接稳定性,主要是IO多路复用,多进程/线程的使用,以及Reactor、Proactor等模式的应用
- 这一部分很实用,要是学完能做个项目再好不过,但确实没时间,简单学习了下WebServer,了解了下提到的Epoll边沿触发的IO多路复用技术,非阻塞IO,Reactor模式,eventfd实现线程异步唤醒,链接:here,没有跟着实现一遍,后面有时间再说吧
- 了解了下陈硕大神的muduo网络编程库,据说很多linux端很多高性能网络通信工具都用到了这个库,链接:muduo源码剖析
第26周
2022.5.22
- 没时间写tinyserver、tinykernel,直接跳到学fuzz上了
- 购买了sakura的fuzzlab课程,视频里说第一步要先看afl代码,行那我先去看代码
- 花了一周时间分析完了afl完整的原生代码,方法是动态调试+阅读代码,写了1w7字的完整笔记,记录了关键函数的功能和实现,笔记链接:afl原生代码学习笔记
第27周
2022.5.29
- 学完了fuzz源码,接着学fuzzlab课程,看完了四个视频
- 实战afl,第一步就挂了,afl-clang-fast怎么都编译不过,请教了很多大佬,改了配置文件,编译参数,换了ubuntu16.04/18.04/20.04,都不行,挣扎两天后放弃安装afl
- 转战afl++,感觉前面的代码白看了...,afl++基本重构了整个afl代码,还加了很多复杂功能,又花了点时间重新了解了下代码
第28周
2022.6.6
- 一周时间做完了Fuzzing101上前6个实验,链接:fuzzing101
- 写了点fuzz心得,链接:[https://www.cnblogs.com/z5onk0/p/16754467.html]
- 大部分时间都花在了找程序,编译目标上,可能是我方法问题,感觉收益不大,而且网上都有教程,跟着步骤做就行,也没什么成就感,故没有做完放弃了
- 在编译目标的过程中,顺带了解了make、cmake,学习了makefile、CmakeList的写法,找的C语言中文网的教程(不是打广告,但却是每次找到最好用的就是它)
第29-33周
2022.6.13
- 大概花了六周左右的时间,刷了攻防世界的pwn题,刷到了第二名(有图为证),做的有几道题flag都拿到了,提交入口给关了,交上去的话应该第一了,本来想接着刷的,但连续遇到几次libc和赛题平台的问题,加上这个平台主要偏新手入门,而且我后面还有别的任务,种种原因,后面应该不会再在上面刷pwn了,要刷也到别的地方了(CTFCollege、BUUCTF)
- 总共刷了47题,记录了一些对赛题的分析,不全,链接:攻防世界赛题分析
- 整理了一些做pwn题的工具,链接:pwn题工具
第34周
2022.7.26
- 参加公司组织的渗透测试活动
- 用AVWS扫描网站,扫到sql注入的高危,但是基于时间的盲注,写了个自动测试脚本,抓到了数据库名和表名,但查询file_privilege权限未开,无法写webshell
- 内网渗透,用fscan搜集信息,果然能搞到东西...,直接上msf,一把梭干机子,联动cobaltstrike,看到机子上线...
- 整理了一些这个过程中用到的工具,链接here
第35周
2022.8.3
- 写了一个用于抓取webshell的爬虫,原理就是遍历访问网站中的链接,搜索php\jsp等结尾的文件,把路径打出来,太简单就不贴出来了
- 写了一个用于爬取exchange邮件的爬虫,使用exchangelib提供的线程接口,登录邮箱,下载附件,将hash保存到本地用于去重,使用了多线程提升爬取速度,链接:邮件爬虫
第36周
2022.8.10
- 尝试浏览器漏洞利用,调通了一个firefox的full chain,和一个chrome的关沙箱漏洞利用,调了挺多的,遇到的主要问题是沙箱+浏览器版本+目标环境问题,就算调通了放到目标上,也不知道是浏览器版本还是环境里装了杀软这些问题,总之我自己没有在实战中成功过,记了个笔记,很乱,链接:浏览器漏洞利用尝试
- 尝试做免杀,目前还没有拿起来就写壳的能力,只会用用工具,记了个笔记,链接:免杀笔记
第37周
2022.8.17
- 看了几款dll马的源码,巩固了一下windows socket通信的知识,源码就不贴了...
- 自己写了个键盘记录器,学习了下编写dll的方法,还是踩了挺多坑,记录了一下,但实测过程中还是遇到了如无法记录chrome上的键盘操作,以及获取窗口标题的问题...,最后还是用的女朋友推荐的一款go编写的工具
- 键盘记录器编写笔记,自己写的,女朋友推荐的go编写的
第38周
2022.8.24
- 熟悉了下metasploit,监听,回连,session操作,生成dll,漏洞利用...
- 用pocsuite框架尝试了下cisco设备的批量利用,用的网上找的exp,这个框架方便在批量利用exp上,然后可以批量返回结果,结果自定义保存,实战中成功利用了10多个,但可能exp太老旧了,打下来的版本都挺破的,甚至基本命令执行都没有,极度阉割版的linux...,没法nc回连,也没法上传工具,判别不了目标属性,也执行不了命令,故放弃
- 写了个CobaltStrike的cna插件,配合BrowserGhost使用,功能是检测到目标机器上线后,自动上传BrowserGhost并执行,将抓取到的浏览器记录和密码结果返回到CS
- 还写了个用于权限维持的CS插件,大概就是生成一个PS脚本,自动回连,但找不到代码了...
- pocsuite笔记链接
- 用于抓浏览器密码的cna插件
第39周
2022.9.1
- 除了后面那部分金融相关数据分析的,基本做完了《30个有趣的python实战项目》,通过做这个项目,主要是回顾总结了过去一年内python学习的知识,整理了几个笔记放到下面链接
- 因为经常需要创建虚拟机,而又反复踩到那几个坑,所以写了个linux装机文档,方便再创建虚拟机的时候查阅,链接:linux装机文档
- python数据处理,python文件处理,python可视化,python爬虫,python编程经验
第40周
2022.9.8
- 逆向了一个实时地图系统,好的地方在于有pdb调试符号,直接拖到IDA就可以看,结合函数名变量名大概能猜到功能,难的地方在于代码规模非常庞大,光exe就有30多个,算上它自己编写的dll大概有200+,是我接触过最庞大的程序了,而且前后端分离,还有很多中间层模块,每一块功能都不是独立的,模块间大量数据交互,有本地读取数据,也有socket远程数据同步,还是很费时费力,是体力活了,想找一个读取数据的函数,左看这个像,右看这个也像,结果跟到windbg里发现都不是
- 动态调试了这个地图系统,虽然exe很多,我主要就看了前端进程,跟踪数据通过什么模块从哪里进来的,通过本地解密还原加工,渲染到前端进程上,这个过程中熟悉了windbg和x64dbg的使用,不得不说虽然x64dbg用起来更舒服,但论可靠性和功能丰富性,windbg yyds!
- 最后把这个实时地图系统的数据流向大致分析清楚了,通过通信进程从远程服务器上获取tcp流量,然后通过本地模块进行AES解密还原,写到数据库中,前端进程在一个大循环中读取数据库,将坐标值这些读取出来渲染到前端,还尝试了下用sunny网络中间件工具拦截修改tcp流量,以及上调试器修改寄存器值改变目标坐标值hh(这个做法挺low的,高级的做法应该是写个dll注入到进程中,自动修改寄存器值)
第41周
2022.9.15
- 写渗透测试报告,做ppt,准备答辩
- 顺便装了个剪映,学了下做视频的操作
第42周
2022.9.25
- 原计划是实现一个TinySTL(链接),没时间了,只能看看教程和源码
- 在C语言中文网上学习STL,主要学习了几个重要容器,关键算法(成员方法)和通过迭代器访问、遍历,写了个笔记(笔记链接)
- 顺带学习了下C++成员函数内存存储(链接),C++内存中的虚表(链接),C++继承的内存模型(链接),以及C++11新引入的右值引用、移动构造函数、基于范围的遍历等特性
第43周
2022.10.10
- c语言中文网上看完了java教程,写了个基于反射机制的远程方法调用demo(链接)
- 想写一个人员管理系统,可选择方案有java若依框架,sprint boot+vue,php,考虑到django实现起来最快,去看了一下django的教程
第44周
2022.10.17
- 各种会,利用开会的时间看了《大话设计模式》
- 看完了django教程,了解了MVT的框架设计,学习了ORM模型-数据表的对应关系,网页模板,路由系统和视图函数,跟着做了一些auth\admin\form的应用
- 觉得c语言中文网的教程总体水平很棒,又怕哪天站长突然删了这些教程(以前遇到过),所以充了个vip会员,并写了个爬虫将教程全部保存到本地的pdf,留给以后自己慢慢看,不做扩散,(爬虫链接)
第45周
2022.10.23
- 学习《Django+Vue实战派》,做到第七章“开发一个商城系统的后台”实战
- 一个学精神医科的朋友写论文需要做交互性的实验,让我帮忙做一套APP,主要用于测试病人反应速度,需要在移动端上实现,python-for-android部署起来很折腾,做成网页版的话还需要学习js和租服务器,所以选择了Android Studio编程的解决方案,用了两天时间,简单学习了一下环境部署和开发,写了三个pygame demo级别的小游戏,代码已上传至博客,程序逻辑很简单,但在环境部署和平台接口使用上踩了不少坑,比如线程里只能通过handler修改UI、让人头大的组件叠加问题和app中计时问题,耗了较多时间才找到解决方案,毕竟是对Android编程不熟悉...,总结了一下遇到的问题:(坑点链接)
- 分析了一个地图系统,方法:浏览器中开发者模式分析界面上每个元素对应的http和ajax请求->找到调用的后台函数和请求的html/js文件->分析接口和文件,搞清楚数据是如何获取并推送到前端。基于此在地图系统上做了二次开发,虽然后台程序已经封装好不好修改,但是前端的一堆js/html和资源文件放在服务器上可以随便改,前端是用的easyUI框架,利用该框架我在aspx里加了一个隐藏标记的复选框,点击后对所有子节点调用ajax请求,对获取到的json数据进行清洗,按照复选框是否被勾选,选择是否要去除隐藏的内容,然后调用绘图接口,刷新前端。
第46周
2022.11.1
- 跳着看完了《Django+Vue实战派》,不得不说看书真的很耗时间,代码没完全跟着敲,主要是挑重点看了下,记录了个简单的学习笔记(Django读书笔记),相对前两周,增加了对表单、bootstrap、restful的认识,对照(基于DRF实现博客访问接口),实现了一个博客访问接口
- 公司派活,做请假系统+门禁的改造,大概是海康威视刷脸,通过java接口获取数据,封装到httpResponse,发给php;请假系统用thinkphp写的,一个workerMan进程,一个server进程,server收到java数据后,查询sqlsrv数据库,请假了的话就调用开门接口,同时发送数据给workerMan,workerMan再转发到前端js,前端刷新显示。
- 改造的主要是php以及前端显示,php在后台计时,到时间的话通过websocket主动发送提示给js,js提示超时,并刷新前端显示
- 这个过程中学习了websocket的使用场景以及基本方法,学习了thinkphp的框架设计、目录结构、神奇的路由,以及php的基本语法,光是建立一个sqlsrv的连接都折腾了好久。通过这个项目,自己对web的设计理念和基本运行模式有了更深入的认识,搞懂了web服务器\CGI\WSGI\wammp\iis\路由\静态网页\前后端分离这些概念和作用
第47周
2022.11.8
- 利用workerMan+webSocket长链接完成人员外出超时弹窗提醒功能,用html+php写了个最基本的前端网页,从sqlsrv数据库获取人员在外信息和进出信息,至此请假系统二次开发任务完成
- 学习spring boot(完成进度一半),学了自动配置,spring mvc,thmleaf,jquery,IOC和DI,写了个笔记:(Spring MVC学习笔记其一),(Spring Boot学习笔记其一),(jquery要点)
第48-49周
2022.11.16
- 这两周主要是看了《Spring Boot+Vue实战》一书,以及c语言中文网看教程,and在b站上看了一些web中间件的教学视频,不太方便用电脑,笔记赶的比较匆忙...
- 在c语言中文教程网Spring/Spring MVC/Mybatis/Spring Boot,笔记链接:(Spring Boot笔记链接)
- b站视频笔记,这里推荐下编程不良人的视频,笔记很清晰,讲解很细致,覆盖内容也比较全,当然黑马/马士兵/尚学堂这些老牌也不错,个人不太习惯狂神那种天马行空的风格(大佬功底非常强,只是个人不习惯...)
第50周
2022.11.30
- 看完了《Spring Boot+Vue实战》一书,学习了vue的视图-数据绑定思想/前端工程化思想,以及组件/路由/axios的编程方法
- 看完了C语言中文网上的《mysql教程》,学习了数据库表设计三大范式,mysql约束、视图、索引的概念,存储过程和触发器的编程方法,事务回滚,用户管理,交叉连接/内连接/左右外连接的概念,以及数据库备份恢复和日志管理
- b站上看完微服务框架Dubbo的视频,学习了RPC的思想,Dubbo同Spring Boot的整合,以及注册中心zookeeper的使用,(dubbo视频链接)
- b站上看完了Spring Boot+Vue前后端整合的视频,算是对这一阶段网站开发学习内容的整合,(Spring Boot+Vue全栈开发),PS:宝藏up主,思路极其清晰,表达极其精准,有的人天生就适合当老师...
- 这一阶段对网站开发的学习基本覆盖了当前互联网主流的前后端开发框架,以及热门中间件、部署框架的内容,应该能够胜任当前我所能接触到的开发任务,至此,网站开发学习暂告一段落...
第51周
2022.12.6
- 看完了C语言中文网上的qt教程,学习了信号和槽,常用组件类,主窗口的设计等,qt真是大大降低了C++桌面开发的难度,和AndroidStudio编程挺像
- 看完了《Qt5开发及实例》一书,主要看的使用各组件的代码,文件和磁盘处理,网络通信,多线程和数据库,openCV以及QML编程,看了《微信客户端程序实现》这个案例
- b站上看完了《Qt开发编程-入门基础教程》,(视频链接),PS:b站上讲C++的视频明显质量数量不如java的,尤其是讲qt的鱼龙混杂,视频里的这个up是我找了好久才找到的讲qt还不错的,特点是非常细致,表达流畅,他还发布了一系列关于qt的视频,讲的比较全面
- 给单位破解了一款地图软件,打补丁免注册码登录,没加壳混淆的程序就是裸奔...
第52周
2022.12.13
- 看完爱编程的大丙老师在b站上的qt系列教学视频,包括《qt多线程》,《qt网络通信》,《qt数据库》和《qt事件》
- 学习了两个qt项目,一个是用udp广播实现仿飞秋的聊天工具,一个是高仿单机版斗地主游戏,这个游戏代码非常清晰,大概看了一遍代码,(代码链接),(项目大纲),通过这个项目主要学到以下两点:
- 学习了C++面向对象的类设计,包含卡牌类、玩家类等实体类,以及通过游戏控制类对实体类进行创建和数据传递,和整体进程的把控,还有窗口类负责界面的绘制,以及游戏策略类进行出牌大小的比对
- 深入学习了Qt信号槽机制,游戏每个步骤的进行是通过发送信号触发的,由玩家类、卡牌类相应的槽函数进行响应,做出游戏动作
- b站上看完《QT5实战项目》,学习了dll的导出导入,QSS样式表的添加,简单的聊天工具,爬虫工具,重复文件检测工具和仿WPS工具。(视频链接)
第53-54周
2022.12.20
- 看了一部分《windows黑客编程》的内容,看了视频《windows钩子技术》,(视频链接)
- 公司陆陆续续都羊了,这段时间也不能运动,很容易疲劳,感觉工作也没劲,干什么都没兴趣,也很难集中注意力来看书学习,突然而来的新冠打乱了我的学习计划
- 2022年12月30日,赶在新年前,我也确认羊了,头昏脑胀,在床上躺了几天
第55-56周
2023.1.3
- 放寒假,回家休息,陪家人,陪女朋友
- 挤出一点点时间,写了几个python小程序
第57周
2023.1.21
- 过年,到处吃饭
- 计划做一个提供远控服务的系统,已经进行了总体设计和网站前端的实现
- 收假喽,小垃圾要滚回去喽
第58周
2023.2.1
- 用spring boot凑合着写了点牧马场系统的后端,链接:牧马场系统后端
- 用easyui给单位做了个地图系统的前端,后端是现成已经封装好了的,提供了获取瓦片地图、以及上传用户信息、标记信息的接口,我做的工作是利用easyui写了个界面,用ajax向后端接口发起请求,将获取到的数据添加到dom结点中,具体来说做了以下工作:
- 向getPlot接口发起请求,根据当前视界焦点的x、y坐标以及z层数,获取瓦片地图,加载到指定位置
- 用easyui建立文件上传以及下载的控件,用jquery绑定交互方法,达到效果:通过点击地图上的标记,可以进行报告的上传和下载
- 用easyui-tree建立标记的树状列表,刷新前端时请求到列表信息,append到tree结构里,达到在前端显示的效果,同时,为结点配置单选框,绑定click方法,点击子节点时,获取该结点的信息,在前端地图上绘制对应标记,点击父节点时,遍历其下的子节点,绘制对应标记
- 看了一部分《Python黑帽子》,做了三个实验,不得不说,用python写内网渗透工具真的很方便,比C/C++代码简洁而且更容易调试,而且渗透小工具对运行速度的要求也不是很高,用Python足够了,唯一的缺点是如果目标环境没有python,需要打包成可执行文件,一般大小都超过7M了,如果是从外网上传到内网,传输时间久可能带来安全性和效率性问题,就这一点不如C
第59周
2023.2.8
- 看完了《Python黑帽子一书》,做完了上面除了muma的所有实验(用python写muma感觉很奇怪:)),感觉还是网络通信和web方面的小工具比较靠谱...
第60周
2023.2.16
- 各种会开不完
- 看完了《Windows黑客编程一书》(除了内核部分),基本做完了上面的实验(除了socket部分)
- Windows黑客编程之运行单一实例
- Windows黑客编程之释放资源
- Windows黑客编程之全局钩子
- Windows黑客编程之远线程注入
- Windows黑客编程之APC注入
- Windows黑客编程之服务加载器
- Windows黑客编程之突破Session 0隔离创建用户进程
- Windows黑客编程之内存直接加载运行
- Windows黑客编程之提升进程令牌权限
- Windows黑客编程之Bypass UAC
- Windows黑客编程之进程伪装
- Windows黑客编程之进程篡改
- Windows黑客编程之进程隐藏
- Windows黑客编程之dll劫持
- Windows黑客编程之功能技术(上)
- Windows黑客编程之功能技术(中)
- Windows黑客编程之功能技术(下)
- 买了《加密与解密》第4版,这本书好厚,开头扉页就是一群看雪大佬的推荐,很硬核,精品必细读,看了第一章《基础知识》,第七章《Windows内核基础》和第八章《Windows下的异常处理》
- 下周用不了电脑了,所以就计划继续看《加密与解密》
第61周
2023.2.24
- 继续看《加密与解密》,看了《动态分析技术》、《静态分析技术》、《逆向分析技术》、《Win32 API》、《VT技术》,《漏洞分析技术》,总体来说这几节讲的比较浅,逆向一节主要就讲了基本语句结构对应的汇编特点,要看具体逆向技巧的话还得看更专业的书,《PE文件格式》、《注入技术》、《hook技术》三章讲的很系统而全面,结合Windows系统代码和数据结构讲解,学到的挺多
- b站上看了一部分《Shark恒零逆向破解实战》(链接)
第62周
2023.3.6
- 各种杂七杂八的事,以及准备考科一
- 看完了《专用加密软件》、《脱壳技术》、《软件保护技术》和《反跟踪技术》几章
第63周
2023.3.13
- 看完了《演示版保护技术》、《加密算法》、《外壳编写基础》、《补丁技术》、《代码的二次开发》几章
- 至此完成《加密与解密》全书的阅读学习!看的还是比较细的,每一行汇编代码都看过来理解了
- b站上看了一部分《新160个CrackMe算法分析》(链接),对着视频调试CrackMe
第64周
2023.3.20
- b站上看完了《Shark恒零逆向破解实战》
- 跳着看完了《新160个CrackMe算法分析》,重复性较大,各星级难度挑着做了几题,熟悉了PE工具的使用,学习了算法分析+爆破的方法
- 开启chatgpt提问+cursor写代码的模式
第65周
2023.3.27
- 这一周多的时间里,趁着有电脑,对前期学的知识进行了实操
- 给公司大门做了个刷脸提醒功能,用于播报人员身份和请假信息,尝试了
SpeechSynthesisUtterance
不行,最后使用IE的Sapi SpVoice
接口实现了,功能代码做成php在后台运行,通过websocket发送给workerman,再推送给网站前端,实现刷脸语音实时播报 - 用django写了个简单的人员管理系统(链接)
- 用Qt+WinAPI写了个可用于生产环境的socket通信程序(服务端、客户端、演示)
- 仿照《加密与解密》的实验,进行PEDIY
- 至此近两个月的时间完成了windows逆向基础的学习,下面终于可以进入正题了,开启Android、Web逆向的学习啦!
第66周
2023.4.5
- 学了一周多的Android逆向,看了一点《第一行代码》,学习实践了《APP爬虫初阶》1-5课
- 搭建了Android逆向的环境
- 真机:pixel2上刷了lineageos+twrp+magisk+frida server,还差一个kali nethunter,等下周我的1+3手机到就可以用上了
- 模拟器:genymotion上装了个nexus 5x模拟器
- kali虚拟机:Android Studio及Sdk,jdb,jadax,pyenv,objection,以及打包环境r0env
- 物理机:QtScrpy,adb,gda
第66-67周
2023.4.12
- 工作上的一些事情,准备五一休假女朋友见面的事情
- 断断续续看了《APP爬虫初阶》6-12课,等看完所有内容后会放出笔记
第68周
2023.4.26
- 五一放假,陪女朋友
第69周
2023.5.2
- 看了《APP爬虫初阶》13-19课
- 先放一半笔记(链接)
第70周
2023.5.10
- 出差
第71-74周
2023.5.20