-
Notifications
You must be signed in to change notification settings - Fork 289
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IAST support for commons fileupload #6089
IAST support for commons fileupload #6089
Conversation
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 54 cases. Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.044 s) : 0, 1043585
Total [baseline] (8.776 s) : 0, 8775511
Agent [candidate] (1.031 s) : 0, 1031143
Total [candidate] (8.781 s) : 0, 8780559
section iast
Agent [baseline] (1.16 s) : 0, 1160218
Total [baseline] (9.344 s) : 0, 9343728
Agent [candidate] (1.146 s) : 0, 1146495
Total [candidate] (9.28 s) : 0, 9279804
section iast_TELEMETRY_OFF
Agent [baseline] (1.14 s) : 0, 1140159
Total [baseline] (9.301 s) : 0, 9300562
Agent [candidate] (1.154 s) : 0, 1154176
Total [candidate] (9.348 s) : 0, 9347650
gantt
title insecure-bank - break down per module: candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (653.553 ms) : 0, 653553
BytebuddyAgent [candidate] (645.406 ms) : 0, 645406
GlobalTracer [baseline] (297.421 ms) : 0, 297421
GlobalTracer [candidate] (294.759 ms) : 0, 294759
AppSec [baseline] (49.761 ms) : 0, 49761
AppSec [candidate] (48.793 ms) : 0, 48793
Remote Config [baseline] (668.773 µs) : 0, 669
Remote Config [candidate] (656.079 µs) : 0, 656
Telemetry [baseline] (7.322 ms) : 0, 7322
Telemetry [candidate] (7.214 ms) : 0, 7214
section iast
BytebuddyAgent [baseline] (775.509 ms) : 0, 775509
BytebuddyAgent [candidate] (764.772 ms) : 0, 764772
GlobalTracer [baseline] (276.886 ms) : 0, 276886
GlobalTracer [candidate] (274.498 ms) : 0, 274498
AppSec [baseline] (46.971 ms) : 0, 46971
AppSec [candidate] (46.922 ms) : 0, 46922
Remote Config [baseline] (581.745 µs) : 0, 582
Remote Config [candidate] (561.214 µs) : 0, 561
Telemetry [baseline] (9.849 ms) : 0, 9849
Telemetry [candidate] (10.564 ms) : 0, 10564
IAST [baseline] (15.639 ms) : 0, 15639
IAST [candidate] (14.833 ms) : 0, 14833
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (757.194 ms) : 0, 757194
BytebuddyAgent [candidate] (768.264 ms) : 0, 768264
GlobalTracer [baseline] (274.522 ms) : 0, 274522
GlobalTracer [candidate] (279.007 ms) : 0, 279007
AppSec [baseline] (46.539 ms) : 0, 46539
AppSec [candidate] (47.324 ms) : 0, 47324
Remote Config [baseline] (590.394 µs) : 0, 590
Remote Config [candidate] (599.987 µs) : 0, 600
Telemetry [baseline] (10.4 ms) : 0, 10400
Telemetry [candidate] (8.59 ms) : 0, 8590
IAST [baseline] (16.646 ms) : 0, 16646
IAST [candidate] (15.656 ms) : 0, 15656
Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.041 s) : 0, 1041212
Total [baseline] (9.347 s) : 0, 9346746
Agent [candidate] (1.041 s) : 0, 1040841
Total [candidate] (9.34 s) : 0, 9339594
section appsec
Agent [baseline] (1.12 s) : 0, 1119605
Total [baseline] (9.348 s) : 0, 9347932
Agent [candidate] (1.121 s) : 0, 1121204
Total [candidate] (9.343 s) : 0, 9342688
section iast
Agent [baseline] (1.149 s) : 0, 1148883
Total [baseline] (9.512 s) : 0, 9512088
Agent [candidate] (1.147 s) : 0, 1147280
Total [candidate] (9.489 s) : 0, 9489164
section profiling
Agent [baseline] (1.215 s) : 0, 1214939
Total [baseline] (9.475 s) : 0, 9475477
Agent [candidate] (1.22 s) : 0, 1220283
Total [candidate] (9.508 s) : 0, 9507553
gantt
title petclinic - break down per module: candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (652.114 ms) : 0, 652114
BytebuddyAgent [candidate] (651.446 ms) : 0, 651446
GlobalTracer [baseline] (296.883 ms) : 0, 296883
GlobalTracer [candidate] (297.51 ms) : 0, 297510
AppSec [baseline] (49.514 ms) : 0, 49514
AppSec [candidate] (49.33 ms) : 0, 49330
Remote Config [baseline] (669.428 µs) : 0, 669
Remote Config [candidate] (665.949 µs) : 0, 666
Telemetry [baseline] (7.239 ms) : 0, 7239
Telemetry [candidate] (7.289 ms) : 0, 7289
section appsec
BytebuddyAgent [baseline] (645.225 ms) : 0, 645225
BytebuddyAgent [candidate] (646.399 ms) : 0, 646399
GlobalTracer [baseline] (293.757 ms) : 0, 293757
GlobalTracer [candidate] (295.016 ms) : 0, 295016
AppSec [baseline] (138.934 ms) : 0, 138934
AppSec [candidate] (138.086 ms) : 0, 138086
Remote Config [baseline] (653.523 µs) : 0, 654
Remote Config [candidate] (639.133 µs) : 0, 639
Telemetry [baseline] (6.736 ms) : 0, 6736
Telemetry [candidate] (6.747 ms) : 0, 6747
section iast
BytebuddyAgent [baseline] (765.969 ms) : 0, 765969
BytebuddyAgent [candidate] (765.581 ms) : 0, 765581
GlobalTracer [baseline] (274.98 ms) : 0, 274980
GlobalTracer [candidate] (274.865 ms) : 0, 274865
AppSec [baseline] (46.672 ms) : 0, 46672
AppSec [candidate] (46.462 ms) : 0, 46462
Remote Config [baseline] (580.885 µs) : 0, 581
Remote Config [candidate] (570.945 µs) : 0, 571
Telemetry [baseline] (8.536 ms) : 0, 8536
Telemetry [candidate] (6.447 ms) : 0, 6447
IAST [baseline] (17.763 ms) : 0, 17763
IAST [candidate] (19.022 ms) : 0, 19022
section profiling
ProfilingAgent [baseline] (87.337 ms) : 0, 87337
ProfilingAgent [candidate] (87.78 ms) : 0, 87780
BytebuddyAgent [baseline] (656.637 ms) : 0, 656637
BytebuddyAgent [candidate] (660.883 ms) : 0, 660883
GlobalTracer [baseline] (359.786 ms) : 0, 359786
GlobalTracer [candidate] (360.167 ms) : 0, 360167
AppSec [baseline] (48.786 ms) : 0, 48786
AppSec [candidate] (48.636 ms) : 0, 48636
Remote Config [baseline] (647.88 µs) : 0, 648
Remote Config [candidate] (662.667 µs) : 0, 663
Telemetry [baseline] (7.476 ms) : 0, 7476
Telemetry [candidate] (7.455 ms) : 0, 7455
Profiling [baseline] (87.361 ms) : 0, 87361
Profiling [candidate] (87.807 ms) : 0, 87807
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 22 cases. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section baseline
no_agent (363.541 µs) : 342, 385
. : milestone, 364,
iast (461.448 µs) : 441, 482
. : milestone, 461,
iast_FULL (525.334 µs) : 505, 546
. : milestone, 525,
iast_INACTIVE (438.79 µs) : 418, 459
. : milestone, 439,
iast_TELEMETRY_OFF (468.767 µs) : 448, 490
. : milestone, 469,
tracing (434.859 µs) : 414, 456
. : milestone, 435,
section candidate
no_agent (367.712 µs) : 347, 389
. : milestone, 368,
iast (460.456 µs) : 440, 481
. : milestone, 460,
iast_FULL (529.164 µs) : 509, 550
. : milestone, 529,
iast_INACTIVE (436.241 µs) : 416, 457
. : milestone, 436,
iast_TELEMETRY_OFF (464.758 µs) : 443, 486
. : milestone, 465,
tracing (434.812 µs) : 414, 456
. : milestone, 435,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.24.0-SNAPSHOT~a8d6ccaee5, baseline=1.24.0-SNAPSHOT~e4541b1774
dateFormat X
axisFormat %s
section baseline
no_agent (1.364 ms) : 1345, 1384
. : milestone, 1364,
appsec (1.712 ms) : 1687, 1738
. : milestone, 1712,
iast (1.502 ms) : 1478, 1526
. : milestone, 1502,
profiling (1.473 ms) : 1448, 1498
. : milestone, 1473,
tracing (1.434 ms) : 1409, 1459
. : milestone, 1434,
section candidate
no_agent (1.362 ms) : 1343, 1381
. : milestone, 1362,
appsec (1.712 ms) : 1687, 1736
. : milestone, 1712,
iast (1.461 ms) : 1437, 1485
. : milestone, 1461,
profiling (1.488 ms) : 1462, 1514
. : milestone, 1488,
tracing (1.453 ms) : 1428, 1478
. : milestone, 1453,
|
...ain/java/datadog/trace/instrumentation/commons/fileupload/CommonsFileuploadInstrumenter.java
Outdated
Show resolved
Hide resolved
...ain/java/datadog/trace/instrumentation/commons/fileupload/CommonsFileuploadInstrumenter.java
Outdated
Show resolved
Hide resolved
4dc54db
to
93c78f6
Compare
...ava-agent/instrumentation/commons-fileupload/src/test/groovy/MultipartInstrumentation.groovy
Outdated
Show resolved
Hide resolved
9207c4b
to
bd984a2
Compare
...ain/java/datadog/trace/instrumentation/commons/fileupload/CommonsFileuploadInstrumenter.java
Outdated
Show resolved
Hide resolved
c2e5935
to
53f9290
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Question - should this code be owned by the client library team or ASM?
If it should be ASM, please update the CODEOWNERS accordingly
...agent/instrumentation/commons-fileupload/src/test/groovy/MultipartInstrumentationTest.groovy
Outdated
Show resolved
Hide resolved
3980552
to
b0fe0b9
Compare
c65ec86
to
8a2d379
Compare
8a2d379
to
fc3f4bd
Compare
Yes, as long as there are no unrelated instrumentations in the module, we should own it. @DDJavierSantos can you update codeowners to add the path to this module to our team? |
Co-authored-by: Brian Marks <[email protected]>
FYI, this PR accidentally reverted the version of the I've fixed this on master, but you can stop this from happening again with this git config:
you just need to apply it to your local checkout of |
What Does This Do
Instrument the commons fileupload form parser so form properties are marked as tainted.
Motivation
To cover all tainted inputs.
Additional Notes
Jira ticket: APPSEC-11821