QA Bug Playground

Signup Form

🇻🇳 Form đăng ký

What to try on each field

🇻🇳 Những gì nên thử trên từng trường
💡 Hint: Username: leave it empty (accepted), submit " admin" with a leading space (treated as a different account from "admin" since nothing trims it), or paste a few thousand characters (no maxlength, nothing truncates it).
🇻🇳 Username: để trống (vẫn được chấp nhận), gửi " admin" có khoảng trắng ở đầu (bị coi là tài khoản khác với "admin" vì không có gì trim nó), hoặc dán vào vài nghìn ký tự (không có maxlength, không gì cắt bớt).
💡 Hint: Email: "abc@d" passes because the check is just /.+@.+/ -- no TLD, no domain-dot requirement.
🇻🇳 Email: "abc@d" vẫn qua vì kiểm tra chỉ là /.+@.+/ -- không yêu cầu TLD, không yêu cầu dấu chấm trong tên miền.
💡 Hint: Password: label says 8+ characters with a number, but 4 plain letters like "abcd" is accepted both in the browser and if you resubmit the same form with curl.
🇻🇳 Password: nhãn ghi 8+ ký tự có số, nhưng chỉ 4 chữ cái thường như "abcd" vẫn được chấp nhận, cả trên trình duyệt lẫn khi gửi lại form bằng curl.
💡 Hint: Confirm password: type two different passwords -- it still says they match, because the comparison was never implemented.
🇻🇳 Confirm password: nhập hai mật khẩu khác nhau -- vẫn báo khớp, vì việc so sánh chưa bao giờ được cài đặt.
💡 Hint: Age: try -5, 2.5, or "banana" -- only a fully empty field is rejected.
🇻🇳 Age: thử -5, 2.5, hoặc "banana" -- chỉ có trường hoàn toàn trống mới bị từ chối.
💡 Hint: Phone: type letters -- the label claims "digits only" but nothing enforces it.
🇻🇳 Phone: gõ chữ cái vào -- nhãn ghi "chỉ số" nhưng không gì thực thi điều đó.
💡 Hint: Terms checkbox: submit the form without checking it -- the account is still created because the server's condition is inverted.
🇻🇳 Checkbox điều khoản: submit form mà không tick vào -- tài khoản vẫn được tạo vì điều kiện phía server bị đảo ngược.
💡 Hint: Unicode/emoji: a username like "👑admin👑" or right-to-left text is stored and echoed back as-is with no normalization, which can visually spoof or break layout elsewhere it's displayed.
🇻🇳 Unicode/emoji: một username như "👑admin👑" hoặc chữ viết phải-sang-trái được lưu và hiển thị lại y nguyên, không hề chuẩn hóa -- có thể gây giả mạo trực quan hoặc phá layout ở nơi khác hiển thị nó.
💡 Hint: On success, your username is echoed back unescaped in the welcome banner -- try one containing <img src=x onerror=alert(1)> for a bonus reflected XSS.
🇻🇳 Khi thành công, username của bạn được hiển thị lại không qua escape trong banner chào mừng -- thử một username chứa <img src=x onerror=alert(1)> để có thêm lỗi reflected XSS.