uups-checker 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitmodules +6 -0
- package/AIFI_AUDIT.md +220 -0
- package/ALL_AUDITS_SUMMARY.md +366 -0
- package/ALPHA_PROXY_CRITICAL_FINDING.md +136 -0
- package/ALPHA_PROXY_FINAL_ANALYSIS.md +213 -0
- package/ALPHA_PROXY_FINAL_VERDICT.md +233 -0
- package/ALPHA_PROXY_SELFDESTRUCT_EXPLOIT.md +161 -0
- package/ARIA-foundry-test.txt +9 -0
- package/ARIA-mythril-analysis.txt +20 -0
- package/ARIA-slither-analysis.txt +38 -0
- package/ARIA_AI_SECURITY_AUDIT.md +290 -0
- package/ARIA_VERIFIED_AUDIT.md +259 -0
- package/ARIA_VERIFIED_slither.txt +76 -0
- package/ARIVA_source.txt +1 -0
- package/ARK_AUDIT.md +349 -0
- package/BANANA_AUDIT.md +365 -0
- package/BAS_AUDIT.md +451 -0
- package/BAS_TOKEN_AUDIT.md +235 -0
- package/BCE_EXPLOIT_ANALYSIS.md +165 -0
- package/BEEFY_BNB_CHAIN_ANALYSIS.md +488 -0
- package/BEEFY_MONAD_ANALYSIS.md +239 -0
- package/BEEFY_STAKING_ANALYSIS.md +136 -0
- package/BEEFY_XVS_WBNB_ACTUAL_FINDINGS.md +223 -0
- package/BEEFY_XVS_WBNB_CRITICAL_FINDINGS.md +269 -0
- package/BLOCKSEC_ATTACK_KNOWLEDGE_BASE.md +771 -0
- package/BRISE_ANALYSIS.txt +31 -0
- package/BRISE_BSC_DAPPS.txt +68 -0
- package/BRISE_EXPLOITS_FOUND.md +98 -0
- package/BRISE_REAL_EXPLOITS.md +115 -0
- package/BRISE_WHITEHAT_REPORT.md +162 -0
- package/BRISEstake_Analysis.txt +95 -0
- package/BSCSLOCKTOKEN_CRITICAL_FINDING.md +240 -0
- package/BSW_BISWAP_SECURITY_AUDIT.md +330 -0
- package/BTCST_FINAL_VERDICT.md +319 -0
- package/BTCST_MINING_REBASE_ANALYSIS.md +229 -0
- package/BTCST_ROUNDING_DEEP_DIVE.md +293 -0
- package/BTCST_ROUNDING_FINAL_VERDICT.md +9 -0
- package/BTCST_SECURITY_ANALYSIS.md +391 -0
- package/BTR_AUDIT.md +210 -0
- package/BeamBridge-analysis.md +226 -0
- package/BeamToken-analysis.md +201 -0
- package/BitgertSwap_Investigation.txt +107 -0
- package/CEEK_STAKING_ANALYSIS.md +0 -0
- package/CHAINBASE_AUDIT.md +422 -0
- package/COMPLETE_AUDIT_SUMMARY.md +342 -0
- package/CORRECTED_ANALYSIS.txt +115 -0
- package/DBXEN_COMPARISON_SUMMARY.md +232 -0
- package/DBXEN_EXPLOIT_ANALYSIS.md +530 -0
- package/DOPFairLaunch_raw.json +29 -0
- package/DOPFairLaunch_source.txt +0 -0
- package/DOP_BRIDGE_FINAL_ANALYSIS.txt +86 -0
- package/DOP_BUSD_LP_ANALYSIS.txt +44 -0
- package/DOP_FAIRLAUNCH_ANALYSIS.txt +61 -0
- package/DOP_FAIRLAUNCH_FINAL_VERDICT.txt +113 -0
- package/DOP_STAKING_CONTRACT_ANALYSIS.txt +67 -0
- package/DSYNC_ECOSYSTEM_ANALYSIS.md +221 -0
- package/DSyncStaking-exploit-analysis.md +153 -0
- package/DSyncVault-analysis.md +120 -0
- package/DUSD_PROXY_AUDIT.md +407 -0
- package/DXSALE_LOCK_AUDIT.md +0 -0
- package/DXSaleLock_bytecode.txt +1 -0
- package/ECHIDNA_QUICK_START.md +101 -0
- package/ELEPHANT_ECOSYSTEM_AUDIT_PLAN.md +159 -0
- package/ELEPHANT_ECOSYSTEM_COMPREHENSIVE_AUDIT.md +427 -0
- package/ELEPHANT_SECURITY_ANALYSIS.md +209 -0
- package/ELEPHANT_VULNERABILITIES_EXPLAINED.md +455 -0
- package/EXPLOIT_FIX.md +300 -0
- package/EXPLOIT_INSTRUCTIONS.md +273 -0
- package/EXPLOIT_SUMMARY.md +285 -0
- package/EXPLOIT_SUMMARY.txt +175 -0
- package/FALCON_FINANCE_AUDIT.md +258 -0
- package/FANDOM_AUDIT.md +359 -0
- package/FEE_ON_TRANSFER_ANALYSIS.md +228 -0
- package/FINAL_AUDIT_REPORT.md +0 -0
- package/FOLIO_PROXY_AUDIT.md +299 -0
- package/FOT_EXPLOIT_RESULTS.txt +110 -0
- package/FOT_TOKENS_AUDITED.md +103 -0
- package/HEGIC-mythril-analysis.txt +39 -0
- package/HEGIC_COMPLETE_ANALYSIS.md +343 -0
- package/HOTCROSS_SWAP_EXPLOIT_ANALYSIS.md +123 -0
- package/ICECREAMSWAP_EXPLOITS.md +259 -0
- package/IMMUNEFI_REPORT.md +314 -0
- package/KCCPAD_EXPLOIT_GUIDE.md +285 -0
- package/KEL_CEL_EXPLOIT_ANALYSIS.md +0 -0
- package/KOGE_AUDIT.md +328 -0
- package/LENDFLARE_ANALYSIS.md +239 -0
- package/LENDFLARE_ECHIDNA_GUIDE.md +356 -0
- package/LENDFLARE_EXPLOIT_INSTRUCTIONS.md +297 -0
- package/LENDFLARE_EXPLOIT_SUMMARY.md +292 -0
- package/LENDFLARE_FLASHLOAN_GUIDE.md +383 -0
- package/LENDFLARE_FUZZING_RESULTS.md +252 -0
- package/LENDFLARE_HONEYPOT_BYPASS_ANALYSIS.md +420 -0
- package/LENDFLARE_MANUAL_FUZZING.md +324 -0
- package/LENDFLARE_MYTHRIL_ANALYSIS.md +339 -0
- package/LENDFLARE_V3_BYPASS.md +296 -0
- package/LFTDECOMPILE.txt +14478 -0
- package/LFT_ACCOUNTING_ANALYSIS.md +0 -0
- package/LFT_ACCOUNTING_BUG_ANALYSIS.md +426 -0
- package/LFT_BACKDOOR_DEEP_DIVE.md +0 -0
- package/LFT_CRITICAL_EXPLOIT_CONFIRMED.md +428 -0
- package/LFT_EXPLOIT_VISUAL.md +253 -0
- package/LFT_QUICK_SUMMARY.md +124 -0
- package/LFT_REVERSE_EXPLOIT_ANALYSIS.md +521 -0
- package/MGO_AUDIT_REPORT.md +420 -0
- package/MYTHRIL_FINAL_REPORT.md +306 -0
- package/MYTHRIL_SLITHER_SUMMARY.md +244 -0
- package/NETX_MIGRATION_AUDIT.md +0 -0
- package/NPM_PUBLISH_GUIDE.md +0 -0
- package/NRV_CRITICAL_EXPLOIT.txt +143 -0
- package/NetX_Analysis.txt +76 -0
- package/NetX_Migration_bytecode.txt +1 -0
- package/NetX_Migration_source.txt +0 -0
- package/NetX_Token_source.txt +0 -0
- package/NetxWhitehatRescue +22 -0
- package/OILER_ATTACK_VISUAL.md +351 -0
- package/OILER_BLOCKSEC_TEST_RESULTS.md +421 -0
- package/OILER_DEEP_ANALYSIS.md +212 -0
- package/OILER_FINAL_EXPLOIT_REPORT.md +241 -0
- package/OILER_FINAL_VERDICT.md +339 -0
- package/OILER_REENTRANCY_EXPLAINED.md +638 -0
- package/OILER_REENTRANCY_FINAL_SUMMARY.md +391 -0
- package/OILER_REENTRANCY_REALITY_CHECK.md +393 -0
- package/OILER_REENTRANCY_STEP_BY_STEP.md +597 -0
- package/OILER_STAKING_MAINNET_ANALYSIS.md +366 -0
- package/OILER_STAKING_SECURITY_ANALYSIS.md +409 -0
- package/PANCAKESWAP_UNDERFLOW_HUNTING.md +317 -0
- package/POLS_MULTICHAIN_AUDIT.md +0 -0
- package/POSI_STAKING_AUDIT.md +0 -0
- package/PROXY2_SECURITY_ANALYSIS.md +0 -0
- package/Proxy2TACS +29748 -0
- package/QUICK_START.md +240 -0
- package/RAMP_SECURITY_ANALYSIS.md +0 -0
- package/README.md +238 -0
- package/REAUDIT_MASTER_LIST.txt +15 -0
- package/RING_analysis.txt +212 -0
- package/RPC +4 -0
- package/RULES.txt +20 -0
- package/SIREN_AUDIT.md +186 -0
- package/SYNC_EXPLOIT_README.md +0 -0
- package/SYNC_TOKEN_EXPLOIT_REPORT.md +224 -0
- package/TLM_raw.html +0 -0
- package/TLM_raw.txt +0 -0
- package/TLM_response.json +1 -0
- package/TRADOOR_AUDIT.md +253 -0
- package/TRUNK_AUDIT.md +285 -0
- package/UNIBASE_AUDIT.md +241 -0
- package/UNLOCK_ANALYSIS.md +0 -0
- package/UNLOCK_EXPLOIT.md +49 -0
- package/UNLOCK_EXPLOIT_ANALYSIS.md +0 -0
- package/UPS +232 -0
- package/UUPSCHECKER +208 -0
- package/VAULT_PROXY_AUDIT.md +457 -0
- package/VAULT_PROXY_FINAL_VERDICT.md +0 -0
- package/VERIFIED_EXPLOITS_FINAL.txt +146 -0
- package/WKEYDAO2_AUDIT.md +245 -0
- package/WSG_AUDIT.md +0 -0
- package/XFI_DEEP_ANALYSIS.md +327 -0
- package/YOOSHI_EXPLOIT_GUIDE.md +119 -0
- package/YSDAO_EXPLOIT_GUIDE.md +0 -0
- package/agent-4-bundle.md +22490 -0
- package/alpha-proxy-echidna.txt +1 -0
- package/alpha-proxy-fuzz-results.txt +81 -0
- package/alpha-proxy-mythril.txt +2 -0
- package/analyze-btcst-farm.js +54 -0
- package/analyze-dxsale-lock.js +75 -0
- package/analyze-elephant.js +69 -0
- package/analyze-fara-rewards.js +109 -0
- package/analyze-fara-storage.js +83 -0
- package/analyze-lft-transaction.js +158 -0
- package/analyze-lock-bytecode.js +59 -0
- package/analyze-shegic.js +0 -0
- package/analyze-staking-abi.js +0 -0
- package/analyze-sxp.js +57 -0
- package/analyze-tlm.js +76 -0
- package/analyze-trumpet.js +98 -0
- package/analyze-unlimited-nft.js +108 -0
- package/analyze_elephant.sh +27 -0
- package/analyze_vault.sh +32 -0
- package/aria-bytecode.txt +1 -0
- package/aria_response.json +1 -0
- package/ark_temp/README.md +66 -0
- package/ark_temp/lib/forge-std/.gitattributes +1 -0
- package/ark_temp/lib/forge-std/.github/CODEOWNERS +1 -0
- package/ark_temp/lib/forge-std/.github/dependabot.yml +6 -0
- package/ark_temp/lib/forge-std/.github/workflows/ci.yml +125 -0
- package/ark_temp/lib/forge-std/.github/workflows/sync.yml +36 -0
- package/ark_temp/lib/forge-std/CONTRIBUTING.md +193 -0
- package/ark_temp/lib/forge-std/LICENSE-APACHE +203 -0
- package/ark_temp/lib/forge-std/LICENSE-MIT +25 -0
- package/ark_temp/lib/forge-std/README.md +314 -0
- package/ark_temp/lib/forge-std/RELEASE_CHECKLIST.md +12 -0
- package/ark_temp/lib/forge-std/package.json +16 -0
- package/ark_temp/lib/forge-std/scripts/vm.py +636 -0
- package/audits/AiFi-security-audit-20260326.md +499 -0
- package/audits/BasedAI-Brains-security-audit-20260324.md +651 -0
- package/audits/BinanceAlphaWallet-pashov-ai-audit-report-20260324-170000.md +362 -0
- package/audits/DGToken-security-audit-20260324.md +376 -0
- package/audits/DSyncStaking-audit-part1.md +161 -0
- package/audits/DSyncStaking-security-audit-20260324.md +547 -0
- package/audits/DecompiledERC20-security-audit-20260325.md +397 -0
- package/audits/DegenVC-security-audit-20260324.md +585 -0
- package/audits/DelreyInu-security-audit-20260324.md +463 -0
- package/audits/DestraNetwork-security-audit-20260324.md +705 -0
- package/audits/DomiToken-security-audit-20260324.md +514 -0
- package/audits/LendFlareToken-security-audit-20260325.md +197 -0
- package/audits/LockReleaseTokenPool-security-audit-20260324.md +482 -0
- package/audits/MOG-pashov-ai-audit-report-20260324-164900.md +229 -0
- package/audits/PAALAI-security-audit-20260324.md +475 -0
- package/audits/PAR-security-audit-20260325.md +311 -0
- package/audits/PepeCoinStaking-security-audit-20260324.md +358 -0
- package/audits/StakingPool-security-audit-20260324.md +517 -0
- package/audits/SyncToken-security-audit-20260324.md +778 -0
- package/audits/UndeadToken-decompiled-security-audit-20260324.md +485 -0
- package/audits/UnknownToken-decompiled-security-audit-20260324.md +647 -0
- package/audits/XFIStaking-security-audit-20260324.md +682 -0
- package/audits/Xfinance-security-audit-20260324.md +463 -0
- package/audits/basedAIFarm-security-audit-20260324.md +330 -0
- package/audits/pepeCoin-security-audit-20260324.md +462 -0
- package/bin/ups +232 -0
- package/binance-wallet-exploit/.env.example +2 -0
- package/binance-wallet-exploit/EXECUTIVE_SUMMARY.md +272 -0
- package/binance-wallet-exploit/EXPLOIT_SUMMARY.md +104 -0
- package/binance-wallet-exploit/FINAL_ANALYSIS.md +326 -0
- package/binance-wallet-exploit/FLASHLOAN_ATTACK.md +292 -0
- package/binance-wallet-exploit/HONEYPOT_REPORT.md +526 -0
- package/binance-wallet-exploit/INVESTIGATION_COMPLETE.md +362 -0
- package/binance-wallet-exploit/LENDFLARE_EXPLOIT.md +219 -0
- package/binance-wallet-exploit/LENDFLARE_FINAL_ATTACK.md +307 -0
- package/binance-wallet-exploit/LENDFLARE_REAL_EXPLOIT.md +286 -0
- package/binance-wallet-exploit/LENDFLARE_RUGPULL.md +269 -0
- package/binance-wallet-exploit/LFT_ANALYSIS.md +206 -0
- package/binance-wallet-exploit/QUICK_START.md +75 -0
- package/binance-wallet-exploit/README.md +195 -0
- package/binance-wallet-exploit/REAL_TX_EXPLOIT_ANALYSIS.md +271 -0
- package/binance-wallet-exploit/REMIX_INSTRUCTIONS.md +223 -0
- package/binance-wallet-exploit/TEST_RESULTS.md +203 -0
- package/binance-wallet-exploit/cache/solidity-files-cache.json +1 -0
- package/binance-wallet-exploit/cache/test-failures +1 -0
- package/binance-wallet-exploit/lib/forge-std/.gitattributes +1 -0
- package/binance-wallet-exploit/lib/forge-std/.github/CODEOWNERS +1 -0
- package/binance-wallet-exploit/lib/forge-std/.github/dependabot.yml +6 -0
- package/binance-wallet-exploit/lib/forge-std/.github/workflows/ci.yml +125 -0
- package/binance-wallet-exploit/lib/forge-std/.github/workflows/sync.yml +36 -0
- package/binance-wallet-exploit/lib/forge-std/CONTRIBUTING.md +193 -0
- package/binance-wallet-exploit/lib/forge-std/LICENSE-APACHE +203 -0
- package/binance-wallet-exploit/lib/forge-std/LICENSE-MIT +25 -0
- package/binance-wallet-exploit/lib/forge-std/README.md +314 -0
- package/binance-wallet-exploit/lib/forge-std/RELEASE_CHECKLIST.md +12 -0
- package/binance-wallet-exploit/lib/forge-std/package.json +16 -0
- package/binance-wallet-exploit/lib/forge-std/scripts/vm.py +636 -0
- package/binance-wallet-exploit/out/build-info/1e9aa7e86cf56962.json +1 -0
- package/binance-wallet-exploit/out/build-info/6f56f10e9d7b56eb.json +1 -0
- package/binance-wallet-exploit/out/build-info/7edba961ff697a24.json +1 -0
- package/binance-wallet-exploit/out/build-info/8c27fe3efea2f2e7.json +1 -0
- package/binance-wallet-exploit/out/build-info/978b680daffec63a.json +1 -0
- package/binance-wallet-exploit/out/build-info/9806b900b5672d0c.json +1 -0
- package/binance-wallet-exploit/out/build-info/b4b9ff36e9b3fc27.json +1 -0
- package/binance-wallet-exploit/out/build-info/b6f4df9ae05c0812.json +1 -0
- package/binance-wallet-exploit/out/build-info/c88dbc86551f7b5c.json +1 -0
- package/binance-wallet-exploit/out/build-info/e9657504010623db.json +1 -0
- package/cache/fuzz/failures/ARIAVerifiedFuzzTest/testFuzz_ApprovalRaceCondition +1 -0
- package/cache/fuzz/failures/HotCrossSwapFuzzTest/testFuzz_DirectTransferExploit +1 -0
- package/cache/fuzz/failures/HotCrossSwapFuzzTest/testFuzz_LargeSwapDrain +1 -0
- package/cache/fuzz/failures/LendFlareFuzz/testFuzz_ApprovalExploit +1 -0
- package/cache/fuzz/failures/LendFlareFuzz/testFuzz_BalanceManipulation +1 -0
- package/cache/fuzz/failures/LendFlareFuzz/testFuzz_RateManipulation +1 -0
- package/cache/fuzz/failures/LendFlareFuzz/testFuzz_StorageManipulation +1 -0
- package/cache/fuzz/failures/PARFuzzTest/testFuzz_OverflowTransfer +1 -0
- package/cache/fuzz/failures/PARFuzzTest/testFuzz_Transfer +1 -0
- package/cache/fuzz/failures/XFIDeepFuzz/testFuzz_FrontrunAddfunds +1 -0
- package/cache/fuzz/failures/XFIDeepFuzz/testFuzz_RewardOverflow +1 -0
- package/cache/fuzz/failures/XFIDeepFuzz/testFuzz_RoundingExploit +1 -0
- package/cache/fuzz/failures/XFIDeepFuzz/testFuzz_WithdrawLimit +1 -0
- package/cache/solidity-files-cache.json +1 -0
- package/cache/test-failures +1 -0
- package/calculate-elephant-flashloan.js +195 -0
- package/check-address-approval.js +112 -0
- package/check-alpha-proxy.js +42 -0
- package/check-arbitrage.js +155 -0
- package/check-aria-token.js +47 -0
- package/check-ark.sh +20 -0
- package/check-btcst-mining.js +75 -0
- package/check-btcst-pools.js +163 -0
- package/check-btcst.js +88 -0
- package/check-caller.js +26 -0
- package/check-ceek-lp.js +73 -0
- package/check-ceek.js +47 -0
- package/check-dxsale-address.js +35 -0
- package/check-fara-exploit-timing.js +56 -0
- package/check-fara-real-exploit.js +73 -0
- package/check-flashloan-limits.js +129 -0
- package/check-kel-cel-pool.js +91 -0
- package/check-lax-staking.js +41 -0
- package/check-lendflare.js +165 -0
- package/check-lft-accounting.js +109 -0
- package/check-lft-roles.js +165 -0
- package/check-lock-time.js +47 -0
- package/check-min-stake.js +73 -0
- package/check-mystery-contract.js +52 -0
- package/check-next-token.js +50 -0
- package/check-nora-lock.js +67 -0
- package/check-oiler-approvals.js +116 -0
- package/check-oiler-proxy.js +73 -0
- package/check-oiler-staking.js +117 -0
- package/check-proxy-simple.js +71 -0
- package/check-recent-stakes.js +54 -0
- package/check-shegic-holdings.js +67 -0
- package/check-snowcrash-ecosystem.js +83 -0
- package/check-sync-lp.js +97 -0
- package/check-sync-stake.js +42 -0
- package/check-tlm.js +37 -0
- package/check-token-pools.js +146 -0
- package/check-trunk-depeg.js +181 -0
- package/check-tusd-decimals.js +58 -0
- package/check-user-storage-deep.js +81 -0
- package/check-welephant-pools.js +130 -0
- package/check-xfi-pool.js +75 -0
- package/check-zypher.js +32 -0
- package/check_proxy.sh +36 -0
- package/compare-tlm-chains.js +90 -0
- package/contract_0x05f2.html +6025 -0
- package/contract_0x3720.html +6361 -0
- package/contract_0x928e.html +5606 -0
- package/contract_0xc42d.html +5304 -0
- package/contract_page.html +5789 -0
- package/decode-stake-tx.js +50 -0
- package/deep-analyze-lock.js +82 -0
- package/dune_uups_proxy_query.sql +42 -0
- package/dune_uups_vulnerable_query.sql +0 -0
- package/echidna/alpha-proxy.yaml +14 -0
- package/echidna/elephant.yaml +7 -0
- package/echidna/lendflare.yaml +42 -0
- package/echidna.config.yaml +12 -0
- package/elephant_raw.json +1 -0
- package/eps_raw.json +1 -0
- package/exploit/.github/workflows/test.yml +38 -0
- package/exploit/.gitmodules +3 -0
- package/exploit/README.md +66 -0
- package/exploit/foundry.lock +8 -0
- package/exploit/lib/forge-std/.gitattributes +1 -0
- package/exploit/lib/forge-std/.github/CODEOWNERS +1 -0
- package/exploit/lib/forge-std/.github/dependabot.yml +6 -0
- package/exploit/lib/forge-std/.github/workflows/ci.yml +125 -0
- package/exploit/lib/forge-std/.github/workflows/sync.yml +36 -0
- package/exploit/lib/forge-std/CONTRIBUTING.md +193 -0
- package/exploit/lib/forge-std/LICENSE-APACHE +203 -0
- package/exploit/lib/forge-std/LICENSE-MIT +25 -0
- package/exploit/lib/forge-std/README.md +314 -0
- package/exploit/lib/forge-std/RELEASE_CHECKLIST.md +12 -0
- package/exploit/lib/forge-std/package.json +16 -0
- package/exploit/lib/forge-std/scripts/vm.py +636 -0
- package/exploit_analysis.txt +51 -0
- package/extract_contract.py +21 -0
- package/extract_elephant_contracts.py +24 -0
- package/fara-staking-bytecode.txt +1 -0
- package/fara-staking-raw.txt +1 -0
- package/fetch-aria.js +46 -0
- package/fetch-contract.js +50 -0
- package/fetch-shegic-source.js +86 -0
- package/fetch-snowcrash.js +44 -0
- package/fetch-staking-source.js +53 -0
- package/fetch-tlm.js +60 -0
- package/fetch_elephant_source.py +32 -0
- package/find-ceek-staking.js +21 -0
- package/find-exploit-tx.js +88 -0
- package/find-oiler-holders.js +100 -0
- package/find-tlm-holder.js +36 -0
- package/find-vulnerable-fund.js +94 -0
- package/foundry.lock +8 -0
- package/fuzz-all.sh +53 -0
- package/get-aria-contract.py +40 -0
- package/get-lft-holders.js +89 -0
- package/get-tlm-source.sh +8 -0
- package/harvest_txs.json +1 -0
- package/lft-bytecode-raw.txt +1 -0
- package/lft-bytecode.json +1 -0
- package/lft-impl.bin +1 -0
- package/lft-implementation-bytecode.txt +1 -0
- package/lib/forge-std/.gitattributes +1 -0
- package/lib/forge-std/.github/CODEOWNERS +1 -0
- package/lib/forge-std/.github/dependabot.yml +6 -0
- package/lib/forge-std/.github/workflows/ci.yml +125 -0
- package/lib/forge-std/.github/workflows/sync.yml +36 -0
- package/lib/forge-std/CONTRIBUTING.md +193 -0
- package/lib/forge-std/LICENSE-APACHE +203 -0
- package/lib/forge-std/LICENSE-MIT +25 -0
- package/lib/forge-std/README.md +314 -0
- package/lib/forge-std/RELEASE_CHECKLIST.md +12 -0
- package/lib/forge-std/package.json +16 -0
- package/lib/forge-std/scripts/vm.py +636 -0
- package/lib/openzeppelin-contracts/.changeset/config.json +12 -0
- package/lib/openzeppelin-contracts/.codecov.yml +12 -0
- package/lib/openzeppelin-contracts/.editorconfig +21 -0
- package/lib/openzeppelin-contracts/.eslintrc +20 -0
- package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +21 -0
- package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml +4 -0
- package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/feature_request.md +14 -0
- package/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +20 -0
- package/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +49 -0
- package/lib/openzeppelin-contracts/.github/actions/setup/action.yml +21 -0
- package/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +55 -0
- package/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
- package/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
- package/lib/openzeppelin-contracts/.github/workflows/checks.yml +118 -0
- package/lib/openzeppelin-contracts/.github/workflows/docs.yml +19 -0
- package/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +68 -0
- package/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
- package/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +34 -0
- package/lib/openzeppelin-contracts/.gitmodules +7 -0
- package/lib/openzeppelin-contracts/.mocharc.js +4 -0
- package/lib/openzeppelin-contracts/.prettierrc +15 -0
- package/lib/openzeppelin-contracts/.solcover.js +13 -0
- package/lib/openzeppelin-contracts/CHANGELOG.md +972 -0
- package/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +73 -0
- package/lib/openzeppelin-contracts/CONTRIBUTING.md +36 -0
- package/lib/openzeppelin-contracts/GUIDELINES.md +148 -0
- package/lib/openzeppelin-contracts/LICENSE +22 -0
- package/lib/openzeppelin-contracts/README.md +107 -0
- package/lib/openzeppelin-contracts/RELEASING.md +45 -0
- package/lib/openzeppelin-contracts/SECURITY.md +42 -0
- package/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
- package/lib/openzeppelin-contracts/audits/2018-10.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
- package/lib/openzeppelin-contracts/audits/README.md +17 -0
- package/lib/openzeppelin-contracts/certora/Makefile +54 -0
- package/lib/openzeppelin-contracts/certora/README.md +60 -0
- package/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
- package/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
- package/lib/openzeppelin-contracts/certora/run.js +160 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
- package/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
- package/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
- package/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
- package/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
- package/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
- package/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
- package/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
- package/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
- package/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
- package/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
- package/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +7 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
- package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
- package/lib/openzeppelin-contracts/certora/specs.json +86 -0
- package/lib/openzeppelin-contracts/contracts/access/README.adoc +43 -0
- package/lib/openzeppelin-contracts/contracts/finance/README.adoc +14 -0
- package/lib/openzeppelin-contracts/contracts/governance/README.adoc +167 -0
- package/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +82 -0
- package/lib/openzeppelin-contracts/contracts/metatx/README.adoc +12 -0
- package/lib/openzeppelin-contracts/contracts/package.json +32 -0
- package/lib/openzeppelin-contracts/contracts/proxy/README.adoc +87 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +41 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +67 -0
- package/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +67 -0
- package/lib/openzeppelin-contracts/contracts/token/common/README.adoc +10 -0
- package/lib/openzeppelin-contracts/contracts/utils/README.adoc +88 -0
- package/lib/openzeppelin-contracts/contracts/vendor/compound/LICENSE +11 -0
- package/lib/openzeppelin-contracts/docs/README.md +16 -0
- package/lib/openzeppelin-contracts/docs/antora.yml +7 -0
- package/lib/openzeppelin-contracts/docs/config.js +21 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +23 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +204 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +48 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crowdsales.adoc +11 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/drafts.adoc +19 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +145 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +71 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +77 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +79 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +77 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +240 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +79 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +31 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +77 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +185 -0
- package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +15 -0
- package/lib/openzeppelin-contracts/docs/templates/contract.hbs +111 -0
- package/lib/openzeppelin-contracts/docs/templates/helpers.js +46 -0
- package/lib/openzeppelin-contracts/docs/templates/page.hbs +4 -0
- package/lib/openzeppelin-contracts/docs/templates/properties.js +64 -0
- package/lib/openzeppelin-contracts/hardhat/env-artifacts.js +24 -0
- package/lib/openzeppelin-contracts/hardhat/env-contract.js +25 -0
- package/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +45 -0
- package/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +6 -0
- package/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
- package/lib/openzeppelin-contracts/hardhat.config.js +131 -0
- package/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
- package/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
- package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +92 -0
- package/lib/openzeppelin-contracts/lib/forge-std/.gitmodules +3 -0
- package/lib/openzeppelin-contracts/lib/forge-std/LICENSE-APACHE +203 -0
- package/lib/openzeppelin-contracts/lib/forge-std/LICENSE-MIT +25 -0
- package/lib/openzeppelin-contracts/lib/forge-std/README.md +250 -0
- package/lib/openzeppelin-contracts/lib/forge-std/package.json +16 -0
- package/lib/openzeppelin-contracts/logo.svg +15 -0
- package/lib/openzeppelin-contracts/netlify.toml +3 -0
- package/lib/openzeppelin-contracts/package-lock.json +16544 -0
- package/lib/openzeppelin-contracts/package.json +96 -0
- package/lib/openzeppelin-contracts/remappings.txt +1 -0
- package/lib/openzeppelin-contracts/renovate.json +4 -0
- package/lib/openzeppelin-contracts/requirements.txt +1 -0
- package/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +20 -0
- package/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +243 -0
- package/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +38 -0
- package/lib/openzeppelin-contracts/scripts/checks/generation.sh +6 -0
- package/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +54 -0
- package/lib/openzeppelin-contracts/scripts/gen-nav.js +41 -0
- package/lib/openzeppelin-contracts/scripts/generate/format-lines.js +16 -0
- package/lib/openzeppelin-contracts/scripts/generate/run.js +49 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +247 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +17 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +146 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +283 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +250 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +126 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +78 -0
- package/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +30 -0
- package/lib/openzeppelin-contracts/scripts/git-user-config.sh +6 -0
- package/lib/openzeppelin-contracts/scripts/helpers.js +37 -0
- package/lib/openzeppelin-contracts/scripts/prepack.sh +23 -0
- package/lib/openzeppelin-contracts/scripts/prepare-docs.sh +26 -0
- package/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
- package/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +15 -0
- package/lib/openzeppelin-contracts/scripts/release/update-comment.js +34 -0
- package/lib/openzeppelin-contracts/scripts/release/version.sh +11 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
- package/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
- package/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +45 -0
- package/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
- package/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +5 -0
- package/lib/openzeppelin-contracts/scripts/update-docs-branch.js +65 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +47 -0
- package/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +360 -0
- package/lib/openzeppelin-contracts/slither.config.json +5 -0
- package/lib/openzeppelin-contracts/solhint.config.js +20 -0
- package/mythril-lft-output.txt +1 -0
- package/mythril-lft-symbolic.txt +18 -0
- package/mythril-lft.sh +20 -0
- package/mythril-symbolic-output.txt +1 -0
- package/mythril-symbolic.sh +42 -0
- package/out/build-info/0026b78428192979.json +1 -0
- package/out/build-info/03c4fc3b88486eba.json +1 -0
- package/out/build-info/0540afa9b9a5c5a6.json +1 -0
- package/out/build-info/081932f505bc08b9.json +1 -0
- package/out/build-info/0da104ba0d6642d5.json +1 -0
- package/out/build-info/197281971dbb5f23.json +1 -0
- package/out/build-info/197e7e332832a232.json +1 -0
- package/out/build-info/1a1cab9136eb5f94.json +1 -0
- package/out/build-info/1b320204eb162aa2.json +1 -0
- package/out/build-info/1e03f94398052674.json +1 -0
- package/out/build-info/22ac085949602937.json +1 -0
- package/out/build-info/234ef37453a9fa64.json +1 -0
- package/out/build-info/2447db7b1878fa8e.json +1 -0
- package/out/build-info/25568daeb484f5ff.json +1 -0
- package/out/build-info/27465853244c49ce.json +1 -0
- package/out/build-info/2c57a9e0f087453b.json +1 -0
- package/out/build-info/3c62ae7de8da68c4.json +1 -0
- package/out/build-info/3e771ae109e97bb3.json +1 -0
- package/out/build-info/460499bc0a3465c4.json +1 -0
- package/out/build-info/47ce37e50a4f115e.json +1 -0
- package/out/build-info/4fcce5c63cf427d6.json +1 -0
- package/out/build-info/4fd0a53fe63fddbb.json +1 -0
- package/out/build-info/50f1247db9d769cc.json +1 -0
- package/out/build-info/5317d0181a7a5e02.json +1 -0
- package/out/build-info/594df509275ceb5b.json +1 -0
- package/out/build-info/61983ac3f6141719.json +1 -0
- package/out/build-info/638c4548307122fe.json +1 -0
- package/out/build-info/67c2c43bdb7c0ded.json +1 -0
- package/out/build-info/777f42643aad37b7.json +1 -0
- package/out/build-info/7d7856f19e845354.json +1 -0
- package/out/build-info/83976260b6f71e94.json +1 -0
- package/out/build-info/83c23882000b963d.json +1 -0
- package/out/build-info/84b2cce8f70b36be.json +1 -0
- package/out/build-info/8bc13d31d7c3206a.json +1 -0
- package/out/build-info/8e183bd4d9d8cf88.json +1 -0
- package/out/build-info/94bfe1e7cafa8ff5.json +1 -0
- package/out/build-info/99ec7d5e8d8ff360.json +1 -0
- package/out/build-info/9ac044b29daa7d5e.json +1 -0
- package/out/build-info/9b203227ff5d2e63.json +1 -0
- package/out/build-info/9d18c5872c4282dd.json +1 -0
- package/out/build-info/9f77f04f33baf9a3.json +1 -0
- package/out/build-info/a6e1caf974787982.json +1 -0
- package/out/build-info/a94b6348867a62d6.json +1 -0
- package/out/build-info/ad93721947a8b195.json +1 -0
- package/out/build-info/b42daddb5aa4b19f.json +1 -0
- package/out/build-info/bf13512ae899f7e8.json +1 -0
- package/out/build-info/c39f86c20a548c4a.json +1 -0
- package/out/build-info/cb12bb975a2f4e65.json +1 -0
- package/out/build-info/d0c6788fadc2aa60.json +1 -0
- package/out/build-info/d2726bf94ed5b845.json +1 -0
- package/out/build-info/d4eb00da50cce5cb.json +1 -0
- package/out/build-info/db931924a3bc8bdd.json +1 -0
- package/out/build-info/e1a503d49bc77401.json +1 -0
- package/out/build-info/efe5396f8892ce77.json +1 -0
- package/out/build-info/f536d90ced745969.json +1 -0
- package/out/build-info/fed38823c7019b82.json +1 -0
- package/package.json +51 -0
- package/page.html +5384 -0
- package/pancakeswap-simple-tvl.sql +15 -0
- package/pancakeswap-top-pools.sql +29 -0
- package/pancakeswap-tvl-optimized.sql +57 -0
- package/pancakeswap-tvl-query.sql +60 -0
- package/pancakeswap-underflow-hunting.sql +51 -0
- package/pancakeswap-vulnerability-queries.sql +200 -0
- package/posi_page.html +6369 -0
- package/posi_response.json +29 -0
- package/proxy_page.html +500 -0
- package/run_mythril_elephant.sh +18 -0
- package/sHEGIC-bytecode.bin +6 -0
- package/sHEGIC-mythril-analysis.txt +1 -0
- package/sHEGIC-mythril-full.txt +134 -0
- package/sHEGIC_ANALYSIS.md +135 -0
- package/sHEGIC_EXPLOIT_ANALYSIS.md +317 -0
- package/sHEGIC_MYTHRIL_ANALYSIS.md +361 -0
- package/scrape-snowcrash.js +28 -0
- package/scripts/yooshi_drain.sh +154 -0
- package/shi_raw.json +1 -0
- package/temp.json +1 -0
- package/temp_harvest.json +1 -0
- package/temp_pika.json +1 -0
- package/temp_posi.json +1 -0
- package/temp_response.json +1 -0
- package/test-lft-hidden-balance.js +108 -0
- package/test-xfi-exploit.js +140 -0
- package/trunk-liquidity-rescue.js +164 -0
- package/vBABY_page.html +6153 -0
- package/vBABY_response.json +29 -0
- package/wsg_response.json +1 -0
- package/yooldo_page.html +10371 -0
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
BITGERT SWAP INVESTIGATION
|
|
2
|
+
==========================
|
|
3
|
+
|
|
4
|
+
FINDINGS:
|
|
5
|
+
---------
|
|
6
|
+
|
|
7
|
+
1. BITGERT CHAIN vs BSC
|
|
8
|
+
- Bitgert (BRISE) is its own Layer 1 blockchain (Chain ID: 32520)
|
|
9
|
+
- NOT the same as BSC (Binance Smart Chain)
|
|
10
|
+
- Explorer: https://brisescan.com
|
|
11
|
+
- RPC: https://rpc.icecreamswap.com (IceCream RPC - most reliable)
|
|
12
|
+
|
|
13
|
+
2. MAIN DEX ON BITGERT CHAIN: IceCreamSwap
|
|
14
|
+
- Website: https://icecreamswap.com
|
|
15
|
+
- First and largest DEX on Bitgert blockchain
|
|
16
|
+
- Launched: June 10, 2022
|
|
17
|
+
- Uses Uniswap V3 smart contracts
|
|
18
|
+
- Audited by CertiK
|
|
19
|
+
- Multichain support (Bitgert, BSC, CORE, Qitmeer, etc.)
|
|
20
|
+
|
|
21
|
+
3. ICECREAMSWAP CONTRACT ADDRESSES (SAME FOR ALL CHAINS):
|
|
22
|
+
- Router02: 0xBb5e1777A331ED93E07cF043363e48d320eb96c4
|
|
23
|
+
- Factory: 0x9E6d21E759A7A288b80eef94E4737D313D31c13f
|
|
24
|
+
|
|
25
|
+
4. OTHER DEX ON BITGERT: ElkDEX
|
|
26
|
+
From Elk.Finance documentation:
|
|
27
|
+
|
|
28
|
+
V3 Contracts:
|
|
29
|
+
- Factory: 0xC05A5aA56DF0Dc97D6B9849A06627a079790014f
|
|
30
|
+
- SwapRouter: 0x283F87D2D4A401aa4B31fE60597bd8bA7BdE2221
|
|
31
|
+
- SwapRouter02: 0x7740C2eE0051e275323feb42521cA1161925C2f2
|
|
32
|
+
|
|
33
|
+
V2 Contracts:
|
|
34
|
+
- Router: 0x7ae799fDBE4c330A4AC18d8d65765222A0D47e6D
|
|
35
|
+
- Factory: 0xfbb4E52FEcc90924c79F980eb24a9794ae4aFFA4
|
|
36
|
+
|
|
37
|
+
5. NATIVE TOKEN: BRISE
|
|
38
|
+
- Two versions exist:
|
|
39
|
+
a) BRISE on BSC: 0x8fff93e810a2edaafc326edee51071da9d398e83 (has buy/sell tax)
|
|
40
|
+
b) Native BRISE on Bitgert chain (BRC20) - NO buy/sell tax (RECOMMENDED)
|
|
41
|
+
|
|
42
|
+
6. ICE TOKEN (IceCreamSwap native token):
|
|
43
|
+
- Total supply: 10 million across all chains
|
|
44
|
+
- Starting price: $1
|
|
45
|
+
- No buy/sell tax
|
|
46
|
+
- Available on multiple chains
|
|
47
|
+
|
|
48
|
+
7. BRIDGE:
|
|
49
|
+
- IceCreamSwap Bridge: https://icecreamswap.com/bridge
|
|
50
|
+
- Supports multiple chains
|
|
51
|
+
- Fees: Small fixed fee (~$1) + 0.5% of bridging amount
|
|
52
|
+
- Gas dropper feature: automatically drops native tokens on destination chain
|
|
53
|
+
- i-Tokens (USDTi, USDCi, BNBi, etc.) are IceCreamSwap bridged tokens
|
|
54
|
+
|
|
55
|
+
8. TRADING FEES:
|
|
56
|
+
- Swap fee: 0.3%
|
|
57
|
+
- No deposit/withdrawal fees for liquidity
|
|
58
|
+
- No lock time for liquidity
|
|
59
|
+
- Risk: Impermanent loss when token prices change
|
|
60
|
+
|
|
61
|
+
POTENTIAL VULNERABILITIES TO INVESTIGATE:
|
|
62
|
+
------------------------------------------
|
|
63
|
+
|
|
64
|
+
1. UNISWAP V3 BASED:
|
|
65
|
+
- Since IceCreamSwap uses Uniswap V3 contracts, check for:
|
|
66
|
+
* Reentrancy attacks
|
|
67
|
+
* Flash loan exploits
|
|
68
|
+
* Price manipulation via concentrated liquidity
|
|
69
|
+
* MEV (Miner Extractable Value) opportunities
|
|
70
|
+
|
|
71
|
+
2. BRIDGE VULNERABILITIES:
|
|
72
|
+
- Cross-chain bridge is a common attack vector
|
|
73
|
+
- Check for:
|
|
74
|
+
* Replay attacks
|
|
75
|
+
* Double-spending
|
|
76
|
+
* Signature verification issues
|
|
77
|
+
* Oracle manipulation
|
|
78
|
+
|
|
79
|
+
3. ROUTER CONTRACT:
|
|
80
|
+
- Analyze 0xBb5e1777A331ED93E07cF043363e48d320eb96c4
|
|
81
|
+
- Check for:
|
|
82
|
+
* Slippage manipulation
|
|
83
|
+
* Front-running opportunities
|
|
84
|
+
* Approval exploits
|
|
85
|
+
* Deadline bypass
|
|
86
|
+
|
|
87
|
+
4. FACTORY CONTRACT:
|
|
88
|
+
- Analyze 0x9E6d21E759A7A288b80eef94E4737D313D31c13f
|
|
89
|
+
- Check for:
|
|
90
|
+
* Unauthorized pool creation
|
|
91
|
+
* Fee manipulation
|
|
92
|
+
* Access control issues
|
|
93
|
+
|
|
94
|
+
NEXT STEPS:
|
|
95
|
+
-----------
|
|
96
|
+
1. Fetch and analyze IceCreamSwap Router02 contract code
|
|
97
|
+
2. Fetch and analyze Factory contract code
|
|
98
|
+
3. Look for common DEX vulnerabilities
|
|
99
|
+
4. Check if there are any known exploits for Uniswap V3 forks
|
|
100
|
+
5. Analyze bridge contract for cross-chain vulnerabilities
|
|
101
|
+
|
|
102
|
+
NOTES:
|
|
103
|
+
------
|
|
104
|
+
- Bitgert chain uses Proof of Authority (PoA) consensus
|
|
105
|
+
- Fast and cheap transactions but compromises on decentralization
|
|
106
|
+
- IceCreamSwap is audited by CertiK (check audit report)
|
|
107
|
+
- ElkDEX also operates on Bitgert chain as alternative DEX
|
|
File without changes
|
|
@@ -0,0 +1,422 @@
|
|
|
1
|
+
# Chainbase Token (OFT) - Security Audit
|
|
2
|
+
|
|
3
|
+
**Contract Address:** `0xc32cc70741c3A8433dCbcB5adE071c299B55FfC8` (BSC)
|
|
4
|
+
**Token Name:** Chainbase Token
|
|
5
|
+
**Symbol:** C
|
|
6
|
+
**Total Supply:** 58,781,830 C (~58.7M tokens)
|
|
7
|
+
**Type:** LayerZero OFT (Omnichain Fungible Token)
|
|
8
|
+
**Compiler:** Solidity 0.8.22
|
|
9
|
+
**Audit Date:** March 25, 2026
|
|
10
|
+
**Tools Used:** Manual Code Review, On-Chain Analysis
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Executive Summary
|
|
15
|
+
|
|
16
|
+
ChainbaseOFT is a LayerZero Omnichain Fungible Token (OFT) that enables cross-chain token transfers. The contract is MINIMAL (only 10 lines of custom code) and inherits all functionality from LayerZero's audited OFT implementation and OpenZeppelin's Ownable.
|
|
17
|
+
|
|
18
|
+
### Risk Rating: **LOW-MEDIUM (3/10)**
|
|
19
|
+
|
|
20
|
+
**KEY FINDING:** Owner has NOT renounced and retains control over LayerZero configuration. However, the contract uses battle-tested LayerZero OFT code with minimal custom logic.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Key Findings
|
|
25
|
+
|
|
26
|
+
| Severity | Count | Description |
|
|
27
|
+
|----------|-------|-------------|
|
|
28
|
+
| 🔴 CRITICAL | 0 | None |
|
|
29
|
+
| 🟡 MEDIUM | 1 | Owner has LayerZero control (centralization) |
|
|
30
|
+
| 🟢 LOW | 0 | None |
|
|
31
|
+
| ℹ️ INFO | 2 | LayerZero OFT, Minimal custom code |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## On-Chain Status
|
|
36
|
+
|
|
37
|
+
**Owner:** `0xb0081fFE5e53df121d79D7De503f87d3B0546412` (ACTIVE ⚠️)
|
|
38
|
+
**Total Supply:** `58,781,830 C`
|
|
39
|
+
**Type:** LayerZero OFT
|
|
40
|
+
**Status:** Active cross-chain token
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Contract Analysis
|
|
45
|
+
|
|
46
|
+
### Architecture
|
|
47
|
+
|
|
48
|
+
```solidity
|
|
49
|
+
contract ChainbaseOFT is OFT {
|
|
50
|
+
constructor(
|
|
51
|
+
string memory _name,
|
|
52
|
+
string memory _symbol,
|
|
53
|
+
address _lzEndpoint, // LayerZero endpoint for cross-chain
|
|
54
|
+
address _delegate // Owner/delegate address
|
|
55
|
+
) OFT(_name, _symbol, _lzEndpoint, _delegate) Ownable(_delegate) {}
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**Inheritance Chain:**
|
|
60
|
+
```
|
|
61
|
+
ChainbaseOFT
|
|
62
|
+
└── OFT (LayerZero)
|
|
63
|
+
├── OFTCore
|
|
64
|
+
│ └── OApp
|
|
65
|
+
│ └── OAppCore
|
|
66
|
+
└── ERC20
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## What is LayerZero OFT?
|
|
72
|
+
|
|
73
|
+
LayerZero OFT (Omnichain Fungible Token) is a standard for tokens that can move across multiple blockchains seamlessly.
|
|
74
|
+
|
|
75
|
+
### How It Works:
|
|
76
|
+
|
|
77
|
+
1. **Burn & Mint Model:**
|
|
78
|
+
- User sends tokens from Chain A to Chain B
|
|
79
|
+
- Tokens are BURNED on Chain A
|
|
80
|
+
- Tokens are MINTED on Chain B
|
|
81
|
+
- Total supply across all chains remains constant
|
|
82
|
+
|
|
83
|
+
2. **LayerZero Protocol:**
|
|
84
|
+
- Decentralized message passing between chains
|
|
85
|
+
- No wrapped tokens needed
|
|
86
|
+
- Native token on all chains
|
|
87
|
+
|
|
88
|
+
3. **Security:**
|
|
89
|
+
- Audited by multiple firms
|
|
90
|
+
- Used by major projects (Stargate, etc.)
|
|
91
|
+
- Battle-tested infrastructure
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Features Analysis
|
|
96
|
+
|
|
97
|
+
### ✅ Standard ERC20
|
|
98
|
+
- All standard ERC20 functions work
|
|
99
|
+
- Transfer, approve, transferFrom
|
|
100
|
+
- Inherited from LayerZero's OFT
|
|
101
|
+
|
|
102
|
+
### ✅ Cross-Chain Transfers
|
|
103
|
+
- Send tokens to other chains via LayerZero
|
|
104
|
+
- Uses `send()` function with LayerZero parameters
|
|
105
|
+
- Automatic burn on source chain
|
|
106
|
+
- Automatic mint on destination chain
|
|
107
|
+
|
|
108
|
+
### ⚠️ Owner Control
|
|
109
|
+
- Owner can configure LayerZero settings
|
|
110
|
+
- Owner can set peer contracts on other chains
|
|
111
|
+
- Owner can update delegates
|
|
112
|
+
- Owner has NOT renounced
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Owner Privileges
|
|
117
|
+
|
|
118
|
+
The owner (inherited from OFT/OApp) has the following powers:
|
|
119
|
+
|
|
120
|
+
### 1. Set Peer Contracts
|
|
121
|
+
```solidity
|
|
122
|
+
function setPeer(uint32 _eid, bytes32 _peer) public onlyOwner
|
|
123
|
+
```
|
|
124
|
+
- Owner can set which contracts on other chains are trusted
|
|
125
|
+
- Required for cross-chain functionality
|
|
126
|
+
- RISK: Owner could set malicious peer contracts
|
|
127
|
+
|
|
128
|
+
### 2. Set Delegate
|
|
129
|
+
```solidity
|
|
130
|
+
function setDelegate(address _delegate) public onlyOwner
|
|
131
|
+
```
|
|
132
|
+
- Owner can change the delegate address
|
|
133
|
+
- Delegate has similar powers to owner
|
|
134
|
+
|
|
135
|
+
### 3. Configure LayerZero Settings
|
|
136
|
+
- Owner can set gas limits for cross-chain messages
|
|
137
|
+
- Owner can configure executor settings
|
|
138
|
+
- Owner can update security parameters
|
|
139
|
+
|
|
140
|
+
### 4. NO Mint Function
|
|
141
|
+
- ✅ Owner CANNOT mint tokens arbitrarily
|
|
142
|
+
- Minting only happens via cross-chain transfers
|
|
143
|
+
- Total supply is controlled by LayerZero protocol
|
|
144
|
+
|
|
145
|
+
### 5. NO Pause Function
|
|
146
|
+
- ✅ Owner CANNOT pause transfers
|
|
147
|
+
- Standard ERC20 transfers always work
|
|
148
|
+
|
|
149
|
+
### 6. NO Blacklist
|
|
150
|
+
- ✅ Owner CANNOT blacklist addresses
|
|
151
|
+
- All addresses can transfer freely
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Security Analysis
|
|
156
|
+
|
|
157
|
+
### Attack Vector Analysis
|
|
158
|
+
|
|
159
|
+
**Can This Contract Be Exploited?**
|
|
160
|
+
|
|
161
|
+
❌ **Unlimited Mint** - No mint function (only cross-chain minting)
|
|
162
|
+
⚠️ **Owner Manipulation** - Owner can configure LayerZero settings
|
|
163
|
+
❌ **Pause/Freeze** - No pause mechanism
|
|
164
|
+
❌ **Blacklist** - No blacklist functionality
|
|
165
|
+
❌ **Fee Manipulation** - No fees
|
|
166
|
+
❌ **Reentrancy** - LayerZero OFT (audited, safe)
|
|
167
|
+
❌ **Integer Overflow** - Solidity 0.8.22 (protected)
|
|
168
|
+
⚠️ **Malicious Peer** - Owner could set malicious peer contracts
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Centralization Risks
|
|
173
|
+
|
|
174
|
+
### 🟡 MEDIUM: Owner Control Over LayerZero
|
|
175
|
+
|
|
176
|
+
**Risk:** Owner has control over LayerZero configuration
|
|
177
|
+
|
|
178
|
+
**What Owner Can Do:**
|
|
179
|
+
1. Set peer contracts on other chains
|
|
180
|
+
2. Change delegate address
|
|
181
|
+
3. Configure cross-chain parameters
|
|
182
|
+
|
|
183
|
+
**What Owner CANNOT Do:**
|
|
184
|
+
1. ❌ Mint tokens arbitrarily
|
|
185
|
+
2. ❌ Pause transfers
|
|
186
|
+
3. ❌ Blacklist addresses
|
|
187
|
+
4. ❌ Change token supply
|
|
188
|
+
5. ❌ Steal user funds directly
|
|
189
|
+
|
|
190
|
+
**Impact:**
|
|
191
|
+
- Owner could potentially disrupt cross-chain transfers
|
|
192
|
+
- Owner could set malicious peer contracts (advanced attack)
|
|
193
|
+
- Standard ERC20 transfers on BSC are NOT affected
|
|
194
|
+
|
|
195
|
+
**Mitigation:**
|
|
196
|
+
- Owner should renounce after setting up all chains
|
|
197
|
+
- Use multisig for owner address
|
|
198
|
+
- Implement timelock for configuration changes
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## LayerZero Security
|
|
203
|
+
|
|
204
|
+
LayerZero OFT has been:
|
|
205
|
+
- ✅ Audited by multiple security firms
|
|
206
|
+
- ✅ Used by major DeFi protocols
|
|
207
|
+
- ✅ Battle-tested with billions in TVL
|
|
208
|
+
- ✅ Open source and reviewed
|
|
209
|
+
|
|
210
|
+
**Known Issues:**
|
|
211
|
+
- None in the OFT standard itself
|
|
212
|
+
- Security depends on proper configuration
|
|
213
|
+
- Owner must set correct peer contracts
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
## Comparison with Previous Audits
|
|
218
|
+
|
|
219
|
+
| Token | Risk | Type | Owner | Cross-Chain |
|
|
220
|
+
|-------|------|------|-------|-------------|
|
|
221
|
+
| ARIA.AI | 4/10 | Standard OZ | Renounced ✅ | No |
|
|
222
|
+
| MGO | 9/10 | Custom | Active 🔴 | No |
|
|
223
|
+
| TRADOOR | 1/10 | Standard OZ | None ✅ | No |
|
|
224
|
+
| BANANA | 2/10 | Honeypot | Renounced ✅ | No |
|
|
225
|
+
| SIREN | 2/10 | Honeypot | Renounced ✅ | No |
|
|
226
|
+
| FANDOM | 1/10 | Standard OZ | Renounced ✅ | No |
|
|
227
|
+
| **CHAINBASE** | **3/10** | **LayerZero OFT** | **Active ⚠️** | **Yes** |
|
|
228
|
+
|
|
229
|
+
**CHAINBASE has higher risk due to:**
|
|
230
|
+
1. Owner has NOT renounced
|
|
231
|
+
2. Owner controls LayerZero configuration
|
|
232
|
+
3. More complex cross-chain functionality
|
|
233
|
+
|
|
234
|
+
**BUT it's still relatively safe because:**
|
|
235
|
+
1. Uses audited LayerZero code
|
|
236
|
+
2. Minimal custom logic (10 lines)
|
|
237
|
+
3. Owner cannot mint/pause/blacklist
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## Code Quality
|
|
242
|
+
|
|
243
|
+
### Positive Aspects
|
|
244
|
+
|
|
245
|
+
1. **Minimal Code**
|
|
246
|
+
- Only 10 lines of custom code
|
|
247
|
+
- Everything inherited from LayerZero
|
|
248
|
+
- Less code = less attack surface
|
|
249
|
+
|
|
250
|
+
2. **No Custom Logic**
|
|
251
|
+
- No custom transfer logic
|
|
252
|
+
- No hidden fees or taxes
|
|
253
|
+
- No special conditions
|
|
254
|
+
|
|
255
|
+
3. **Battle-Tested Base**
|
|
256
|
+
- LayerZero OFT is audited
|
|
257
|
+
- Used by major projects
|
|
258
|
+
- Proven security track record
|
|
259
|
+
|
|
260
|
+
4. **Modern Solidity**
|
|
261
|
+
- Uses Solidity 0.8.22
|
|
262
|
+
- Built-in overflow protection
|
|
263
|
+
- Latest LayerZero implementation
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## Cross-Chain Functionality
|
|
268
|
+
|
|
269
|
+
### How to Send Tokens Cross-Chain
|
|
270
|
+
|
|
271
|
+
```solidity
|
|
272
|
+
// User calls send() with LayerZero parameters
|
|
273
|
+
function send(
|
|
274
|
+
SendParam calldata _sendParam,
|
|
275
|
+
MessagingFee calldata _fee,
|
|
276
|
+
address _refundAddress
|
|
277
|
+
) external payable returns (MessagingReceipt memory)
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
**Process:**
|
|
281
|
+
1. User approves tokens
|
|
282
|
+
2. User calls `send()` with destination chain ID
|
|
283
|
+
3. Tokens are BURNED on source chain
|
|
284
|
+
4. LayerZero relays message to destination
|
|
285
|
+
5. Tokens are MINTED on destination chain
|
|
286
|
+
|
|
287
|
+
**Fees:**
|
|
288
|
+
- LayerZero charges gas fees for cross-chain messages
|
|
289
|
+
- Fees paid in native token (BNB on BSC)
|
|
290
|
+
- No token fees (no tax on transfers)
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
## Recommendations
|
|
295
|
+
|
|
296
|
+
### For Users:
|
|
297
|
+
1. ⚠️ **MODERATE RISK** - Owner has LayerZero control
|
|
298
|
+
2. ✅ **SAFE FOR BASIC USE** - Standard ERC20 transfers work
|
|
299
|
+
3. ⚠️ **CROSS-CHAIN RISK** - Owner controls peer contracts
|
|
300
|
+
4. ✅ **NO MINT RISK** - Owner cannot mint arbitrarily
|
|
301
|
+
5. ✅ **NO PAUSE RISK** - Transfers cannot be paused
|
|
302
|
+
6. 💡 **CHECK OWNER** - Monitor owner address for changes
|
|
303
|
+
|
|
304
|
+
### For Developers:
|
|
305
|
+
1. Consider renouncing ownership after setup
|
|
306
|
+
2. Use multisig for owner address
|
|
307
|
+
3. Implement timelock for configuration changes
|
|
308
|
+
4. Document all peer contracts on other chains
|
|
309
|
+
5. Provide transparency on LayerZero settings
|
|
310
|
+
|
|
311
|
+
### For Owner:
|
|
312
|
+
1. 🔒 **RENOUNCE** after setting up all chains
|
|
313
|
+
2. 🔐 **USE MULTISIG** for owner address
|
|
314
|
+
3. ⏰ **ADD TIMELOCK** for configuration changes
|
|
315
|
+
4. 📝 **DOCUMENT** all peer contracts
|
|
316
|
+
5. 🔍 **BE TRANSPARENT** about LayerZero settings
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## Technical Details
|
|
321
|
+
|
|
322
|
+
### Constructor Parameters
|
|
323
|
+
|
|
324
|
+
```solidity
|
|
325
|
+
constructor(
|
|
326
|
+
string memory _name, // "Chainbase Token"
|
|
327
|
+
string memory _symbol, // "C"
|
|
328
|
+
address _lzEndpoint, // LayerZero endpoint on BSC
|
|
329
|
+
address _delegate // Owner/delegate address
|
|
330
|
+
)
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
**Deployed With:**
|
|
334
|
+
- Name: "Chainbase Token"
|
|
335
|
+
- Symbol: "C"
|
|
336
|
+
- LZ Endpoint: LayerZero's BSC endpoint
|
|
337
|
+
- Delegate: 0xb0081fFE5e53df121d79D7De503f87d3B0546412
|
|
338
|
+
|
|
339
|
+
### LayerZero Endpoint
|
|
340
|
+
|
|
341
|
+
The contract uses LayerZero's official endpoint on BSC:
|
|
342
|
+
- Endpoint is controlled by LayerZero Labs
|
|
343
|
+
- Endpoint is audited and secure
|
|
344
|
+
- Endpoint handles all cross-chain messaging
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
## Potential Attack Scenarios
|
|
349
|
+
|
|
350
|
+
### Scenario 1: Malicious Peer Contract
|
|
351
|
+
|
|
352
|
+
```solidity
|
|
353
|
+
// Owner sets malicious peer on another chain
|
|
354
|
+
owner.setPeer(ETHEREUM_CHAIN_ID, maliciousPeerAddress);
|
|
355
|
+
|
|
356
|
+
// User sends tokens from BSC to Ethereum
|
|
357
|
+
user.send(toEthereum, amount);
|
|
358
|
+
|
|
359
|
+
// Tokens burned on BSC
|
|
360
|
+
// Malicious peer on Ethereum could:
|
|
361
|
+
// - Not mint tokens to user
|
|
362
|
+
// - Mint to different address
|
|
363
|
+
// - Steal tokens
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
**Likelihood:** LOW (requires malicious owner)
|
|
367
|
+
**Impact:** HIGH (user loses tokens)
|
|
368
|
+
**Mitigation:** Verify peer contracts before using cross-chain
|
|
369
|
+
|
|
370
|
+
### Scenario 2: Delegate Change
|
|
371
|
+
|
|
372
|
+
```solidity
|
|
373
|
+
// Owner changes delegate to malicious address
|
|
374
|
+
owner.setDelegate(maliciousAddress);
|
|
375
|
+
|
|
376
|
+
// Malicious delegate can now:
|
|
377
|
+
// - Change LayerZero settings
|
|
378
|
+
// - Set malicious peers
|
|
379
|
+
// - Disrupt cross-chain transfers
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
**Likelihood:** LOW (requires malicious owner)
|
|
383
|
+
**Impact:** MEDIUM (disrupts cross-chain, not direct theft)
|
|
384
|
+
**Mitigation:** Monitor owner/delegate changes
|
|
385
|
+
|
|
386
|
+
---
|
|
387
|
+
|
|
388
|
+
## Conclusion
|
|
389
|
+
|
|
390
|
+
Chainbase Token (OFT) is a **RELATIVELY SAFE** LayerZero Omnichain Fungible Token with:
|
|
391
|
+
|
|
392
|
+
✅ Minimal custom code (10 lines)
|
|
393
|
+
✅ Battle-tested LayerZero OFT base
|
|
394
|
+
✅ No mint/pause/blacklist functions
|
|
395
|
+
✅ Standard ERC20 functionality
|
|
396
|
+
⚠️ Owner has LayerZero control (NOT renounced)
|
|
397
|
+
⚠️ Owner can configure cross-chain settings
|
|
398
|
+
|
|
399
|
+
**Overall Risk: LOW-MEDIUM (3/10)**
|
|
400
|
+
|
|
401
|
+
The contract is safe for basic ERC20 use on BSC. The main risk is owner control over LayerZero configuration, which could affect cross-chain transfers. However, the owner cannot:
|
|
402
|
+
- Mint tokens arbitrarily
|
|
403
|
+
- Pause transfers
|
|
404
|
+
- Blacklist addresses
|
|
405
|
+
- Steal funds directly
|
|
406
|
+
|
|
407
|
+
**Recommendation: SAFE FOR BASIC USE, MONITOR OWNER**
|
|
408
|
+
|
|
409
|
+
For cross-chain transfers, verify peer contracts on destination chains before sending large amounts.
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
## Files Generated
|
|
414
|
+
|
|
415
|
+
- `ChainbaseOFT.sol` - Contract source code
|
|
416
|
+
- `CHAINBASE_AUDIT.md` - This report
|
|
417
|
+
|
|
418
|
+
---
|
|
419
|
+
|
|
420
|
+
**Auditor Note:**
|
|
421
|
+
This is the first LayerZero OFT we've audited. The contract is well-designed with minimal custom code. The main concern is owner control over LayerZero configuration. Users should monitor the owner address and verify peer contracts before using cross-chain functionality. For standard ERC20 transfers on BSC, the token is safe to use.
|
|
422
|
+
|