1. sql 注入
1.1 sql 注入 介绍
-
sql 注入在安全问题中排行榜首
-
SQL注入攻击是输入参数未经过滤,然后直接拼接到SQL语句当中解析,执行达到预想之外的一种行为,称之为SQL注入攻击。
1.2 sql 注入 原理
- 攻击者在页面提交恶意字符
- 服务器未对提交参数进行过滤或过滤不足
- 攻击者利用拼接 sql 语句方式获取数据库敏感信息
1.3 sql 注入 危害
- 获取 web 网站数据库(数据泄露)
- 用户数据被非法买卖
- 危害 web 应用安全
1.4 sql 注入 实现方式
-
手动
查找:注入点
输入:sql 常用注入组合语法。进行注入 -
自动(工具)
工具:扫描注入点
输入:自动尝试各种组合语法
2. 环境搭建
2.1 vmware虚拟机软件
作用:
- 一款虚拟机软件。可以使用软件在物理机上安装多个虚拟机操作系统(Linux,windows)
- 靶机与渗透机运行依赖 VMware 软件
下载
2.2 靶机(学习使用项目环境)
作用: 一个 Linux 虚拟机软件,在这个虚拟机中安装了一些已知漏洞的 web 应用程序,方便学习
下载:https://sourceforge.net/projects/owaspbwa/files/1.2/
安装:无需安装,直接 VM 运行
依赖 VMware 虚拟机软件
启动
连接mysql:mysql -uroot -powaspbwa
2.3 渗透机(学习攻击 sql 注入环境)
渗透机-Kali
作用:Kali包含数百种工具,可用于各种信息安全任务,例如渗透测试,安全研究
下载:http://images.offensive-security.com/virtual-images/kali-linux-2018.2-vm-amd64.zip
安装:依赖 VMware 软件
双击运行即可
用户名:root;密码:toor
3. sql语句基本操作(mysql为例)
3.1 基本 sql 库操作语句
- 查看所有数据库:show databases;
- 使用库:use dvwa;
- 查看默认库:select database();
- 查看所有表:show tables;
- 查看表结构:desc 表;
- 查看创建表 sql 语句:show create table users\G
- 查看当前默认用户:select use