news 2026/7/22 7:50:03

DVWA靶场SQL盲注入实战:Burp抓包与Sqlmap自动化利用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DVWA靶场SQL盲注入实战:Burp抓包与Sqlmap自动化利用指南

1. 项目概述:为什么从Burp到Sqlmap是SQL盲注入门的黄金路径

如果你刚开始接触Web安全,尤其是想搞懂SQL注入,那么“DVWA靶场”和“SQL盲注”这两个词你一定不陌生。DVWA(Damn Vulnerable Web Application)是一个故意设计得漏洞百出的PHP/MySQL应用,是无数安全爱好者的“新手村”。而SQL盲注,则是注入攻击中更隐蔽、更考验耐心和技巧的一种。很多教程会教你手工构造Payload,一个字符一个字符地去“猜”,过程繁琐且容易出错。

今天我要分享的,是一条更高效、更贴近实战的路径:利用Burp Suite抓取和修改请求,然后交给自动化神器Sqlmap去完成爆破。这就像侦察兵(Burp)先摸清敌情、标定目标,再由炮兵(Sqlmap)进行精准火力覆盖。整个过程,你不仅能深刻理解HTTP请求、Cookie机制、注入原理,还能掌握两大核心工具(Burp和Sqlmap)的联动用法。更重要的是,我会重点讲解在DVWA这个特定环境下,如何正确设置Cookie这个关键参数——这是新手最容易栽跟头的地方,网上很多教程对此一笔带过,导致学习者卡在第一步无法前进。本教程将手把手带你避开所有坑,从环境配置到最终拿到数据库信息,实现一次完整的、可复现的实战通关。

2. 环境准备与核心工具解析

工欲善其事,必先利其器。在开始实战之前,我们需要搭建好实验环境并理解每个工具扮演的角色。这不是简单的安装软件,而是构建一个可控的、用于学习和测试的安全沙箱。

2.1 DVWA靶场:我们的漏洞实验室

DVWA靶场是我们所有操作的目标。我强烈建议你在本地搭建,而不是使用在线版本,因为本地环境更稳定,且可以随意调整安全等级、查看后端源代码,学习效果最好。

搭建步骤与要点:

  1. 集成环境选择:对于新手,最省事的方法是使用像XAMPP、PHPStudy这样的集成环境。它们一键安装了Apache、PHP、MySQL,避免了繁琐的配置。我以PHPStudy为例,因为它对中文环境更友好。
  2. 下载与部署:从DVWA官网或GitHub下载最新源码包。解压后,将整个dvwa文件夹复制到PHPStudy的WWW根目录下(例如D:\phpstudy_pro\WWW\)。
  3. 配置文件修改:找到dvwa/config/config.inc.php.dist文件,复制一份并重命名为config.inc.php。用文本编辑器打开,找到数据库配置部分:
    $_DVWA[ 'db_server' ] = '127.0.0.1'; $_DVWA[ 'db_database' ] = 'dvwa'; $_DVWA[ 'db_user' ] = 'root'; $_DVWA[ 'db_password' ] = 'p@ssw0rd'; // 修改为你的MySQL密码 $_DVWA[ 'db_port' ] = '3306';
    db_password修改为你本地MySQL的root密码(PHPStudy默认密码可能是root或空)。
  4. 数据库初始化:在浏览器中访问http://localhost/dvwa/setup.php。页面会提示你点击“Create / Reset Database”按钮。点击后,DVWA会自动创建所需的数据库和表。如果遇到连接错误,请回头检查config.inc.php中的密码和127.0.0.1这个地址是否正确。
  5. 登录与安全等级设置:初始化成功后,使用默认账号admin,密码password登录。进入后,务必在左侧“DVWA Security”页面中,将安全等级设置为“Low”。这是为了方便我们进行注入测试,在“Medium”或“High”等级下,会有更多的过滤和防护机制。

注意:很多人在数据库初始化环节失败,八成是数据库密码不对。PHPStudy的MySQL密码可能在安装时自定义过,务必使用你设置的那个密码,而不是想当然地用root

2.2 Burp Suite:流量拦截与操纵大师

Burp Suite是Web安全测试的瑞士军刀,我们这里主要用到它的**代理(Proxy)重放(Repeater)**功能。社区版(免费)完全够用。

