最近打算開始好好來鑽研一下駭客的技術。雖然我一直對這塊抱持著很高的興趣,但是一直沒有好好研究這方面的知識。之前有稍微打打看一些簡單的 CTF,不過一直遭遇各種挫折XD 後來因為開始忙著要弄研究方面的東西,所以這件事就被我擱置了。最近去了美國一趟,在當地的書店發現了「Hacking - The Art of Exploitation」這本書。稍微翻一下之後覺得不錯,所以這次回來之後就要來好好看看。

為了要鞭策我閱讀這本書,我打算要每閱讀完一章後,寫一份閱讀筆記。這次就先從簡單的第一章開始。

第一章 - 簡介

想當然爾,第一章不外乎就是在介紹書中的內容或者提醒讀者一些基本知識。這本書則是花費這一章來好好介紹一下「駭客」到底是甚麼。

以下來簡單總結一下這章的內容。

駭客思維

有趣的是,這本書一開始提出了一個簡單的數學問題,來讓大家對駭客的思維有些感覺。題目如下 (以原文的方式呈現):

Use each of the numbers 1, 3, 4, and 6 exactly once with any of the four basic math operations (addition, subtraction, multiplication, and division) to total 24. Each number must be used once and only once, and you may define the order of operations; for example, 3 * (4 + 6) + 1 = 31 is valid, however incorrect, since it doesn’t total 24.

簡單來說,題目給你 1, 3, 4, 6 四個數字,他希望你用這四個數字加上基本的加減乘除來組合出 24 的結果。

這題我花了點時間思考一下,不過我沒有想到答案 (〒︿〒)

最後正確答案是 6 / (1 - 3 / 4)

這個答案符合題目的規則,但是一般人通常不會往分數的方向去思考,因此很難想到要用 3 / 4

這本書用這個題目引出了駭客的思維:駭客通常就是一群會遵守著系統規則去尋找答案的人,但是他們會跳脫原本的框架,使用非直覺的方式來解答。

我個人很喜歡這種解釋方式,讓我覺得駭客很像是在程式上玩藝術的一群人。

Hacker 與 Cracker

另外,第一章也強調了駭客 (Hacker) 與破壞者 (Cracker) 的不同。書中認為駭客是一群追求知識以及推廣自由知識的人們,破壞者則是拿駭客的工具去搞破壞、偷竊他人資訊的一群人。不過許多報章雜誌常會將這兩種人都統稱為駭客。這對遵守規則的人駭客們是很不公平的。

我個人也認同這點。大眾對駭客 (Hacker) 這個名詞一直有錯誤的概念。覺得駭客就是要去入侵系統,然後竊取人家的個資這樣。因此書中特別提出這點,想要先矯正讀者的觀念。

總結

這章其他的部分則是大概介紹一下這本書中的程式碼使用方法,以及駭客的一些歷史等等。

雖然這章只是一個開頭而已,不過一開始的題目倒是讓我有些收穫。如果要成為駭客的話,那就不能依照常理的思路來思考。

不知道一直習慣這樣想的我,是否也有辦法成為駭客呢XD