• mssql(1433端口)介绍


    mssql介绍

    Microsoft SQL Server是一个关系型数据库,微软开发的管理系统。作为数据库服务器,它是一种软件产品,其主要功能是存储和检索其他软件应用程序所请求的数据,这些应用程序可以运行在同一台计算机上,也可以运行在网络(包括Internet)上的另一台计算机上。默认运行在1433端口

    默认MS-SQL系统表

    master Database:记录SQL Server实例的所有系统级信息。

    msdb Database:由SQL Server代理用于安排警报和作业。

    model Database:用作在SQL Server实例上创建的所有数据库的模板。对模型数据库所做的修改(如数据库大小、排序规则、恢复模型和其他数据库选项)将应用于以后创建的任何数据库。

    Resource Databas:是一个只读数据库,其中包含SQL Server附带的系统对象。系统对象在物理上持久化在资源数据库中,但它们在逻辑上出现在每个数据库的sys模式中。

    tempdb Database:是用于保存临时对象或中间结果集的工作空间。

    通用枚举
    # 获取版本
    
    select @@version;
    
    # 获取用户名
    
    select user_name();
    
    # 获取数据库
    
    SELECT name FROM master.dbo.sysdatabases;
    
    # 使用数据库
    
    USE master
    
    #获取表名
    SELECT * FROM .INFORMATION_SCHEMA.TABLES;
    #列出链接的服务器
    EXEC sp_linkedservers
    SELECT * FROM sys.servers;
    #列出用户
    select sp.name as login, sp.type_desc as login_type, sl.password_hash, sp.create_date, sp.modify_date, case when sp.is_disabled = 1 then 'Disabled' else 'Enabled' end as status from sys.server_principals sp left join sys.sql_logins sl on sp.principal_id = sl.principal_id where sp.type not in ('G', 'R') order by sp.name;
    #使用sysadmin特权创建用户
    CREATE LOGIN hacker WITH PASSWORD = 'P@ssword123!'
    sp_addsrvrolemember 'hacker', 'sysadmin'
    
    • 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

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    获取用户

    mssql用户类型

    # 获取所有用户和角色
    select * from sys.database_principals;
    ## 这个查询会过滤一点结果
    select name,
    create_date,
    modify_date,
    type_desc astype,
    authentication_type_desc as authentication_type,
    sid
    from sys.database_principals
    wheretype notin('A','R')
    orderby name;
    
    ## 这两个选项都选择当前数据库(而不是服务器)的所有用户。
    ## 当我们无法访问sys.database_principals表时很有趣
    exec sp_helpuser
    SELECT * FROM sysusers
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    获取权限

    一些关于MSSQL术语的介绍:

    1. one .

    **安全性:**SQL Server数据库引擎授权系统控制对这些资源的访问。有三个更广泛的类别可以区分为:

     服务器–例如数据库、登录名、终结点、可用性组和服务器角色
    
    • 1
     数据库–例如数据库角色、应用程序角色、架构、证书、全文目录、用户
    
    • 1
     模式–例如表、视图、过程、函数、同义词
    
    • 1
    1. two .

    **许可:**每个SQLServer安全文件都有相关联的权限,如ALTER、CONTROL、CREATE,这些权限可以授予主体。权限在服务器级别使用登录进行管理,在数据库级别使用用户进行管理。

    1. three

      **负责人:**接收对安全对象的权限的实体称为主体。最常见的主体是登录名和数据库用户。通过授予或拒绝权限或将登录名和用户添加到具有访问权限的角色来控制对安全对象的访问。

    # 显示所有不同的安全名称
    SELECT distinct class_desc FROM sys.fn_builtin_permissions(DEFAULT);
    # 在MSSQL中显示所有可能的权限
    SELECT * FROM sys.fn_builtin_permissions(DEFAULT);
    # 在安全类型服务器上获取我的所有权限
    SELECT * FROM fn_my_permissions(NULL, 'SERVER');
    # 获取我对数据库的所有权限
    USE 
    SELECT * FROM fn_my_permissions(NULL, 'DATABASE');
    # 获取角色"sysadmin"的成员
    Use master
    EXEC sp_helpsrvrolemember 'sysadmin';
    # 如果当前用户是sysadmin,则获取
    SELECT IS_SRVROLEMEMBER('sysadmin');
    # 获取可以运行xp_cmdshell的用户
    Use master
    EXEC sp_helprotect 'xp_cmdshell'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    诡计

    执行操作系统命令

    请注意,为了能够执行命令,不仅需要**xp_cmdshell**启用,但也有对的执行权限xp_cmdshell存储过程。您可以获取可以使用的用户(系统管理员除外)xp_cmdshell有:

    Use master
    EXEC sp_helprotect 'xp_cmdshell'
    
    • 1
    • 2

    在这里插入图片描述

    目前没有用户在运行xp_cmdshell

  • 相关阅读:
    这部《从零开始学架构》神书就此霸榜
    思维的技术:如何破解工作生活中的两难冲突?
    单链表的定义(数据结构与算法)
    C:warning: null argument where non-null required (argument 2) [-Wnonnull]
    青少年软件编程C++二级题库(51-60)
    基于深度学习的图书管理推荐系统(python版)
    ROS学习|Nodetlet学习与使用
    【Mongoose应用和文件上传】一.Express框架访问MongDB数据库;二.node实现文件上传
    【2022华为od机试题】【JAVA】【刷题子】华为od机试题:磁盘容量排序(AC:100%)
    ISO14001环境管理体系认证所需材料
  • 原文地址:https://blog.csdn.net/m0_53008479/article/details/128179504