核心配置与避坑点:

  1. 启动与代理设置:启动Burp,在“Proxy” -> “Options”中,确保代理监听在127.0.0.1:8080(默认)。记住这个地址和端口。
  2. 浏览器代理配置:这是关键一步。你必须让浏览器流量经过Burp。以Chrome为例,可以安装SwitchyOmega这类插件,新建一个情景模式,配置HTTP和HTTPS代理为127.0.0.1:8080。更简单的方法是直接启动Burp内置的浏览器(Burp Suite Professional版功能),或通过系统设置配置全局代理。我个人的习惯是使用Burp内置浏览器,因为它自动配置好了证书和代理,省去很多麻烦。
  3. 安装CA证书:为了拦截和解密HTTPS流量,必须在浏览器中安装Burp的CA证书。在Burp中,访问http://burphttp://127.0.0.1:8080,点击“CA Certificate”下载证书文件,然后在浏览器的证书管理器中导入并信任它。如果不做这一步,访问HTTPS网站会报安全错误,你什么也抓不到。
  4. 开始拦截:在Burp的“Proxy” -> “Intercept”标签页,确保“Intercept is on”按钮是按下状态。此时,你在浏览器中的所有请求都会被Burp暂停并显示出来。

实操心得:刚开始时,建议先访问一个普通HTTP网站(比如你刚搭建的本地DVWA,通常是HTTP),测试拦截是否成功。成功后再尝试HTTPS站点。如果遇到问题,首先检查代理地址端口是否一致,其次检查证书是否安装正确。

2.3 Sqlmap:自动化SQL注入攻击框架

Sqlmap是用Python写的开源工具,它能自动检测和利用SQL注入漏洞,支持多种数据库(MySQL, Oracle, PostgreSQL等),功能极其强大。我们用它来替代繁琐的手工盲注。

安装与验证:

  1. 安装:确保系统已安装Python(建议3.x版本)。通过pip安装是最简单的方式:pip install sqlmap。也可以从GitHub克隆源码:git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git
  2. 验证:打开命令行(Windows的CMD或PowerShell,Linux/Mac的Terminal),输入sqlmap -h。如果能看到一长串帮助信息,说明安装成功。
  3. 基本概念:Sqlmap通过分析HTTP请求(GET/POST)来工作。你需要给它一个“攻击点”,通常是一个包含参数的URL。它会向这个点发送大量精心构造的Payload,通过分析响应差异(布尔盲注的时间差、内容差异等)来判断是否存在注入点并最终提取数据。

工具链关系梳理:Burp负责“抓”和“改”,它给我们提供一个真实的、带有会话状态(Cookie)的HTTP请求。Sqlmap负责“打”,它接收这个请求文件,自动化地执行注入攻击。我们的工作流程是:用浏览器和Burp正常操作DVWA,在疑似注入点拦截请求,将请求保存为文件,最后用Sqlmap加载这个文件进行攻击。

3. 实战流程拆解:捕获攻击请求

一切准备就绪,现在我们进入DVWA,开始模拟一次真实的漏洞发现与利用过程。我们的目标是DVWA的“SQL Injection (Blind)”模块。

3.1 定位漏洞点与正常交互

  1. 在DVWA左侧菜单点击“SQL Injection (Blind)”。你会看到一个简单的输入框,提示你输入User ID。
  2. 我们先进行一次正常查询,输入1,点击“Submit”。页面会返回用户ID为1的用户名(通常是“admin”)。这个行为对应的HTTP请求,就是我们后续攻击的蓝本。
  3. 理解请求本质:此时查看浏览器地址栏,URL可能是http://localhost/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#。这是一个典型的GET请求,参数id的值是1Submit的值是Submit。我们的注入点就是id这个参数。

3.2 利用Burp Suite拦截关键请求

这是将手动测试转化为自动化攻击的桥梁步骤。

  1. 确保Burp的拦截(Intercept)处于开启状态。
  2. 回到DVWA的盲注页面,在输入框中不要直接输入数字,而是先输入一个测试Payload,例如1'(数字1加一个单引号)。点击“Submit”。
  3. 此时,请求会被Burp Suite拦截。你会在Burp的“Intercept”标签页看到完整的HTTP请求报文。它大致长这样:
    GET /dvwa/vulnerabilities/sqli_blind/?id=1%27&Submit=Submit HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0... Accept: text/html... Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7... Accept-Encoding: gzip, deflate Connection: close Cookie: PHPSESSID=你的会话ID; security=low Upgrade-Insecure-Requests: 1
  4. 关键观察
    • 注入点GET请求行中的id=1%27%27是单引号'的URL编码。这说明我们的输入被原样送到了服务器。
    • CookieCookie头部的PHPSESSIDsecurity重中之重PHPSESSID是维持你登录状态的会话标识,security=low告诉DVWA我们处于低安全等级。没有这个Cookie,Sqlmap发出的请求会被DVWA视为未登录的访客,直接重定向到登录页面,导致注入失败。这就是绝大多数新手卡住的原因:直接复制URL给Sqlmap,却漏掉了携带会话状态的Cookie。

3.3 保存请求文件以供Sqlmap使用

我们不能让Burp一直拦截着,需要把这个请求保存下来。

  1. 在Burp的拦截界面,右键点击请求报文。
  2. 选择“Copy to file”(保存到文件)。将它保存为一个文本文件,例如dvwa_blind_req.txt
  3. 点击“Forward”放行这个请求,然后回到Burp,关闭拦截(点击“Intercept is on”使其变为“Intercept is off”)。

现在,你得到了一个包含完整HTTP请求(包括至关重要的Cookie头)的文本文件。这个文件就是Sqlmap发动攻击的“作战指令”。

4. Sqlmap自动化攻击详解与Cookie避坑指南

有了请求文件,主角Sqlmap就可以登场了。我们将从最基本的检测开始,逐步深入,直到拖取整个数据库。

4.1 基础注入检测与Cookie参数设置

打开命令行终端,切换到保存dvwa_blind_req.txt文件的目录。

第一个,也是最关键的命令:

sqlmap -r dvwa_blind_req.txt --batch
  • -r dvwa_blind_req.txt-r参数代表“request”,告诉Sqlmap从一个文件中读取HTTP请求。这是最省事的方法,因为文件里包含了URL、方法、参数、Cookie等所有信息。
  • --batch:以“批处理”模式运行,所有交互式提问都选择默认答案。适合新手,避免在命令行中频繁选择“Y”或“N”。

执行过程解析:Sqlmap会开始工作:

  1. 解析请求:它读取文件,识别出注入参数id
  2. 指纹识别:它会尝试识别后端数据库类型、Web应用技术等。
  3. 注入测试:对id参数使用各种Payload进行测试,判断是否存在注入点以及注入类型(布尔盲注、时间盲注等)。

如果一切顺利,几十秒后,你会看到类似下面的结果:

[INFO] testing 'Boolean-based blind - Parameter replace (original value)' [INFO] testing 'MySQL >= 5.0 AND error-based - WHERE, HAVING, ORDER BY or GROUP BY clause' ... [INFO] the back-end DBMS is MySQL [INFO] heuristic (extended) test shows that the back-end DBMS could be 'MySQL 5.0 or later' [INFO] testing for SQL injection on the following parameter: #1* 'GET id' [INFO] testing 'MySQL >= 5.0 boolean-based blind - Parameter replace' [INFO] GET parameter 'id' appears to be 'MySQL >= 5.0 boolean-based blind' injectable

这明确告诉我们:id参数存在基于布尔的盲注漏洞,后端数据库是MySQL 5.0或更高版本。

核心避坑点详解:为什么必须用-r参数?很多教程会教你用-u参数直接指定URL,像这样:sqlmap -u “http://localhost/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit”这样做十有八九会失败!原因如下:

  1. 丢失Cookie-u参数只传递URL,不会自动携带浏览器中的Cookie。而DVWA需要PHPSESSIDsecurity这两个Cookie来验证会话和安全等级。没有它们,请求是未认证的。
  2. 手动添加Cookie的麻烦与易错:你当然可以尝试用--cookie=”PHPSESSID=xxx; security=low”来附加Cookie。但你需要从浏览器开发者工具或Burp中手动复制一长串、随时会过期的会话ID,非常麻烦且容易复制错误或过期。
  3. -r参数的优势:使用-r读取请求文件,Sqlmap会原封不动地使用文件中的所有HTTP头信息,包括正确且有效的Cookie。这是最可靠、最不容易出错的方式,完美模拟了你从浏览器发出的真实请求状态。结论:在测试需要身份认证的Web应用(如DVWA、各类后台系统)时,优先使用-r参数,这是最佳实践,能避开90%的“为什么Sqlmap检测不到注入”这类问题。

