首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏《ATT&CK视角下的红蓝攻防对抗》

    Windows安全认证机制之NTLM本地认证

    NTLM本地认证1. NTLM本地登录认证 当我们在一台Windows机器上面创建用户的时候,该用户的密码会加密储存在一个SAM(Security Account Manager 安全账号管理器)中,是Windows操作系统管理用户帐户的安全所使用的一种机制 所谓的本地认证过程其实是对用户输入的密码与SAM安全管理数据库里加密的HASH值比对的过程,如图1-3所示。 -16le')print "md4加密结果 " + binascii.hexlify(hashlib.new('md4', binhex.encode('utf-16le')).digest())4.本地登录认证流程假设当 2.NTLM认证三步曲NTLM也是Windows网络认证协议的一种,其以NTLM HASH 作为凭证的方式进行认证,采用挑战/响应(Challenge/Response)的消息交换模式,NTLM认证协议分三步走

    2.1K10编辑于 2024-01-22
  • 来自专栏鸿鹄实验室

    Windows认证--NTLM

    Windows 身份验证机制主要有NTLM和Kerberos两种,前者主要用于本地以及工作组环境,而后者主要用于域环境.还有一种LM认证,但现在基本淘汰了,在这就不再做过多的解释. HTLM Hash NTLM认证就是通过NTLM Hash进行的认证,可分为本地认证和网络认证 加密算法 将明文密码转换成16进制格式 对16进制进行unicode编码,即在每个字节之后添加0x00 对 字符串做md4加密 例如: 明文密码:12345 转换成16进制:313233343536 转换成unicode:310032003300340035003600 md4加密:32ed87bdb5fdc5e9cba88547376818d4 加密结果和mimikatz抓到的NTLM Hash一致 本地认证 当用户进行开启、注销等需要认证的时候,windows会调用winlogon.exe接受我们输入的密码,然后会将密码交给lsass.exe 服务端接收到Type3消息后,用自己的密码对NTLM-Hash对Challenge进行加密,并比较自己计算出的Net NTLM Hash与客户端发送的是否匹配,如果匹配则认证成功,否则认证失败.

    1.6K40编辑于 2022-11-02
  • 来自专栏黑白天安全团队

    windows之NTLM认证

    NTLM认证主要有本地认证和网络认证两种方式 本地登陆时用户密码存储在SAM文件中,可以把它当作一个存储密码的数据库,所有的操作都在本地进行的。 它将用户输入的密码转换为NTLM Hash,然后与SAM中的NTLM Hash进行比较。 网络认证则是基于一种Challenge/Response认证机制的认证模式。 windows本地认证基础知识 在本地登陆的情况下,操作系统会使用用户输入的密码作为凭据去与系统中的密码进行校验,如果成功的话表明验证通过。 NTLM认证过程 NTLM Hash是怎么样生成的呢? 详细过程: 1.Server接收到Client发送的用户名后,判断本地账户列 表是否有用户名share_user 如果没有,返回认证失败 如果有,生成Chanllenge,并且从本地查找share_user

    3.1K20发布于 2020-08-18
  • 来自专栏Y5neKO博客

    NTLM及Kerberos认证流程

    NTLM认证 1.概念 NTLM是NT LAN Manager的缩写,NTLM 是指 telnet 的一种验证身份方式,即问询/应答身份验证协议,是 Windows NT 早期版本的标准安全协议,Windows 2.认证流程 ①使用用户名和密码登录客户端,进行本地认证 ②客户端首先在本地加密当前用户的密码为密码散列,即NTLM Hash1 ③确认双方协议版本,客户端向服务器明文发送自己的账号 ④服务器生成一个 进行比较,如果一样则认证成功,反之则失败 本地认证 Windows不会储存用户的明文密码,而是将明文密码加密后储存在SAM中 本地认证的过程中,用户登录时,系统会将用户输入的明文密码加密成NTLM Hash ,然后和SAM中的NTLM Hash进行比较从而完成认证 用户进行任何注销操作(注销登录,重启,锁屏等),winlogon进程会显示密码输入界面,接受用户输入密码后交给lsass进程,这个进程中会保存一份明文密码 ,然后加密成NTLM Hash winlogon.exe -> 接收用户输入 -> lsass.exe -> 本地认证 NTLM Hash的生成 用户明文密码:y5neko123 十六进制转换为:79356e656b6f313233

    2.2K20编辑于 2022-01-13
  • 来自专栏信安本原

    Windows认证 | Windows本地认证

    Windows的登陆密码是储存在系统本地的SAM文件中的,在登陆Windows的时候,系统会将用户输入的密码与SAM文件中的密码进行对比,如果相同,则认证成功。 SAM文件是位于%SystemRoot%\system32\config\目录下的,用于储存本地所有用户的凭证信息,但是这并不代表着你可以随意去查看系统密码。 ? 目前在Windows中所使用的密码hash被称为NTLM hash,全称为:NT LAN Manager,它是一个由数字和字母组成的32位的值,是经过hex、Unicode、MD4三层加密后得到的。 注:winlogon是用来管理用户登陆和登出的,lsass是用于本地安全和登陆策略的 说完了NTLM hash再说一下LM hash,LM hash是NTLM hash的前身,它本身是非常脆弱的,对于它的生成规则就不多说了 值,当然SAM文件也是不允许直接拷贝和访问的,需要通过一些其他的办法来提取,最后通过彩虹表等其他的一些工具进行破解即可得到明文密码,或者通过Mimikatz读取lsass.exe进程能获得已登录用户的NTLM

    2.9K20发布于 2020-03-10
  • 来自专栏全栈程序员必看

    本地AAA认证「建议收藏」

    1.1 问题 如图配置IP地址,通过AAA对远程登录用户进行控制 配置R1的AAA为本地认证和授权,通过域huawei来管理用户 配置R3的AAA为本地认证和授权,通过域 HCIE 来管理用户 配置R1 [R1-aaa-authen-auth1]authentication-mode local //通过本地密码数据库进行认证 [R1-aaa-authen-auth1]quit authorization-scheme auth2 //配置授权机制 [R1-aaa-author-auth2]authorization-mode local //通过本地密码数据库进行认证 [R3-aaa-authen-auth1]authentication-mode local //通过本地密码数据库进行认证 [R3-aaa-authen-auth1]quit authorization-scheme auth2 //配置授权机制 [R3-aaa-author-auth2]authorization-mode local //通过本地密码数据库进行认证

    90631编辑于 2022-09-06
  • 来自专栏FreeBuf

    NTLMRecon:一款针对Web应用NTLM认证信息的枚举工具

    NTLMRecon NTLMRecon是一款针对Web应用NTLM认证信息的枚举工具,如果目标Web节点启用了NTLM认证功能,那么广大研究人员就可以使用NTLMRecon来枚举目标相关信息。 NTLMRecon是一款运行速度快且扩展灵活的NTLM侦察工具,该工具无需外部依赖即可实现其功能。 工具概览 NTLMRecon可以搜索到启用了NTLM的Web节点,然后向其发送伪造的认证请求,并能够尝试从NTLMSSP响应中枚举出下列信息: 1、活动目录域名 2、服务器名 3、DNS域名 4、FQDN 通用安装 首先,使用下列命令将项目源码克隆至本地: git clone https://github.com/sachinkamath/ntlmrecon/ 建议大家在虚拟环境中使用该文件,安装Virtualenv 节点 —infile INFILE 传递本地输入文件 —wordlist WORDLIST 使用自定义字典覆盖内部字典 —threads THREADS 设置线程数量 (默认为10

    99130发布于 2020-03-31
  • 来自专栏python3

    NGINX 配置本地HTTPS(双向认证)

    2.公钥加密  加密速度较慢,但能提供更好的身份认证技术,用来加密对称加密的密钥。 单向认证  Https在建立Socket连接之前,需要进行握手,具体过程如下:  ? 双向认证  双向认证和单向认证原理基本差不多,只是除了客户端需要认证服务端以外,增加了服务端对客户端的认证,具体过程如下:  ? 、客户端向服务端发送自己所能支持的对称加密方案,供服务器端进行选择  7、服务器端在客户端提供的加密方案中选择加密程度最高的加密方式  8、将加密方案通过使用之前获取到的公钥进行加密,返回给客户端  9、 rtsp smb smbs smtp smtps telnet tftp  Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets 请确保curl版本不能低于 7.47版本,否则会出现: 400 No required SSL certificate was

    4.3K30发布于 2020-02-27
  • 来自专栏服务器大本营

    Windows系统安全策略设置之本地NTLM重放提权

    经安全部门研究分析,近期利用NTLM重放机制入侵Windows 系统事件增多,入侵者主要通过Potato程序攻击拥有SYSTEM权限的端口伪造网络身份认证过程,利用NTLM重放机制骗取SYSTEM身份令牌

    39710编辑于 2024-02-21
  • 来自专栏开源部署

    使用vsftpd服务传输文件(匿名用户认证本地用户认证、虚拟用户认证

    vsftd作为更加安全的文件传输的服务程序,允许用户以三种认证模式登录到FTP服务器上。 匿名开放模式: 是一种最不安全的认证模式,任何人都可以无需密码验证而直接登录到FTP服务器。 本地用户模式: 是通过Linux系统的本地账户密码信息进行认证,相较于匿名开放模式更安全。但是如果被×××破解了账户的信息,就可以畅通无阻登录FTP服务器,从而完全控制整台服务器。 虚拟用户模式: 是这三种模式中最安全的一种认证模式,它需要为FTP服务单独建立用户数据库文件,虚拟出用来进行口令验证的账户信息,而这些账户信息在服务器系统中实际上是不存在的,仅供FTP服务程序进行认证使用 本地用户模式 之前用的是匿名开放模式,现在关了,然后开启本地用户模式。创建一个本地用户zhangsan进行测试。 需要注意的是7版本需要在配置文件添加“allow_writeable_chroot=YES”参数才允许本地用户登录。

    3K50编辑于 2022-07-25
  • SCCM横向移动之利用SCCM强制进行NTLM认证

    SCCM客户端下发安装机制在SCCM中,服务器可以对机器进行客户端下发安装,这个过程是通过WMI远程管理实现的,而且实现软件分发的配置账户需要是本地管理员组或者域管理员组中的成员。 利用SCCM强制NTLM认证的前提条件当SCCM启用自动站点分配和自动客户端推送安装功能时,若未明确禁用NTLM身份验证的回退(默认设置),并且客户端身份验证不需要PKI证书(默认设定),以及目标管理点必须能够通过 图形用户界面,文本,应用程序描述已自动生成

    图1-2边界组站点分配设置
    实施NTLM强制认证以横向移动满足上述条件后,我们可以通过NTLM强制认证来进行横向移动。 文本描述已自动生成
    图1-3使用ntlmrelayx进行中继
    之后我们通过SCCM的客户端安装功能来进行强制认证,执行命令及结果如图1-4所示。 文本,表格中度可信度描述已自动生成
    图1-4通过SharpSCCM进行强制NTLM认证
    之后我们的攻击机获取到带有凭据的连接请求,并中继给了目标机器,目标机器成功执行了我们设定的命令

    12910编辑于 2026-01-19
  • 来自专栏山丘安全攻防实验室

    域渗透之NTML-Hash

    HASH NTLM Hash(NT LAN Manager)是支持Net NTLM认证协议及本地认证过程中的一个重要参数。 在进行本地认证的过程中,当用户登录时,系统将用户输入的明文密码加密成NTLM Hash,与SAM数据库中的NTLM Hash进行比较,从而实现认证。 与NTLM Hash的关系就是:NTLM网络认证协议是以NTLM Hash作为根本凭证进行认证的协议。 在本地认证的过程中,其实就是将用户输入的密码转换为NTLM Hash与SAM中的NTLM Hash进行比较。 %9F%E6%B8%97%E9%80%8F%E4%B9%8B%E6%A8%AA%E5%90%91%E7%A7%BB%E5%8A%A8/ ptt攻击的部分就不是简单的ntlm认证了,它是利用Kerberos

    5.3K53发布于 2020-03-06
  • 来自专栏谢公子学安全

    NTLM协议详解

    当用户输入密码进行本地认证的过程中,所有的操作都是在本地进行的。系统将用户输入的密码转换为NTLM Hash,然后与SAM文件中的NTLM Hash进行比较,相同说明密码正确,反之错误。 如图所示,Challenge质询值为:f9e7d1fe37e7ae12。 打开本地安全策略——>安全设置——>本地策略——>安全选项——网络安全: LAN管理器身份验证级别,默认其值是没有定义。没有定义的话,就是使用的默认值。 如下操作开启目标主机支持NTLM v1响应: 打开本地安全策略——>安全设置——>本地策略——>安全选项——>网络安全: LAN管理器身份验证级别。 NTHASH:8EE7FF2234CA7E2887069AB8046F05E631C9F8607CC528FF 或 $NETNTLM$1122334455667788$8EE7FF2234CA7E2887069AB8046F05E631C9F8607CC528FF

    7.4K51编辑于 2023-02-27
  • 来自专栏HACK学习

    内网渗透|HASH与横向移动

    本地认证 既然是获取hash就需要一些基础知识,这里首先说以下本地认证。 在Windows中,密码Hash称之为NTLM Hash,这个NTLM是一种网络认证协议,与NTLM Hash的关系就是:NTLM网络认证协议是以NTLM Hash作为根本凭证进行认证的协议。 在本地认证的过程中,其实就是将用户输入的密码转换为NTLM Hash与SAM中的NTLM Hash进行比较 假设我的密码是admin,那么操作系统会将admin转换为十六进制,经过Unicode转换后, -> MD4 = 209c6174da490caeb422f3fa5a7ae634 本地认证中主要可以概括为以下三步:winlogon.exe -> 接收用户输入 -> lsass.exe -> (认证 IncludePicture就相当于一个windows为了方便插入多个图片而设计的一个功能 这里使用ctfl + F9可以得到一个{ includePicture },我们在后面加上一个不存在的地址,组合起来就为

    1.4K40发布于 2021-08-13
  • 来自专栏全栈工程师修炼之路

    Windows认证原理解析基础入门

    ,这篇文章很适合小白入门Windows认证协议简单明了; 本文实验模拟在Windows 7 、Windows 10 下进行验证主要内容: Windows用户认证基础介绍 LM/NTLM Hashes 版本优缺 回到正题由于当前PC常使用的系统版本基本都是Windows 7 / Windows 10,所以下认证情况都是基于该系统版本来说明的(作一个简单的了解): 1.本地登录认证 描述:当我们在本地登录认证时输入密码凭据登陆系统会首先将输入的凭据转换加密成 \config\sam)中,此时操作系统会自动地读取Windows系统中的SAM文件中的对应用户的NTLM hashes值进行与我们凭据生成的NTLM Hashes进行比对认证认证完成则登录成功否则提示账号或者密码错误 #Lsass.exe 是 用于微软Windows系统的安全机制它用于本地/远程安全和登陆策略,它会与我们SAM进行相互作用将本地或者远程身份认证的用户信息都会保存在其内存地址中。 Hashes (也称为 NT Hashes) 主要用于本地认证; NTLMv1 Hashes (也称为Net-NTLMv1 Hashes) 运用了WindowsNT挑战与响应验证机制结合,主要用于网络身份认证

    1.7K10编辑于 2022-09-29
  • 来自专栏信安之路

    轻松理解 NTLM 协议工作流程

    在 AD 域环境中,如果需要认证 Windows NT 系统,也必须采用 NTLM。相比 Kerberos,基于 NTLM认证过程要简单很多。 NTLM 采用一种质询/应答(Challenge/Response)消息交换模式,下图是 NTLM认证过程: ? NTLM 认证协议可以使用在各种协议中,比如 HTTP、SMB 等等,下面以 HTTP 来说明其具体认证流 程: 先来找个目标吧,也可以自己搭建一个基于域的 401 认证服务,我这里测试就找个实际的环境来吧 我们在内网渗透的时候,经常会抓本地密码,本地存储的 hash 就是用户密码经过一系列加密后的结果,具体加密方式如下: NTLM hash = md4(unicode(hex(password))) 函数解释 以上就是 NTLM 协议组成验证数据的过程,最后数据发送到服务器端,服务器根据提交的数据进行类似的加密验证,从而判断用户提交的凭证是否正确,整个过程保证了认证的安全性。

    3.5K10发布于 2020-06-16
  • 来自专栏yuancao博客

    windows 认证机制

    目录 Windows认证协议 NTLM(NT LAN Manager) Kerberos NTLM认证 Windwos 密码hash NTLM hash NET-NTLM hash 流程 注意 而在AD域环境中,如果需要认证 Windows NT操作系统,也得用NTLM协议。 hash 通常是指网络环境下NTLM认证中的hash 流程 客户端发起认证请求 服务端收到认证请求,向客户端发送随机数(chanlleng/挑战) 客户端使用NTLM Hash打乱该随机数,生成Net-NTLM NTLM的利用方式 先说说ntlm的利用方式 他有两种利用方式 1、Pass the hash 首先,如果内网主机的本地管理员账户密码相同,那么可以通过pass the hash远程登录到任意一台主机 注意 1、Windows vista以后,本地管理员administrator默认是禁用状态,而用户添加的本地管理员是受限管理员,pass the hash远程连接后权限为普通用户权限; 2、Pass

    1.2K32发布于 2020-10-10
  • 来自专栏黑白天安全团队

    内网协议NTLMNTLM基础

    SAM用于储存本地所有用户的凭证信息,但是这并不代表着你可以随意去查看系统密码。我们登陆系统的时候系统会自动读取SAM文件中的密码与我们输入的密码进行比对,如果认证相同则可以使用该机器。 本地认证的流程 winlogon.exe -> 接收用户输入 -> lsass.exe -> (认证) Windows Logon Process(即 winlogon.exe),是Windows NT NTLM认证过程是怎样什么? NTLM Hash是怎么样生成的呢? ,它容易与NTLM混淆,NTLM是一种网络协议,与NTLM Hash的关系就是:NTLM网络认证协议是以NTLM Hash作为根本凭证进行认证的协议。 在域环境在中可以使用Kerberos和NTLM认证方式来对用户认证,域内一般情况下都是使用Kerberos认证作为默认方式。

    1.9K20发布于 2021-04-07
  • 来自专栏超级架构师

    【TOGAF】DAY 1:如何通过 TOGAF 9 认证

    我刚开始一份新工作,在第一次客户参与开始之前我有一些时间,所以我想我会好好利用这些时间,并考虑在不参加课程的情况下通过 TOGAF 9 认证。 过去,由于 TOGAF 标准的高度理论性质,即使我曾担任技术领导职务,我的上级也没有真正看到认证的必要性。在年度绩效评估中,我曾多次说我想参加企业架构培训。

    72210编辑于 2022-07-29
  • 来自专栏quan9i的安全笔记

    内网渗透基础(一)

    现在,比如父域是quan9i.top,那么abc.quan9i.top就是一级子域,cn.abc.quan9i.top就是二级域 域树 域树是多个域通过建立信任关系组成的集合。 它的认证过程如下所示: 在用户输入密码进行本地认证过程中,所有操作都是于本地进行的,系统将密码转换为NTLM Hash,而后与SAM文件中的NTLM Hash进行比较,相同则密码正确。 NTLM协议认证 NTLM协议是基于一种质询/响应的验证机制,其由三种类型消息组成 Type 1 (协商) Type 2 (质询) Type 3 (认证) 工作组环境的NTLM认证流程如下图所示 具体认证过程如下 此时客户端输入用户名和密码进行验证后,就会在本地缓存一份服务器密码的NTLM Hash值,而后客户端向服务端发送一个请求(包含服务器用户名和其他一些需要协商的消息),此过程为Type 1 协商消息 2、 位的随机Challenge质询值,服务端也会有缓存) 3、客户端收到Type 2消息后,读取服务端内容并取出Challenge,而后用过程1中本地缓存的NTLM Hash对Challenge进行加密得到

    86310编辑于 2023-05-18
领券