文章目录
- 一、自学网络安全学习的误区和陷阱
- 二、学习网络安全的一些前期准备
- 三、自学网络安全学习路线
- 一、口令攻击的综合应用
- 1、Windows NT, 2000口令攻击
- 2、Windows XP, 2003口令攻击
- 3、Unix系统口令攻击
- 4、远程口令攻击
- 二、口令攻击的防御
- 1、口令攻击防御概述
- 2、保持口令的安全要点
- 3、强口令的选取方法
- 4、保护口令的方法
- 5、一次性口令技术
- 6、 生物技术
一、自学网络安全学习的误区和陷阱
1.不要试图先成为一名程序员(以编程为基础的学习)再开始学习
我在之前的回答中,我都一再强调不要以编程为基础再开始学习网络安全,一般来说,学习编程不但学习周期长,而且实际向安全过渡后可用到的关键知识并不多
一般人如果想要把编程学好再开始学习网络安全往往需要花费很长时间,容易半途而废。而且学习编程只是工具不是目的,我们的目标不是成为程序员。建议在学习网络安全的过程中,哪里不会补哪里,这样更有目的性且耗时更少
2.不要把深度学习作为入门第一课
很多人都是冲着要把网络安全学好学扎实来的,于是就很容易用力过猛,陷入一个误区:就是把所有的内容都要进行深度学习,但是把深度学习作为网络安全第一课不是个好主意。原因如下:
【1】深度学习的黑箱性更加明显,很容易学的囫囵吞枣
【2】深度学习对自身要求高,不适合自学,很容易走进死胡同
3.不要收集过多的资料
网上有很多关于网络安全的学习资料,动辄就有几个G的材料可以下载或者观看。而很多朋友都有“收集癖”,一下子购买十几本书,或者收藏几十个视频
网上的学习资料很多重复性都极高而且大多数的内容都还是几年前没有更新。在入门期间建议“小而精”的选择材料,下面我会推荐一些自认为对小白还不错的学习资源,耐心往下看
二、学习网络安全的一些前期准备
1.硬件选择
经常会问我“学习网络安全需要配置很高的电脑吗?”答案是否定的,黑客用的电脑,不需要什么高的配置,只要稳定就行.因为黑客所使用的一些程序,低端CPU也可以很好的运行,而且不占什么内存.还有一个,黑客是在DOS命令下对进行的,所以电脑能使用到最佳状态!所以,不要打着学习的名义重新购买机器…
2.软件选择
很多人会纠结学习黑客到底是用Linux还是Windows或者是Mac系统,Linux虽然看着很酷炫,但是对于新人入门并不友好。Windows系统一样可以用虚拟机装靶机来进行学习
至于编程语言,首推Python,因为其良好的拓展支持性。当然现在市面上很多网站都是PHP的开发的,所以选择PHP也是可以的。其他语言还包括C++、Java…
很多朋友会问是不是要学习所有的语言呢?答案是否定的!引用我上面的一句话:学习编程只是工具不是目的,我们的目标不是成为程序员
(这里额外提一句,学习编程虽然不能带你入门,但是却能决定你能在网络安全这条路上到底能走多远,所以推荐大家自学一些基础编程的知识)
3.语言能力
我们知道计算机最早是在西方发明出来的,很多名词或者代码都是英文的,甚至现有的一些教程最初也是英文原版翻译过来的,而且一个漏洞被发现到翻译成中文一般需要一个星期的时间,在这个时间差上漏洞可能都修补了。而且如果不理解一些专业名词,在与其他黑客交流技术或者经验时也会有障碍,所以需要一定量的英文和黑客专业名词(不需要特别精通,但是要能看懂基础的)
比如说:肉鸡、挂马、shell、WebShell等等
三、自学网络安全学习路线
重点内容
口令攻击的综合应用
口令攻击的防御
一、口令攻击的综合应用
Windows NT和Windows 2000都采用了类似的安全认证机制。在这个机制中,用户必须输入正确的用户名和口令,才能访问系统资源。但是,口令很容易被攻击者猜测或者通过暴力破解的方式获取,从而实现对系统的入侵。
口令攻击是指攻击者通过猜测或者尝试各种可能的口令来获取合法用户的账号和口令,然后利用这些账号和口令来访问系统资源。常见的口令攻击方式包括:
-
字典攻击:攻击者使用预先准备好的字典文件中的单词或者字符组合来尝试破解口令。
-
暴力破解:攻击者使用大量的随机字符组合来尝试破解口令。
-
社会工程学攻击:攻击者通过欺骗、诱导或者其他手段来获取用户的口令。
为了防止口令攻击,用户应该采取以下措施:
-
选择复杂口令:口令应该是由大小写字母、数字和符号组成的一段随机字符。这样可以降低攻击者猜测口令的成功率。
-
定期更改口令:用户应该定期更改自己的口令,建议每90天更换一次。
-
不使用常见口令:用户不应该使用易被猜测的口令,比如出生日期、手机号码等。
-
使用密码管理器:密码管理器可以帮助用户生成和管理复杂口令,避免因为口令过于简单而被攻击者破解。
-
启用多因素认证:多因素认证可以在口令认证的基础上增加其他一些认证因素,比如指纹识别、短信验证码等。这样可以提高口令认证的安全性。
1、Windows NT, 2000口令攻击
Windows NT和2000的口令攻击很简单。
在NT和2000的操作系统中,如果从DOS启动然后删除了sam文件,则当系统重新启动时,会默认生成一个sam文件,并将管理员密码置为空。
这样就能轻松登陆系统了。
2、Windows XP, 2003口令攻击
用于NT和2000的方法对XP和2003的系统并不奏效。
因为如果不小心删除了sam文件,系统将无法启动,除非将备份的sam文件(在%SystemRoot%\repair目录下)恢复回来。
但是我们知道了上述四种版本的Windows系统的账户密码是基于SAM机制的,那么对密码的破解就可以针对SAM文件进行。
攻击方法(同样适用于NT和2000系统)
提取SAM文件进行破解
用备份的SAM文件替换当前SAM文件
使用口令修改软件
替换屏保程序
3、Unix系统口令攻击
Unix的加密口令是很难逆向破解的,黑客们常用的口令入侵工具所采用的技术是仿真对比,利用与原口令程序相同的方法,通过对比分析,用不同的加密口令去匹配原口令。
下面介绍口令破解工具Crack的主要工作流程。
它采用逆向比较法进行口令破解。
1、准备,对口令文件作UnShadow变换。
2、下载或自己生成一个字典文件。
3、穷举出口令字典中的每个条目,对每个单词运用一系列规则,如大小写交替使用,在单词的开头或结尾加上一些数字。
4、调用crypt()函数对使用规则生成的字符串进行加密变换。
5、取出密文口令,与crypt()函数的输出进行比较。
循环3到5步,直到口令破解成功。
4、远程口令攻击
远程口令攻击主要是指网络服务口令攻击,是一种远程在线攻击。
许多网络服务,都是通过账号/口令来认证需要访问该服务的用户。
如Email,Telnet,FTP,HTTP等。
可以远程进行穷举字典的方式来猜解口令。
破解效率很低,而且容易被记录。
二、口令攻击的防御
1、口令攻击防御概述
防范办法很简单,只要使自己的口令不在英语字典中,且不可能被别人猜测出就可以了。
一个好的口令应当至少有8个字符长,不要用个人信息(如生日、名字等),口令中要有一些非字母字符(如数字、标点符号、控制字符等),还要好记一些,不能写在纸上或计算机中的文件。
2、保持口令的安全要点
保持口令的安全要点如下:
不要将口令写下来
不要将口令存于电脑文件中
不要选取显而易见的信息作口令
不要让别人知道
不要在不同系统上使用同一口令
为了防止眼捷手快的人窃取口令,在输入口令时应当确定无人在身边
定期更换口令,至少6个月要改变一次
3、强口令的选取方法
强口令的定义差别很大,它和单位的业务类型、位置、雇员等等的因素有关。强调这一点是因为会因所处的环境不同而差别很大。定义也会因技术的增强而变化。
比如说,五年前曾被认为是强口令,现在很可能就会变成弱口令。导致这种变化的主要原因就是计算机系统比五年前的计算机系统要更快和更便宜。五年前用最快的计算机破解要花几年的时间的口令,现在只要不到一个小时的时间就解开了。
4、保护口令的方法
强口令的选取是从用户的角度来说的,那么,对于系统来说,口令的安全又是如何得到保障的呢?
系统中存的任何口令都必须受到保护,防止未授权泄漏、修改和删除。
通常有三种加密类型:
对称或单密钥加密
不对称或双密钥加密
哈希(即散列,hash)
对称加密的特点
对称加密的特点包括:
-
使用同一密钥加密和解密数据。
-
加密和解密速度快。
-
加密强度高,但密钥管理较为困难。
-
对称密码技术被广泛应用在数据通信网络,如电子邮件、网上银行、移动通信等领域。
-
对称加密算法的安全性主要依赖于密钥保密的可靠性,密钥一旦泄露,加密数据就会暴露。
不对称加密的特点
不对称加密的特点包括:
-
需要一对公私钥:不对称加密需要使用一对密钥,一个是公钥,一个是私钥。公钥可以公开,任何人都可以使用公钥进行加密,但只有私钥的拥有者才能解密密文。
-
加密速度慢:不对称加密的加密算法复杂度较高,所以加密速度相较于对称加密要慢很多。
-
安全性高:不对称加密的安全性比对称加密高很多,因为公钥可以随意公开,但是只有私钥的拥有者才能解密密文。
-
可以进行数字签名:不对称加密可以用于数字签名,因为只有私钥的拥有者才能通过私钥生成数字签名,保证了数字签名的可靠性。
-
用于密钥的交换:由于不对称加密的公钥可以随意公开,因此可以用于安全地交换对称加密密钥,从而实现更安全的消息传输。
哈希的特点
哈希的特点包括:
-
哈希函数将不同长度的输入映射为固定长度的输出,因此哈希算法可以用于压缩数据。
-
哈希函数应该是高效的,因为在现代计算机系统中,哈希经常被用于高速数据访问和查找。
-
哈希函数应该是不可逆的,即不能从哈希值反推出原始数据。这就是哈希算法用于加密的重要特性。
-
哈希函数应该是散列的,即原始数据的微小变化应该导致哈希值的巨大变化。这可以在检测数据篡改和错误方面提供保护。
-
哈希函数应该是均匀的,即哈希值的分布应该均匀地覆盖输出的所有可能值。这可以提高哈希表等数据结构的性能。
-
哈希函数应该是安全的,即在密码学中使用的哈希函数应该抵抗针对哈希碰撞的攻击。
5、一次性口令技术
一次性口令技术采用的是挑战—响应机制。
一次性口令的工作原理:
-
首先,在用户和远程服务器之间建立一个秘密,该秘密在此被称为“通行短语” ,相当于传统口令技术当中的“口令” 。
同时,它们之间还具备一种相同的“计算器”,该计算器实际上是某种算法的硬件或软件实现,它的作用是生成一次性口令。 -
当用户向服务器发出连接请求时,服务器向用户提示输入种子值。种子值(seed)是分配给用户的在系统内具有唯一性的一个数值,也就是说,一个种子对应于一个用户,同时它是非保密的;
可以把种子值形象地理解为用户名。 -
服务器收到用户名之后,给用户回发一个迭代值做为“挑战”。迭代值(iteration)是服务器临时产生的一个数值,与通行短语和种子值不同的是:它总是不断变化的。
可以把迭代值形象地理解为一个随机数。 -
用户收到挑战后,将种子值,迭代值和通行短语输入到“计算器”中进行计算,并把结果作为回答返回服务器。
-
服务器暂存从用户那里收到的回答。因为它也知道用户的通行短语,所以它能计算出用户正确的回答,通过比较就可以核实用户的确切身份。
6、 生物技术
随着生物技术和计算机技术的发展,人们发现人的许多生理特征如指纹、掌纹、面孔、声音、虹膜、视网膜等都具有惟一性和稳定性,每个人的这些特征都与别人不同,且终身不变,也不可能复制。这使得通过识别用户的这些生理特征来认证用户身份的安全性远高于基于口令的认证方式。
人们发展了指纹识别、视网膜识别、发音识别等多种生物识别技术,其中以指纹识别技术发展得最为火热。指纹ATM、指纹电子商务、指纹网络管理、指纹加密文件,指纹财务管理、指纹ERP,就连现在许多笔记本上都使用了指纹识别器。
由于计算机在处理指纹时,要将生理特征转化为数据,只涉及了指纹的一些有限信息,而且对比算法不能保证100%精确匹配,因此,在应用系统的设计中,要充分考虑识别率(包括漏判和误判)的问题。
生物技术的特点包括:
-
应用范围广:生物技术可应用于医药、农业、工业、环境等领域。
-
多学科交叉:生物技术需要涉及到生物学、化学、物理学、数学等多个学科的知识。
-
技术手段多样:生物技术包括基因工程、细胞培养、生物发酵、酶工程、生物传感等多种技术手段。
-
风险与伦理问题:生物技术应用中存在着一些伦理和安全方面的问题,如生物安全、产生新冠病毒等。
-
创新性与前沿性:生物技术是一个创新性和前沿性比较强的领域,不断有新的技术和应用诞生。