Description
paicoding 1.0.3 contains a payment bypass vulnerability that allows authenticated attackers to unlock paid articles by guessing weak payment confirmation codes. Attackers can start a payment, enumerate roughly 2000 IdUtil.genPayCode counter values, and submit the matching verifyCode to the unauthenticated callback to mark it paid.
Metrics
CVSS 3.1 5.4/10
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:NWeakness enumeration
Affected software
Source: the vendor's advisory (CNA). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| itwanger | paicoding | 1.0.3 |
References
- https://github.com/itwanger/paicoding/blob/903adce70309d340f7eec51ec3c80cfe3c8326c1/paicoding-core/src/main/java/com/github/paicoding/forum/core/util/id/IdUtil.java#L54-L61
- https://github.com/itwanger/paicoding/blob/903adce70309d340f7eec51ec3c80cfe3c8326c1/paicoding-web/src/main/java/com/github/paicoding/forum/web/front/article/rest/ArticlePayRestController.java#L79-L90
- https://github.com/itwanger/paicoding/issues/137
- https://vul.yulun.ac.cn/20261112/paicoding/
- https://www.vulncheck.com/advisories/paicoding-1.0.3-payment-bypass-via-guessable-codes-in-article-api-pay-callback
Timeline
- Published
- Nov 13, 2026
- Last modified
- Nov 13, 2026
- NVD status
- Received