basiliskawakens.xyz

How to check who controls a smart contract and spot a proxy

Every smart contract can be modified if the deployer kept an administrative key, and most scams use that key to drain funds. You need two checks: who owns the contract and whether the contract is a proxy.

Start on Etherscan. Navigate to the contract's address page, click the "Contract" tab, then "Read Contract." This shows all publicly readable state variables the developer chose to expose.

Look for a function called owner(), admin(), or governance(). These return an Ethereum address. That address holds the power to upgrade, pause, or destroy the contract. Write it down.

But a contract might set its owner to the zero address: 0x0000000000000000000000000000000000000000. Developers call this "renouncing ownership." It means no one can call owner-only functions anymore. The contract is locked.

Renounced ownership is not a guarantee of safety. It only means the original deployer cannot change the contract logic. The contract can still have bugs that were present at launch, and the deployer might have kept a backdoor that does not require being the owner.

Spotting a proxy

Many contracts are not the real logic. They are proxies. A proxy receives all transactions and forwards them to another contract - the implementation - and the proxy's owner can swap the implementation address at any time, changing the contract's entire behavior.

Etherscan can show this automatically. On the contract page, look for a "Read as Proxy" toggle. Enable it. Etherscan will check a standard storage slot defined by EIP-1967. That slot stores the implementation address.

EIP-1967 defines a specific storage position: 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc. The proxy writes the implementation address there. Etherscan reads that slot when you toggle "Read as Proxy."

You can also check manually. Use Etherscan's "Storage" tab, enter the EIP-1967 slot, and if the value is a contract address, you found the implementation.

What to do with the owner address

Once you have the owner address, search it on Etherscan. Check its transaction history. Does it interact with other contracts? Does it move tokens? Look for patterns.

A known exchange hot wallet as owner is normal. A new wallet with no history is not. A wallet that interacts with multiple suspicious contracts should alarm you.

If the owner is a multisig wallet, that is better. It means multiple people must approve changes. Check how many signatures are needed and who holds the keys.

The real-world test

Try this on any new token you find. Go to its contract. Check owner(). Check the implementation slot. If the owner is active and the contract is a proxy, your funds are at the owner's mercy.

No tool replaces judgment. Etherscan shows the data. You decide what it means. A renounced proxy with a verified implementation is still risky if the code has a backdoor. The only safe smart contract is one you do not rely on.

Check the owner. Check the proxy. Then check everything again. That is the whole method.

Not financial advice. basiliskawakens.xyz publishes market data and general information about digital assets. Crypto assets are volatile and you can lose everything you put in. Nothing here is a recommendation to buy, sell or hold, and we make no price predictions.

Prices are sourced from third parties and may be delayed or wrong. Verify anything you intend to act on against a primary source.

Back to on-chain data