Web攻防03_MySQL注入_数据请求

文章目录

  • PHP-MYSQL-数据请求类型
      • 1、数字型(无符号干扰)
      • 2、字符型(有符号干扰)
      • 3、搜索型(有多符号干扰)
      • 4、框架型(有各种符号干扰)
  • PHP-MYSQL-数据请求方法
      • 数据请求方法
      • GET:
      • POST:
      • Cookie:
      • SERVER
      • 功能点举例:
  • PHP-MYSQL-数据请求格式
      • 1、数据采用统一格式传输,后端进行格式解析带入数据库(json)
      • 2、数据采用加密编码传输,后端进行解密解码带入数据库(base64)

请添加图片描述

PHP-MYSQL-数据请求类型

SQL语句由于在黑盒中是无法预知写法的,SQL注入能发成功是需要拼接原SQL语句,大部分黑盒能做的就是分析后各种尝试去判断,所以有可能有注入但可能出现无法注入成功的情况。究其原因大部分都是原SQL语句的未知性导致的拼接失败!

由于开发者对于数据类型和SQL语句写法(框架写法)导致SQL注入拼接失败

1、数字型(无符号干扰)

select * from news where id=$id;

若用户输入字符,sql语句则会报错

2、字符型(有符号干扰)

select * from news where id=‘$id’;

若条件为int,也可设为字符型,带上单引号,这样即使用户输入为字符也不会报错,只是查不出来。

3、搜索型(有多符号干扰)

select * from news where id like ‘%$id%’

4、框架型(有各种符号干扰)

select * from news where id=(‘$id’);

select * from news where (id=‘$id’);

PHP-MYSQL-数据请求方法

在很多漏洞中都有应用到。

请求方法不同,就会有不同的注入点

如果代码审计时发现一个注入点,则需要找到它的请求方法,如Get、Post,进行相应的测试

通过不同的请求方法也有可能绕过一些WAF

数据请求方法

GET POST SERVER FILES HTTP头等

GET:

URL后的参数

POST:

一般看不到的传参,用户登录、文件上传等功能会用到,需要用burpsuite抓包调试较方便。

Cookie:

比较少

SERVER

可以获取User-Agent、Cookie、Rerferer、Host、X-FORWARDED-FOR(用于XFF注入)等

  • User-Agent:

使得服务器能够识别客户使用的操作系统,浏览器版本等.(很多数据量大的网站中会记录客户使用的操作系统或浏览器版本等存入数据库中)

  • Cookie:

网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据

  • X-Forwarded-For:

简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,(通常一些网站的防注入功能会记录请求端真实IP地址并写入数据库or某文件[通过修改XXF头可以实现伪造IP]).

网站有接收&验证IP的功能,并且使用PHP的HTTP_X_FORWARDED_FOR就会有安全隐患,它可以通过修改数据包进行伪造。

该注入是由于数据库存储IP导致的,如果IP配置到代码中,就不会产生过注入了。

但是配置到代码中也会有绕过隐患。

  • Rerferer:

浏览器向 WEB 服务器表明自己是从哪个页面链接过来的(访问来源)

  • Host:

客户端指定自己想访问的WEB服务器的域名/IP 地址和端口号

有些网站会记录访问者的IP信息,作为日志等功能,有该功能,就有可能有该漏洞

功能点举例:

1、用户登录时

一般多为POST请求

2、登录判断IP时

PHP特性中的**$_SERVER[‘HTTP_X_FORWARDED_FOR’];**接受IP的绕过(绕过)

实现:代码配置固定IP去判断-策略绕过

实现:数据库白名单IP去判断-select注入

实现:防注入记录IP去保存数据库-insert注入

3、文件上传将文件名写入数据库-insert注入

文件上传时,会将文件名写入数据库,此时将文件名作为注入的语句。

PHP-MYSQL-数据请求格式

1、数据采用统一格式传输,后端进行格式解析带入数据库(json)

2、数据采用加密编码传输,后端进行解密解码带入数据库(base64)

需要在注入时将注入语句编码,再进行注入。

工具也不知道它有编码/加密,需要手工测出来后告诉工具如何加密的,再由工具测

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

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

相关文章

vue单向绑定和双向绑定

一、单向绑定就是:修改视图,数据不变;修改数据(app.name"1234"),视图会变 二、双向绑定:修改视图,数据会变;修改数据,视图会变 demo: …

【Linux】在Ubuntu下安装Zotero

【Linux】在Ubuntu下安装Zotero 文章目录 【Linux】在Ubuntu下安装Zotero1. Debian InstallationReference 1. Debian Installation 直接使用下面三条语句进行安装即可 wget -qO- https://raw.githubusercontent.com/retorquere/zotero-deb/master/install.sh | sudo bash su…

零基础学习CSS

01-CSS初体验 层叠样式表 (Cascading Style Sheets,缩写为 CSS),是一种 样式表 语言,用来描述 HTML 文档的呈现(美化内容)。 书写位置:title 标签下方添加 style 双标签,style 标签…

MySQL远程连接

一、什么是mysq的远程连接? 1、本地连接 直接在本地使用mysqladmin命令登录 mysql -u root -p 解释如下: mysql:mysql 命令表示要启动 MySQL 客户端。-u root:-u 选项指定要使用的用户名。在这里,我们使用 root 用户名作为示例。-p:-p 选项需要用户输入密码。如果省…

uniapp框架UI蓝图

