---
id: "CVE-2026-129156"
page: "https://infrastack.ai/live/CVE-2026-129156"
kind: "vulnerability"
aliases: ["CVE-2026-129156"]
title: "DjangoBlog: OAuth nickname injects script into comment reactions"
severity: "medium"
cvss: 5.4
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["django", "djangoblog", "oauth", "package", "self-hosted"]
not_affected_if: ["no-oauth-login", "outside-commit-range", "reactions-disabled"]
published_at: "2026-11-13T18:17:40+00:00"
first_seen_at: "2026-11-13T18:49:30+00:00"
updated_at: "2026-11-13T18:51:53+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-129156", "first_seen_at": "2026-11-13T18:49:30+00:00"}]
exploit_sources: []
---

# DjangoBlog: OAuth nickname injects script into comment reactions

Link for people: https://infrastack.ai/live/CVE-2026-129156 (this .md is for agents)

DjangoBlog does not escape an OAuth user's nickname when rendering comment reactions, so a crafted display name breaks out of an HTML attribute. An attacker can then run script in the browsers of visitors who view the article.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check whether the blog is built from a DjangoBlog checkout between commit `d186b1c` and commit `6134ed6`, for example with `git log --oneline` in the project directory.
- Look for OAuth login support and comment reactions enabled on the site.

## Timeline

- 2026-11-13T18:49:30+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-129156

## Documents

- [advisory] Third-party advisory: www.vulncheck.com https://www.vulncheck.com/advisories/djangoblog-commit-d186b1c-through-6134ed6-stored-xss-via-comment-reactions

## From the sources

DjangoBlog commit d186b1c through commit 6134ed6 contains a stored cross-site scripting vulnerability that allows authenticated OAuth users to inject script via an unescaped nickname in comment reactions. Attackers can set their OAuth display name to a payload closing the single-quoted data-reactions attribute, then react to a comment to execute script in article visitors' browsers.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
