Plexrum Info

Universal Ownership for real-world assets. Plexrum is a unified ecosystem where a property stays scarce — but its ownership becomes infinite. Access · Exchange · Create · Unlock — all on-chain.

Plexrum Logo

Team and KYC Verification

The KYC verification for this project is currently in progress.

The team has submitted their information and verification is pending.

KYC Badge

TrustNet Score

The TrustNet Score evaluates crypto projects based on audit results, security, KYC verification, and social media presence. This score offers a quick, transparent view of a project's credibility, helping users make informed decisions in the Web3 space.

74.42
Poor Excellent

Real-Time Threat Detection

Real-time threat detection, powered by Cyvers.io, is currently not activated for this project.

This advanced feature provides continuous monitoring and instant alerts to safeguard your assets from potential security threats. Real-time detection enhances your project's security by proactively identifying and mitigating risks. For more information, click here.

Security Assessments

Select the audit
"Static Analysis Dynamic Analysis Symbolic Execution SWC Check Manual Review"
Contract address
N/A
Network N/A
License N/A
Compiler N/A
Type N/A
Language Solidity
Onboard date 2026/05/26
Revision date 2026/09/15

Summary and Final Words

No crucial issues found

The contract does not contain issues of high or medium criticality. This means that no known vulnerabilities were found in the source code.

Contract owner cannot mint

It is not possible to mint new tokens.

Contract owner cannot blacklist addresses.

It is not possible to lock user funds by blacklisting addresses.

Contract owner cannot set high fees

The fees, if applicable, can be a maximum of 25% or lower. The contract can therefore not be locked. Please take a look in the comment section for more details.

Contract cannot be locked

Owner cannot lock any user funds.

Token cannot be burned

There is no burning within the contract without any allowances

Ownership is not renounced

The owner retains significant control, which could potentially be used to modify key contract parameters.

Contract is not upgradeable

The contract does not use proxy patterns or other mechanisms to allow future upgrades. Its behavior is locked in its current state.

Scope of Work

This audit encompasses the evaluation of the files listed below, each verified with a SHA-1 Hash. The team referenced above has provided the necessary files for assessment.

The auditing process consists of the following systematic steps:

  1. Specification Review: Analyze the provided specifications, source code, and instructions to fully understand the smart contract's size, scope, and functionality.
  2. Manual Code Examination: Conduct a thorough line-by-line review of the source code to identify potential vulnerabilities and areas for improvement.
  3. Specification Alignment: Ensure that the code accurately implements the provided specifications and intended functionalities.
  4. Test Coverage Assessment: Evaluate the extent and effectiveness of test cases in covering the codebase, identifying any gaps in testing.
  5. Symbolic Execution: Analyze the smart contract to determine how various inputs affect execution paths, identifying potential edge cases and vulnerabilities.
  6. Best Practices Evaluation: Assess the smart contracts against established industry and academic best practices to enhance efficiency, maintainability, and security.
  7. Actionable Recommendations: Provide detailed, specific, and actionable steps to secure and optimize the smart contracts.

A file with a different Hash has been intentionally or otherwise modified after the security review. A different Hash may indicate a changed condition or potential vulnerability that was not within the scope of this review.

Final Words

The following provides a concise summary of the audit report, accompanied by insightful comments from the auditor. This overview captures the key findings and observations, offering valuable context and clarity.


Smart Contract Analysis Statement

Contract Analysis

The Plexrum (PLXR) contract implements an ERC-20 token with a fixed supply of one billion units, holder-burnable balances, renounceable ownership, and no post-deployment minting. It is deployed on Ethereum rather than the chain targeted by the previous revision. The design remains deliberately minimal and follows the well-trodden OpenZeppelin pattern for non-inflationary tokens. There are no fee-on-transfer mechanics, no blacklist, no pause, and no rebase. The token passes every ERC-20 conformance check, including return types, view modifiers, and indexed event parameters, and symbolic execution surfaced nothing beyond a known false positive in compiler-generated constructor scaffolding. Both findings raised against the previous revision of this contract have been addressed, and two new items were introduced by that remediation:

  • Ownership transfer is now two-step, which resolves the previously-reported risk that a mistyped recipient would hand the token over irrecoverably. This was verified by test: the transfer does not take effect on proposal, an unauthorised acceptance reverts, and a mistyped pending owner can be overridden by proposing again before acceptance. Renunciation remains available by design, matching the project's stated intent to renounce once the token is in distribution.
  • The constructor was marked payable to capture a small deployment-gas saving, as previously recommended. The token has no receive function, no fallback, and no withdrawal path of any kind, so any ether attached to the deployment transaction is frozen permanently. The saving is roughly two hundred gas, once, which is not a trade worth making against an unrecoverable loss. Removing the modifier is the recommended resolution.
  • The Solidity pragma is now pinned rather than floating, which was the substance of the previous recommendation, but it was pinned to a different exact version from the rest of the project. Two exact pins with no overlapping range is a stricter failure than the floating caret it replaced, because the caret was at least satisfiable by the newer compiler. The practical consequences are that the project cannot be built under a single declared compiler version, and that no deployment script, integration test, or periphery contract can reference the token alongside the presale or the vault. Aligning every file to the same exact version resolves this.
  • The total supply constant now uses scientific notation, consistent with the rest of the codebase. Cosmetic, and confirmed applied.

