黑客

黑客（Hacker）是指对设计、编程和计算机科学方面具高度理解的人，此群体包含了下列人物：

- “黑客”一词最早是用来称呼研究如何盗用电话系统的人，这一类人士也被称作“飞客”（Phreaker）。
- 在计算机软件方面，“黑客”是对于计算机及计算机网络内部系统运作特别感兴趣并且有深入理解能力的一群人。
- 在业余计算机DIY方面，“黑客”是指研究如何修改计算机相关产品的业余爱好者。从1970年代起，有很多这一类社群聚焦于硬件研究。
- 在信息安全里，“黑客”指研究如何智取计算机安全系统的人员。他们利用公共通讯网路，如电话系统和互联网，以非正规手段登入对方系统，掌握操控系统之权力。

## 词义与分类

### 骇客词义

<image>

黑客（Hacker）主要是指技术高超的程序员，而“溃客”（Cracker）是专指对计算机系统及网络进行恶意破坏的人。除了精通编程与操作系统运作的人可以被视作黑客，对硬件设备进行创新的工程师通常也被认为是黑客，另外现在精通网络入侵的人也被看作是黑客。

然而，媒体的推波助澜早已将“黑客”这一词污名化，其影视作品、媒体报导通常描述他们进行违法行为，且黑客当中的中文音译“黑”字总使人对黑客有所误解，使主流社会一般把黑客看作为“计算机犯罪分子”（Cybercriminal），即指利用系统漏洞的技术知识来执行侵入并访问原本无法获得之数据的人。

黑客技术也可以被合法人物在合法情况下使用。例如，执法机构有时会使用黑客技术来收集有关罪犯和其他恶意行为者的证据，这可能包括使用匿名工具（如VPN或暗网）来掩盖执法者他们在网上的身份，即自称为犯罪分子本身。同样，隐蔽行动可以在合法行为中采用黑客技术。另一方面，执法机构和安全机构（通常被允许进行无需许可的活动的机构）以及国家行为者也通过额外且非法的黑客技术进行网络攻击，并将其作为战争的武器，不论战争是否合法。

### 骇客分类

<image>

“Hacker”（黑客）一般是指：

- 一个对（某领域内的）编程语言有足够了解，可以不需长久思考便创造出有用软件的人。
- 喜爱编程并享受身在其中，而变得愈加擅长于编程的人。
- 他们喜爱自由、不易受约束，但假如是为了喜爱的事物，则可以接受被适当地约束。

这一群人试图破解某个程序、系统或网络，依目的大致可分为3个类型：白帽黑客（White Hat）、灰帽黑客（Grey Hat）、黑帽黑客（Black Hat），该名称取自美国电影西部片中，正派往往戴白帽，反派往往戴黑帽。

白帽黑客以“改善”为目标，破解某个程序做出（往往是好的）修改，而增强（或改变）该程序之用途，或者透过入侵去提醒设备的系统管理者其安全漏洞，有时甚至主动予以修补，故又称“道德骇客”（Ethical Hacker）。灰帽黑客以“昭告”为目标，透过破解、入侵去炫耀自己拥有高超的技术，或者宣扬某种理念。黑帽黑客以“利欲”为目标，透过破解、入侵去获取不法利益，或者发泄负面情绪。其中，白帽黑客大多是电脑安全公司的雇员，抑或响应招测单位的悬赏，通常是在合法的情况下攻击某系统，而黑帽黑客同时也被称作“Cracker”（溃客）。

#### 刽客

除了 Hacker 之外，Cracker 一词也常被误译成“黑客”，但实际上 Cracker 应该翻译成“溃客”，其相异于其他黑客是在于：

- 一个恶意（一般是非法地）试图破解某个程序、系统或网络，进而窃盗、毁损或使其瘫痪的人。
- Cracker 缺乏道德标准，也没有“黑客精神”。
- 狭义上的 Hacker 做建设，而 Cracker 则是做破坏。

