Skip to content

ja3_hash, jarm_hash params broken in DSL option #1805

@vypivshiy

Description

@vypivshiy

httpx version:

georgiy@georgiy-MS-7C81 ~> uname -a
Linux georgiy-MS-7C81 5.15.0-102-generic #112-Ubuntu SMP Tue Mar 5 16:50:32 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
georgiy@georgiy-MS-7C81 ~> httpx --version

    __    __  __       _  __
   / /_  / /_/ /_____ | |/ /
  / __ \/ __/ __/ __ \|   /
 / / / / /_/ /_/ /_/ /   |
/_/ /_/\__/\__/ .___/_/|_|
             /_/

                projectdiscovery.io

[INF] Current Version: v1.6.5

Current Behavior:

in the list of variables they are available:

httpx -ldv
...
jarm_hash
...
ja3_hash
...

If these variables are added to the DSL expression, it will not find the parameters:

[ERR] Could not evaluate DSL expression: No parameter 'jarm_hash' found.

and

[ERR] Could not evaluate DSL expression: No parameter 'ja3_hash' found.

Expected Behavior:

using defined params (ja3_hash, jarm_hash) in DSL option for compare ja3 values

Steps To Reproduce:

# check available ja3 value
export SHOW_DSL_ERRORS=true;
httpx -u https://google.com -jarm -silent

https://google.com [27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d]

httpx -u https://google.com -jarm -mdc 'jarm_hash == "27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d"'

[INF] Current httpx version v1.6.5 (latest)
[ERR] Could not evaluate DSL expression: No parameter 'jarm_hash' found.

httpx -u https://google.com -jarm -mdc 'ja3_hash == "27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d"'

[INF] Current httpx version v1.6.5 (latest)
[ERR] Could not evaluate DSL expression: No parameter 'ja3_hash' found.

Anything else:

It works if you manually pass the domain and port to jarm function:

httpx -silent -u https://google.com -jarm -mdc 'jarm("google.com:443") == "27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d"'
https://google.com [27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d]

httpx -silent -u https://google.com -jarm -mdc 'jarm(replace(url, "https://", "") + ":" + port) == "27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d"'
https://google.com [27d40d40d29d40d1dc42d43d00041d4689ee210389f4f6b4b5b1b93f92252d]

Metadata

Metadata

Assignees

Labels

Status: CompletedNothing further to be done with this issue. Awaiting to be closed.Type: BugInconsistencies or issues which will cause an issue or problem for users or implementors.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions