Burp Suite 官网 :https://portswigger.net/burp
官方文档:https://portswigger.net/burp/documentation/desktop
完整文档:https://portswigger.net/burp/documentation/contents
Burp Suite 实战指南
- :https://t0data.gitbooks.io/burpsuite/content/
- :https://blog.csdn.net/qq_41691212/article/details/122639862
BurpSuite-collections ( 有关burpsuite的插件(非商店),文章以及使用技巧的收集 ):https://github.com/Mr-xn/BurpSuite-collections
1、安装
burpsuite 是攻击 Web 应用程序的集成平台。功能强大,是渗透测试神器。。。
汉化有些翻译不太对,不建议用汉化。。。
Burpsuite 安装和汉化:https://www.cnblogs.com/w1304099880/p/15031242.html
Java 环境的配置
Java 环境:https://repo.huaweicloud.com/java/jdk/
1. 下载并安装 java。( java8 需要配置 classpath,java11 不需要配置classpath )
2. 我本地 Java 安装路径是 C:\Program Files\Java
3. 配置环境变量。配置 jdk 环境:
- 添加系统环境变量 JAVA_HOME:C:\Program Files\Java\jdk-11.0.12
- 添加到 Path:;%JAVA_HOME%\bin;
4. 验证是否安装成功。win + r ---> cmd ,然后输入 java -version
不需要 配置 java 环境变量的方法
将 BurpLoaderKeygen.jar、burpsuite_pro_v20**.*.jar 放到同一目录下(也可将指定版本的Java放到目录中,注册机会自动调用)
Burpsuite pro 的下载、安装
下载地址:https://portswigger.net/burp/releases
下载 jar 文件,这里下载完是放到 D:\BurpSuitePro 目录下。
Burpsuite pro 注册
注册:https://github.com/h3110w0r1d-y/BurpLoaderKeygen/releases
1. 把下载的工具 BurpLoaderKeygen.jar 移动到 Burpsuite 相同目录下。
2. 双击 BurpLoaderKeygen.jar,点击 Run,burp 运行。
3. 把 BurpLoaderKeygen.jar 中的 Liscense 内容复制到出现的窗口中,点击下一步。
4. 点击 NEXT,再次点击 Mannal Activation
5. 选择 copy request,复制到 Activation Request 中,返回 Activation Response 值。
6. 把 Activation Response 值再复制到 burp 中,点击 Next。
7. 注册成功。
burpsuite 安装与卸载 CA证书
:https://blog.csdn.net/qq_45300786/article/details/106881575
1. 浏览器设置代理 127.0.0.1:8080
2. 访问 http://burp 下载证书
3. 浏览器导入证书
firefox 导入证书 步骤:
chrome 导入证书 步骤:
4. 重启浏览器,证书生效
抓包工具为什么要导入自己的证书
HTTPS握手过程
- 客户端发出请求(ClientHello): 客户端向服务端发起加密通信的请求
- 服务器回应(SeverHello): 服务器收到客户端请求后,确认加密通信协议版本是否一致,如果版本一致则返回服务器证书,否则关闭加密通信
- 客户端回应:客户端收到服务器回应后,客户端首先验证证书是否有效。如果证书失效,则会给访问者一个警示,由其决定是否继续连接。如果证书没失效,则使用证书中的公钥加密一个随机数(pre-master key)返回给服务器,同时返回客户端握手结束通知。
- 服务器的最后回应:服务器收到客户端发来的pre-master key后,计算生成本次会话的“会话密钥”,向客户端发送服务器握手结束通知。
- 整个握手阶段结束。接下来,客户端与服务器进入加密通信。
客户端如何验证证书的合法性
- 首先浏览器读取证书中的证书所有者、有效期等信息进行校验,校验证书的网站域名是否与证书颁发的域名一致,校验证书是否在有效期内
- 浏览器开始查找操作系统中已内置的受信任的证书发布机构CA,与服务器发来的证书中的颁发者CA比对,用于校验证书是否为合法机构颁发
- 如果找不到,浏览器就会报错,说明服务器发来的证书是不可信任的。
- 如果找到,那么浏览器就会从操作系统中取出颁发者CA 的公钥(多数浏览器开发商发布
版本时,会事先在内部植入常用认证机关的公开密钥),然后对服务器发来的证书里面的签名进行解密 - 浏览器使用相同的hash算法计算出服务器发来的证书的hash值,将这个计算的hash值与证书中签名做对比
- 对比结果一致,则证明服务器发来的证书合法,没有被冒充
1.为什么要用证书?
知道什么是证书之前需要了解下 “非对称加密”
- 对称加密:客户端和服务器用一个秘钥加密和解密,效率高
- 非对称加密:将公钥公布于众,客户端拿公钥加密,服务器拿自己的私钥解密,这样即使数据被截获,别人也解密不出明文内容,效率低。
非对称加密有两个秘钥,公钥和私钥,而这两个秘钥只要用一个加密,另一个就能解密,我们正常加密数据用公钥加密,用私钥解密
而我们还有一种用法就是服务器发数据用私钥加密,客户端用公钥解密,那么客户如果用公钥正确解密出数据,那么就证明这个数据一定是服务器发的,因为私钥只有它知道,这个过程我们一般不叫加密,叫签名,也就是服务器对数据签个名,代表这个确确实实是它发的。
其实我们正常情况下因为对称加密效率虽高,但是不安全,因为它告诉对方秘钥的时候这个秘钥容易被截获,但是我们如果用非对称加密,安全是安全,效率又太低,所以一般采用对称加密来加密数据,非对称加密配送对称加密的秘钥。
因为公钥是在网络上进行传输的,那么假如遭遇了如下图所示的中间人攻击,那么A的私钥就可能是伪造的。那么如何验证公钥的合法性呢?------ 证书
2.什么是证书
证书就是由认证机构,采用它们自己的私钥,对发送方的公钥和发送方的信息进行数字加密。各大CA(认证机构)的证书已经默认被添加到了浏览器和操作系统中。
- 服务器生成自己的密匙对——公钥和私钥
- 服务器在认证机构注册自己的公钥
- 认证机构(CA)用自己机构的私钥对,服务器的公钥进行数字签名并生成证书(里面带了这个签名过得公钥和服务器一些信息)
- 认证机构把证书给客户端
- 客户端用认证机构的公钥验证数字签名
- 认证成功后用里面带的服务器的公钥加密并发消息给服务器
- 服务器用自己的私钥解密
这样一来就可以解决数据传输的安全问题了
问题:
- 如果黑客在第二步服务器在认证机构注册公钥的时候截取数据呢?这个完全不用担心,CA证书的申请,流程很多,而且较为严格,比如准备很多文件,再比如CA那边如果通过后还会要申请方这边的管理员验证之类的。
- 第五步的认证机构的公钥咋传输的?如果黑客改了呢?如果改了那么这个证书就不会验证成功,其实各大CA的公钥已经在系统和浏览器中内置了。看下边的例子:百度的证书信息:
3.抓包软件为什么要导入证书
如果用过 Charles、Fiddler 或者其它抓包软件,那么一定对抓 HTTPS 包需要导入抓包软件的证书的流程不陌生,那么为什么它能解密 HTTPS 数据,为什么它需要导包呢?看以下流程:
- 客户端发一个HTTPS请求,然后被Fiddler拦截,并且Fiddler伪装成客户端发送请求给服务器
- 服务器 向 "假装成客户端的FIddler" 返回了CA证书,Fiddler 就获取到了服务器的公钥。
- Fiddler 制作一张证书( 包含假的公钥 ),然后假装成服务器,给客户端发了自己做的证书。
- 客户端生成对称秘钥,并用 Fiddler 假冒的公钥加密发送
- Fiddler用自己的私钥解密获取对称秘钥
- ……
这样的话 Fiddler 能完全获取解析到双方加密的数据。
示例:当我们正常访问百度,查看证书:
开启 Fiddler 后查看证书:
2、官方文档
2.1 burpsuite 入门
:https://portswigger.net/burp/documentation/desktop/getting-started
Step 2: Proxy --- 拦截 http、https
burpsuite 可以拦截 浏览器和目标服务器之间发送的 HTTP 的 request 和 response
- 启动 Burp 自带的浏览器:单击 打开浏览器。这将启动 Burp 自带的浏览器,该浏览器已预先配置为开箱即用地使用 Burp。
- 拦截请求:首先打开拦截 ( intercept is on ),然后使用 Burp 自带的浏览器 ( 也可以使用其他浏览器,使用其他浏览器时需要手动配置代理和证书 ) 访问 https://portswigger.net 。可以看到浏览器发出的HTTP请求,在到达服务器之前被拦截了。
- 转发请求:单击“转发”按钮几次以发送截获的请求以及任何后续请求,直到页面加载到Burp的浏览器中。
- 关闭 拦截:由于浏览器通常发送的请求数量众多,您通常不希望拦截其中的每一个。单击 “intercept is on” 按钮,使其现在显示 “intercept is off”。返回浏览器并确认您现在可以像往常一样与网站进行交互。
Step 3: Proxy --- 修改 request (请求)
在Burp中,转到"“代理>拦截"选项卡,并确保拦截已关闭。启动 Burp 的浏览器并使用它来访问以下URL:https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-excessive-trust-in-client-side-controls
加载页面时,单击“访问实验室”。如果出现提示,请登录到您的 portswigger.net 帐户。几秒钟后,您将看到自己的虚假购物网站实例。
在购物网站上,单击“我的帐户”,然后使用以下凭据登录:
用户名:wiener
密码:peter
请注意,您只有$ 100的商店信用额。
浏览要购买的产品,在要添加到 购物车这个动作之前,打开拦截,然后点击添加购物车,可以看到已经拦截到请求,并注意到正文中有一个名为 的参数,该参数与商品的价格(以美分为单位)相匹配。price
将参数的值更改为 1,然后单击“转发”将修改后的请求发送到服务器。price
再次关闭拦截,以便任何后续请求都可以不间断地通过Burp代理。
在Burp的浏览器中,单击右上角的购物篮图标以查看您的购物车。请注意,夹克的添加成本仅为一美分。
点击下单按钮,以极其合理的价格购买夹克。
恭喜您,您还刚刚解决了您的第一个Web安全学院实验室!您还学习了如何使用打嗝代理拦截、查看和操作 HTTP 流量。
Step 4: Repeater --- 重新发出 ( 重放 ) 请求
右键单击任何请求,然后选择 “Send to Repeater”,
就可以在 Repeater 选项上看到要 重发发送的请求
Step 5: 运行第一次扫描
转到 “仪表板 ( Dashboard )”选项卡,然后选择“新建扫描 ( New scan)”。
在 Scan configuration 中,单击轻量级。轻量级扫描模式旨在尽快提供目标的非常高级的概览。使用此模式的扫描最多可运行 15 分钟。
单击 “确定” 启动扫描。这时会将新任务添加到仪表板,会实时显示一些关键信息,如当前正在运行的扫描阶段、已发送的请求数等。
查看爬网的实际效果
转到 “目标>站点地图”选项卡,并注意 的新条目。展开此节点以查看爬网程序到目前为止已成功发现的所有内容。如果等待几秒钟,您将看到地图正在实时更新
查看已识别的问题
在仪表板中监视扫描的状态。一两分钟后,爬网将完成,并且 Burp 扫描程序将开始审核漏洞。当它发现问题时,这些问题将显示在“仪表板”选项卡上的“问题活动”面板中。
任意选择一个问题点击,可以看到“通报”选项卡,其中包含有关问题类型的关键信息,包括详细说明和一些补救建议。旁边是几个选项卡,这些选项卡提供了Burp扫描仪发现此问题的证据。这通常是请求和响应,但会因问题类型而异。
生成报告:转到“目标>站点地图”选项卡,右键单击 的条目,然后选择“问题”>“报告此主机的问题”。
查看和共享报表:在 Burp 的浏览器中打开报表以查看其中包含的内容。这对于向同事或客户报告扫描结果非常有用。
2.2 burpsuite 的 所有 功能
:https://portswigger.net/burp/documentation/desktop/tools
New Scan (扫描、新建扫描)
扫描器自动执行扫描网站内容和漏洞的任务。根据配置,扫描程序可以对应用程序进行爬网以发现其内容和功能,并审核应用程序以发现漏洞。默认情况下,所有扫描都将使用Burp的浏览器,以确保通过浏览器驱动的扫描实现最大覆盖范围。您还可以提供用户凭据集,以便 Burp Scanner 可以发现和审核只有经过身份验证的用户才能访问的内容。导入完整的登录序列甚至使Burp Scanner能够处理更复杂的登录机制,包括单点登录。
Target (目标)
目标选项 包含站点地图,其中包含有关目标应用程序的详细信息。它允许您定义哪些目标在您当前工作的范围内,还允许您推动漏洞测试过程。
- 使用“目标”工具
- 网站地图
- 目标范围
Proxy (代理)
- 开始使用 burp 代理
- 开始使用 burp 代理的拦截功能
- 开始使用 burp 代理的 HTTP 历史记录
- 开始使用 burp 代理的 WebSockets 历史记录
- 使用 burp 代理
- 拦截请求和响应
- 历史
- 选项
- 浏览器内界面
Intruder (入侵、爆破)
- 开始
- 使用 burp 入侵者
- 攻击类型
- 有效载荷位置
- 负载
- 入侵者资源池
- 攻击选项
- 配置攻击
- 攻击结果
- 分析攻击结果
Repeater (重放、重新发送请求)
用于手动操作和重新发出单个HTTP请求,并分析应用程序的响应。您可以从Burp中的任何位置向中继器发送请求,修改请求并一遍又一遍地发出请求。
Sequencer (序列)
序列器是一种用于分析数据项样本中随机性质量的工具。您可以使用它来测试应用程序的会话令牌或其他不可预测的重要数据项,例如反 CSRF 令牌、密码重置令牌等。
- 开始
- 随机性测试的工作原理
- 获取样本
- 分析选项
- 分析结果
Decoder (解码)
解码器是一个简单的工具,用于将编码数据转换为其规范形式,或将原始数据转换为各种编码和散列形式。它能够使用启发式技术智能地识别多种编码格式。
Compare (对比、比较)
比较器是一个简单的工具,用于在任意两个数据项之间执行比较(视觉“差异”)
可以通过以下方式将数据加载到比较器中:
- 将其直接粘贴到剪贴板中。
- 从文件加载它。
- 选择Burp中任意位置的数据,然后从上下文菜单中选择“发送到比较器”。
比较器的一些常见用途如下:
- 查找用户名枚举条件时,可以使用有效和无效的用户名将响应与失败的登录进行比较,以查找响应中的细微差别。
- 当入侵者攻击导致一些非常大的响应,其长度与基本响应不同时,您可以比较这些响应以快速查看差异所在。
- 在比较不同类型的用户生成的站点地图或代理历史记录条目时,您可以比较成对的相似请求,以查看导致不同应用程序行为的差异所在。
- 使用布尔条件注入和其他类似测试测试盲目 SQL 注入 Bug 时,可以比较两个响应,以查看注入不同的条件是否导致了响应的相关差异。
Logger (日志)
用于记录 Burpsuite 套件生成的所有 HTTP 流量,用于调查和分析,但特别适用于:
- 调查如果 Burpsuite 产生意外结果会发生什么。
- 查看当您的工作涉及会话处理时,Burp Suite正在发送的内容的详细信息。
- 确保长期正在进行的任务(如后台扫描)仍在运行。
- 分析需要了解 Burp Suite 正在做什么的任何问题。
Extender (扩展)
扩展选项 允许您通过安装社区创建的扩展来增强 Burp的功能,甚至可以编写自己的扩展。
通过 扩展( 插件 ),可以自定义和扩展 burpsuite 的行为。这些可能包括:
-
修改 HTTP 请求和响应。
-
发送其他请求。
-
自定义打嗝套件的界面。
-
向打嗝扫描仪添加额外的检查。
-
从打嗝套房访问信息。
扩展 的 安装、查看
-
从 BApp 应用商店安装扩展。
-
管理扩展。
-
从文件安装扩展。
-
查看扩展详细信息。
-
了解扩展的性能影响。
-
配置扩展器选项。
-
创建您自己的扩展。
-
查看接口。
Project options (项目配置)
User options (用户配置)
2.3 Burp 教程
拦截 HTTP 请求和响应
使用 Burp Scanner 增强手动测试
使用 Burp Repeater 重新发送单个请求
扫描网站以查找漏洞
在 Burp Suite 中使用实时任务
使用 Burp Suite 项目
使用 Burp Suite 项目选项
浏览 Burp Suite 用户界面
使用 Burp Proxy 的拦截规则
在 Burp Suite 中使用目标范围
使用 Burp Suite 测试 WebSocket
减少手动测试期间的噪音
使用 Burp Intruder 强制登录
使用 Burp Intruder 枚举子域
使用 Logger 查看 Burp 扩展发送的请求
使用 Burp Repeater 测试反射型 XSS
使用 Burp 代理匹配和替换欺骗您的 IP 地址
使用 Burp Intruder 填充凭证
使用 Burp Collaborator 测试异步漏洞
- Intercepting HTTP requests and responses
- Augmenting manual testing using Burp Scanner
- Resending individual requests with Burp Repeater
- Scanning a website for vulnerabilities
- Using live tasks in Burp Suite
- Using Burp Suite projects
- Using Burp Suite project options
- Touring the Burp Suite user interface
- Using Burp Proxy's interception rules
- Using target scope in Burp Suite
- Testing WebSockets with Burp Suite
- Reducing noise during manual testing
- Brute forcing a login with Burp Intruder
- Enumerating subdomains with Burp Intruder
- Viewing requests sent by Burp extensions using Logger
- Testing for reflected XSS using Burp Repeater
- Spoofing your IP address using Burp Proxy match and replace
- Credential stuffing using Burp Intruder
- Testing for asynchronous vulnerabilities using Burp Collaborator
2.4 How do I
设置范围
保存我的工作
搜索
使用自定义配置
安排任务
比较站点地图
使用内容发现
测试移动应用程序
测试 WebSocket
使用 HTTP/2 测试网站
- Set the scope
- Save my work [Pro only]
- Search [Pro only]
- Work with custom configurations
- Schedule tasks
- Compare site maps
- Use content discovery
- Test mobile applications
- Test WebSockets
- Test a website using HTTP/2
2.5 有用的功能
消息编辑器
检查
Burp 的浏览器
Burp Collaborator 客户端
网址匹配规则
CSRF PoC 生成器
查看所有有用的功能
- Message editor
- Inspector
- Burp's browser
- Burp Collaborator client [Pro only]
- URL matching rules
- CSRF PoC generator
- View all useful functions
2.6 burp 扩展 功能
查看 所有 扩展
创建 自定义 扩展
- View all Burp extensions
- Create your own extension
2.7 选项、偏好 设置
:Burp Suite options - PortSwigger
2.8 训练、练习
:Burp Suite Training - PortSwigger
2.9 故障排查
:Troubleshooting common errors within Burp Suite - PortSwigger
3、BurpSuite 插件推荐
From:https://blog.csdn.net/qq_28205153/article/details/113829654
BurpSuite 是最强大的 Web 渗透工具,没有之一!它也是日常中用得最多的工具,它有一些强大的插件可以帮忙减少大量的工作量以及更好地挖掘漏洞,今天分享下我常用的一些 burp 插件。
Autorize --- 强大的越权自动化测试工具
如果你在测试越权的时候,还是手动把URL复制到另一个浏览器的低权限账号中来打开,你就 out了!Autorize 是一个测试权限问题的插件,可以在插件中设置一个低权限账号的 cookie ,然后使用高权限的账号去浏览所有功能,Autorize 会自动用低权限账号的 cookie 重放请求,同时也会发一个不带 cookie 的请求来测试是否可以在未登录状态下访问。
该插件可以直接在 Bapp Store 安装。
Turbo Intruder --- 短时间发送大量请求
如果你还在用 burp 的 intruder 功能来爆破密码,测试并发,爆破目录那你就 out 了!
Turbo Intruder 是 Intruder 的增强, 它可以在短时间内发送大量的 http 请求,具体速度取决于你的网速,即使在比较差的公共网络下,它也能每秒发送几百个请求。
使用 Turbo Intruder 我们可以在几分钟内爆破完百万级的密码字典和目录字典,也可以在一瞬间发送几十个并发请求来测试并发漏洞。
该插件可以直接在Bapp Store 安装。
在要插入 payload 的地方加个 %s ,然后在下面窗口添加自定义的处理脚本即可开始爆破。
Software Vulnerability Scanner --- 自动根据版本号查找 CVE
一个扫描器增强插件,它会检查网站的一些软件版本信息,然后通过 vulners.com 上的漏洞数据库来查询相应的 CVE 编号,找到的结果会显示在漏洞面板上,不用我们自己手动去查找某个版本的 CVE 。
该插件可以直接在Bapp Store 安装。
Scan Check Builder --- 自定义扫描 payload
Scan Check Builder 就是 Burp Bounty ,它提供了十分的简单的方式去为 burp 的扫描功能添加自定义的扫描 payload 。 这样我们可以对一些 burp 没有覆盖到的漏洞添加 payload,并生成相应的漏洞扫描结果。
该插件可以直接在Bapp Store 安装。
Logger++ --- 更强大的请求历史查看器
Logger++ 可以查看所有工具发出的请求,如 repeater, intruder, scanner, 插件等。这样我们可以查看到扫描时的一些 payload,以及在扫描时监控网站后台的响应情况。
该插件可以直接在Bapp Store 安装。
Brida --- 连接 frida 与 burpsuite
Brida 是我很喜欢的一个插件,它可以连接 frida 与 burpsuite ,hook 神器 frida 在移动 APP 的渗透上发挥着很重要的作用,如绕过 ssl pinning , 自动加解密 APP 的请求内容等。我们可以把一些常用的 frida 脚本放在 Brida 的脚本上,然后通过 Brida 启动 APP来进行渗透。后续可能会写一篇文章来介绍怎样使用 Brida。
该插件可以直接在Bapp Store 安装。
J2EEScan --- 强大的 J2EE 后台扫描插件
J2EEScan 是一个扫描器增强插件,可以通过该插件扫描 J2EE 漏洞,如 weblogic、struts2 、 jboss 等漏洞。唯一不足是停止更新了,只有17年的漏洞
该插件可以直接在Bapp Store 安装。
sqlmap4burp++ --- 连接 burpsuite 与 sqlmap
sqlmap4burp++是一款兼容Windows,mac,linux多个系统平台的Burp与sqlmap联动插件。可以方便地对请求调用 sqlmap 来扫描。
该插件地址如下:https://github.com/c0ny1/sqlmap4burp-plus-plus
Knife --- 工具箱、自定义 payload
Knife 插件的主要的目的是对burp做一些小的改进,更加方便使用。个人比较喜欢它的 dissmiss 功能和 hackbar ++ 功能, dissmiss 可以方便让 burp 不拦截某个域名的请求,而 hackbar++ 有很多 payload ,可以方便地在 repeater 中插入 payload, 而且可以添加自定义的插入 payload。
插件的地址是:https://github.com/bit4woo/knife
CSRF Token Tracker --- 绕过CSRF限制
CSRF Token Tracker 可以自动获取 csrf 的 token,对于一些有 csrf 限制的请求,它可以绕过该限制,如暴力PJ具有 csrf token 的登录请求。
该插件可以直接在Bapp Store 安装。
JSON Beautifier --- 格式化查看 json
格式化 json 格式的数据,在查看 json 请求时十分好用。
该插件可以直接在Bapp Store 安装。
Decompressor --- 自动解码和修改 gzip 压缩包
Decompressor 可以自动解码和修改使用 gzip 压缩过的请求数据。有时候网站发送的数据是使用 gzip 压缩过的,使我们在 burp 上看到的请求是乱码,并且无法修改请求数据,Decompressor 可以帮我们自动解码来查看,并且可以以未压缩的方式修改数据,然后再自动进行压缩。
该插件可以直接在Bapp Store 安装。
Wsdler --- 测试 WSDL 请求
Wsdler 可以解析 WSDL 请求,以便使用 repeater 和 scanner 对 WSDL 请求进行测试。
该插件可以直接在Bapp Store 安装。
4、Burp 联动 Sqlmap 插件
sqlmap4burp++
github:https://git hub.com/c0ny1/sqlmap4burp-plus-plus
burp 插件之 burp4sqlmap++ 安装及使用教程:https://blog.csdn.net/luochen2436/article/details/118525503
sqlmap4burp++ 是一款兼容Windows,mac,linux多个系统平台的Burp与sqlmap联动插件
这个插件嘎嘎好用,大大提升了sqlmap 的效率
安装
- 从 github 下载插件
- 进入 burp 拓展模块
- 点击添加
- 上传文件
- 找到下载的插件上传
使用
- 在数据包页面右击,选择对应的插件进行使用
- 配置好对应的参数就直接跳转到sqlmap开始运行了
SQLiPy
需要先下载 jpython 环境,然后在安装