Skip to content

Fix(Keyboard): Mask code field for sensitive inputs in keydown/keyup#9

Merged
EbParsa merged 1 commit into
mainfrom
mkh-user/fix/8-sensitive-masking
Jun 14, 2026
Merged

Fix(Keyboard): Mask code field for sensitive inputs in keydown/keyup#9
EbParsa merged 1 commit into
mainfrom
mkh-user/fix/8-sensitive-masking

Conversation

@mkh-user

@mkh-user mkh-user commented Jun 14, 2026

Copy link
Copy Markdown
Collaborator

This PR fixes #8 an issue where the code field in keydown and keyup events was not masked for sensitive input elements (e.g. password fields, credit card inputs).

Related Issue

Problem

Currently, when a keyboard event occurs on a sensitive element:

  • key → correctly masked to [masked]
  • code → remains unmasked (e.g. "KeyA", "Digit1")

This leaks potentially sensitive interaction patterns despite the key value being masked.

Solution

  • Add isSensitive(e.target) check for the code field
  • Mask code to [masked] when target is sensitive
  • Remove redundant target masking (keep original elSummary(e.target) as it's already safe)

Changes

handlers.keydown = (e) => record('keydown', {
  key:    isSensitive(e.target) ? '[masked]' : e.key,
- code:   e.code,
- target: isSensitive(e.target) ? '[sensitive]' : elSummary(e.target),
+ code:   isSensitive(e.target) ? '[masked]' : e.code,
+ target: elSummary(e.target),
});

Same change applied to the keyup handler.

Testing

  • Tested on password input → code is [masked]
  • Tested on normal input → code shows actual value (e.g. "KeyA")
  • Tested on credit card-like field (name/id containing "card") → code masked
  • Verified target field still contains valid element summary

Breaking Changes

None. This is a bug fix with backward compatible behavior.

Version Change Suggestion

0.2.00.2.1 (patch)

Note

There is only one major version currently (and Telesense is in 0.x initial development), so no backport is needed until user request.

@mkh-user mkh-user self-assigned this Jun 14, 2026
@mkh-user mkh-user requested a review from EbParsa June 14, 2026 07:25
@mkh-user mkh-user added bug Something isn't working as expected security Provides a security fix or describes a built-in security feature problem labels Jun 14, 2026
@EbParsa EbParsa merged commit 1eeffff into main Jun 14, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working as expected security Provides a security fix or describes a built-in security feature problem

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[SECURITY] Bug: code field is not masked for sensitive inputs in keydown / keyup events

2 participants