docs: add NAC Presale Address Audit Report
This commit is contained in:
parent
1d7a9f79a3
commit
78bc376ccb
|
|
@ -0,0 +1,71 @@
|
|||
# NAC Presale 平台地址核查报告
|
||||
|
||||
**作者**: Manus AI
|
||||
**日期**: 2026-03-17
|
||||
|
||||
本报告对 NAC Presale 平台(前端、后端、数据库及智能合约)中涉及的所有区块链地址进行了全面核查,包括合约地址、收款地址、RPC 节点及环境变量配置。通过代码审计和链上数据验证,确认了各地址的有效性,并指出了需要修复的不一致问题。
|
||||
|
||||
## 1. 核心合约地址验证
|
||||
|
||||
通过直接调用 BSC 和 Ethereum 主网的 RPC 节点,对平台中配置的核心合约地址进行了链上验证。
|
||||
|
||||
| 网络 | 合约类型 | 地址 | 链上状态 | 余额/持有量 | 结论 |
|
||||
| :--- | :--- | :--- | :--- | :--- | :--- |
|
||||
| **BSC** | XIC Token | `0x59FF34dD59680a7125782b1f6df2A86ed46F5A24` | ✅ 有效合约 | - | **正确**。合约已在 BscScan 验证源码,符号为 XIC。 |
|
||||
| **BSC** | Presale v2 | `0x5953c025dA734e710886916F2d739A3A78f8bbc4` | ✅ 有效合约 | 2,500,000,000 XIC | **正确**。这是当前实际使用的预售合约,持有 25 亿 XIC 预售额度。 |
|
||||
| **ETH** | Presale | `0x85AB2F2d9f7ca7ecB272b5E8726c70f3fd45D1E3` | ✅ 有效合约 | 0 ETH | **正确**。合约已在 Etherscan 验证源码。 |
|
||||
| **BSC** | USDT (BEP-20) | `0x55d398326f99059fF775485246999027B3197955` | ✅ 有效合约 | - | **正确**。标准的 BSC USDT 合约地址。 |
|
||||
| **ETH** | USDT (ERC-20) | `0xdAC17F958D2ee523a2206206994597C13D831ec7` | ✅ 有效合约 | - | **正确**。标准的 ETH USDT 合约地址。 |
|
||||
| **TRON** | USDT (TRC-20) | `TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t` | ✅ 有效合约 | - | **正确**。标准的 TRON USDT 合约地址。 |
|
||||
|
||||
## 2. 收款与运营钱包验证
|
||||
|
||||
对平台中用于接收用户资金和发放代币的钱包地址进行了核查。
|
||||
|
||||
| 钱包用途 | 地址 | 链上状态 | 余额 | 结论 |
|
||||
| :--- | :--- | :--- | :--- | :--- |
|
||||
| **TRON 收款钱包** | `TWc2ugYBFN5aSoimAh4qGt9oMyket6NYZp` | ✅ 有效地址 | 20.89 USDT, 16.26 TRX | **正确**。地址有效且有近期交易记录。 |
|
||||
| **EVM 收款钱包 (BSC/ETH)** | `0x43DAb577f3279e11D311E7d628C6201d893A9Aa3` | ✅ 有效地址 | 20.99 USDT (BSC), 0.0096 ETH | **正确**。用于接收跨链或非合约直接购买的资金。 |
|
||||
| **XIC 发放钱包 (Operator)** | `0x2AECd58D9bA4CA79B253E11Bd463e3d4a54D65cf` | ✅ 有效地址 | 94,999,999,500 XIC, 0.335 BNB | **正确**。由 `OPERATOR_PRIVATE_KEY` 推导得出。 |
|
||||
|
||||
> **安全提示**:Operator 钱包(`0x2AECd58D...`)同时也是 XIC Token 合约和 Presale 合约的部署者(Contract Creator),持有近 950 亿 XIC 代币。该钱包的私钥目前配置在后端环境变量中,用于自动发放代币。请务必确保服务器环境的绝对安全。
|
||||
|
||||
## 3. 发现的不一致与配置问题
|
||||
|
||||
在代码审计过程中,发现了以下几处地址配置不一致或缺失的问题,需要进行修复:
|
||||
|
||||
### 3.1 前端代码中的旧合约地址残留
|
||||
在 `client/src/pages/Tutorial.tsx` 和 `client/src/lib/i18n.ts` 中,仍然残留了旧版的 BSC Presale 合约地址。
|
||||
|
||||
* **错误地址**:`0xc65e7a2738ed884db8d26a6eb2fecf7daca2e90c`
|
||||
* **正确地址**:`0x5953c025dA734e710886916F2d739A3A78f8bbc4`(在 `contracts.ts` 中配置)
|
||||
* **链上验证**:旧地址虽然是一个有效的合约,但其 XIC 余额为 0,且在 3 月 10 日已执行了 `End Presale` 操作。
|
||||
* **修复建议**:将 `Tutorial.tsx` 和 `i18n.ts` 中的旧地址替换为正确的 V2 地址,或直接引用 `contracts.ts` 中的常量。
|
||||
|
||||
### 3.2 数据库 `presale_config` 表配置缺失
|
||||
在后端的 `presale_config` 表中,多个关键地址字段处于未配置或占位符状态:
|
||||
|
||||
* `bscContractAddress`: `0x0000000000000000000000000000000000000000`
|
||||
* `ethContractAddress`: `0x0000000000000000000000000000000000000000`
|
||||
* `trc20ReceivingWallet`: `TXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`
|
||||
* `xicDistributionWallet`: `0x0000000000000000000000000000000000000000`
|
||||
|
||||
> **说明**:虽然系统目前主要依赖代码中硬编码的地址(如 `contracts.ts` 和 `onchain.ts`)以及 `site_settings` 表中的配置,但 `presale_config` 表中的空值可能会在某些后台管理功能中导致显示错误。建议在数据库中补全这些配置。
|
||||
|
||||
### 3.3 EVM 收款地址复用
|
||||
在 `site_settings` 表和 `evmListener.ts` 中,BSC 和 ETH 的收款地址被配置为同一个地址(`0x43DAb577f3279e11D311E7d628C6201d893A9Aa3`)。
|
||||
* **结论**:在 EVM 兼容链上,同一个私钥对应的地址是相同的。这在技术上是完全可行的,且链上验证显示该地址在 BSC 和 ETH 上均有效。无需修改,但需知悉。
|
||||
|
||||
## 4. RPC 节点配置核查
|
||||
|
||||
后端 `onchain.ts` 和 `evmListener.ts` 中配置了多节点 RPC 故障转移池(Multi-node RPC Pool)。
|
||||
|
||||
* **BSC RPC 池**:包含 Binance 官方节点、PublicNode、Ankr 等 9 个节点。
|
||||
* **ETH RPC 池**:包含 PublicNode、Ankr、DRPC 等 7 个节点。
|
||||
* **结论**:RPC 节点配置非常健壮,采用了轮询重试机制,能够有效避免单一节点限流或宕机导致的服务中断。
|
||||
|
||||
## 5. 总结
|
||||
|
||||
NAC Presale 平台的核心合约地址、收款地址和自动发放钱包地址**均正确无误且在链上有效**。资金流向和代币分发逻辑在地址层面上是安全的。
|
||||
|
||||
唯一需要立即执行的修复是:**清理前端代码(Tutorial 和 i18n)中残留的旧版 BSC 预售合约地址**,以避免误导用户。
|
||||
Loading…
Reference in New Issue