Skip to content

Untrusted deserialization vulnerability detection#5062

Merged
IlyasShabi merged 5 commits into
masterfrom
untrusted-deserialization
Jan 17, 2025
Merged

Untrusted deserialization vulnerability detection#5062
IlyasShabi merged 5 commits into
masterfrom
untrusted-deserialization

Conversation

@IlyasShabi

@IlyasShabi IlyasShabi commented Dec 31, 2024

Copy link
Copy Markdown
Contributor

What does this PR do?

[APPSEC-55089](https://datadoghq.atlassian.net/browse/APPSEC-55089)

Support Untrusted deserialization vulnerability detection using node-serialize library

Plugin Checklist

Additional Notes

@github-actions

github-actions Bot commented Dec 31, 2024

Copy link
Copy Markdown
Contributor

Overall package size

Self size: 8.41 MB
Deduped: 94.76 MB
No deduping: 95.27 MB

Dependency sizes | name | version | self size | total size | |------|---------|-----------|------------| | @datadog/libdatadog | 0.3.0 | 29.43 MB | 29.43 MB | | @datadog/native-appsec | 8.4.0 | 19.25 MB | 19.26 MB | | @datadog/native-iast-taint-tracking | 3.2.0 | 13.9 MB | 13.91 MB | | @datadog/pprof | 5.4.1 | 9.76 MB | 10.13 MB | | protobufjs | 7.2.5 | 2.77 MB | 5.16 MB | | @datadog/native-iast-rewriter | 2.6.1 | 2.59 MB | 2.73 MB | | @opentelemetry/core | 1.14.0 | 872.87 kB | 1.47 MB | | @datadog/native-metrics | 3.1.0 | 1.06 MB | 1.46 MB | | @opentelemetry/api | 1.8.0 | 1.21 MB | 1.21 MB | | import-in-the-middle | 1.11.2 | 112.74 kB | 826.22 kB | | source-map | 0.7.4 | 226 kB | 226 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | lru-cache | 7.18.3 | 133.92 kB | 133.92 kB | | pprof-format | 2.1.0 | 111.69 kB | 111.69 kB | | @datadog/sketches-js | 2.1.0 | 109.9 kB | 109.9 kB | | semver | 7.6.3 | 95.82 kB | 95.82 kB | | lodash.sortby | 4.7.0 | 75.76 kB | 75.76 kB | | ignore | 5.3.1 | 51.46 kB | 51.46 kB | | shell-quote | 1.8.1 | 44.96 kB | 44.96 kB | | istanbul-lib-coverage | 3.2.0 | 29.34 kB | 29.34 kB | | rfdc | 1.3.1 | 25.21 kB | 25.21 kB | | @isaacs/ttlcache | 1.4.1 | 25.2 kB | 25.2 kB | | tlhunter-sorted-set | 0.1.0 | 24.94 kB | 24.94 kB | | limiter | 1.1.5 | 23.17 kB | 23.17 kB | | dc-polyfill | 0.1.4 | 23.1 kB | 23.1 kB | | retry | 0.13.1 | 18.85 kB | 18.85 kB | | jest-docblock | 29.7.0 | 8.99 kB | 12.76 kB | | crypto-randomuuid | 1.0.0 | 11.18 kB | 11.18 kB | | path-to-regexp | 0.1.12 | 6.6 kB | 6.6 kB | | koalas | 1.0.2 | 6.47 kB | 6.47 kB | | module-details-from-path | 1.0.3 | 4.47 kB | 4.47 kB |

🤖 This report was automatically generated by heaviest-objects-in-the-universe

@IlyasShabi
IlyasShabi force-pushed the untrusted-deserialization branch from 9ddb298 to 34b09fe Compare December 31, 2024 15:42
@pr-commenter

pr-commenter Bot commented Dec 31, 2024

Copy link
Copy Markdown

Benchmarks

Benchmark execution time: 2025-01-03 10:44:56

Comparing candidate commit eb4aaf8 in PR branch untrusted-deserialization with baseline commit 12f2418 in branch master.

Found 0 performance improvements and 3 performance regressions! Performance is the same for 779 metrics, 16 unstable metrics.

scenario:log-without-log-20

  • 🟥 cpu_user_time [+18.197ms; +23.189ms] or [+5.283%; +6.733%]
  • 🟥 execution_time [+20.046ms; +21.763ms] or [+5.140%; +5.581%]

scenario:plugin-graphql-with-async-hooks-22

  • 🟥 max_rss_usage [+97.729MB; +127.963MB] or [+18.209%; +23.843%]

- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 Code Vulnerability

Workflow depends on a GitHub actions pinned by tag (...read more)

View in Datadog  Leave us feedback  Documentation

@IlyasShabi
IlyasShabi marked this pull request as ready for review January 3, 2025 14:21
@IlyasShabi
IlyasShabi requested review from a team as code owners January 3, 2025 14:21
Comment thread packages/datadog-instrumentations/src/node-serialize.js
Comment thread packages/dd-trace/src/appsec/iast/analyzers/untrusted-deserialization-analyzer.js Outdated
@IlyasShabi
IlyasShabi merged commit 726cfd6 into master Jan 17, 2025
@IlyasShabi
IlyasShabi deleted the untrusted-deserialization branch January 17, 2025 08:24
watson pushed a commit that referenced this pull request Jan 22, 2025
* Untrusted deserialization vulnerability detection

* use node-serialize most used version

* fix sorting sensitive analyzers

* remove DB source
@watson watson mentioned this pull request Jan 22, 2025
watson pushed a commit that referenced this pull request Jan 22, 2025
* Untrusted deserialization vulnerability detection

* use node-serialize most used version

* fix sorting sensitive analyzers

* remove DB source
@watson watson mentioned this pull request Jan 22, 2025
watson pushed a commit that referenced this pull request Jan 23, 2025
* Untrusted deserialization vulnerability detection

* use node-serialize most used version

* fix sorting sensitive analyzers

* remove DB source
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants