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

DamiCMS SQL注入分析

2023年将会持续于B站、CSDN等各大平台更新,可加入粉丝群与博主交流:838681355,为了老板大G共同努力。

一、入口文件(单入口文件模式)

看一下Index.php文件代码:引入了php_safe.php文件
在这里插入图片描述
查看一下php_safe.php防御文件:
在这里插入图片描述
对变量errno/errno/errno/errfile/$errline用了个自定义处理函数set_error_handler做处理:
在这里插入图片描述

做一下分析:
'                                     --过滤单引号
(and|or)\\b.+?(>|<|=|in|like)             --过滤and/or/</>/=/in/like
\\/\\*.+?\\*\\/                         --过滤/ * 
<\\s*script\\b                          --过滤script
\\bEXEC\\b                            --过滤EXEC
UNION.+?SELECT                        --过滤union select
UPDATE.+?SET                          --过滤 update
INSERT\\s+INTO.+?VALUES                --过滤insert into values
(SELECT|DELETE).+?FROM                --过滤select/delete from
HEX(\\s+)?\(.+?\)|IF(\\s+)?\(.+?\)          --过滤hex编码
SLEEP(\\s+)?\(.+?\)                     --过滤sleep
USER(\\s+)?\(.+?\)                     --过滤user
(CREATE|ALTER|DROP|TRUNCATE)\\s+(TABLE|DATABASE) --过滤create/alter/drop/truncate/table/database

对get/post/cookie也做了处理:
在这里插入图片描述

二、漏洞位置定位

C:\phpstudy_pro\WWW\damicms\Web\Lib\Action\ApiAction.class.php 万能获取数据接口
在这里插入图片描述
方法ajax_arclist中,使用了REQUEST传输方式,在65、69、71处有SQL交互,关键变量:ordor/ordor/ordor/where/num/num/num/field,查看是否可控:
在这里插入图片描述
查看一下过滤函数文件:C:\phpstudy_pro\WWW\damicms\Core\Common\functions.php
防SQL:
在这里插入图片描述
防XSS:
在这里插入图片描述

原生SQL:SELECT id,name FROM think_user limit 10
构造写法:$User->where(‘status=1’)->field(‘id,name’)->order(‘id desc’)->limit(5)->select();
生成SQL:SELECT id,name FROM think_user WHERE status=1 order by id desc limit 5
Payload:http://localhost/test0/index.php?s=/api/ajax_arclist/model/article/field/username,userpwd from admi_member%23

相关文章:

DamiCMS SQL注入分析

2023年将会持续于B站、CSDN等各大平台更新&#xff0c;可加入粉丝群与博主交流:838681355&#xff0c;为了老板大G共同努力。 一、入口文件(单入口文件模式) 看一下Index.php文件代码&#xff1a;引入了php_safe.php文件 查看一下php_safe.php防御文件&#xff1a; 对变量e…...

图傅里叶变换的推导和理解

把传统的傅里叶变换以及卷积迁移到Graph上来,核心工作其实就是把拉普拉斯算子的特征函数 e − i ω t e^{-i\omega t} e−iω...

Java八股文(Java面试题)

JDK、JRE、JVM 三者之间的关系&#xff1f;JDK&#xff08;Java Development Kit&#xff09;&#xff1a;是Java开发工具包&#xff0c;是整个Java的核心&#xff0c;包括了Java运行环境JRE、Java工具和Java基础类库。它能够创建和编译程序。JRE&#xff08;Java Runtime Envi…...

java ssm idea高校图书借阅管理系统设计2z87z

本论文是以构建高校图书管理系统设计为目标&#xff0c;使用 jsp制作&#xff0c;由前台用户图书借阅、后台管理员图书分类两大部分组成。着重论述了系统设计分析&#xff0c;系统的实现&#xff08;用户注册模块&#xff0c;用户登录&#xff0c;用户图书借阅模块&#xff0c;…...

电脑重装系统注册表恢复方法

​今天讲关于大家的电脑在遇到一些故障的时候&#xff0c;以及电脑用久了之后会卡顿&#xff0c;那么这时候大家一般都会给电脑重装系统。重装系统之后却发现自己电脑里的注册表不见了&#xff0c;重装系统后怎么恢复注册表?小编就带着大家一起学习重装系统注册表恢复到底是怎…...

信道建模(大尺度、小尺度、莱斯衰落、瑞利衰落、莱斯信道、瑞利信道)

一、大尺度衰落与小尺度衰落 大尺度衰落由收发两端的距离决定&#xff0c;功率上建模为&#xff1a; 小尺度衰落由收发两端的环境决定&#xff0c;比如是否有遮挡&#xff0c;场景有室内、室外、平原、山村、城镇等&#xff0c;这些环境影响到收发两端是否有直达链路&#xff0…...

2022年12月电子学会Python等级考试试卷(四级)答案解析

青少年软件编程&#xff08;Python&#xff09;等级考试试卷&#xff08;四级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1. 有n个按名称排序的商品&#xff0c;使用对分查找法搜索任何一商品&#xff0c; 最多查找次数为5次&#xff0c;则n的值可能为&#xff1f;&…...

通过实例告诉你lua中ipairs到底是怎么遍历的!

这个的文章挺多的&#xff0c;但是有好几种说法并且不全。有人说是忽略手动设定值&#xff0c;有人说是从1开始数&#xff0c;直到序号断开&#xff0c;还有人给出结果&#xff0c;但是和我实机测试的效果不一样&#xff0c; 所以我自己总结一篇。经过我的测试和总结得到以下结…...

Axios异步请求 json格式

Axios是Ajax的一个框架,简化Ajax操作。需要axios.min.js 和vue.js的jar。发送普通参数异步请求以及相应异常情况客户端向服务器端异步发送普通参数值&#xff1a;- 基本格式&#xff1a; axios().then().catch()- 示例&#xff1a;axios({ // axios表示要发送一个异步请求metho…...

Postgresql源码(100)Portal与事务的关系(顶层事务与子事务)

1 总结 portal与事务有强绑定的关系&#xff0c;由portal->createSubid变量记录关联关系。如果为1表示顶层事务&#xff0c;关联的是子事务。 不论是顶层事务还是子事务&#xff0c;提交、回滚时只会处理自己创建出来的portal。 顶层事务会清理非活跃状态的Portal&#xff…...

Java、JSP企业快信系统的设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;计算机网络的出现到现在已经经历了翻天覆地的重大改变。因特网也从最早的供科学家交流心得的简单的文本浏览器发展成为了商务和信息的中心。到了今天&#xff0c;互联网已经成为了大量应用的首选平台&#xff0c;人们已经渐渐习惯了…...

1.2(完结)C语言进阶易忘点速记

1.大端存储&#xff1a;高权位数字放在低地址处&#xff0c;低权位数字放在高地指处。(以字节为单位) 2.小端存储&#xff1a;低权位数字放在低地址处&#xff0c;高权位数字放在高地址处。(以字节为单位) 3.变量(char类型)进行运算的时候一定要注意整形提升与截断&#xff0…...

雅思经验(十一)

写作&#xff1a;WRITINGTASK 2Governments should spend money on railways rather than roads.To what extent do you agree or disagree with this statement?Give reasons for your answer and include any relevant examples from your own knowledge or experience.思路…...

C++中的智能指针

1.RAII 与引用计数了解 Objective-C/Swift 的程序员应该知道引用计数的概念。引用计数这种计数是为了防止内存泄露而产生的。 基本想法是对于动态分配的对象&#xff0c;进行引用计数&#xff0c;每当增加一次对同一个对象的引用&#xff0c;那么引用对象的引用计数就会增加一次…...

LSTM已死,Transformer当立(LSTM is dead. Long Live Transformers! ):下

2017 年,Google 在论文 Attention is All you need 中提出了 Transformer 模型,其使用 Self-Attention 结构取代了在 NLP 任务中常用的 RNN 网络结构。而且实验也证明Transformer 在效果上已经完败传统的 RNN 网络。Transformer 的整体模型架构如下图所示。尽管它看起来还是很…...

OJ万题详解––[NOIP2004 提高组] 合并果子(C++详解)

目录 题目 分析 参考代码 题目 题目描述 一个果园里&#xff0c;多多已经将所有的果子打了下来&#xff0c;而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并&#xff0c;多多可以把两堆果子合并到一起&#xff0c;消耗的体力等于两堆果子的…...

MySQL-字符集和比较规则

在计算机中只能存储二进制数据&#xff0c;那该怎么存储字符串呢&#xff1f;当然是建立字符与二进制数据的映射关系 了&#xff0c;建立这个关系最起码要搞清楚两件事&#xff1a; 界定清楚字符范围&#xff1a;需要把哪些字符映射成二进制数据&#xff1f;编码与解码&#x…...

微搭低代码从入门到精通12-网格布局

开发小程序首要的就是考虑布局的问题&#xff0c;我们在以前的版本只能选择普通容器结合图片和文本组件来构建页面。 使用通用组件布局也可以&#xff0c;但有个问题是你要先学习CSS&#xff0c;要懂布局的概念&#xff0c;比如需要知道啥是flex布局&#xff0c;然后还得熟悉每…...

【c语言】二叉树

主页&#xff1a;114514的代码大冒险 qq:2188956112&#xff08;欢迎小伙伴呀hi✿(。◕ᴗ◕。)✿ &#xff09; Gitee&#xff1a;庄嘉豪 (zhuang-jiahaoxxx) - Gitee.com 引入 我们之前已经学过线性数据结构&#xff0c;今天我们将介绍非线性数据结构----树 树是一种非线性的…...

六、Java框架之SpringBoot

黑马课程 文章目录1. SpringBoot入门1.1 SpringBoot入门案例步骤1&#xff1a;创建SpringBoot项目高版本springboot常见错误步骤2&#xff1a;创建BookController步骤3&#xff1a;启动服务器并运行程序pom.xml示例1.2 官网创建SpringBoot1.3 SpringBoot工程快速启动问题导入打…...

芯片高加速温湿度测试HAST:从步骤到报告讲解

其可靠性和稳定性成为消费者和制造商关注的焦点。高加速温湿度测试&#xff08;Highly Accelerated Stress Test, HAST&#xff09;作为一种有效的可靠性测试方法&#xff0c;近年来在行业内得到了广泛的应用。本文将从HAST测试的步骤、实际案例以及如何生成详细的测试报告等方…...

植物大战僵尸95版下载2026最新版及与原本区别介绍

一、游戏版本简介 植物大战僵尸95版是基于官方原版修改优化的经典改版&#xff0c;也是国内玩家知名度最高、流传最广的怀旧改版之一。该版本保留原版全部关卡、场景、背景音乐以及基础玩法&#xff0c;没有大幅度颠覆原作设定&#xff0c;仅对植物属性、僵尸数值、判定机制进…...

MediaCreationTool.bat:Windows部署自动化脚本封装架构深度解析

MediaCreationTool.bat&#xff1a;Windows部署自动化脚本封装架构深度解析 【免费下载链接】MediaCreationTool.bat Universal MCT wrapper script for all Windows 10/11 versions from 1507 to 21H2! 项目地址: https://gitcode.com/gh_mirrors/me/MediaCreationTool.bat …...

从人工到有机:数字健康AI的范式转变与工程实践

1. 从“人工”到“有机”&#xff1a;一次关于智能本质的范式转变在数字健康领域&#xff0c;我们每天都在与“人工智能”打交道。从辅助医生阅片的影像分析系统&#xff0c;到预测患者风险的算法模型&#xff0c;AI似乎已经成为推动医疗革新的核心引擎。然而&#xff0c;当我们…...

智能家居生态博弈下,如何构建本地优先的自主智能家居系统

1. 智能家居生态的十字路口&#xff1a;当选择变成非此即彼几年前&#xff0c;如果你问我怎么搭建一个智能家居&#xff0c;我可能会兴致勃勃地跟你聊起各种开源平台、五花八门的协议和那些充满极客气质的独立品牌设备。那时候&#xff0c;市场像个热闹的集市&#xff0c;虽然有…...

【仿真实战】AnyLogic地铁站客流仿真:从零搭建带安检与限流的多层车站模型

1. 从零开始搭建地铁站仿真模型 第一次接触AnyLogic做地铁站客流仿真时&#xff0c;我完全被各种模块和参数搞晕了。后来在几个实际项目中摸爬滚打&#xff0c;终于总结出一套小白也能快速上手的方法。这次我们就来搭建一个包含安检区和限流措施的多层地铁站模型&#xff0c;整…...

芯片行业变革:开源硬件、可重构芯片与商业模式创新

1. 行业拐点&#xff1a;传统芯片商业模式为何难以为继&#xff1f;干了十几年芯片设计&#xff0c;从流片工程师到项目负责人&#xff0c;我亲眼见证了行业从“黄金时代”到如今“卷成本、卷工艺”的艰难转型。最近和几个老同事聊天&#xff0c;大家不约而同地提到一个词&…...

如何用开源Lenovo Legion Toolkit彻底掌控你的拯救者笔记本:技术深度解析与实战指南

如何用开源Lenovo Legion Toolkit彻底掌控你的拯救者笔记本&#xff1a;技术深度解析与实战指南 【免费下载链接】LenovoLegionToolkit Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops. 项目地址: https://gitcode.com/gh_mirrors/le/Lenovo…...

终极指南:如何用免费3D模型库打造你的Cherry MX个性化键帽

终极指南&#xff1a;如何用免费3D模型库打造你的Cherry MX个性化键帽 【免费下载链接】cherry-mx-keycaps 3D models of Chery MX keycaps 项目地址: https://gitcode.com/gh_mirrors/ch/cherry-mx-keycaps 想为你的机械键盘打造一套独一无二的键帽吗&#xff1f;Cherr…...

收藏!小白程序员快速入行Agent开发:低门槛高薪风口已开启!

本文详细介绍了Agent开发领域的入门要求&#xff0c;强调Python工程能力、LLM API调用、RAG技术、Function Calling原理等核心技能。文章指出&#xff0c;虽然Agent开发对学历要求不高&#xff0c;但需掌握扎实的技术栈和具备实战项目经验&#xff0c;建议小白抓住当前低门槛窗…...