-
Notifications
You must be signed in to change notification settings - Fork 291
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
Increase IAST propagation to StringBuffer setLength #8128
Open
Mariovido
wants to merge
6
commits into
master
Choose a base branch
from
mario.vidal/taint_tracking_string_buffer_set_length
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Increase IAST propagation to StringBuffer setLength #8128
Mariovido
wants to merge
6
commits into
master
from
mario.vidal/taint_tracking_string_buffer_set_length
+41
−7
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Mariovido
added
type: enhancement
comp: asm iast
Application Security Management (IAST)
labels
Dec 23, 2024
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 58 metrics, 5 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1050402
Total [baseline] (10.368 s) : 0, 10367852
Agent [candidate] (1.053 s) : 0, 1053111
Total [candidate] (10.361 s) : 0, 10360510
section appsec
Agent [baseline] (1.191 s) : 0, 1191104
Total [baseline] (10.743 s) : 0, 10742705
Agent [candidate] (1.187 s) : 0, 1186673
Total [candidate] (10.717 s) : 0, 10717075
section iast
Agent [baseline] (1.177 s) : 0, 1176890
Total [baseline] (10.965 s) : 0, 10964589
Agent [candidate] (1.186 s) : 0, 1186293
Total [candidate] (11.039 s) : 0, 11038879
section profiling
Agent [baseline] (1.274 s) : 0, 1273820
Total [baseline] (10.803 s) : 0, 10802862
Agent [candidate] (1.28 s) : 0, 1279993
Total [candidate] (10.823 s) : 0, 10823012
gantt
title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (710.707 ms) : 0, 710707
BytebuddyAgent [candidate] (711.834 ms) : 0, 711834
GlobalTracer [baseline] (254.947 ms) : 0, 254947
GlobalTracer [candidate] (255.864 ms) : 0, 255864
AppSec [baseline] (57.137 ms) : 0, 57137
AppSec [candidate] (58.601 ms) : 0, 58601
Remote Config [baseline] (698.023 µs) : 0, 698
Remote Config [candidate] (686.877 µs) : 0, 687
Telemetry [baseline] (12.024 ms) : 0, 12024
Telemetry [candidate] (11.111 ms) : 0, 11111
section appsec
BytebuddyAgent [baseline] (732.878 ms) : 0, 732878
BytebuddyAgent [candidate] (729.997 ms) : 0, 729997
GlobalTracer [baseline] (253.282 ms) : 0, 253282
GlobalTracer [candidate] (252.793 ms) : 0, 252793
AppSec [baseline] (171.659 ms) : 0, 171659
AppSec [candidate] (170.241 ms) : 0, 170241
Remote Config [baseline] (672.252 µs) : 0, 672
Remote Config [candidate] (655.681 µs) : 0, 656
Telemetry [baseline] (8.034 ms) : 0, 8034
Telemetry [candidate] (8.299 ms) : 0, 8299
IAST [baseline] (19.274 ms) : 0, 19274
IAST [candidate] (19.439 ms) : 0, 19439
section iast
BytebuddyAgent [baseline] (826.518 ms) : 0, 826518
BytebuddyAgent [candidate] (835.255 ms) : 0, 835255
GlobalTracer [baseline] (246.85 ms) : 0, 246850
GlobalTracer [candidate] (247.767 ms) : 0, 247767
AppSec [baseline] (58.032 ms) : 0, 58032
AppSec [candidate] (57.917 ms) : 0, 57917
Remote Config [baseline] (669.259 µs) : 0, 669
Remote Config [candidate] (661.021 µs) : 0, 661
Telemetry [baseline] (8.471 ms) : 0, 8471
Telemetry [candidate] (8.501 ms) : 0, 8501
IAST [baseline] (21.471 ms) : 0, 21471
IAST [candidate] (21.153 ms) : 0, 21153
section profiling
BytebuddyAgent [baseline] (702.878 ms) : 0, 702878
BytebuddyAgent [candidate] (705.363 ms) : 0, 705363
GlobalTracer [baseline] (370.953 ms) : 0, 370953
GlobalTracer [candidate] (373.269 ms) : 0, 373269
AppSec [baseline] (54.211 ms) : 0, 54211
AppSec [candidate] (54.539 ms) : 0, 54539
Remote Config [baseline] (663.866 µs) : 0, 664
Remote Config [candidate] (658.251 µs) : 0, 658
Telemetry [baseline] (7.884 ms) : 0, 7884
Telemetry [candidate] (8.016 ms) : 0, 8016
ProfilingAgent [baseline] (95.39 ms) : 0, 95390
ProfilingAgent [candidate] (96.159 ms) : 0, 96159
Profiling [baseline] (95.414 ms) : 0, 95414
Profiling [candidate] (96.182 ms) : 0, 96182
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.05 s) : 0, 1050017
Total [baseline] (8.582 s) : 0, 8582077
Agent [candidate] (1.049 s) : 0, 1048806
Total [candidate] (8.6 s) : 0, 8599743
section iast
Agent [baseline] (1.189 s) : 0, 1189203
Total [baseline] (9.21 s) : 0, 9209878
Agent [candidate] (1.179 s) : 0, 1179449
Total [candidate] (9.169 s) : 0, 9169245
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.175 s) : 0, 1175215
Total [baseline] (9.189 s) : 0, 9188520
Agent [candidate] (1.177 s) : 0, 1177021
Total [candidate] (9.192 s) : 0, 9191664
section iast_TELEMETRY_OFF
Agent [baseline] (1.17 s) : 0, 1170284
Total [baseline] (9.148 s) : 0, 9148332
Agent [candidate] (1.174 s) : 0, 1173981
Total [candidate] (9.172 s) : 0, 9171739
gantt
title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (709.545 ms) : 0, 709545
BytebuddyAgent [candidate] (709.939 ms) : 0, 709939
GlobalTracer [baseline] (255.721 ms) : 0, 255721
GlobalTracer [candidate] (255.742 ms) : 0, 255742
AppSec [baseline] (58.32 ms) : 0, 58320
AppSec [candidate] (56.332 ms) : 0, 56332
Remote Config [baseline] (690.616 µs) : 0, 691
Remote Config [candidate] (683.038 µs) : 0, 683
Telemetry [baseline] (10.941 ms) : 0, 10941
Telemetry [candidate] (11.169 ms) : 0, 11169
section iast
BytebuddyAgent [baseline] (838.795 ms) : 0, 838795
BytebuddyAgent [candidate] (831.279 ms) : 0, 831279
GlobalTracer [baseline] (247.128 ms) : 0, 247128
GlobalTracer [candidate] (245.183 ms) : 0, 245183
AppSec [baseline] (57.581 ms) : 0, 57581
AppSec [candidate] (57.779 ms) : 0, 57779
Remote Config [baseline] (667.93 µs) : 0, 668
Remote Config [candidate] (641.303 µs) : 0, 641
Telemetry [baseline] (8.567 ms) : 0, 8567
Telemetry [candidate] (8.529 ms) : 0, 8529
IAST [baseline] (21.357 ms) : 0, 21357
IAST [candidate] (21.036 ms) : 0, 21036
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (826.318 ms) : 0, 826318
BytebuddyAgent [candidate] (827.599 ms) : 0, 827599
GlobalTracer [baseline] (245.826 ms) : 0, 245826
GlobalTracer [candidate] (246.299 ms) : 0, 246299
AppSec [baseline] (58.014 ms) : 0, 58014
AppSec [candidate] (57.87 ms) : 0, 57870
Remote Config [baseline] (656.345 µs) : 0, 656
Remote Config [candidate] (651.062 µs) : 0, 651
Telemetry [baseline] (8.407 ms) : 0, 8407
Telemetry [candidate] (8.484 ms) : 0, 8484
IAST [baseline] (21.178 ms) : 0, 21178
IAST [candidate] (21.155 ms) : 0, 21155
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (822.86 ms) : 0, 822860
BytebuddyAgent [candidate] (825.316 ms) : 0, 825316
GlobalTracer [baseline] (245.528 ms) : 0, 245528
GlobalTracer [candidate] (246.316 ms) : 0, 246316
AppSec [baseline] (57.406 ms) : 0, 57406
AppSec [candidate] (57.726 ms) : 0, 57726
Remote Config [baseline] (652.251 µs) : 0, 652
Remote Config [candidate] (635.749 µs) : 0, 636
Telemetry [baseline] (8.345 ms) : 0, 8345
Telemetry [candidate] (8.254 ms) : 0, 8254
IAST [baseline] (20.688 ms) : 0, 20688
IAST [candidate] (20.781 ms) : 0, 20781
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 17 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section baseline
no_agent (381.373 µs) : 361, 402
. : milestone, 381,
iast (487.826 µs) : 466, 509
. : milestone, 488,
iast_FULL (655.098 µs) : 633, 677
. : milestone, 655,
iast_GLOBAL (516.08 µs) : 495, 537
. : milestone, 516,
iast_HARDCODED_SECRET_DISABLED (495.311 µs) : 474, 517
. : milestone, 495,
iast_INACTIVE (454.309 µs) : 433, 475
. : milestone, 454,
iast_TELEMETRY_OFF (479.888 µs) : 458, 502
. : milestone, 480,
tracing (447.789 µs) : 427, 469
. : milestone, 448,
section candidate
no_agent (369.931 µs) : 350, 390
. : milestone, 370,
iast (489.923 µs) : 468, 511
. : milestone, 490,
iast_FULL (654.2 µs) : 632, 676
. : milestone, 654,
iast_GLOBAL (519.696 µs) : 498, 541
. : milestone, 520,
iast_HARDCODED_SECRET_DISABLED (500.995 µs) : 479, 523
. : milestone, 501,
iast_INACTIVE (451.809 µs) : 431, 473
. : milestone, 452,
iast_TELEMETRY_OFF (485.006 µs) : 464, 506
. : milestone, 485,
tracing (444.859 µs) : 423, 467
. : milestone, 445,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section baseline
no_agent (1.363 ms) : 1344, 1383
. : milestone, 1363,
appsec (1.753 ms) : 1731, 1776
. : milestone, 1753,
appsec_no_iast (1.742 ms) : 1718, 1767
. : milestone, 1742,
iast (1.496 ms) : 1472, 1519
. : milestone, 1496,
profiling (1.519 ms) : 1495, 1544
. : milestone, 1519,
tracing (1.488 ms) : 1463, 1513
. : milestone, 1488,
section candidate
no_agent (1.347 ms) : 1327, 1366
. : milestone, 1347,
appsec (1.753 ms) : 1728, 1778
. : milestone, 1753,
appsec_no_iast (1.737 ms) : 1712, 1762
. : milestone, 1737,
iast (1.487 ms) : 1465, 1510
. : milestone, 1487,
profiling (1.497 ms) : 1473, 1521
. : milestone, 1497,
tracing (1.498 ms) : 1472, 1524
. : milestone, 1498,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 12 metrics, 0 unstable metrics. Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section baseline
no_agent (1.473 ms) : 1461, 1484
. : milestone, 1473,
appsec (2.352 ms) : 2310, 2393
. : milestone, 2352,
iast (2.093 ms) : 2040, 2146
. : milestone, 2093,
iast_GLOBAL (2.133 ms) : 2080, 2186
. : milestone, 2133,
profiling (1.965 ms) : 1922, 2007
. : milestone, 1965,
tracing (1.937 ms) : 1896, 1978
. : milestone, 1937,
section candidate
no_agent (1.478 ms) : 1467, 1490
. : milestone, 1478,
appsec (2.349 ms) : 2307, 2390
. : milestone, 2349,
iast (2.094 ms) : 2041, 2147
. : milestone, 2094,
iast_GLOBAL (2.141 ms) : 2087, 2194
. : milestone, 2141,
profiling (1.964 ms) : 1921, 2007
. : milestone, 1964,
tracing (1.94 ms) : 1900, 1981
. : milestone, 1940,
Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~d78ac81020, baseline=1.45.0-SNAPSHOT~46b5986f6a
dateFormat X
axisFormat %s
section baseline
no_agent (14.88 s) : 14880000, 14880000
. : milestone, 14880000,
appsec (15.068 s) : 15068000, 15068000
. : milestone, 15068000,
iast (19.023 s) : 19023000, 19023000
. : milestone, 19023000,
iast_GLOBAL (17.632 s) : 17632000, 17632000
. : milestone, 17632000,
profiling (15.305 s) : 15305000, 15305000
. : milestone, 15305000,
tracing (14.761 s) : 14761000, 14761000
. : milestone, 14761000,
section candidate
no_agent (15.21 s) : 15210000, 15210000
. : milestone, 15210000,
appsec (15.18 s) : 15180000, 15180000
. : milestone, 15180000,
iast (19.055 s) : 19055000, 19055000
. : milestone, 19055000,
iast_GLOBAL (17.927 s) : 17927000, 17927000
. : milestone, 17927000,
profiling (14.924 s) : 14924000, 14924000
. : milestone, 14924000,
tracing (14.812 s) : 14812000, 14812000
. : milestone, 14812000,
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What Does This Do
This adds the instrumentation to propagate the taint values through the following methods of
StringBuffer
:setLength(int)
Motivation
Increase propagation of
StringBuffer
methods.Additional Notes
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: APPSEC-55367