Metasploit MSSQL 敏感数据发现工具详解

本文介绍基于Metasploit框架开发的MSSQL敏感数据发现模块,可自动扫描数据库表中包含密码、银行信息等敏感字段的列,并展示表结构、数据类型及行数统计,帮助安全人员快速定位高价值数据。

Metasploit MSSQL 敏感数据发现工具

本项目是我博客文章《发现有趣数据库数据》的技术实现。

最初计划在找到列后查询数据库并返回每个表的样本数据,但由于所基于的Metasploit模块存在技术问题,目前无法实现。代码已基本完成,待Metasploit修复后可轻松添加该功能。

安装

只需将下载的压缩包解压到Metasploit安装根目录即可。

使用方法

使用非常简单:设置标准参数后执行exploit。默认会搜索包含passw、bank、credit和card关键词的列名。如需修改搜索条件,可将NAMES字段设置为管道符分隔的关键词列表。

安装后可在以下路径找到模块:auxiliary/admin/mssql/mssql_idf

示例操作

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
msf > use auxiliary/admin/mssql/mssql_idf
msf auxiliary(mssql_idf) > show options

模块选项:

   名称          当前设置              必填    描述
   ----          ---------------       --------  -----------
   NAMES         passw|bank|credit|card 是     管道符分隔的列名列表
   PASSWORD                            否      指定用户的密码
   RHOST                               是      目标地址
   RPORT        1433                   是      目标端口
   USERNAME     sa                     否      认证用户名

msf auxiliary(mssql_idf) > set PASSWORD MyPass
PASSWORD => MyPass
msf auxiliary(mssql_idf) > set RHOST 192.168.0.54
RHOST => 192.168.0.54
msf auxiliary(mssql_idf) > exploit

数据库         模式       表                列                  数据类型  行数 
============== ========== ================= ====================== ========= ========= 
msdb           dbo        backupmediaset    is_password_protected  bit       0
msdb           dbo        backupset         is_password_protected  bit       0
AdventureWorks Person     Address           MyPassword             nchar     19614
AdventureWorks Purchasing Vendor            CreditRating           tinyint   104
AdventureWorks Person     Contact           PasswordHash           varchar   19972
AdventureWorks Person     Contact           PasswordSalt           varchar   19972
AdventureWorks Sales      ContactCreditCard CreditCardID           int       19118
AdventureWorks Sales      CreditCard        CreditCardID           int       19118
AdventureWorks Sales      CreditCard        CardType               nvarchar  19118
AdventureWorks Sales      CreditCard        CardNumber             nvarchar  19118
AdventureWorks Sales      SalesOrderHeader  CreditCardID           int       31465
AdventureWorks Sales      SalesOrderHeader  CreditCardApprovalCode varchar   31465

[*] 辅助模块执行完成

如输出所示,工具发现了多个包含敏感信息的列,行数字段有助于识别可忽略或低优先级的列。接下来需要您手动查询这些列以检查具体数据内容。

下载

下载MSSQL敏感数据发现工具

目录

  • 安装
  • 使用方法
  • 示例
  • 下载

分类

  • Wifi
  • 网络
  • Metasploit
  • 通用
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计