Hacker 和 Cracker 这两个词，在英文里意思是有所差异的，但在中文里经常被当作同一个概念，共同以“Hacker”进行翻译，于是在香港和澳门依粤语皆被音译为“黑客”，并且中国大陆也延用了该译法（但以普通话发音），在台湾则皆被音译为“骇客”，另外新加坡和马来西亚所采用的是前者。换言之，“黑客”一词既指对编程语言有足够了解并喜欢编程的人，在误解下也有可能指恶意破坏者。除了存在 Hacker 和 Cracker 不分之情形外，在对 Hacker 采用“黑客”之译法的地区，很多人即使将其视为两种概念，也经常错误地把 Hacker 的另一个音译“骇客”当成 Cracker 使用。

#### 脚本小子

公众通常不知“脚本小子”（Script Kiddie）和黑帽黑客的区分。脚本小子是利用他人所撰写的程序发起攻击的网络闹事者。他们通常不懂得攻击目标的设计和攻击程序的原理，不能自己对系统进行调试、找出漏洞，实际专业知识远远不如他们通常冒充的黑帽黑客。然而，有不少青少年借由网络入侵传播病毒、木马，进行瘫痪、破坏、偷窃，因此犯上计算机犯罪。

## 主义与精神

### 黑客主义

- 对计算机的访问（以及任何可能帮助你认识我们这个世界的事物）应该是不受限制的、完全的，任何人都有动手尝试的权利。
- 所有的信息都应该可以自由获取。
- 不迷信权威——促进分权。
- 评价黑客的标准应该是他们的技术，而不是那些没有实际用途的指标，比如学位、年龄、种族或职位。
- 你可以在计算机上创造出艺术与美。
- 计算机技术可以让你的生活更美好。

### 黑客精神

- 编写开源软件。
- 协助对开源软件test（测试）和debug（除错）。
- 公布有用的资讯。
- 帮忙维持一些简单的工作。
- 为黑客文化而努力。

在黑客世界里，各组织的精神与文化都是不尽相同的，但有一个共同点，就是对技术的崇拜与对创新的不断追求。于是黑客们最为热爱：推动开源软硬件运动，找出漏洞并通知、协助管理员进行修补，从而缔造完美无暇的软硬件。

## 养成与培训

### 需要精通的基础

- 英语：目前世界互联网70%网站都是英文网站，非常多的资源都是由英语撰写的，所以英语是黑客的必须精通的基础之一。
- 操作系统／网络：对操作系统熟悉且精通于网络，如TCP/IP以及网络原理等，才能更深入学习如何发现当中的漏洞以及入侵它们，并且隐匿行踪和消除痕迹。
- 编程语言：必须精通汇编语言、C语言等底层语言，以及Python、Ruby和数据库。

### 黑客养成的科目

- 入侵或攻击的方法与手段：脚印拓取以及扫描和枚举、判断目标操作系统并发现漏洞，需要学会的基本知识还有社会工程学以及在远程操作系统的管理员权限（“提权”，Privilege Escalating）。如果需要攻击，有弱口令攻击、漏洞攻击、缓冲区溢出攻击、分散式阻断服务攻击、欺骗类攻击等等。跳板攻击和僵尸网络也是黑客主要大规模应用的技术。
- 特殊网络环境的网络安全：善用信息窃听嗅探以及连线劫持技术，掌握非Windows操作系统以及无线网络安全攻防技术，对密码学以及密码猜测和破解有了解，能够熟练编写木马、后门、计算机病毒、蠕虫病毒并掌握其攻防原理。
- 针对计算机安全产品攻防：远程堆栈缓存溢出是针对杀毒软件、防火墙以及入侵预防系统的一种技术，其技术是为了摧毁预定目标的计算机安全产品。除此之外还有对交换设备的攻击，黑客需要有一定的漏洞代码缺陷发现能力。

### 白帽黑客培训机构

- EC-Council
- CEH（Certified Ethical Hacker）：以黑客的攻击角度来看待资讯安全
- CHFI（Computer Hacking Forensic Investigator）：以法庭的调查角度来看待资讯安全
- (ISC)²
- CISSP（Certified Information Systems Security Professional）：以管理阶层的角度来看待资讯安全
- SSCP（System Security Certified Practitioner）：以专业资讯人员的角度来看待资讯安全