我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Web安全之SQL Inject

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Web安全之SQL Inject

Web安全之SQL Inject[数据库教程]

SQL Inject(SQL注入)概述

     在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞。

数据库注入漏洞,主要是开发人员在构建代码时, 没有对输入边界进行安全考虑,导致攻击者可以通过合法的输入点提交一些精心构造的语句,从而欺骗后台数据库对其进行执行,导致数据库信息泄漏的一-种漏洞。
一个严重的SQL注入漏洞,可能会直接导致一家公司破产!
SQL注入漏洞主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的“数据”拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱裤、被删除、甚至整个服务器权限沦陷)。

SQL inject漏洞攻击流程

第一步:注入点探测

自动方式:通过web漏洞扫描工具,自动进行注入点发现

手动方式:手工构造sql inject测试语句进行注入点发现

第二步:信息获取

通过注入点取期望得到的数据

  1. 环境信息:    数据库类型,数据库版本、操作系统版本、用户信息等
  2. 数据库信息:   数据库名称、数据库表、表字段,字段内容(加密内容破解)

第三步:获取权限

获取操作系统权限:通过数据库执行shell,上传木马

SQL inject漏洞-常见注入点类型

  • 数字型     user_id=$id
  • 字符型     user_id=‘$id‘
  • 搜索型     text LIKE ‘%{$_GET[‘‘search]}%‘

数字型注入(post)演示

打开pikachu的SQL-inject中的数字型注入 ,页面中的查询,在查询相应的用户之后会返回用户名和用户邮箱

技术分享图片

 

 

点击查询之后可以发现是以post方式提交的,并没有在url中进行传参,接着我们打开burp找到刚提交的post请求发送到Repeater

技术分享图片

 

 然后把id修改为我们所猜想的数据库逻辑构造出的payload  id=3 or 1=1 ,点击GO,然后直接查看Render页面上面返回的结果

可以看到页面把数据库内所有的用户数据都给显示出来了,意味着id查询处是存在数字型SQL注入漏洞

技术分享图片

 

 通过查看后端代码,可以发现漏洞形成的原因,后端从前端获取到id赋值给$id之后没有做任何处理就直接拼接到SQL里,这样就导致了$id可以被直接控制,并且可以通过拼接构造合法的SQL语句造成信息的泄漏。

技术分享图片

 

字符型注入(get)演示

 

打开pikachu上SQL-inject的字符型注入,输入用户名,页面会返回相应的用户id和用户邮箱

技术分享图片

 

 随意输入一段字符,页面会返回用户不存在,而且参数是在url里面提交的,是一个get请求

技术分享图片

 

 技术分享图片

 

 然后我们根据页面的反馈来猜想后台的执行语句来构造合法的payload,我们输入的一段字符,后台的执行语句应该是一段数据库字符查询语句

 我们可以先用一个单引号闭合掉前面的单引号,然后用#符号注释掉后面的单引号,中间是一个恒成立的条件,这样我们的payload就是 lucy or 1=1# 将这段payload输入点击提交

技术分享图片

 

 接着来看后端代码,与数字型大同小异,唯一区别在于$name的单引号处理

技术分享图片

 

搜索型注入演示

搜索型就是用的数据库中的搜索语句来进行的查找,它会搜索所有包含你所输入部分的结果

技术分享图片

 

 我们可以根据数据库的搜索语句 select * from member where username like %l%; 来构造合法的闭合 l% or 1=1# 

接着我们用这个payload来测试SQL注入漏洞,将payload提交后可以看到页面显示出了所有的用户信息

 

技术分享图片

 

接着查看后台代码,和之前两种类型一样,都是没做任何处理就直接拼接到了SQL中,唯一的区别是变量拼接时用了单引号百分号处理

 技术分享图片

XX型注入演示

 打开xx型注入,先输入一个单引号提交,页面报错技术分享图片

 

查看源码,发现XX型在参数拼接使用了一个(),我们可以根据这一点来构造合法的闭合

技术分享图片

 

 我们根据猜想构造payload xxx) or 1=1# ,将payload输入提交,可以看到用户信息都被遍历出来了

技术分享图片

 

Web安全之SQL Inject

原文:https://www.cnblogs.com/DxyG/p/13466598.html

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Web安全之SQL Inject

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Web安全之SQL Inject

SQL Inject(SQL注入)概述     在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞。数据库注入漏洞,主要是开发人员在构建代码时, 没有对输入边界进行安全考虑,导致攻击者可以通过合
Web安全之SQL Inject
2015-04-20

Vue3全局组件通信之provide / inject详解

这篇文章主要介绍了Vue3全局组件通信之provide / inject,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-03-14

Vue3全局组件通信之provide/inject源码分析

1、前言顾名思义,爷孙组件是比父子组件通信要更深层次的引用关系(也有称之为“隔代组件”):C组件引入到B组件里,B组件引入到A组件里渲染,此时A是C的爷爷级别(可能还有更多层级关系),如果你用props,只能一级一级传递下去,那就太繁琐了,因此我们需要更直接的通信方式。他们之间的关系如下,Grandson.vue并非直接挂载在Grandfather.vue下面,他们之间还隔着至少一个Son.vue(可能有多个):Grandfather.vue└─Son.vue└─Grandson.vue因为上下
2023-05-14

Vue3全局组件通信之provide/inject怎么使用

本篇内容介绍了“Vue3全局组件通信之provide/inject怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、前言顾名思义,爷
2023-07-06

ASP Web 安全性:如何防止SQL注入攻击

了解SQL注入攻击如何危及ASP Web应用程序至关重要。通过使用参数化查询并验证用户输入,可以有效防止此类攻击,确保应用程序数据的安全和完整性。
ASP Web 安全性:如何防止SQL注入攻击
2024-02-13

web安全之机器学习入门——3.2 决策

目录简介决策树简单用法决策树检测P0P3爆破决策树检测FTP爆破随机森林检测FTP爆破 简介决策树和随机森林算法是最常见的分类算法;决策树,判断的逻辑很多时候和人的思维非常接近。随机森林算法,利用多棵决策树对样本进行训练并预测的一种分类器,
2023-01-31

信息安全工程师Web安全考点

  信息安全工程师Web安全考点有哪些?为了方便考生及时有效的备考,编程学习网小编为大家精心整理了软考信息安全工程师Web安全考试知识点,供大家参考和学习。如想获取更多计算机软件水平考试的模拟题及备考资料,请关注编程学习网网站的更新。  【考法分析】  本考点主要是对Web安全相关内容的考查。  【要点分析】  1.Web 安
信息安全工程师Web安全考点
2024-04-18

web前端:Cookie安全漫谈

编程学习网:Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于RFC2109和2965都已废弃,最新取代的规范是RFC6265。
web前端:Cookie安全漫谈
2024-04-23

编程热搜

目录