Ownership Privileges

The ownership of the contract has been retained by the deployer and is renounceable per the project's design. The owner retains the full but deliberately narrow set of privileges:

  • Propose a transfer of ownership to another address. The transfer only takes effect once the proposed owner accepts it, and the proposal can be replaced or redirected until then.
  • Renounce ownership permanently, which the project indicates is the intended end state once the token is in distribution.
  • No ability to mint new tokens. Total supply is locked at one billion forever, and the only mint call is in the constructor.
  • No ability to pause transfers, freeze accounts, blacklist holders, or take fees on transfers.
  • The contract has no upgrade path, no proxy, and no admin module beyond ownership.
  • Burn is a holder-side function only. No administrative burn exists, so the owner cannot reduce another holder's balance.
  • The contract exposes no rescue function and holds no value by design. Note that ether attached to the deployment transaction would be held and would not be recoverable, which is the open finding above.
  • There are no fee sinks, treasury hooks, or routing of transfer value to external addresses.

Security Features

The contract implements several positive security features:

  • Fixed and immutable supply minted entirely at construction time, removing any possibility of post-deployment inflation.
  • Two-step ownership transfer, so a proposed owner must accept before any privilege moves. This is an improvement over the previous revision and closes the only material finding raised against it.
  • Direct inheritance from the OpenZeppelin v5 ERC-20 reference implementation, which delegates transfer, approval, and event-emission semantics to a widely-reviewed base.
  • Holder burn provides a clean, supply-reducing exit path with no administrative interaction.
  • Full ERC-20 conformance confirmed by automated checking. The only flagged item is the long-deprecated approval race condition, which the library treats as an integrator concern and for which it exposes safe-increase, safe-decrease, and force-approve helpers. This is expected behaviour rather than a contract defect, though the project should document the recommended helpers for integrators.
  • Static analysis with deterministic scanners, symbolic execution, and pattern matching found no exploitable issue in the token. The only items raised are the ownership and pragma observations noted above.

Note - This audit report consists of a security re-analysis of the PLXR smart contract following remediation of the previous engagement's findings. This analysis did not include economic analysis of the contract's tokenomics. Moreover, we only audited the main contract for the Plexrum team. Other contracts associated with the project were audited in parallel but reported separately, and the broader Plexrum ecosystem was not part of this engagement. Note that the submitted repository did not compile as delivered and had to be reconstructed for analysis, so re-verification against a building repository is required before deployment. We recommend investors do their own research before investing.

Files and details

Findings and Audit result

low Issues | 3 findings

Pending

#1 low Issue
Payable constructor traps ether permanently because the token has no ether exit path
PLXR.sol
L31
Description

The constructor was marked payable to save deployment gas, following the optimization recommended in the previous review. The token has no receive function, no fallback, and no withdrawal function of any kind, so any ether attached to the deployment transaction is frozen for the lifetime of the chain. The same pattern was applied to the vesting vault, which is likewise unable to release it. The presale contract also has a payable constructor but does expose an ether rescue, so only these two are affected. Static analysis reports both as locked-ether at medium impact and high confidence.

Pending

#2 low Issue
Token pins an exact compiler version that does not intersect with the rest of the project
PLXR.sol
L2
Description

The token declares an exact pragma of 0.8.24 while the presale, the vault, both interfaces and the tier library all declare an exact pragma of 0.8.34. Two exact pins with no overlapping range is a stricter failure than the floating caret it replaced, because the previous caret form was at least satisfiable by the newer compiler. Setting a single compiler version in the build profile now fails immediately, so the project cannot be built reproducibly, and no single compilation unit can reference the token alongside the presale or the vault. That rules out any deployment script, integration test or periphery contract that needs both sides. A secondary effect is that the two compiler versions default to different EVM targets, Shanghai against Cancun, so the three contracts are built for different targets unless that is overridden explicitly.

Resolved

#3 low Issue
Single-step ownership transfer can lock out the project on a typo
PLXR.sol
L23
Description

Previously reported. The token inherited the single-step ownership base, so a mistyped recipient in a transfer handed the contract over irrecoverably in one transaction.

optimization Issues | 2 findings

Resolved

#1 optimization Issue
Use scientific notation for the total-supply constant
PLXR.sol
L25
Description

Previously reported. The total supply was declared using the exponentiation form rather than the scientific notation used elsewhere in the project.

Resolved

#2 optimization Issue
Constructor can be marked payable to save deployment gas
PLXR.sol
L31
Description

Previously reported as a gas optimization. Solidity adds an implicit zero-value check to every non-payable constructor, and removing it saves a small amount of deployment gas.

informational Issues | 2 findings

Pending

#1 informational Issue
Solidity pragma is floating and differs from the rest of the project
PLXR.sol
L2
Description

Previously reported. The token declared a floating pragma with a lower floor than the other contracts in scope, so a later rebuild could pick up an unaudited compiler.

Pending

#2 informational Issue
Approval race-condition note carried over from older ERC-20 patterns
PLXR.sol
L23
Description

Previously reported. The token inherits the standard approval function, which is susceptible to the classic front-running race when a non-zero allowance is changed to another non-zero value. The library treats this as an integrator concern and exposes safe increase, safe decrease and force-approve helpers for it. The behaviour is expected and is not a contract defect.