【Day 01】- 孤灯蓑冠衣,独究程序码:前言与大纲

Agenda

  • 资安宣言
  • 自我介绍与参赛动机
  • 适合阅读本系列文章的对象
  • 本系列文章大纲
  • 目标与展望
  • 好文、好书、好课程推推
  • 下期预告

资安宣言


撰写本系列文章目的在於提升资讯安全之实务能力,
并透过实作体悟到资讯安全领域的重要性,
本系列所有文章之内容皆有一定技术水平,
不得从事非法行为、恶意攻击等非法活动,
「一切不合法规之行为皆受法律所约束」,
为了避免造成公司、厂商或玩家之间困扰,
所有实作不会拿已上市产品、Online Game 等等来作范例学习,
且部分具有深度、价值之内容,将会提升一定阅读门槛(不对该技术做分析、解说),
请勿透过本系列文章所学,从事任何非法活动,请不要以身试法!!!


自我介绍与参赛动机

自我介绍

大家好~ 现在到了自我介绍的时间啦~ ≧ ﹏ ≦
首先呢,我目前 (2021) 还是个学生,就读大学三年级,
以前都在钻研游戏外挂技术(Ring3),後来跑去打 CTF 打了一阵子,
於是开始往「资讯安全领域」发展,现在则是对 Windows 安全领域极感兴趣。

没什麽部落格,也没什麽联络资讯,我都是在萤幕後默默地学习,就这样,以上!?

(以下是我自己的故事,可以略ㄛ。)

那为什麽会对 Windows 安全领域极感兴趣呢?

是这样的,以前在钻研「反」反外挂技术时,只是想在游戏中获得更大的乐趣,
而且当时感到最大的乐趣是:被游戏中的玩家骂!!!
骂得越激烈越难听我越爽XDDD,尤其是我在想办法除掉「队友」时获得的反应,
所以当时只是因为想在游戏内获得更多的乐趣而已,
当下并没有什麽「安全」的概念。

事情一直来到我开始接触 CTF,参加了一些 Training,
开始建立起「安全」的概念,对「安全」开始有所认识,
并且在一次非常非常偶然的机会中,遇见了一位高人(高手大大)的指点、指导,
为什麽我会说非常非常偶然呢?因为我是几乎不会出现在实体活动会场的,
而那天我去了某个活动现场,更离奇的是,我通常会「拒绝有效社交」,
但是因为发生了不可抗拒之因素(有外力介入我就不说了),
迫使我开始与会众交流,於是我遇见了一位高人(高手大大),
就这样开始了 Windows 底层世界 Kernel(Ring0)、VT(Ring-1)之旅。

到这里你以为结束了吗?
答案是:还没!因为我想到另一则故事,想要再补充一下。

我刚开始接触 CTF 的时候是高二,
距离我钻研「反」反外挂技术已经过去了一段时间(国中时期),
高二时对 CTF 有着满腔的热血,我就是要学资安,我就是要打 CTF,
所以我积极参与某些 Training,暑假的、寒假的、假日的我都出现,
但是问题来了,我们学校不管是暑假、寒假又或者是假日(六),
都要到校上课,所以我请假的次数似乎比别人来的多。

有一次好几天连续的 Training 结束了,回到学校时发生了一件我一辈子都不会忘的事,
因我请假参加 Training 这件事,使某位不认同「学资安有未来」的任课老师生气,
当下我就意识到,资安还真的很多人不懂,还需要更多的推广,
然後继续参加各种 Training,我的梦想谁都无法阻止XD。

说这则故事是想表达请务必尊重做资讯安全领域的专业人员,
我不敢说我自己是,但我认为各行业都应该互相尊重,不管懂或不懂,
我也没有因为参加 Training 影响了该科目成绩,这件事令我十分难忘。

好了,最後你/你可能会问我:
那我为什麽高中接触 CTF 时都会出现在 Training 的活动会场,
後面又说「几乎不会出现在实体活动会场」呢?
答:这又是另一则长篇故事了,有机会再和大家分享了,哈!

参赛动机

为什麽会想要参加这次铁人赛呢?

  1. 第一个当然就是感觉很有趣想参加看看!
  2. 第二个当然就是想藉由这次铁人赛,一日一篇技术文,强化自己的技术能力罗!
  3. 第三个当然就是想知道目前自己可以写到什麽样的程度,顺便当笔记记录下来罗!
  4. 第四个当然就是想和大家交流交流,获得更多新奇知识!

最後一定要说的:
小弟我目前还属於菜鸟阶段,正不断努力学习中,
若有发现错误或不妥之处还请不吝赐教。
欢迎大家多多留言,互相交流交流。

