XSS in Microsoft Forms: Risks, Payloads, and Defenses

Microsoft Forms itself is a hosted Microsoft product, so most developers are not patching the platform directly. The real problem shows up around it: custom portals embedding forms, internal dashboards rendering form responses, automation flows pushing responses into web apps, and admins exporting untrusted content into HTML-based reports. That is where XSS becomes very real. If your app takes data from Microsoft Forms and later renders it into a page, email preview, admin panel, or reporting widget, you own the output encoding problem. I’ve seen teams assume “it came from a Microsoft product, so it must be safe.” That assumption is how stored XSS survives code review. ...

November 2, 2026 · 7 min · headertest.com

WAF Mistakes That Break XSS Prevention

A WAF can help with XSS prevention. It can also give your team a completely false sense of safety. I’ve seen this pattern too many times: a team buys a WAF, enables the default rules, blocks a few obvious <script> payloads, and then quietly assumes XSS is “handled.” That’s not how this works. A WAF is a useful layer, not a substitute for fixing how the app renders untrusted data. ...

October 16, 2026 · 8 min · headertest.com

Common XSS Mistakes in FormBucket and How to Fix Them

FormBucket is convenient because it lets you collect form submissions without building a full backend. That convenience also creates a trap: teams treat it like a harmless inbox, then start rendering submission data in dashboards, emails, admin tools, thank-you pages, or internal review apps. That’s where XSS shows up. The problem usually isn’t FormBucket itself. The problem is what developers do with untrusted form data after it lands. If you accept name, message, company, or notes from a public form, assume every field is attacker-controlled HTML and JavaScript. If you forget that even once, you get stored XSS, reflected XSS, or DOM-based XSS depending on how you display it. ...

June 22, 2026 · 7 min · headertest.com

XSS in URL Parameters: Copy-Paste Prevention Guide

XSS in URL parameters URL parameters are one of the most common places where XSS starts. They feel harmless because they arrive as plain text: https://example.com/search?q=shoes Then somebody reads q, drops it into the page, and now you have script execution. The vulnerable pattern is usually boring: const params = new URLSearchParams(window.location.search); const q = params.get('q'); document.getElementById('search-label').innerHTML = `Results for: ${q}`; If q is: <img src=x onerror=alert(1)> you just handed the browser executable HTML. ...

June 15, 2026 · 7 min · headertest.com