Timestamp Dependence Vulnerability Scanner
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Timestamp Dependence Vulnerability Scanner is a security-focused tool that scans Solidity contracts for timestamp dependence vulnerabilities. It takes contract source code from the user and analyzes it for usage of block.timestamp and the deprecated 'now' alias. The tool identifies timestamp usage in various contexts including comparisons, require statements, if conditions, arithmetic operations, and state variable assignments. Each finding is classified by severity (high, medium, low, or info) based on the context and potential impact. The tool provides detailed descriptions of each vulnerability, the exact location in the source code, and actionable recommendations for remediation. This enables developers to identify and fix timestamp manipulation vulnerabilities before deployment, reducing the risk of miners exploiting block timestamps to influence contract behavior.
HOW TO USE
Paste your Solidity contract source code into the input area. Click "Scan for timestamp dependence" to analyze the code. The tool will display a summary showing the number of timestamp usages found, and counts of high, medium, and low severity issues. Each vulnerability entry includes the name, severity, description, location (line number and context), and a recommendation for fixing the issue. The scan report can be copied or downloaded as JSON for further analysis.
TECHNICAL NOTE: PATTERN-BASED TIMESTAMP DETECTION
The tool uses regex-based pattern matching to detect timestamp usage in Solidity source code. It scans for block.timestamp and 'now' tokens, then analyzes the surrounding context to determine the severity of each usage. Patterns detected include: timestamp comparisons (e.g., block.timestamp > value), timestamp in require statements, timestamp in if conditions, timestamp arithmetic, and timestamp assignments to state variables. Each pattern is mapped to a severity level based on the potential for manipulation: high for timestamp comparisons in security-critical logic, medium for timestamp usage in general logic, low for timestamp storage, and info for informational findings. The tool also detects the number of timestamp usages and provides a comprehensive report with line numbers and context snippets.
WHAT IT CANNOT SEE
The tool cannot detect all timestamp dependence issues without context; some usages may be safe depending on the specific application logic. It is limited to the accuracy of the source code analysis; syntax variations may cause false positives or negatives. It cannot detect timestamp manipulation in external contracts or libraries that are imported into the contract. It cannot verify if a timestamp dependence is actually exploitable in the specific deployment environment. The tool is limited by the parser's ability to handle Solidity syntax variations, including newer language features. It cannot scan for timestamp dependence on non-EVM chains.
PLEASE NOTE
This tool is designed exclusively for Solidity contracts on EVM-compatible chains. It does not support other smart contract languages. The scan results are based on static analysis and may produce false positives or miss some issues. Always verify the findings with manual review and testing. The tool is read-only and does not modify any state. The tool provides no warranty that the scan results are complete or accurate; users are responsible for validating all findings and implementing appropriate fixes.