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

给老系统做个安全检查——Burp SqlMap扫描注入漏洞

背景

在AI技术突飞猛进的今天,类似Cursor之类的工具已经能写出堪比大部分程序员水平的代码了。然而,在我们的代码世界里,仍然有不少"老骥伏枥"的系统在兢兢业业地发光发热。这些祖传系统的代码可能早已过时,架构可能岌岌可危,但鉴于种种现实考量,它们还得继续"苟且偷生",维持着脆弱的平衡。
就像一位年迈的守护者,这些老系统虽然迟早会光荣退休,被新系统取代,但在那一刻到来之前,我们需要确保它们依然健健康康、稳稳当当、安安全全地运转。毕竟,谁也不希望它们在退休前突然"暴毙",给我们带来意想不到的麻烦。
让我们以一个陪伴了我们多年的老系统为例,化身"SQL注入检测专家",用Burp Suite和SqlMap这两件"秘密武器",给它做一次全面的"安全体检"吧!毕竟,防范于未然总比亡羊补牢要强得多。

注意:安全风险千千万万,防范措施也是花样不穷,本篇只聊一下SQL注入这个风险。

安装软件

首先,我们需要准备好Burp和SqlMap两个工具,其中Burp是商业软件,包括企业版,专业版和社区版,具体的下载,安装方式,这里不在多说,大家可以去官网看一下,最新的下载地址传送门:https://portswigger.net/burp/releases/professional-community-2025-1-1。

关于Burp的安装,还是用传统搜索引擎搜一下吧,不要问gpt,现阶段的大模型基本不会告诉你怎么做错误的事~

再来说一下sqlmap,这是个开源脚本,用Python写的,所以要使用这个工具的话,我们的开发机器上也要有Python的运行环境才可以。

其他的好像也没啥可说,给出官网和仓库地址

  • 官网:https://sqlmap.org/
  • 仓库:https://github.com/sqlmapproject/sqlmap

上面的软件和脚本准备好后,为了让测试更加顺畅,我们还需要一个Burp的浏览器插件,长这样,在火狐的插件市场搜索安装就好。

准备环境

配置监听端口

首先在浏览器插件上,配置好监听端口,这里以默认的8080为例,也可以配置成任何没有被占用的端口。

需要注意的是,Burp软件上设置的监听端口要和插件保持一致,我们才能执行网络抓/放包的操作

配置流程如下图

访问被测地址

通过火狐浏览器,访问一下我们之前准备好的待测试的地址,抓取到的数据包会反映到burp上面,然后我们把这个请求包保存到文件

注入测试

上述操作完成后,就可以使用sqlmap做注入测试了,这里为了方便,我直接使用batch模式

python sqlmap.py -r test.txt -batch --random-agent

测试完成后,会在控制台的输出中,显示你的测试地址是否有测试漏洞,

有漏洞就像这样👇

没有就像这样

如果看到没有测出注入风险,控制台里还会给我们一下参数调整的建议,比如,我按它的建议 ,把风险等级调高,在增加tamper参数

Python sqlmap.py -r test.txt -batch --random-agent --risk 3 --tamper=space2comment

输出的结果依然是没有注入风险。

总结

好了,简单的SqlMap联动Burp的测试就结束了,实际上,今天我们开发的大部分管理系统,都会使用ORM类的插件来替代传统的数据连接方式,而绝大部分的ORM框架,在中间层就已经基本杜绝了SQL注入的风险了,我们只需要关注业务就好。所以如果你开发的是一个现代应用,那评估安全风险的时候,可以把更多的精力放在其他方面,本篇介绍的内容,只适合给老系统做一些安全检查了。

相关文章:

  • day56 第十一章:图论part06
  • 3. MySQL 用户与权限管理,角色管理(详细说明操作配置)
  • 【JavaEE进阶】MyBatis之动态SQL
  • 学习threejs,使用MeshBasicMaterial基本网格材质
  • 宝塔怎么搭建LiveHelperChat?PHP开源在线客服安装教程
  • Java 循环语句
  • AWS - Redshift - 外部表读取 Parquet 文件中 timestamp 类型的数据
  • Java多线程三:补充知识
  • ncDLRES:一种基于动态LSTM和ResNet的非编码RNA家族预测新方法
  • OpenBayes 教程上新丨语音合成/音乐合成/声音克隆,Step-Audio-TTS 让石矶娘娘秒变川渝辣妹
  • 线程与进程的深入解析及 Linux 线程编程
  • 【JavaScript进阶】作用域解构箭头函数
  • Python连接MySQL数据库完全指南
  • Vue前端开发-Vant之Layout组件
  • 申请证书和证书攻击
  • buuctf-[极客大挑战 2019]Knife题解
  • Part 3 第十二章 单元测试 Unit Testing
  • 论文笔记-WWWCompanion2024-LLM as Data Augmenters for Cold-Start Item Recommendation
  • NoSQL之redis数据库
  • Linux操作系统4-进程间通信4(共享内存原理,创建,查看,命令)
  • 广州建设网站服务/长沙市云网站建设
  • 我自己做个网站怎么做/找关键词的方法与技巧
  • 做广告在哪个网站做效果人流最多/百度最新人工智能
  • 网站怎么做域名解析/推广服务公司
  • 泗阳网站建设/b站推广网站2024年不用下载
  • 大学生做社交网站/互联网电商平台