4.2 获取数据库信息

确认注入点存在后,我们就可以开始提取信息了。Sqlmap的命令是模块化的,可以一步步深入。

获取当前数据库名称:

sqlmap -r dvwa_blind_req.txt --current-db --batch
  • --current-db:获取当前连接(即漏洞点所连接的)数据库的名称。
  • 执行后,Sqlmap会输出current database: 'dvwa'。这正是我们DVWA应用使用的数据库。

获取所有数据库名:

sqlmap -r dvwa_blind_req.txt --dbs --batch
  • --dbs:枚举数据库管理系统中的所有数据库。
  • 输出会包括information_schema,mysql,dvwa等系统库和用户库。

获取当前数据库的所有表名:知道了数据库名dvwa,接下来看里面有什么表。

sqlmap -r dvwa_blind_req.txt -D dvwa --tables --batch
  • -D dvwa:指定目标数据库为dvwa
  • --tables:枚举该数据库中的所有表。
  • 输出会显示users,guestbook等表。显然,users表是我们最感兴趣的。

4.3 提取核心数据(用户表内容)

现在,让我们把users表里的数据“拖”出来。

获取表结构(字段名):

sqlmap -r dvwa_blind_req.txt -D dvwa -T users --columns --batch
  • -T users:指定目标表为users
  • --columns:枚举该表的所有列(字段)及其数据类型。
  • 输出会显示类似user_id (int),first_name (varchar),last_name (varchar),user (varchar),password (varchar),avatar (varchar)这样的字段信息。userpassword字段是我们的终极目标。

最终,爆出表中的所有数据:

sqlmap -r dvwa_blind_req.txt -D dvwa -T users -C user,password --dump --batch
  • -C user,password:指定要提取的列(字段)为userpassword。你可以根据需要添加其他字段,如first_name
  • --dump:转储(导出)指定列的数据。
  • 执行这个命令后,Sqlmap会开始工作。由于是盲注,速度不会很快,请耐心等待。最终,你会看到清晰的表格输出,显示admingordonb1337pablosmithy等用户的用户名和经过MD5哈希加密的密码。

关于密码破解:Sqlmap非常贴心,在--dump数据的同时,如果发现密码是常见的哈希(如MD5),它会自动调用内置的字典进行破解。你可能会在输出中看到类似[INFO] cracked password 'password' for hash '5f4dcc3b5aa765d61d8327deb882cf99'的信息。DVWA的默认密码password的MD5值就是上面这个,会被瞬间破解。

5. 高级技巧与深度参数解析

掌握了基本流程后,了解一些Sqlmap的高级参数和技巧,能让你的测试更高效、更隐蔽。

5.1 提升效率与规避检测的参数

1. 线程与延迟控制:

  • --threads=10:设置并发线程数,默认为1。提高线程数可以显著加快盲注速度,但设置过高可能对目标服务器造成过大压力或触发防护。对于本地测试的DVWA,可以设置为5-10。
  • --delay=1:在每个HTTP请求之间设置延迟(秒)。在测试生产环境或需要隐蔽时,可以设置一个随机延迟来模拟人工操作,避免被WAF(Web应用防火墙)基于请求频率的规则拦截。

2. 风险等级与测试深度:

  • --level=3:测试等级(1-5)。等级越高,Sqlmap会使用更多、更复杂的Payload和测试技术。对于DVWA的简单漏洞,Level 1就够用。但对于有过滤的复杂场景,可能需要调高等级。
  • --risk=2:风险等级(1-3)。风险越高,使用的Payload可能越具有“侵入性”,比如执行UPDATEINSERT语句,可能导致数据变更。在授权测试中,除非明确知道后果,否则建议使用默认风险等级1。

