Web安全-初识SQL注入(一)

1、初识SQL注入

1.1、什么是注入?

将不受信任的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入、NoSQL注入、OS 注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在没有适当授权的情况下执行非预期命令或访问数据。

注入能导致数据丢失、 破坏或泄露给无授权方,缺乏可审计性或是拒绝服务。注入有时甚至能导致主机完全被接管。 注入攻击的本质:就是把用户输入的数据当做代码执行。(过于信任用户)

1.2、什么是SQL注入?

SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL命令的入侵行为。

在这里插入图片描述

(图片来源网络)

1.3、SQL注入产生的原因

随着B/S模式被广泛的应用,由于没有对用户的输入数据或者是页面中所携带的信息进行的合法性校验,导致了攻击者可以提交一段数据库查询代码,根据程序返回的结果,获得一些Ta想得到的数据。被称为数据库的注入攻击(SQL注入攻击)。

也就是数据与代码未严格分离;用户提交的参数数据未做充分检查过滤就被代入到SQL命令中,改变了原有SQL命令的“语义”,且成功被数据库执行。

1.4、SQL注入的危害

包括但不局限于:

  • 数据库信息泄漏:数据库中存放的用户的隐私信息的泄露。
  • 网页篡改:通过操作数据库对特定网页进行篡改。
  • 网站被挂马,传播恶意软件:修改数据库一些字段的值,嵌入网马链接,进行挂马攻击。
  • 数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员帐户被窜改。
  • 服务器被远程控制,被安装后门。经由数据库服务器提供的操作系统支持,让黑客得以修改或控制操作系统。
  • 破坏硬盘数据,瘫痪全系统。
  • 一些类型的数据库系统能够让SQL指令操作文件系统,这使得SQL注入的危害被进一步放大。

1.5、SQL注入在渗透中的利用

  • 绕过登录验证:使用万能密码登录网站后台等。
  • 获取敏感数据:获取网站管理员帐号、密码等。
  • 文件系统操作:列目录,读取、写入文件等。
  • 注册表操作:读取、写入、删除注册表等。
  • 执行系统命令:远程执行命令。

2、如何挖掘SQL注入

2.1、常见SQL注入流程

在这里插入图片描述

2.2、SQL注入漏洞分类

2.2.1、按数据类型

可分为:数字型(Integer)和字符型(String)

2.2.2、按返回结果

可分为:显错注入(Error-Based)和盲注(Boolean/Time-Based Blind)

2.3、可能存在SQL注入的地方

  • 最普遍的注入漏洞是由于参数值过滤不严导致的。
  • Cookie注入漏洞普遍存在于ASP的程序中。
  • 参数名、目录名、文件名等注入漏洞通常存在于有网站路由的程序中。

2.4、SQL注入测试思路

步骤盲注联合查询注入
1判断是否存在注入,注入是字符型还是数字型判断是否存在注入,注入是字符型还是数字型
2猜解当前数据库名猜解SQL查询语句中的字段数
3猜解数据库中的表名确定显示的字段顺序
4猜解表中的字段名获取当前数据库
5猜解数据获取数据库中的表
2.4.1、判断是否存在SQL注入

在这里插入图片描述

(图片来源网络)

3、总结与题外话

本文先简单介绍SQL注入,后续会还详细介绍SQL注入一些POC、思路和靶场实验。《跟我学网安知识》系列我停更了2周多了共16天,原因有多方面,一方面我自己学网安课作业和靶场实验比较花费时间,另一方面我工作上有变动,在准备面试Java相关知识。

打个小小求职广告:Base厦门,Java高级开发,我擅长需求分析和较强的文档能力,有跨部门推动项目从0到1交付上线的经验,也有架构相关工作经历。如果有合适的岗位推荐请私信给我,非常感谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/210476.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

苍穹外卖项目笔记(5)——Redis

