Skip to content

3.5.11 — Mask the Password Field

Obscure feedback of authentication information.

Don’t show passwords on screen as they’re typed. Mask authentication fields with dots or asterisks. This prevents shoulder surfing — someone watching your screen as you type.

Most modern systems do this by default. The risk is in three places:

  1. Custom applications — internally developed tools that display passwords in input fields
  2. Admin CLI tools — command-line interfaces that echo passwords to the terminal
  3. ‘Show password’ toggles — some applications have a toggle that reveals the password and leaves it visible indefinitely

The assessor may walk around the office during a login demonstration and check that password fields are masked. It’s a low-point requirement (1 point) but an easy one to satisfy — or to fail if you have a custom app nobody thought to check.


Your assessor needs a “yes” to every row:

#QuestionWhat “yes” looks like
1Is feedback of authentication information obscured during the authentication process?Password fields masked with dots/asterisks across all login interfaces

Documents they’ll review: Identification and authentication policy; system security plan; system design documentation; system configuration settings

People they’ll talk to: Personnel with information security responsibilities; system developers

Live demos they’ll ask for: Mechanisms supporting or implementing authentication feedback obscuring


These are the actual questions. Have answers ready.

  • “Are all password fields masked across your applications?”
  • “Do any custom or internal applications display passwords in clear text?”
  • “Do your CLI admin tools echo passwords to the screen?”
  • “Is there a ‘show password’ feature on any login page? How does it behave?”

Custom app with visible passwords. An internally built tool that displays the password in the input field. Developer fix — change the input type to ‘password’.

CLI tools echoing passwords. Running a script that prompts for a password and echoes it to the terminal. Use secure input methods (Read-Host -AsSecureString in PowerShell, getpass in Python).

Passwords visible in URL bar. A web application that passes credentials as URL parameters, visible in the address bar. Fix the application to use POST instead of GET for login.

Show-password toggle with no auto-hide. ‘Show password’ button that reveals the password and leaves it visible indefinitely. Implement an auto-hide after 2-3 seconds or on mouse-up.



RequirementWhy it matters here
3.5.10 — Never Plain TextPasswords protected in storage and transit; this protects them on screen
3.1.10 — Lock the ScreenScreen lock prevents viewing of any data including masked password fields

🔒

Step-by-step guides for Microsoft 365, AWS, Azure, and GCP are available to Ancitus clients.

Start a conversation →

CMMC Practice ID: IA.L2-3.5.11 | SPRS Weight: 1 point | POA&M Eligible: Yes