适合阅读本系列文章的对象

  1. 对 Windows 感兴趣者
    • 不喜欢或没再使用 Windows?
    • ...我不知道这麽问题如何解决,抱歉XD
  2. 乐於从事安全研究者
    • 喜欢枯燥乏味、耗时、烧脑的研究非常适合阅读本系列文章
  3. 具备一定逻辑推理、演算能力
    • 推荐多写程序、玩数独、益智类游戏 APP、嘴炮等等 (?
  4. 具备基础程序设计能力 : C/C++
  5. 具备基础阅读组合语言能力
  6. 具备基本驱动相关知识与编写能力

本系列文章大纲

正如标题所说:孤灯蓑冠衣,独究程序码,
意思是说这个系列所涉及的领域,我个人认为是非常孤独、寂寥的,
完整的解释就是:
在夜深无人时,只有我们开着一盏灯,
披着简陋的衣服、戴着帽子,
独自一人在寒冷的房间中研究着枯燥乏味的底层技术。

虽然说是孤独、寂寥的,但玩出兴趣还是最重要的。

这个系列会取网路上已公开的或热门的 Project 来讲解其技术、实作原理,
若有感兴趣的也可以留言,时间允许且可以公开分享的,我也许会更新在 Day31 後?。
当然有些内容会是我自己想到然後写出来的,也不完全是网路上的 Project 拉~
详细可以看文章的内容,我会告知的~

另外这次的系列文章中,我自己所撰写的所有 Source Code 都不会给完整的 Project,
期待拿到我完整 Project 的人可以不用想了XD,我是不会给的,
我大概只会提供几个关键 Code,有能力的人就可以自己写罗!
不过你应该还是可以在网路上找到相关的范例 CODE?

这都是我设置门槛的一部分,所以不要因为拿不到完整 Project 难过辣~
全是为了避免有那种想做坏事的人,
或是完全不懂自己在做什麽的人拿去乱玩,造成世界大乱!?
再来就是自己做出来会比较有成就感,也比较有实际的价值。

那这个系列会分为两个阶段:

  1. 第一阶段是 Day02 - Day15,会讲一些比较常见的、较容易学习的内容。
  2. 第二阶段是 Day16 - Day29,会讲一些比较有趣的、较不易学习的内容。

好了以下是 Day01 - Day15 的 Outline (可能还会调整吧~)

【Day 01】- 孤灯蓑冠衣,独究程序码:前言与大纲
【Day 02】- 消失在系统上的目录与文件
【Day 03】- 打针!打针!从 R0 注入的那件事!
【Day 04】- 今日来把 Module 藏起来
【Day 05】- 藏起来的 Module 还是被发现了 QuO
【Day 06】- Module隐藏大法,不可能再被发现了吧/ _ \
【Day 07】- 恶搞行程(Process)、键盘(Keyboard)大作战之序章
【Day 08】- 见鬼了(っ °Д °;)っ我明明没有启动这支程序...
【Day 09】- 今日来创造 Ghost Process
【Day 10】- 藏起来的 Process 真的看不见摸不着?
【Day 11】- 再次创造 Ghost Process,这次找不到了吧哈哈
【Day 12】- 找出看不见也摸不着的 Process,终极办法!
【Day 13】- 有了这个,就没有打得开的程序了 XD
【Day 14】- 今天来实作一个键盘监听器
【Day 15】- 今天来实作一个 Kernel mode Thread
【Day 16】- 今天来实作一个系统时钟加速器

( Day15 才会公布 Day16 - Day30 的 Outline,同时会在更新这篇文章)

目标与展望

这篇文章似乎有点长了,我可能就...长话短说了

最後学习完这个系列後可以获得什麽呢?(目标与展望)

  1. 会在自己心中种下小小的资安树种子,让资安树越来越繁茂!
  2. 待资安树开花结果之时,可将其种子授予他人!
  3. 可以当一个小小的资安摆渡人呀!
  4. 对底层运作原理有更深入的理解,可以自己做/写出实用的工具!

好文、好书、好课程推推

好文推推!!!

好书推推!!!~~

好课程推推!!!~~

下期预告


<<:  [Day1] Motivation

>>:  聊系统文字工具与服务日志可视性浅谈的缘由

Day 22. 列表渲染 – v-for

昨天讲了条件渲染,今天来讲列表渲染(List Rendering)吧!! v-for 当我们在页面上...

开 api 日常心得笔记

开 api 规格是个有趣的事情,从栏位命名、资料阶层设计、易读性、合理性、方便性都是需要考量的点,对...

#15. CSS Perspective Slider(Vue版)

#15. CSS Perspective Slider 今天挑战的任务算是我蛮喜欢的一个小proje...

Day14. Blue Prism拯救贫穷大作战第二弹-BP新增一个读取Excel的『Objects』

由於疫情的关系有几周的人员分流上班的机会, 我与小朋友在家远端连线Google Meeting与小朋...

Day 25:推销自己

前言 为什麽推销自己很重要呢,在这个竞争的市场中,需要有一些东西来证明自己的身价。 在我搜寻 And...