信息安全的理解
国际标准化组织(ISO)将信息安全定义为:为数据处理系统建立和采取的技术和管理的安全保护,保护计算机硬件、软件和数据不因偶然和恶意的原因而遭到破坏、更改和泄漏,使系统能够连续、正常运行。
如今人类社会已经进入信息时代,信息与物质、能源并称为世界三大要素。社会发展对信息的以来程度越来越高,从工业生产到科学教育,从人们的日常生活到国家的军事政治,信息已成为社会必不可少而又无处不在的重要资源,而网络技术无疑是当今世界最激动人心的高新技术之一。
然而,随着信息化进程的深入和互联网的快速发展,信息安全问题日渐突出,甚至开始对国际政治产生影响(Stuxnet 病毒破坏伊朗核设施、俄罗斯黑客影响美国总统大选)。近些年来,网络安全持续升温,国家对于网络安全也越来越重视。
信息安全与我们的日常生活息息相关。在这个信息技术蓬勃发展的当下,我们每个人都在默默地地将自己的日常生活数字化。我们所注册的各种网络账号、日常通讯的电子邮件、在社交平台发表的言论,还包括我们的银行、社保、通话、消费记录,甚至是手机的 GPS 记录等等的元数据,共同构建成了每个人在当代不可或缺的一个数字身份。于我们个人而言,也许这只是一些日常记录罢了,然而对于许多别有用心的人来说,这些信息所具有的价值超乎我们的想象。
网络空间的法则
在网络安全的世界里有两条不成名的法则,第一条被称为分类法则:这世上只有两种网站,一种是知道自己被黑的,另一种是不知道自己被黑的;第二条被称为黑暗森林法则:一个网站只要暴露在公网就会受到攻击,这个网站越出名,受到的攻击也就越猛烈。
黑暗森林法则
如果看过《三体》这部小说,那么你应该知道其中的一个核心内容——黑暗森林法则
宇宙就像是一座黑暗森林,每个文明都是带枪的猎人,像幽灵般潜行于林间,轻轻拨开挡路的树枝,竭力不让脚步发出一点儿声音,连呼吸都必须小心翼翼:他必须小心,因为林中到处都有与他一样潜行的猎人,如果他发现了别的生命,能做的只有一件事:开枪消灭之。在这片森林中,他人就是地狱,就是永恒的威胁,任何暴露自己存在的生命都将很快被消灭,这就是宇宙文明的图景,这就是对费米悖论的解释。
网络空间亦是如此。根据计算,目前可用的 IPv4 地址大约为 42 亿。也就是说有 42 亿台具有公网 IP 的设备暴露在了互联网上。如此多的网络设备,其安全性有高有低,它们每时每刻都被来自世界各地的黑客(或是网络蠕虫)狩猎着。
举个例子来说:
2016 年发生了一系列由 Mirai 僵尸网络驱动的攻击事件,包括法国网站主机 OVH 遭攻击、Dyn 被黑导致美国大半个互联网瘫痪。专家调查发现,Mirai 僵尸网络是由数万台被感染的 IoT(物联网)设备组成,比如 CCTV 和 DVR 等。这些感染上了 Mirai 的设备会不断地向网络上的其他 IoT 设备发起同样的攻击,渐渐地,越来越多的 IoT 设备加入到了这个僵尸网络当中,被黑客作为发动攻击的工具。
安全专家 Robert Graham 通过一个实验,在 Twitter 上记录了一个具有漏洞的 IoT 设备被病毒感染的全过程。
Graham 首先买了一台 55 美元的技德科技监控摄像头。这个摄像头支持通用即插即用(UPnP),该功能并不安全,但是不懂技术的用户用起来就比较方便,因为 UPnP 设备基本上插上插头就能用了。Graham 随后用树莓派做了一台无线路由,将摄像头与自己的家用网络隔离开来。仅仅 98 秒的时间,Graham 的摄像头就感染了恶意软件。
而且实际情况是,这个摄像头感染了好几个恶意软件,Mirai 并不是第一个到达现场的,而是“与之相似的其他恶意程序”。随后,Graham 观察了 Mirai 的动作。结果发现,Mirai 利用 Telnet 协议,使用 61 个通用的登录凭证,暴力破解设备密码,从而获取摄像头的访问权限。成功入侵目标 IoT 设备后,Mirai 就会下载整个病毒。然后 Mirai 开始高速发出 SYN 包,寻找其他宿主。某个瞬间,其中一个恶意软件甚至关闭了 Telnet 的守护进程,把 Graham 踢下网。
然而,即使是处于内网中的设备,也并不一定就是安全的。只要它与互联网是连通的,那么便同样具有着被渗透的风险。
黑客术语
接下来将介绍国内一些常见的黑客术语,部分术语会在后面的内容中出现。此为小白入门必备基础知识~
肉鸡:所谓“肉鸡”是一种很形象的比喻,比喻那些可以随意被我们控制的电脑,对方可以是 Windows 系统,也可以是 Unix/Linux 系统,可以是普通的个人电脑,也可以是大型的服务器,我们可以象操作自己的电脑那样来操作它们,而不被对方所发觉。
木马:就是那些表面上伪装成了正常的程序,但是当这些被程序运行时,就会获取系统的整个控制权限。有很多黑客就是 热中与使用木马程序来控制别人的电脑。
网页木马:表面上伪装成普通的网页文件或是将而已的代码直接插入到正常的网页文件中,当有人访问时,网页木马就会利用对方系统或者浏览器的漏洞自动将配置好的木马的服务端下载到访问者的电脑上来自动执行。
挂马:就是在别人的网站文件里面放入网页木马或者是将代码潜入到对方正常的网页文件里,以使浏览者中马。
后门(BackDoor):这是一种形象的比喻,入侵者在利用某些方法成功的控制了目标主机后,可以在对方的系统中植入特定的程序,或者是修改某些设置。这些改动表面上是很难被察觉的,但是入侵者却可以使用相应的程序或者方法来轻易的与这台电脑建立连接,重新控制这台电脑,就好象是入侵者偷偷的配了一把主人房间的要是,可以随时进出而不被主人发现一样。 通常大多数的特洛伊木马(Trojan Horse)程序都可以被入侵者用语制作后门。
rootkit:rootkit是攻击者用来隐藏自己的行踪和保留 root(根权限,可以理解成 Windows 下的 System 或者管理员权限)访问权限的工具。通常,攻击者通过远程攻击的方式获得 root 访问权限,或者是先使用密码猜解(破解)的方式获得对系统的普通访问权限,进入系统后,再通过,对方系统内存在的安全漏洞获得系统的 root 权限。然后,攻击者就会在对方的系统中安装 rootkit,以达到自己长久控制对方的目的,rootkit 与我们前边提到的木马和后门很类似,但远比它们要隐蔽。
弱口令:指那些强度不够,容易被猜解的,类似 123456、qwerty 这样的口令(密码).
Shell:指的是一种命令指行环境,比如我们按下键盘上的
Win + R
时出现“运行”对话框,在里面输入cmd
会出现一个用于执行命令的黑窗口,这个就是 Windows 的 Shell 执行环境。Webshell:Webshell 就是以 ASP、PHP、JSP 或者 CGI 等网页文件形式存在的一种命令执行环境,也可以将其称做是一种网页后门。黑客在入侵了一个网站后,通常会将这些 ASP 或 PHP 后门文件与网站服务器 Web 目录下正常的网页文件混在一起,好后就可以使用浏览器来访问这些 ASP 或者 PHP 后门,得到一个命令执行环境,以达到控制网站服务器的目的。可以上传下载文件,查看数据库,执行任意程序命令等。
溢出:确切的讲,应该是“缓冲区溢出”。简单的解释就是程序对接受的输入数据没有执行有效的检测而导致错误,后果可能是造成程序崩溃或者是执行攻击者的命令。大致可以分为两类:(1)堆溢出(2)栈溢出。
注入:随着 B/S 模式应用开发的发展,使用这种模式编写程序的程序员越来越来越多,但是由于程序员的水平参差不齐相当大一部分应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想要知的数据,这个就是所谓的 SQL Injection,即:SQL注入。
内网:通俗的讲就是局域网,比如网吧,校园网,公司内部网等都属于此类。查看IP地址如果是在以下三个范围之内的话,就说明我们是处于内网之中的:
10.0.0.0 — 10.255.255.255
172.16.0.0 — 172.31.255.255
192.168.0.0 — 192.168.255.255
外网:直接连入 Internet(互连网),可以与互连网上的任意一台电脑互相访问,IP 地址不是保留 IP(内网)IP 地址。
端口(Port):相当于一种数据的传输通道。用于接受某些数据,然后传输给相应的服务,而电脑将这些数据处理后,再将相应的恢复通过开启的端口传给对方。一般每一个端口的开放的偶对应了相应的服务,要关闭这些端口只需要将对应的服务关闭就可以了。
免杀:就是通过加壳、加密、修改特征码、加花指令等等技术来修改程序,使其逃过杀毒软件的查杀。
加壳:就是利用特殊的算法,将 EXE 可执行程序或者 DLL 动态连接库文件的编码进行改变(比如实现压缩、加密),以达到缩小文件体积或者加密程序编码,甚至是躲过杀毒软件查杀的目的。
软件加壳:“壳”是一段专门负责保护软件不被非法修改或反编译的程序。它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。经过加壳的软件在跟踪时已看到其真实的十六进制代码,因此可以起到保护软件的目的。
软件脱壳:顾名思义,就是利用相应的工具,把在软件“外面”起保护作用的“壳”程序去除,还文件本来面目,这样再修改文件内容就容易多了。
缓冲区溢出:功击者向一个地址区输入这个区间存储不下的大量字符。在某些性况下,这些多余的字符可以作为“执行代码”来运行,因此足以使功击者不受安全措施限制地获得计算机的控制权。
嗅控器(Snifffer):就是能够捕获网络报文的设备。嗅控器的正当用处在于分析网络的流量,以便找出所关心的网络中潜在的问题。
路由器(Routers): 是用来连接不同子网的中枢,它们工作于 OSI 7 层模型的传输层和网络层。路由器的基本功能就是将网络信息包传输到它们的目的地。一些路由器还有访问控制列表(ACLs),允许将不想要的信息包过滤出去。许多路由器都可以将它们的日志信息注入到 IDS 系统中,提供有关被阻挡的访问网络企图的宝贵信息。
root:Unix 里面最高权限的用户,即超级管理员。
admin:Windows NT 里面最高权限的用户。
IDS:入侵检测系统,用于在黑客发起进攻或是发起进攻之前检测到攻击,并加以拦截。IDS 是不同于防火墙的,防火墙只能屏蔽入侵,而 IDS 却可以在入侵发生以前,通过一些信息来检测到即将发生的攻击或是入侵以作出反应。
UDP:一种传输层协议,在网络上不可靠的传输数据包,被 DNS 用于查询和应答,许多流音频和视频应用也使用它。
FTP:文件传输协议。一类应用以及该应用使用的协议的名字,用于将文件从一台计算机移动到另一台。
HTTP:超文本传输协议。用于在万维网上传输数据,包括超文本标识语言文档、图像、可执行内容等等。TCP 承载 HTTP,一般服务器监听端口 80。
HTTPS:安全超文本传输协议。通过在安全套接字层(SSL)协议上运行超文本传输协议来将安全添加到万维网中。HTTPS 能用于将 Web 服务器认证到客户,将客户认证到 Web 服务器和加密在两个系统之间传输的所有数据,HTTPS 服务器一般监听 TCP 端口 443。
LAN:局域网。一种网络,连接近距离的计算机,一般位于单个房间、建筑物或小的地理区域里。LAN上的所有系统位于一个网络跳之间。
ping:一类基于 Internet 控制消息协议的数据包,用于判断网络上的某台计算机是否可以到达。
TCP:传输控制协议。一种传输层协议,被许多要求数据的可靠传输的应用所使用。HTTP、SMTP、FTP 和 telnet 都使用TCP进行传输。
TCP/IP:整个网际协议族的集合名,包括 TCP、UDP、IP 和 ICMP。