uView是uni-app生态专用的UI框架,uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码, 可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台(引言自uni-app网)。 一个好的UI框架&#xf…

Excel文件带有密码的只读模式,如何设置?

Excel带有密码的除了打开密码和工作表保护以外,其实还有一种可以设置密码的方法,今天给大家分享如何设置带有密码的只读模式。 打开excel文件,将文件进行【另存为】设置,然后停留在保存路径的界面中,我们点击下面的工…

用3D扫描生成合成数据

合成数据集(Synthetic Datasets)正在成为计算机视觉模型训练的标准部分。 虽然新工具使合成数据集变得更容易访问,但除了标准机器学习过程之外,许多工具还需要对 3D 建模有基本的了解。 最简单的捷径是从现实世界中获取现有对象并…

【OpenCV实现图片以及视频的读取、显示、保存以及绘图函数】

文章目录 图片视频从文件读取视频保存一个视频绘图函数 图片 OpenCV(Open Source Computer Vision Library)是一个广泛应用于计算机视觉和图像处理领域的开源库。它提供了丰富的图像处理工具和算法,使得开发者能够轻松实现各种图像处理任务。…

SpringBoot集成Redisson操作Redis

目录 一、前言二、基础集成配置(redis单节点)2.1、POM2.2、添加配置文件2.3、添加启动类2.4、添加测试类测试redisson操作redis 一、前言 Redisson 是一个在 Redis 的基础上实现的 Java 驻内存数据网格,Redisson相比较与Jedis和Lettuce来说最…

Android之使用GirdLayoutManager时候给Item设置边距

效果: 一、自定义设置边距方法 SpaceItemDecoration.java package com.custom.jfrb.ui.jfrb.finishedProduct; //自己包名位置import android.graphics.Rect; import android.view.View;import androidx.annotation.NonNull; import androidx.recyclerview.widg…

基于YOLOv8的多目标检测与自动标注软件【python源码+PyqtUI界面+exe文件】【深度学习】

基本功能演示 摘要:YOLOv8是YOLO系列最新的版本,支持多种视觉任务。本文基于YOLOv8的基础模型实现了80种类别的目标检测,可以对图片进行批量自动标注,并将检测结果保存为YOLO格式便于后续进行其他任务训练。本文给出完整的Python实…

每日一练 | 华为认证真题练习Day121

1、如下图所示的交换网络,所有交换机都运行了STP协议。当拓扑稳定后,在下列那台交换机上修改配置BPDU的发送周期,可以影响SWD配置BPDU的发送周期 A. SWD B. SWC C. SWB D. SWA 2、如下图所示的网络,交换机的MAC地址已标出。在S…

Linux - 还不懂 gdb 调试器?(调试软件)

前言 当前,我们可以使用 make/makefile 来程序化执行代码文件;可以使用 gcc/g 等编译器来编译代码;可以使用 vim 编辑器来编写代码;其实在 Linux 当中还有一个工具,可以实现调试工作,这个工具就是 -- gdb。…

【微信小程序调试工具试用】

【微信小程序调试工具试用】 试用大佬开发的dll拿到某物小程序sign签名 (过于简单 大佬勿喷)本次工具分享到此结束 什么是爬虫逆向? 试用大佬开发的dll拿到某物小程序sign签名 (过于简单 大佬勿喷) 1 如图 下面小程序…

Messari发布Moonbeam简报,每日交易量稳步增长,首次公布利润数据

区块链数据公司Messari首次发布Moonbeam项目分析简报,从项目市值、链上数据表现、质押以及Moonbeam的技术优势XCM使用量等角度全面分析。这个再熊市初期上线的项目一直在默默开发,并在跨链互操作领域拥有了相当的实操成绩。我们翻译了Messari简报中的部分…

【数据结构】线性表(二)单链表及其基本操作(创建、插入、删除、修改、遍历打印)

目录 前文、线性表的定义及其基本操作(顺序表插入、删除、查找、修改) 四、线性表的链接存储结构 1. 单链表(C语言) a. 链表节点结构 b. 创建新节点 c. 在链表末尾插入新节点 d. 删除指定节点 e. 修改指定节点的数据 f. …

HarmonyOS开发:Log工具类源码分析

前言 一转眼就十月中旬了,国庆的劲真大,到现在还未缓过来,以至于要更新的文章迟迟未发布,大家可以看到,最近一段时间的文章,都是关于HarmonyOS相关的,两个原因吧,一是我司有这样的任…

伦敦银延时一定存在吗?

伦敦银市场是一个几乎24小时都在不停波动的市场,参与其中的人以短线交易为主,他们所追逐是行情短线波动所带来的收益,如果交易平台所提供的交易环境有问题,反复地出现延时、卡盘等的问题,恐怕会令投资的效果大打折扣&a…

C#中DataAdapter对象

目录 一、DataAdapter对象概述 二、Fill()方法填充数据集DataSet 1.举例 2.源码 3.生成效果 三、Update()方法 1.Update()方法更新数据源 2.设置数据库主键 3.源码 4.生成效果 一、DataAdapter对象概述 DataAdapter对象是一个数据适配器对象,是DataSet与…

【Spring篇】详解AOP相关知识

🎊专栏【Spring】 🍔喜欢的诗句:天行健,君子以自强不息。 🎆音乐分享【如愿】 🎄欢迎并且感谢大家指出小吉的问题🥰 文章目录 🌺AOP简介🌺AOP作用🌺AOP核心概…