DANGER
malware detected
github.com / dhasap
dhasap/ nft-mint-agent
TypeScript·76 files·commit 3573406·scanned 4d ago·cached ✓
94/100
MALICIOUS
Matches known-malicious patterns. Do not clone or install.
This repository contains patterns associated with malware. Do NOT run this code.
verdict accurate?
Crypto/Web3 project
Social engineering indicators
CLI tool detected
threat-state: maliciouslive
FINDINGS ░▒▓
criticalFunction() constructor detectednew Function() is equivalent to eval() and can execute arbitrary code strings.tests/security.test.ts
// eslint-disable-next-line no-new-func
const factory = new Function(`${snippet}\nreturn { __assertSafeTx, __assertTypedDataAllowed };`);
return factory() as {
__assertSafeTx: (tx: any) => a...+5criticalBrowser wallet app with Node/system accessThe repository interacts with browser wallets but also accesses the filesystem or executes shell/code. This context mismatch is typical of hybrid drainer/infostealer malware.+10
criticalSuspicious code is reachable from an entry pointFlagged files are imported by the application's entry path: src/listing/index.ts, src/scheduler/index.ts, src/tools/index.ts. This means the suspicious code can execute when the app runs.+8
infoWallet transaction signing APIUses wallet signing APIs (signTransaction, signMessage, sendTransaction, etc.). Legitimate in DeFi apps, but combined with remote exfiltration it is the core drainer pattern.src/tools/index.ts
// Send cancel TX: 0 value to self, same nonce, higher gas
const cancelTx = await walletInfo.wallet.sendTransaction({
to: walletInfo.address,
value: BigInt(0),+2infoBrowser wallet provider accessAccesses browser wallet providers (window.solana, window.ethereum, Phantom, Solflare, etc.). Common in Web3 apps but also the entry point for wallet drainers.src/browser/inject.ts
* Generates JavaScript code that the Hermes agent evaluates via browser_console(). * These scripts inject a custom window.ethereum provider that: * 1. Mimics MetaMask interface * 2. Signs transact...+2
infoWallet transaction signing APIUses wallet signing APIs (signTransaction, signMessage, sendTransaction, etc.). Legitimate in DeFi apps, but combined with remote exfiltration it is the core drainer pattern.src/browser/inject.ts
console.log('[WalletInject] Sending TX:', JSON.stringify({ to: tx.to, value: tx.value?.toString(), data: tx.data?.slice(0, 10) }));
const txResponse = await wallet.sendTransact...+2infoWallet transaction signing APIUses wallet signing APIs (signTransaction, signMessage, sendTransaction, etc.). Legitimate in DeFi apps, but combined with remote exfiltration it is the core drainer pattern.src/browser/proxy-server.ts
};
const raw = await wallet.signTransaction(txReq);
const sent = await provider.broadcastTransaction(raw);
console.error(`[SigningProxy] tx ${sent.hash} wallet ${wallet.address...+2infoBrowser wallet provider accessAccesses browser wallet providers (window.solana, window.ethereum, Phantom, Solflare, etc.). Common in Web3 apps but also the entry point for wallet drainers.src/browser/scrape.ts
// 4. Check for ethereum provider chain
if (window.ethereum && window.ethereum.chainId) {
const chainIdMap = { '0x1': 'ethereum', '0x89': 'polygon', '0xa4b1': 'arbitrum', '0xa': 'optimism', '0...+2criticalCryptocurrency wallet directory accessAccessing wallet directories to steal private keys, seed phrases, or wallet data.src/wallet/generate.ts+5
warningHigh-entropy string literalsFound 3 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/scheduler/index.ts+3
warningHigh-entropy string literalsFound 52 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/tools/index.ts+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/tools/index.ts+3
warningHigh-entropy string literalsFound 23 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/browser/inject.ts+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/browser/inject.ts+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/browser/proxy-server.ts+3
warningHardcoded secret/credentialAPI keys, passwords, or tokens hardcoded in source code. Should be in environment variables.src/listing/index.ts
itemType: 0, // NATIVE (ETH)
token: '0x0000000000000000000000000000000000000000',
identifierOrCriteria: '0',
startAmount: priceWei,+3Scores are heuristics. A “safe” verdict means no known-malicious patterns were found — clever malware can look boring. Wrong verdict? Flag it above; confirmed false positives become regression tests.
40 files scanned @ 3573406 | 8/20/2026 | heuristic scan — always review manually
risk by category
code execution25
network & exfiltration0
file system access19
obfuscation15
supply chain0
owasp / injection3
telemetry
files 40/76rules hit 18engine v5commit 3573406
github
dhasap/nft-mint-agent
⚡ Competitive multi-wallet NFT auto-minting agent for OpenSea/SeaDrop & direct contracts — low-latency fast-mint (raw EIP-1559, multi-RPC fan-out, RBF), scheduled drops, browser fallback & listing. Runs as an MCP server, an AI-agent skill (Hermes/Claude), or a CLI. Security-hardened, multi-chain EVM.
5
0
98d
76 files
40 scanned(53%)
3573406
architecture░▒▓
entry (4) flagged (12) pkg (10)
45 nodes · 96 edgesscroll to zoom · click node to jump to finding