Skip to content

WIP: Fixing failing jstests#151

Merged
tmbrbr merged 2 commits into
SAP:mainfrom
leeN:failing_jstests
Jul 31, 2023
Merged

WIP: Fixing failing jstests#151
tmbrbr merged 2 commits into
SAP:mainfrom
leeN:failing_jstests

Conversation

@leeN

@leeN leeN commented Jul 10, 2023

Copy link
Copy Markdown
Collaborator

Running ./mach jstests shows some failing tests, i.e., where foxhound behavior diverges from vanilla Firefox.

This PR tracks the progress of fixing these issues. The underlying reason for test failures is that when assembling the taint flow we call String functions internally, which might have observable side effects iff the user overrides those functions.

@tmbrbr tmbrbr merged commit 82017ba into SAP:main Jul 31, 2023
@tmbrbr tmbrbr mentioned this pull request Aug 8, 2023
leeN added a commit to leeN/project-foxhound that referenced this pull request Jan 30, 2024
These tests used to be broken in Foxhound and were fixed in SAP#151.

This fix was intended to mask the fact that these tests were picking up
and failing due to foxhound induced side effects on untainted strings.

As we call toString() on objects during TaintOperation creation, the
usage of Foxhound can have visible side effects. This is shown here as
these tests count how often toString() is called on an object.

Now, in this branch we do not create any TaintOperation objects for
these specific cases of untainted strings anymore. Consequently, the
tests are now passing in their original form.
tmbrbr pushed a commit that referenced this pull request Jan 31, 2024
These tests used to be broken in Foxhound and were fixed in #151.

This fix was intended to mask the fact that these tests were picking up
and failing due to foxhound induced side effects on untainted strings.

As we call toString() on objects during TaintOperation creation, the
usage of Foxhound can have visible side effects. This is shown here as
these tests count how often toString() is called on an object.

Now, in this branch we do not create any TaintOperation objects for
these specific cases of untainted strings anymore. Consequently, the
tests are now passing in their original form.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants