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,499 @@
|
|
|
1
|
+
# AiFi Token (AiFi) Security Audit Report
|
|
2
|
+
|
|
3
|
+
**Contract Address:** `0xdb953299588b7a7c38044bcd004b4b1892026333`
|
|
4
|
+
**Chain:** BSC (BNB Smart Chain)
|
|
5
|
+
**Token Name:** Ai DeFi (AiFi)
|
|
6
|
+
**Compiler:** v0.8.24+commit.e11b9ed9
|
|
7
|
+
**Optimization:** Yes with 200 runs
|
|
8
|
+
**Audit Date:** March 26, 2026
|
|
9
|
+
**Auditor:** Automated Security Analysis
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Executive Summary
|
|
14
|
+
|
|
15
|
+
The AiFi token is a complex DeFi token with dividend distribution, LP tracking, anti-bot mechanisms, and dynamic fee structures. The contract is **VERIFIED** on BSCScan and uses OpenZeppelin contracts.
|
|
16
|
+
|
|
17
|
+
### Risk Assessment: 🟡 MEDIUM-HIGH RISK
|
|
18
|
+
|
|
19
|
+
**Overall Risk Level:** MEDIUM-HIGH - Multiple centralization risks and complex mechanisms
|
|
20
|
+
|
|
21
|
+
**Key Findings:**
|
|
22
|
+
- ✅ Contract is verified on BSCScan
|
|
23
|
+
- ⚠️ High centralization - Owner has extensive control
|
|
24
|
+
- ⚠️ Complex fee structure with time-based variations
|
|
25
|
+
- ⚠️ Blacklist functionality can block users
|
|
26
|
+
- ⚠️ LP manipulation restrictions
|
|
27
|
+
- ⚠️ External contract dependencies (dividend trackers)
|
|
28
|
+
- ⚠️ No ownership renouncement
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Contract Overview
|
|
33
|
+
|
|
34
|
+
**Total Supply:** 21,000,000 AiFi
|
|
35
|
+
**Decimals:** 18
|
|
36
|
+
**Token Standard:** ERC20 (OpenZeppelin)
|
|
37
|
+
**Router:** PancakeSwap V2 (0x10ED43C718714eb63d5aA57B78B54704E256024E)
|
|
38
|
+
|
|
39
|
+
### Key Features:
|
|
40
|
+
1. Dynamic fee structure (time-based)
|
|
41
|
+
2. LP dividend distribution
|
|
42
|
+
3. NFT dividend distribution
|
|
43
|
+
4. Anti-bot mechanisms
|
|
44
|
+
5. Wallet limits
|
|
45
|
+
6. Blacklist/Whitelist system
|
|
46
|
+
7. LP tracking and restrictions
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Critical Findings
|
|
51
|
+
|
|
52
|
+
### 1. ⚠️ CENTRALIZATION RISKS - HIGH SEVERITY
|
|
53
|
+
|
|
54
|
+
**Description:**
|
|
55
|
+
The owner has extensive control over critical contract parameters:
|
|
56
|
+
|
|
57
|
+
```solidity
|
|
58
|
+
function setBuyFee(Fee memory _fee) external onlyOwner
|
|
59
|
+
function setSellFee(Fee memory _fee) external onlyOwner
|
|
60
|
+
function setBlackList(address[] memory addrs, bool b) external onlyOwner
|
|
61
|
+
function setWhiteList(address[] memory addrs, bool b) external onlyOwner
|
|
62
|
+
function setLimitAmount(uint256 amount) external onlyOwner
|
|
63
|
+
function updateLPAmount(address account, uint256 lpAmount) public onlyOwner
|
|
64
|
+
function setDappContract(address addr) external onlyOwner
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Impact:**
|
|
68
|
+
- Owner can change fees at any time (no max limits enforced in setter)
|
|
69
|
+
- Owner can blacklist any address
|
|
70
|
+
- Owner can manipulate LP amounts
|
|
71
|
+
- Owner can change critical addresses
|
|
72
|
+
|
|
73
|
+
**Current Fee Limits:**
|
|
74
|
+
- Initial buy fee: 15% (high), 2% (normal)
|
|
75
|
+
- Initial sell fee: 15% (high), 2% (normal)
|
|
76
|
+
- No hardcoded maximum in setter functions
|
|
77
|
+
|
|
78
|
+
**Recommendation:**
|
|
79
|
+
- Implement maximum fee caps (e.g., 10%)
|
|
80
|
+
- Add timelock for critical parameter changes
|
|
81
|
+
- Consider renouncing ownership after setup
|
|
82
|
+
- Use multi-sig for owner functions
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
### 2. ⚠️ BLACKLIST FUNCTIONALITY - MEDIUM SEVERITY
|
|
87
|
+
|
|
88
|
+
**Description:**
|
|
89
|
+
```solidity
|
|
90
|
+
mapping(address => bool) public blackList;
|
|
91
|
+
|
|
92
|
+
function setBlackList(address[] memory addrs, bool b) external onlyOwner {
|
|
93
|
+
for (uint256 i = 0; i < addrs.length; i++) {
|
|
94
|
+
blackList[addrs[i]] = b;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// In _beforeTransfer:
|
|
99
|
+
require(!blackList[from] || whileList[to] || whileList[from], "bl");
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Impact:**
|
|
103
|
+
- Owner can block any address from transferring tokens
|
|
104
|
+
- Blacklisted users cannot sell or transfer
|
|
105
|
+
- Potential for abuse or regulatory issues
|
|
106
|
+
|
|
107
|
+
**Recommendation:**
|
|
108
|
+
- Document clear blacklist criteria
|
|
109
|
+
- Consider removing blacklist after launch
|
|
110
|
+
- Implement appeal mechanism
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
### 3. ⚠️ COMPLEX LP RESTRICTIONS - MEDIUM SEVERITY
|
|
115
|
+
|
|
116
|
+
**Description:**
|
|
117
|
+
The contract has strict LP add/remove restrictions:
|
|
118
|
+
|
|
119
|
+
```solidity
|
|
120
|
+
// LP Add restrictions:
|
|
121
|
+
require(to == usdtPair, "not allow add"); // Only USDT pair
|
|
122
|
+
require(user == tx.origin, "not owner1"); // No contracts
|
|
123
|
+
require(!isContract(user), "not owner2"); // Double check
|
|
124
|
+
|
|
125
|
+
// LP Remove restrictions:
|
|
126
|
+
require(from == usdtPair && startTradeBlock > 0, "not remove");
|
|
127
|
+
require(userInfo[user].lpAmount >= removeLPLiquidity, "lp min");
|
|
128
|
+
require(userInfo[user].lastAddLPTime != block.timestamp, "lp error");
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Impact:**
|
|
132
|
+
- Users can only add LP to USDT pair
|
|
133
|
+
- Cannot add/remove LP in same block
|
|
134
|
+
- Contracts cannot provide liquidity
|
|
135
|
+
- May limit legitimate use cases
|
|
136
|
+
|
|
137
|
+
**Recommendation:**
|
|
138
|
+
- Document LP restrictions clearly
|
|
139
|
+
- Consider allowing WBNB pair LP
|
|
140
|
+
- Review contract exclusion necessity
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
### 4. ⚠️ DAPP CONTRACT PRIVILEGES - MEDIUM SEVERITY
|
|
145
|
+
|
|
146
|
+
**Description:**
|
|
147
|
+
```solidity
|
|
148
|
+
address public dappContract;
|
|
149
|
+
|
|
150
|
+
function setLock(bool v) external {
|
|
151
|
+
require(_msgSender() == dappContract, "only dapp");
|
|
152
|
+
inLaunchBuyLock = v;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function recycleByDapp(uint256 amount) external {
|
|
156
|
+
require(_msgSender() == dappContract, "only dapp");
|
|
157
|
+
uint256 maxBurn = balanceOf(mainPair) / 3;
|
|
158
|
+
uint256 burnAmount = amount >= maxBurn ? maxBurn : amount;
|
|
159
|
+
_transfer(mainPair, dappContract, burnAmount);
|
|
160
|
+
IPancakePair(mainPair).sync();
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
**Impact:**
|
|
165
|
+
- Dapp contract can lock/unlock trading
|
|
166
|
+
- Dapp contract can extract up to 33% of LP tokens
|
|
167
|
+
- Centralized control point
|
|
168
|
+
- Potential for manipulation
|
|
169
|
+
|
|
170
|
+
**Recommendation:**
|
|
171
|
+
- Clearly document dapp contract purpose
|
|
172
|
+
- Implement timelock for dapp actions
|
|
173
|
+
- Consider removing after launch
|
|
174
|
+
- Audit dapp contract separately
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## High Severity Findings
|
|
179
|
+
|
|
180
|
+
### 5. 🔴 EXTERNAL DEPENDENCY RISKS
|
|
181
|
+
|
|
182
|
+
**Description:**
|
|
183
|
+
The contract depends on external contracts for critical functionality:
|
|
184
|
+
|
|
185
|
+
```solidity
|
|
186
|
+
ICalculateReward public nftDividendTracker;
|
|
187
|
+
ICalculateReward public lpDividendTracker;
|
|
188
|
+
IDividendCalculator public dividendCalculator;
|
|
189
|
+
|
|
190
|
+
// These can be changed by owner:
|
|
191
|
+
function setNftDividendTracker(address _dividendTracker) external onlyOwner
|
|
192
|
+
function setLpDividendTracker(address _dividendTracker) external onlyOwner
|
|
193
|
+
function setDividendCalculator(address _dividendCalculator) external onlyOwner
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
**Impact:**
|
|
197
|
+
- Owner can change dividend contracts at any time
|
|
198
|
+
- Malicious contracts could drain funds
|
|
199
|
+
- No validation of new contract addresses
|
|
200
|
+
- Users' dividend rights depend on external contracts
|
|
201
|
+
|
|
202
|
+
**Recommendation:**
|
|
203
|
+
- Audit all external contracts
|
|
204
|
+
- Implement address validation
|
|
205
|
+
- Add timelock for changes
|
|
206
|
+
- Consider making addresses immutable after setup
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
### 6. 🔴 TIME-BASED FEE MANIPULATION
|
|
211
|
+
|
|
212
|
+
**Description:**
|
|
213
|
+
```solidity
|
|
214
|
+
uint256 public highFeeSeconds = 60; // 1 minute
|
|
215
|
+
uint256 public middleFeeSeconds = 3600; // 1 hour
|
|
216
|
+
uint256 public lowFeeSeconds = 86400; // 1 day
|
|
217
|
+
|
|
218
|
+
// Initial fees:
|
|
219
|
+
buyFee = Fee(1500, 200, 200, 200); // 15%, 2%, 2%, 2%
|
|
220
|
+
sellFee = Fee(1500, 0, 0, 200); // 15%, 0%, 0%, 2%
|
|
221
|
+
|
|
222
|
+
// Owner can change these:
|
|
223
|
+
function setMarketTime(uint256 _highFeeSeconds, uint256 _middleFeeSeconds, uint256 _lowFeeSeconds) external onlyOwner
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
**Impact:**
|
|
227
|
+
- First minute: 15% buy/sell fee (anti-sniper)
|
|
228
|
+
- First hour: 2% buy fee, 0% sell fee
|
|
229
|
+
- First day: 2% buy/sell fee
|
|
230
|
+
- After: 2% buy/sell fee
|
|
231
|
+
- Owner can extend high fee periods
|
|
232
|
+
|
|
233
|
+
**Recommendation:**
|
|
234
|
+
- Document fee schedule clearly
|
|
235
|
+
- Implement maximum fee duration
|
|
236
|
+
- Consider removing time-based fees after launch
|
|
237
|
+
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
## Medium Severity Findings
|
|
241
|
+
|
|
242
|
+
### 7. ⚠️ WALLET LIMIT BYPASS
|
|
243
|
+
|
|
244
|
+
**Description:**
|
|
245
|
+
```solidity
|
|
246
|
+
uint256 public limitAmount = 10000 * 1 ether; // 10,000 tokens
|
|
247
|
+
|
|
248
|
+
if (!pairs[to] && limitAmount > 0) {
|
|
249
|
+
require(balanceOf(to) + newValue <= limitAmount, "limit wallet");
|
|
250
|
+
}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
**Impact:**
|
|
254
|
+
- Limit only applies to non-pair addresses
|
|
255
|
+
- Owner can change limit at any time
|
|
256
|
+
- Whitelisted addresses bypass limit
|
|
257
|
+
- May not effectively prevent whales
|
|
258
|
+
|
|
259
|
+
**Recommendation:**
|
|
260
|
+
- Consider removing limit after distribution
|
|
261
|
+
- Document whale prevention strategy
|
|
262
|
+
- Review whitelist carefully
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
### 8. ⚠️ DIVIDEND DISTRIBUTION COMPLEXITY
|
|
267
|
+
|
|
268
|
+
**Description:**
|
|
269
|
+
```solidity
|
|
270
|
+
function _autoDividendDaily() internal {
|
|
271
|
+
uint256 round = 1;
|
|
272
|
+
uint256 day = block.timestamp / 1 days;
|
|
273
|
+
uint256 sec = block.timestamp - (day * 1 days);
|
|
274
|
+
if (sec >= 43200) { // 12 hours
|
|
275
|
+
round = 2;
|
|
276
|
+
}
|
|
277
|
+
// ... complex distribution logic
|
|
278
|
+
}
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
**Impact:**
|
|
282
|
+
- Automatic dividend distribution twice daily
|
|
283
|
+
- Complex calculation dependencies
|
|
284
|
+
- Gas-intensive operations
|
|
285
|
+
- Potential for distribution failures
|
|
286
|
+
|
|
287
|
+
**Recommendation:**
|
|
288
|
+
- Thoroughly test dividend logic
|
|
289
|
+
- Monitor gas costs
|
|
290
|
+
- Implement fallback mechanisms
|
|
291
|
+
- Document distribution schedule
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
### 9. ⚠️ SWAP MECHANISM RISKS
|
|
296
|
+
|
|
297
|
+
**Description:**
|
|
298
|
+
```solidity
|
|
299
|
+
function swapTokenForFee() private lockTheSwap {
|
|
300
|
+
uint256 lPDividendAmount = balanceOf(address(this));
|
|
301
|
+
// ... swap logic
|
|
302
|
+
uniswapV2Router.swapExactTokensForTokensSupportingFeeOnTransferTokens(
|
|
303
|
+
lPDividendAmount,
|
|
304
|
+
1, // minAmountOut = 1 (no slippage protection!)
|
|
305
|
+
path_usdt,
|
|
306
|
+
address(tokenDistributor),
|
|
307
|
+
block.timestamp + 1
|
|
308
|
+
);
|
|
309
|
+
}
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
**Impact:**
|
|
313
|
+
- Minimal slippage protection (minAmountOut = 1)
|
|
314
|
+
- Vulnerable to sandwich attacks
|
|
315
|
+
- Could result in poor swap rates
|
|
316
|
+
- Fees may be lost to MEV
|
|
317
|
+
|
|
318
|
+
**Recommendation:**
|
|
319
|
+
- Implement proper slippage protection (e.g., 5%)
|
|
320
|
+
- Use oracle for price validation
|
|
321
|
+
- Consider private mempool
|
|
322
|
+
- Monitor swap efficiency
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
|
|
326
|
+
## Low Severity Findings
|
|
327
|
+
|
|
328
|
+
### 10. ℹ️ EIP-7702 CHECK
|
|
329
|
+
|
|
330
|
+
**Description:**
|
|
331
|
+
```solidity
|
|
332
|
+
function isEIP7702(address addr) internal view returns (bool) {
|
|
333
|
+
// Checks for EIP-7702 delegation
|
|
334
|
+
bytes memory code = new bytes(3);
|
|
335
|
+
assembly {
|
|
336
|
+
extcodecopy(addr, add(code, 0x20), 0, 3)
|
|
337
|
+
}
|
|
338
|
+
return code[0] == 0xef && code[1] == 0x01 && code[2] == 0x00;
|
|
339
|
+
}
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
**Impact:**
|
|
343
|
+
- Future-proofing for EIP-7702
|
|
344
|
+
- May not be necessary on BSC
|
|
345
|
+
- Adds gas cost
|
|
346
|
+
|
|
347
|
+
**Recommendation:**
|
|
348
|
+
- Document purpose
|
|
349
|
+
- Consider removing if not needed on BSC
|
|
350
|
+
|
|
351
|
+
---
|
|
352
|
+
|
|
353
|
+
### 11. ℹ️ TYPO IN VARIABLE NAME
|
|
354
|
+
|
|
355
|
+
**Description:**
|
|
356
|
+
```solidity
|
|
357
|
+
mapping(address => bool) public whileList; // Should be "whiteList"
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**Impact:**
|
|
361
|
+
- Confusing variable name
|
|
362
|
+
- No functional impact
|
|
363
|
+
- Reduces code readability
|
|
364
|
+
|
|
365
|
+
**Recommendation:**
|
|
366
|
+
- Fix typo in future versions
|
|
367
|
+
- Update documentation
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
## Gas Optimization Opportunities
|
|
372
|
+
|
|
373
|
+
### 1. Unchecked Arithmetic
|
|
374
|
+
```solidity
|
|
375
|
+
// Current:
|
|
376
|
+
for (uint256 i = 0; i < addrs.length; i++) {
|
|
377
|
+
|
|
378
|
+
// Optimized:
|
|
379
|
+
for (uint256 i; i < addrs.length;) {
|
|
380
|
+
// ...
|
|
381
|
+
unchecked { ++i; }
|
|
382
|
+
}
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
### 2. Storage Packing
|
|
386
|
+
Consider packing boolean flags into a single uint256 to save gas.
|
|
387
|
+
|
|
388
|
+
### 3. Immutable Variables
|
|
389
|
+
Some addresses could be marked immutable if they don't change.
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## Positive Security Features
|
|
394
|
+
|
|
395
|
+
✅ **OpenZeppelin Contracts:** Uses audited OZ contracts
|
|
396
|
+
✅ **ReentrancyGuard:** Protected swap function
|
|
397
|
+
✅ **Verified Source:** Contract is verified on BSCScan
|
|
398
|
+
✅ **No Proxy:** Direct implementation (no upgrade risk)
|
|
399
|
+
✅ **LP Lock Mechanism:** Prevents instant LP removal
|
|
400
|
+
✅ **Anti-Bot:** Time-based fees and restrictions
|
|
401
|
+
✅ **Dividend System:** Rewards LP providers and NFT holders
|
|
402
|
+
|
|
403
|
+
---
|
|
404
|
+
|
|
405
|
+
## Recommendations Summary
|
|
406
|
+
|
|
407
|
+
### Critical Priority:
|
|
408
|
+
1. Implement maximum fee caps (10% max)
|
|
409
|
+
2. Add timelock for critical parameter changes
|
|
410
|
+
3. Audit external dividend contracts
|
|
411
|
+
4. Improve slippage protection in swaps
|
|
412
|
+
5. Document dapp contract purpose and audit it
|
|
413
|
+
|
|
414
|
+
### High Priority:
|
|
415
|
+
6. Consider renouncing ownership after setup
|
|
416
|
+
7. Implement multi-sig for owner functions
|
|
417
|
+
8. Add validation for external contract addresses
|
|
418
|
+
9. Document blacklist criteria and usage
|
|
419
|
+
10. Review and potentially remove dapp privileges
|
|
420
|
+
|
|
421
|
+
### Medium Priority:
|
|
422
|
+
11. Fix "whileList" typo
|
|
423
|
+
12. Optimize gas usage
|
|
424
|
+
13. Add emergency pause mechanism
|
|
425
|
+
14. Implement better MEV protection
|
|
426
|
+
15. Document all restrictions clearly
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
## Testing Recommendations
|
|
431
|
+
|
|
432
|
+
### Unit Tests Needed:
|
|
433
|
+
- Fee calculation accuracy
|
|
434
|
+
- LP add/remove restrictions
|
|
435
|
+
- Dividend distribution logic
|
|
436
|
+
- Blacklist functionality
|
|
437
|
+
- Time-based fee transitions
|
|
438
|
+
- Swap mechanism
|
|
439
|
+
- Dapp contract interactions
|
|
440
|
+
|
|
441
|
+
### Integration Tests:
|
|
442
|
+
- PancakeSwap integration
|
|
443
|
+
- Dividend tracker integration
|
|
444
|
+
- Multi-user scenarios
|
|
445
|
+
- Edge cases (same-block LP operations)
|
|
446
|
+
|
|
447
|
+
### Fuzzing Targets:
|
|
448
|
+
- Fee calculations
|
|
449
|
+
- LP liquidity calculations
|
|
450
|
+
- Dividend distributions
|
|
451
|
+
- Transfer logic with various states
|
|
452
|
+
|
|
453
|
+
---
|
|
454
|
+
|
|
455
|
+
## Conclusion
|
|
456
|
+
|
|
457
|
+
**FINAL VERDICT: 🟡 MEDIUM-HIGH RISK**
|
|
458
|
+
|
|
459
|
+
The AiFi token is a complex DeFi token with multiple advanced features. While it uses audited OpenZeppelin contracts and has some good security practices, it suffers from significant centralization risks and complex mechanisms that could be exploited.
|
|
460
|
+
|
|
461
|
+
### Risk Score: 6.5/10
|
|
462
|
+
|
|
463
|
+
**Key Concerns:**
|
|
464
|
+
1. High centralization (owner controls fees, blacklist, LP amounts)
|
|
465
|
+
2. External contract dependencies (dividend trackers)
|
|
466
|
+
3. Dapp contract privileges (can extract LP tokens)
|
|
467
|
+
4. Complex LP restrictions
|
|
468
|
+
5. Minimal slippage protection in swaps
|
|
469
|
+
6. No ownership renouncement plan
|
|
470
|
+
|
|
471
|
+
### Recommendations for Users:
|
|
472
|
+
- ⚠️ **Proceed with caution** - High centralization risk
|
|
473
|
+
- 📊 Monitor owner actions closely
|
|
474
|
+
- 🔍 Verify dividend tracker contracts
|
|
475
|
+
- ⏰ Be aware of time-based fees
|
|
476
|
+
- 💰 Understand LP restrictions before providing liquidity
|
|
477
|
+
- 🚫 Risk of blacklisting exists
|
|
478
|
+
|
|
479
|
+
### Recommendations for Team:
|
|
480
|
+
1. Implement fee caps and timelocks
|
|
481
|
+
2. Audit all external contracts
|
|
482
|
+
3. Document all mechanisms clearly
|
|
483
|
+
4. Consider decentralization roadmap
|
|
484
|
+
5. Improve slippage protection
|
|
485
|
+
6. Add emergency mechanisms
|
|
486
|
+
|
|
487
|
+
---
|
|
488
|
+
|
|
489
|
+
## Disclaimer
|
|
490
|
+
|
|
491
|
+
This audit report is based on the verified source code at the time of analysis. The contract's behavior depends on external contracts (dividend trackers, dapp contract) which were not audited. Users should conduct their own research and understand the risks before interacting with this token.
|
|
492
|
+
|
|
493
|
+
**This is not financial advice. Always DYOR.**
|
|
494
|
+
|
|
495
|
+
---
|
|
496
|
+
|
|
497
|
+
**Report Generated:** March 26, 2026
|
|
498
|
+
**Contract Status:** VERIFIED ✅
|
|
499
|
+
**Recommendation:** CAUTION - Medium-High Risk 🟡
|