博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络安全菜鸟学习之漏洞篇——sql(二)
阅读量:2121 次
发布时间:2019-04-30

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

首先,在讲《网络安全菜鸟学习之漏洞篇——sql(二)》之前,我先补充一点《网络安全菜鸟学习之漏洞篇——sql(一)》忘记讲的知识点。

在《网络安全菜鸟学习之漏洞篇——sql(一)》最后我讲了如何获取表名、列名。就拿获取数据库名security下面的表名信息举例:

http://127.0.0.1/sqli-labs-master/Less-1/?id=-2’ union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=‘security’--+

这个代码中有个information_schema,那么它是什么呢?

在MYSQL5.0以上版本中,mysql存在一个自带数据库名为information_schema,它是一个存储记录有所有数据库名,表名,列名的数据库。(具体可以参考这篇文章http://help.wopus.org/mysql-manage/607.html)那么有人一定会问,MYSQL5.0以下的版本我们应该如何操作呢。首先现在基本上遇不到MYSQL5.0以下的版本(MYSQL5.0以下的版本早就淘汰了),遇到了就爆破。(具体如何爆破等我们讲sqlmap的时候会讲)
好了,现在进入正题。我们今天首先讲一下抓包和数据包。(这个对我们学习信安非常重要)
抓包顾名思义就是抓取数据包。说到抓取数据包就不得不提到burpsuite(一款信安常用的抓包软件如图工具)。在这里插入图片描述
现在我们先讲一下抓包的流程
1.点击代理,在里面找到选项,点击添加在这里插入图片描述
2.随便添加一个空闲端口,并将它勾选上。在这里插入图片描述
在这里插入图片描述
3.点击拦截禁用,让它变成拦截请求在这里插入图片描述
4.打开浏览器,在选项中点击网络设置。选择手动代理,将代理地址填入即可。在这里插入图片描述
注:只能抓取http,https不能抓。如果想抓https,需要导入证书。(如何导入证书我后面会单独写一篇文章,也可以参考这篇文章https://blog.csdn.net/supassxu/article/details/81448908)
127.0.0.1的包也没法抓,如果想抓就改成自己的IP地址。
好,现在我们抓一个包分析一下其中的重点。在这里插入图片描述
1.GET:一种请求方式。常见的的请求方式有GET,POST。(还有些请求方式,可以参考这篇文章https://blog.csdn.net/kuki123321/article/details/78219252)
2.host后面加的是数据包的接受地址。
3.cookie:是对数据包发送者的身份识别标志,与它有类似功能的叫session。(他们的区别之后会讲)
大概的讲了一下数据包中的一些知识点,现在我们就要把它们和我们现在学的sql注入结合起来。
首先我们先访问http://192.168.126.1/sqli-labs-master/Less-1/index.php?id=2对其抓包(192.168.126.1是我的本地IP),然后再访问http://192.168.126.1/sqli-labs-master/Less-1/index.php?id=2 and 1=1对其抓包。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们通过这个包就会发现———我们在《网络安全菜鸟学习之漏洞篇——sql(一)》中学的其实是对GET型数据包的参数进行了修改。既然GET型的可以通过对参数的修改进行注入,那么POST型我们是否也可以用同样的方式进行注入。答案是肯定的,Sqli-labs Less18-19 就是,但具体的怎么操作的我在这里不再赘述。(可以参考这篇文章https://blog.csdn.net/kevinhanser/article/details/81519280)
同理,COOKIE其实也可以注入还是参考上面那篇文章。
至此SQL注入常见的产生注入的接受方式我们都提到了。
即:1.GET型
2.POST型
3.COOKIE型
此外还有REQUEST SERVER两种,但并不常见。

你可能感兴趣的文章
集成测试(一)—— 使用PHP页面请求Spring项目的Java接口数据
查看>>
使用Maven构建的简单的单模块SSM项目
查看>>
Intellij IDEA使用(十四)—— 在IDEA中创建包(package)的问题
查看>>
Redis学习笔记(四)—— redis的常用命令和五大数据类型的简单使用
查看>>
Win10+VS2015编译libcurl
查看>>
Windows下使用jsoncpp
查看>>
Ubuntu下测试使用Nginx+uWsgi+Django
查看>>
Windows下编译x264
查看>>
visual studio调试内存泄漏工具
查看>>
开源Faac实现PCM编码AAC
查看>>
Windows下wave API 音频采集
查看>>
借船过河:一个据说能看穿你的人性和欲望的心理测试
查看>>
AndroidStudio 导入三方库使用
查看>>
Ubuntu解决gcc编译报错/usr/bin/ld: cannot find -lstdc++
查看>>
解决Ubuntu14.04 - 16.10版本 cheese摄像头灯亮却黑屏问题
查看>>
解决Ubuntu 64bit下使用交叉编译链提示error while loading shared libraries: libz.so.1
查看>>
VS生成DLL文件供第三方调用
查看>>
Android Studio color和font设置
查看>>
Python 格式化打印json数据(展开状态)
查看>>
Centos7 安装curl(openssl)和libxml2
查看>>