<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>vielite&apos;s blog</title><description>Disclosed vulnerability writeups and audit notes.</description><link>https://vielite.github.io/</link><item><title>Admin Invariant Bypass via grantRole</title><link>https://vielite.github.io/blog/2026/admin-invariant-bypass-via-grantrole/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/admin-invariant-bypass-via-grantrole/</guid><description>Manual admin-count tracking can desynchronize from the real role set.</description><pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Scatter Read Bypass of Concurrent Read Limit in Async IO</title><link>https://vielite.github.io/blog/2026/scatter-read-bypass-of-concurrent-read-limit/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/scatter-read-bypass-of-concurrent-read-limit/</guid><description>Scatter reads bypass the intended IO throttling path.</description><pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Unsafe Downcast of uint256 to uint8 Leads to Overflow</title><link>https://vielite.github.io/blog/2026/unsafe-downcast-of-uint256-to-uint8/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/unsafe-downcast-of-uint256-to-uint8/</guid><description>Week accounting can silently wrap after 255 weeks.</description><pubDate>Sun, 05 Apr 2026 12:00:00 GMT</pubDate></item><item><title>Potential Identity Misbinding in RaptorCast Secondary Client Implementation</title><link>https://vielite.github.io/blog/2026/potential-identity-misbinding-in-raptorcast/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/potential-identity-misbinding-in-raptorcast/</guid><description>Embedded validator identifiers are trusted more than the authenticated sender.</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Silent Failure in handleAgentTaxes</title><link>https://vielite.github.io/blog/2026/silent-failure-in-handle-agent-taxes/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/silent-failure-in-handle-agent-taxes/</guid><description>The settlement leg can fail while accounting still advances.</description><pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate></item><item><title>QA-01: No Deduplication of Peers in ConfirmGroup Allows Traffic Amplification</title><link>https://vielite.github.io/blog/2026/monad-qa-01-no-deduplication-of-peers/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-01-no-deduplication-of-peers/</guid><description>Duplicate node IDs in ConfirmGroup can force redundant sends.</description><pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate></item><item><title>QA-02: Deterministic RNG in BlockSync Peer Selection</title><link>https://vielite.github.io/blog/2026/monad-qa-02-deterministic-rng-in-blocksync/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-02-deterministic-rng-in-blocksync/</guid><description>A fixed RNG seed makes peer selection predictable across runs.</description><pubDate>Wed, 01 Apr 2026 00:00:00 GMT</pubDate></item><item><title>QA-03: BlockSync Processes Invalid Peer Data Without Penalty</title><link>https://vielite.github.io/blog/2026/monad-qa-03-invalid-peer-data-without-penalty/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-03-invalid-peer-data-without-penalty/</guid><description>Peers can trigger expensive verification and remain eligible for reselection.</description><pubDate>Tue, 31 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-04: Empty Validator Set Can Be Accepted in ValidatorSetFactory</title><link>https://vielite.github.io/blog/2026/monad-qa-04-empty-validator-set/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-04-empty-validator-set/</guid><description>A zero-stake validator set can be constructed from empty input.</description><pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-05: Positional Trailing Fields Can Be Misparsed in ConsensusBlockHeader</title><link>https://vielite.github.io/blog/2026/monad-qa-05-positional-trailing-fields/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-05-positional-trailing-fields/</guid><description>Trailing optional fee fields are decoded by position rather than presence flags.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-06: Unchecked Subtraction in Emptying Transaction Threshold Can Underflow</title><link>https://vielite.github.io/blog/2026/monad-qa-06-unchecked-subtraction/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-06-unchecked-subtraction/</guid><description>A zero execution delay can trigger a panic in the threshold comparison.</description><pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-07: Unbounded Accumulation of Future Round Votes in VoteState</title><link>https://vielite.github.io/blog/2026/monad-qa-07-future-round-votes/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-07-future-round-votes/</guid><description>Votes for arbitrary future rounds can accumulate without a hard upper bound.</description><pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-08: Txpool Admission Ignores Value and max_fee_per_gas</title><link>https://vielite.github.io/blog/2026/monad-qa-08-txpool-admission-ignores-solvency/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-08-txpool-admission-ignores-solvency/</guid><description>The txpool can admit insolvent transactions.</description><pubDate>Thu, 26 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-09: ConsensusMessage Late Version Validation Allows Resource Exhaustion</title><link>https://vielite.github.io/blog/2026/monad-qa-09-late-version-validation/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-09-late-version-validation/</guid><description>Wrong-version messages still incur expensive nested decoding work.</description><pubDate>Wed, 25 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-10: Discrepancy Between Documentation and Codebase in EIP-1559 Enabling TFM</title><link>https://vielite.github.io/blog/2026/monad-qa-10-eip1559-tfm-doc-mismatch/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-10-eip1559-tfm-doc-mismatch/</guid><description>Documentation and configuration disagree on TFM support.</description><pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-11: Potential Per-Entry Memory Leak in traverse_callback</title><link>https://vielite.github.io/blog/2026/monad-qa-11-traverse-callback-memory-leak/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-11-traverse-callback-memory-leak/</guid><description>Traversal callbacks copy key and value buffers without finalizing FFI allocations.</description><pubDate>Mon, 23 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-12: Order Assumption in get_account_base_nonces Can Misassign Nonces</title><link>https://vielite.github.io/blog/2026/monad-qa-12-order-assumption-nonces/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-12-order-assumption-nonces/</guid><description>The nonce path assumes backend result ordering without requiring it.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-13: Unconditional Timer Reset on Unknown Seqnum in complete_polled_requests</title><link>https://vielite.github.io/blog/2026/monad-qa-13-unconditional-timer-reset/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-13-unconditional-timer-reset/</guid><description>Unknown sequence numbers can still pace the preload timer.</description><pubDate>Sat, 21 Mar 2026 00:00:00 GMT</pubDate></item><item><title>QA-14: monad_event_ring_try_copy Leaks Stale Descriptor Content on Failure</title><link>https://vielite.github.io/blog/2026/monad-qa-14-event-ring-copy-leak/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-qa-14-event-ring-copy-leak/</guid><description>The function copies descriptor content before validating the sequence number.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate></item><item><title>C-01: Hardcoded Global Hasher Type Creates Governance and Upgrade Risks</title><link>https://vielite.github.io/blog/2026/monad-c-01-hardcoded-global-hasher-type/</link><guid isPermaLink="true">https://vielite.github.io/blog/2026/monad-c-01-hardcoded-global-hasher-type/</guid><description>A globally hardcoded Blake3 type makes future hash migration brittle.</description><pubDate>Thu, 19 Mar 2026 00:00:00 GMT</pubDate></item></channel></rss>