1 入门 1.1 Redis 简介 Redis 是一个基于内存的 key-value 结构数据库,官网链接(中文):https://www.redis.net.cn 特点: 基于内存存储,读写性能高适合存储热点数据(热点商品、资讯、新闻&am…

[AbutionGraph开发文档]时序图谱数据库-流式图计算

文档地址:https://thutmose.gitee.io/abution-graph AbutionGraph是一款端到端数据实时分析的图谱数据库,实时(写入实时、决策分析实时、流式图计算实时): 基于历史数据构建的指标模型实时查询;接入流式数据并实时更新业务指标&a…

DSSS技术和OFDM技术

本内容为学习笔记,内容不一定正确,请多处参考进行理解 https://zhuanlan.zhihu.com/p/636853588 https://baike.baidu.com/item/OFDM/5790826?frge_ala https://zhuanlan.zhihu.com/p/515701960?utm_id0 一、 DSSS技术 信号替代:DSSS技术为…

MySQL EXPLAIN详解

MySQL数据库是许多Web应用程序的底层支持,而查询性能的优化是确保系统高效运行的关键。在MySQL中,EXPLAIN是一项强大的工具,可帮助开发者深入了解查询语句的执行计划,从而更好地优化查询性能。本文将详细解析MySQL的EXPLAIN关键字…

微信小程序生成二维码并保存到本地方法

微信小程序生成二维码请保存到本地方法 官方weapp-qrcode插件 github链接 功能完成样子 wxml <view class"qrcode"><canvas style"width: 275px; height: 275px;" canvas-idmyQrcode></canvas> </view> <view class" …

大数据湖项目建设方案:文档全文101页,附下载

关键词&#xff1a;大数据解决方案&#xff0c;数据湖解决方案&#xff0c;数据治理解决方案&#xff0c;数据中台解决方案 一、大数据湖建设思路 1、明确目标和定位&#xff1a;明确大数据湖的目标和定位是整个项目的基础&#xff0c;这可以帮助我们确定项目的内容、规模、所…

使用opencv将sRGB格式的图片转换为BT.2020格式【sRGB】【BT.2020】

将sRGB格式的图片转换为BT.2020格式涉及到两个步骤&#xff1a;首先将sRGB转换到线性RGB&#xff0c;然后将线性RGB转换到BT.2020。这是因为sRGB图像通常使用伽马校正&#xff0c;而BT.2020工作在线性色彩空间中。 从sRGB到线性RGB&#xff1a;sRGB图像首先需要进行伽马校正解码…

万字解析设计模式之观察者模式、中介者模式、访问者模式

一、观察者模式 1.1概述 观察者模式是一种行为型设计模式&#xff0c;它允许一个对象&#xff08;称为主题或可观察者&#xff09;在其状态发生改变时&#xff0c;通知它的所有依赖对象&#xff08;称为观察者&#xff09;并自动更新它们。这种模式提供了一种松耦合的方式&…

服务器中深度学习环境的配置

安装流程 11.17 日&#xff0c;周末去高校参加学术会议&#xff0c;起因&#xff0c; 由于使用了某高校内的公共有线网络&#xff0c; 远程连接服务器后&#xff0c;黑客利用 ssh 开放的 22 端口&#xff0c; 篡改了主机的配置&#xff0c; 使得只要一连上网络&#xff0c; 服…

分享116个图片JS特效,总有一款适合您

分享116个图片JS特效&#xff0c;总有一款适合您 116个图片JS特效下载链接&#xff1a;https://pan.baidu.com/s/1WvUvmG1adR2EJG97MiGj3A?pwd6666 提取码&#xff1a;6666 Python采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 学习知识费力气&#xff0c;收集整…

【云备份】客户端实现 及 项目整体总结

文章目录 客户端客户端实现思想客户端文件操作类的设计与拷贝Util.hpp的设计data.hpp的设计Storage —— 持久化存储Initload——数据初始化加载 cloud.hpp的设计GetFileIdentifier——创建文件唯一标识Upload—— 文件上传IsNeedupload —— 客户端文件是否需要上传判断RunMod…