3. 指定注入技术:

  • --technique=B:如果我们通过初步检测已经知道是布尔盲注(Boolean-based blind),可以用此参数指定只使用这种技术,避免浪费时间尝试其他无关的Payload,从而加快测试速度。

一个组合命令示例:为了提高对DVWA的测试速度,我们可以使用:

sqlmap -r dvwa_blind_req.txt --technique=B --threads=5 --batch

5.2 处理复杂场景与编码问题

1. 处理POST请求:我们的例子是GET请求。如果遇到POST请求(比如一个登录框),-r参数同样完美适用。你只需要在Burp中拦截POST请求并保存为文件即可。Sqlmap能自动识别请求方法。

2. 自定义注入点标记:有时请求文件中有多个参数,但你只想测试其中一个。可以在保存的请求文件中,用*标记注入点。例如,在id=1的值1后面加上*,变成id=1*。然后Sqlmap就会只针对这个标记点进行测试。

3. 编码与混淆:一些应用会对输入进行过滤或编码。

  • --tamper:这是一个强大的参数,可以调用预定义的或自定义的“篡改脚本”,对Payload进行编码、混淆,以绕过简单的WAF或过滤规则。例如,--tamper=space2comment会将空格替换为/**/。Sqlmap内置了很多tamper脚本,位于其tamper/目录下。

5.3 结果保存与报告生成

测试完成后,保存结果很重要。

  • --output-dir=/path/to/save:指定一个目录,Sqlmap会将本次会话的所有数据(日志、目标文件、数据导出文件)保存到这里。
  • 默认情况下,Sqlmap会在用户目录下创建一个.sqlmap/output/目录,按目标主机和端口存储每次的运行结果,非常清晰。

6. 常见问题排查与实战心得

即使按照教程操作,你也可能会遇到一些问题。这里我总结了一些常见的“坑”和解决方法。

6.1 Sqlmap检测不到注入点

这是最常见的问题,可能的原因和解决方案如下:

问题现象可能原因解决方案
输出all tested parameters appear to be not injectable1. 目标参数确实不存在SQL注入漏洞。
2.Cookie失效或缺失,导致请求未认证。
3. 安全等级(如DVWA的security)设置不正确。
4. 网络问题或目标服务不可达。
1. 确认漏洞点(换其他参数或功能点测试)。
2.检查请求文件(-r)中的Cookie是否最新。重新登录DVWA,用Burp抓取新请求保存。这是最高频的解决方案。
3. 确认DVWA安全等级为“Low”。
4. 用浏览器直接访问目标URL,确保服务正常。
Sqlmap很快结束,提示heuristic test shows that the target is protected by some WAF目标可能存在WAF或基础防护。1. 对于DVWA,检查是否误将安全等级设为了“Medium”或“High”。
2. 尝试使用--tamper参数(如space2comment)对Payload进行简单混淆。
3. 增加--random-agent参数,使用随机的User-Agent头。
请求被重定向到登录页面会话Cookie无效或缺失。绝对确保使用-r参数,并且请求文件是从已登录状态的Burp拦截中保存的。手动复制Cookie极易出错。

6.2 Burp与浏览器代理问题

  • Burp抓不到包:检查浏览器代理设置是否指向127.0.0.1:8080;检查Burp的Proxy监听是否开启;尝试关闭所有其他可能占用8080端口的软件(如某些虚拟机、其他代理工具);尝试使用Burp内置浏览器。
  • HTTPS网站显示不安全:未正确安装Burp的CA证书到浏览器。务必从http://burp下载证书,并导入到浏览器的“受信任的根证书颁发机构”存储中。

6.3 DVWA特定问题

  • 数据库连接错误:在访问setup.php时出现。99%的原因是config.inc.php中的数据库密码配置错误。请使用phpMyAdmin或命令行检查你的MySQL root密码。
  • “Cookie ‘PHPSESSID’ is missing”或类似提示:这说明你的请求完全没有Cookie。请严格按照3.2和3.3的步骤,在已登录且Burp拦截开启的状态下,提交一次带Payload的请求并保存。

6.4 个人实操心得与建议

  1. 养成保存请求文件的习惯:对于任何需要认证的测试,第一时间用Burp抓包并-r加载,这是最稳健的流程。
  2. 从简单到复杂:先在DVWA“Low”安全等级下练熟整个流程,理解每个参数的含义。然后再尝试“Medium”等级,此时需要用到--tamper等参数绕过简单的过滤(比如mysql_real_escape_string函数)。
  3. 多看Sqlmap输出:不要只等最终结果。Sqlmap在运行时的实时输出信息量很大,包括它正在测试的Payload类型、响应的差异等。观察这些能帮你更好地理解盲注的原理和Sqlmap的工作逻辑。
  4. 伦理与法律边界:DVWA是合法的学习靶场。但请务必记住,在没有明确书面授权的情况下,对任何非你所有的系统进行渗透测试都是非法的。本教程传授的技术仅限用于安全学习、CTF比赛或对自有系统的授权评估。
  5. 组合工具,理解原理:Burp+Sqlmap是强大的组合,但不要成为“脚本小子”。在工具自动化的同时,要尝试理解其背后的原理:为什么这个Payload能触发布尔盲注?Cookie在会话管理中起什么作用?弄懂这些,你的能力才真正得到了提升。

通过这一套从Burp抓包到Sqlmap自动化利用的完整流程,你不仅成功通关了DVWA的SQL盲注关卡,更重要的是掌握了一套贴近实战的Web漏洞测试方法。这套方法的核心思想——通过代理工具捕获带状态的真实请求,再交由自动化工具进行深度测试——可以广泛应用于各类需要身份认证的Web应用安全评估中。记住,工具是手臂,思路才是大脑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/22 6:04:09

2026年AI写作工具全景解析与选型指南

1. 2026年AI写作工具全景解析论文写作正经历着从传统人工创作向人机协同的范式转移。根据最新学术调研数据显示,超过78%的研究生和62%的教授级学者已在论文创作中常态化使用AI辅助工具。这些工具不再局限于简单的语法检查,而是深度介入到文献综述、实验设…

作者头像 李华
网站建设 2026/7/21 4:15:02

深入解析TI F28004x CSM安全机制:密码匹配流程与OTP配置实战

1. 项目概述与安全机制核心价值在嵌入式系统,尤其是工业控制、汽车电子和高端消费电子领域,保护核心算法、控制逻辑和敏感数据不被窃取或篡改,是产品从研发走向量产必须跨越的一道门槛。这不仅仅是知识产权保护的问题,更直接关系到…

作者头像 李华
网站建设 2026/7/21 4:13:07

2026年CRM系统选型指南:AI与全渠道融合趋势

1. 销售管理系统选型的核心考量销售管理系统(CRM)作为企业数字化转型的核心工具,其选型直接关系到销售团队的工作效率和客户关系管理质量。2026年的CRM市场呈现出三个显著特征:AI深度集成、全渠道数据融合、低代码定制化。这些技术…

作者头像 李华
网站建设 2026/7/21 4:12:43

PyArrow高性能数据处理实战与优化技巧

1. PyArrow库概述:高性能数据处理的瑞士军刀PyArrow作为Apache Arrow项目的Python实现,已经成为现代数据工程领域不可或缺的基础工具。这个库的核心价值在于它打破了传统数据处理中的"序列化-反序列化"性能瓶颈,通过内存中的标准化…

作者头像 李华
网站建设 2026/7/21 4:11:51

StarRocks 3.2集群部署与高可用配置指南

1. StarRocks集群搭建概述StarRocks作为新一代MPP分析型数据库,凭借其优异的实时分析性能和水平扩展能力,在2025年已成为企业级OLAP场景的首选方案。本文将基于最新3.2版本,详细介绍从零搭建生产级StarRocks集群的全流程,包含FE/B…

作者头像 李华
网站建设 2026/7/21 4:11:46

DeerFlow 2.0:开源AI Agent框架的技术架构与实践

1. 项目概述:DeerFlow 2.0的技术革命48k Star的GitHub项目DeerFlow 2.0正在全球开发者社区引发热烈讨论。这个由字节跳动开源的Super Agent Harness框架,在2026年2月28日发布后迅速登上GitHub Trending榜首。作为一个深度重构的版本,它彻底改…

作者头像 李华