聊聊NTLM认证协议
近期发现多家安全媒体发布NTLM协议漏洞的文章。他们越说越术语,越说越官方,如此这般下去,他们写出来到底给谁看?大雅就是俗,让我来一篇俗文。啥是NTLM呢?微软windows系统的用户账号存储密码哈希值的方式。一般有LM,NTML,NTLMv2.(NT LAN Manager)windows系统的局域网管理,管理账号密码存储方式的协议。有这个认知就行了。
比如你设置密码为password123456,那么NTML的存储方式就是把它转换成了哈希值存储。第一次听说哈希?比如把1,变成哈希可能会是flkadjl2135等乱码。MD5就是最常见的哈希函数之一,用来把1,输出成为乱码。还有更多的哈希函数,特征就是输出结果不一样。
哈希有一个特征,那就是把明文(比如1)输出为乱码(密文,比如abcd),我们可以把1-1000一个个的用哈希函数输出结果,手里就有1-1000对应的哈希值,这个输出结果被称为彩虹表。破解密码就是根据生成的密文,看对应的明文是多少。其实就是在表中搜索,abdc对应的是不是1。
要防止密码被破解的可能,就是把密码设置得更长更复杂,比如设置为:password123456/-*ABCD&*==***¥¥,即使用彩虹表或超级计算机群也无法在可接受的时间内对其进行枚举的生成密文,再去搜索密文对应的明文是什么。
要拿到windows系统中的账号密码,我们需要权限(SYSTEM权限)才能获取到,安全账号管理器(SAM)数据库中存储的windows用户和密码。有工具可以拿到这些,比如大名鼎鼎的meterpreter。
就算拿到账号密码又有什么用呢,我们破解不了密码的哈希值。不需要破解,直接拿它去登陆。这样,我们就拥有了该系统的高权限账号。
还有一种身份认证环节,是kerverso令牌,如果你用meterpreter成功入侵系统,而域管理员用户登陆过这台机器,一个kerbreos令牌就会发送到服务器上并将在随后的一段时间之内有效。我们可以使用这个活动令牌来入侵系统,通过meterpreter可以假冒域管理员的角色,而不需要破解密码。
扯了这么多协议,从来没看见有人指一指在哪,我来指。如图,大概所有的其他类似安全认证协议都差不多就集中在这里。
不同的系统,显示出不一样的选项。多个系统观察就知道了。
聊聊NTLM认证协议的更多相关文章
- NTLM认证协议及SSPI的NTLM实现
没错,NTLM就是你听说过的那个NTLM.是微软应用最广泛的认证协议之一. NTLM是NT LAN Manager的缩写,这也说明了协议的来源.NTLM 是 Windows NT 早期版本的标准安全协 ...
- 域渗透基础之NTLM认证协议
域渗透基础的两个认证协议ntlm和Kerberos协议是必须总结的~ 这篇简单总结下ntlm协议 晚上写下kerberos 0x01 NTLM简介 NTLM使用在Windows NT和Windows ...
- [转]关于NTLM认证的.NET,php,python登录
本文转自:http://www.cnblogs.com/myx/archive/2013/03/25/php-ntlm-python-net.html 早期SMB协议在网络上传输明文口令.后来出现 L ...
- 域渗透基础之Kerberos认证协议
本来昨晚就该总结整理,又拖到今天早上..6点起来赶可还行 0x01 Kerberos前言 Kerberos 是一种由 MIT(麻省理工大学)提出的一种网络身份验证协议.它旨在通过使用密钥加密技术为客 ...
- kerberos认证协议爱情故事
0x01.kerberos简介 kerberos是一种域内认证协议,Kerberos的标志是三头狗,狗头分别代表以下角色: Client Server KDC(Key Distribution Cen ...
- iOS进行Basic认证与NTLM认证
一.iOS进行Basic认证 只需要在NSMutableURLRequest的Header中添加认证所需的Username和password. NSMutableURLRequest *webReq ...
- [na]802.1x协议无线认证协议&dot1x有线认证实验
以前搞无线时候,会涉及到无线client接入方式的认证协议. 认证方式+加密方式+有线的dot1x. 注:以前都是doc粘贴到博客的,加上没写博客的习惯,因此会比较乱. EAP(扩展认证协议)是什么? ...
- kerberos认证协议分析
Kerberos认证协议分析 Kerberos认证协议流程 如上图: * 第一步:client和认证服务器(AS)通信完成认证过程,如果认证成功AS返回给client一个TGT(用来向TGS获取tic ...
- Radius 认证协议介绍-兼rfc导读
老规矩, 先看维基: 远端用户拨入验证服务(RADIUS, Remote Authentication Dial In User Service)是一个AAA协议,意思就是同时兼顾验证(authent ...
随机推荐
- linux Apache 的安装
rpm –qa httpd 查询是否安装了 Apache rpm –e 包名卸载安装程序 rpm –e --nodeps 包名卸载安装程序不产生依赖 #检查是否安装有依赖库 yum install – ...
- Qt项目界面文件(.ui)及其作用(超详细)
http://c.biancheng.net/view/1820.html Qt 项目中,后缀为“.ui”的文件是可视化设计的窗体的定义文件,如 widget.ui.双击项目文件目录树中的文件 wid ...
- Taro -- Swiper的图片由小变大3d轮播效果
Swiper的图片由小变大3d轮播效果 this.state = ({ nowIdx:, swiperH:'', imgList:[ {img:'../../assets/12.jpg'}, {img ...
- Codeforces Round #427 (Div. 2) - B
题目链接:http://codeforces.com/contest/835/problem/B 题意:给定一个数k和一个数字串n.问你最少改几个数字才能满足所有数字的和不小于k. 思路:考虑贪心,每 ...
- 10年前文章_解决parted 编译出错问题
找到 include/site/i386-linux 文件,修改定义ac_cv_sizeof_off_t 的长度,从原来的4改为8 ac_cv_sizeof_off_t=8 删除 build_dir/ ...
- 【GDOI2016模拟3.9】暴走的图灵机
题目 分析 我们发现当两个字符串合并时,a0.a1表示左右两个字符串中有多少个T,C表示合并处新增的T的个数,那么 a0=a1 a1=a0+a1+C 令s0和s1表示左右手两个字符串,那么每一次操作后 ...
- vue 父子组件渲染
问题描述:父组件调用了一个子组件,传递了一个id的属性到子组件, 但是在子组件中将这个id的props属性赋值给了data里面定义的另外一个属性myId,并且写了watch监听这个id的props. ...
- 超大文件上传方案( Java )
1.介绍enctype enctype 属性规定发送到服务器之前应该如何对表单数据进行编码. enctype作用是告知服务器请求正文的MIME类型(请求消息头content-type的作用一样) 1. ...
- Kohana重写接收不到get参数问题
.htaccess,不需要重启apache # Turn on URL rewriting RewriteEngine On # Installation directory RewriteBase ...
- Angular项目 Error: [ngRepeat:dupes] Duplicates in a repeater are not allowed.报错
在angular的项目里,一不小心就会出现这个错误[ngRepeat:dupes] ,这个问题是因为内容有重复引起的解决起来挺简单 在对应的ng-repeat指令中增加track by $index, ...