2023年国赛试题:配置inux1 为 CA 服务器

试题内容:配置 linux1 为 CA 服务器,为 linux 主机颁发证书。证书颁发机构有 效期 10 年,公用名为 linux1.skills.lan。申请并颁发一张供 linux 服务器使用的证书,证书信息:有效期 =5 年,公用名=skills.lan, 国家=CN,省=Beijing,城市=Beijing,组织=skills,组织单位…

Apache Sqoop使用

1. Sqoop介绍 Apache Sqoop 是在 Hadoop 生态体系和 RDBMS 体系之间传送数据的一种工具。 Sqoop 工作机制是将导入或导出命令翻译成 mapreduce 程序来实现。在翻译出的 mapreduce 中主要是对 inputformat 和 outputformat 进行定制。 Hadoop 生态系统包括&#xff1a;HDFS、Hi…

Linux处理文件常见命令

目录 1 cp 2 rm 3 zip与unzip 3.1 zip 3.2 unzip 4 cd 5 ls 6 chmod 7 scp 7.1 文件在你操作的机器上&#xff0c;你要传给另一个机器 7.1.1 文件 7.1.2 文件夹 7.2 文件在另一个机器上&#xff0c;你要把文件搞到你操作的机器上 7.2.1 文件 7.2.…

Tekton — 通过tekton-operator部署tekton组件

文章目录 版本信息部署准备安装卸载tekton组件 Tektoncd Operator 作为一个 Kubernetes 的扩展&#xff0c;可以方便快捷地在 Kubernetes 集群上安装、升级和管理 Tekton Pipelines、Dashboard、Triggers 等组件。 那么本篇文章介绍在K8S集群中如何通过tekton-operator部署Tekt…

m1源码编译xgboost的动态链接库dylib

1、下载源码 git clone --recursive https://github.com/dmlc/xgboost cd xgboost拉取源码时候&#xff0c;一定要加"--recursive"这个命令。把它的字模块也要拉取下来&#xff0c;才能编译成功 2、安装c依赖 必要的依赖项(不然后续编译时报错)&#xff0c;包括CM…

VUE+THREE.JS 点击模型相机缓入查看模型相关信息

点击模型相机缓入查看模型相关信息 1.引入2.初始化CSS3DRenderer3.animate 加入一直执行渲染4.点击事件4.1 初始化renderer时加入监听事件4.2 触发点击事件 5. 关键代码分析5.1 移除模型5.2 创建模型上方的弹框5.3 相机缓入动画5.4 动画执行 1.引入 引入模型所要呈现的3DSprite…

cocos 关于多个摄像机,动态添加节点的显示问题,需要动态修改layer。(跟随摄像机滚动)(神坑官网也不说明一下)

参考文章&#xff1a;Cocos 3.x 层级Layer - 简书 2D镜头跟随应该怎么实现呢 - Creator 3.x - Cocos中文社区 关于多个摄像机&#xff0c;动态添加节点的显示问题&#xff0c;需要动态修改layer&#xff1f; 场景&#xff1a;在制作摄像机跟随角色移动功能时&#xff0c;新增…

2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-C卷

2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-C卷 2024 年甘肃省职业院校技能大赛中职组 电子与信息类“网络安全”赛项竞赛样题-C卷A模块基础设施设置/安全加固&#xff08;200分&#xff09;A 模块基础设施设置/安全加固&#xff08;200 分&am…

数据结构—二叉树

文章目录 10.二叉树(1).二叉树的基本概念(2).遍历#1.前序遍历#2.中序遍历#3.后序遍历#4.非递归中序遍历 (3).中序前/后序建树#1.中序前序遍历建树#2.中序后序遍历建树 (4).递归和二叉树基本操作#1.求树高#2.求结点数#3.求叶子结点数#4.复制树#5.判断两棵树是否相等 (5).特殊二叉…