最近发现一个挺不错的靶场,burpsuite的官方网站在线训练平台
不多说先到第一个系列的实验去一探究竟
麻了,英文界面属实不太友好!
所以我决定用谷歌看题,火狐去操作(主要火狐用习惯了)
第一个系列的实验为SQL注入,先来简单了解一下吧。
什么是SQL注入?
SQL 注入是一种 Web 安全漏洞,允许攻击者干扰应用程序对其数据库进行的查询。它通常允许攻击者查看他们通常无法检索的数据。这可能包括属于其他用户的数据,或应用程序本身能够访问的任何其他数据。在许多情况下,攻击者可以修改或删除这些数据,从而导致应用程序的内容或行为发生永久性更改。
在某些情况下,攻击者可以升级 SQL 注入攻击以破坏底层服务器或其他后端基础设施,或执行拒绝服务攻击。
成功的SQL注入攻击会产生哪些影响?
成功的 SQL 注入攻击可能导致对敏感数据(例如密码、信用卡详细信息或个人用户信息)的未授权访问。近年来,许多备受瞩目的数据泄露事件都是 SQL 注入攻击的结果,导致声誉受损和监管罚款。在某些情况下,攻击者可以获得进入组织系统的持久后门,从而导致可能在很长一段时间内不被注意的长期危害。
开始实验吧!
实验1
谷歌翻译完页面之后舒服多了
题目大概的意思就是让你确定返回的列数
两种方式去处理:
' order by 1 -- qwe
' order by 2 -- qwe
....
直到页面报错为止,报错前的最大数即为列数
' union select null -- qwe
' union select null,null -- qwe
....
直到页面不报错为止,不报错时的数即为列数
该实验要完成解决貌似得用第二种方式,我就直接操作第二种方式了.
通过尝试确定为三列,问题得以解决
实验2
解决方法为找到存在文本的列,先判断列数
通过判断为3,下面就要确定文本的位置即可解决该问题
先尝试第一个位置,页面报错接着尝试
通过判断文本存在于第二个位置
将题目所给字符串放进去检索
该实验完成
实验3
解决方法为从users表中检索username和password拿去登录
先判断列数
3报错了
最后确定为2,再确定哪个位置有文本
两个位置均有,接下来直接从users表检索吧
往下翻
在最底下找到账号密码,拿去登录解决该实验
得以解决
实验4
有暗示,去瞧一瞧
描述的应该是让多个数据链接的语法然后跟随SQL查询语句输出出来
还是先判断列数
通过判断为列数为2,继续确定文本位置
username和password在同一位置
通过||'~'||的方式将两链接同时输出出来
拿去登录即可完成该实验
实验5
先查看一下暗示吧
这里告诉了我们查看Oracle数据库版本信息所使用的语句
前两步同上述实验
利用文档里的语句进行版本查询
该实验结束!
实验6
跟上个实验差不多的操作,就是查询的数据库变了,语句会有些变化
页面的最后就出现了实验需要我们检索的数据,本实验结束,跟实验5几乎相同
实验7
暗示还是这些,本实验说的是非Oracle数据库
因为非Oracle数据的查询语句相同,我就不去查数据库信息了,大家自己查一查
查出了很多表,往下翻找到users的表
大概率就是这张表里存着username和password字段,先进去看看
往下翻
找到了字段名,下一步进入字段查数据
拿去登录即可解决该实验!
实验8
与实验7类似,前面步骤我就省略了
往下翻找users表
往下翻找字段
往下翻
拿去登录即可完成本实验!
小结一下:union联合注入查询就在于对库,表,字段及字段中的数据的查询
最近事情稍微有点多实验先更上半部分,下半部分实验过几天写出来~~
不足之处还请师傅们见谅!