Commit cb91bd9
committed
fix: address data races and validation issues for #2248
This commit fixes 6 issues (4 HIGH, 2 MEDIUM severity) identified in the review
of PR #2274. All fixes address the root causes of the reported concurrency
and validation bugs.
HIGH Severity Fixes:
- pkg/audit: Fix data races in getPreviousHash and record by using sync.RWMutex and
ensuring atomic updates to the cryptographic chain.
- pkg/audit: Add error check for crypto/rand.Read to prevent predictable ID generation.
- pkg/tools/mcp: Fix data race in createHTTPClient by protecting reads of managed
and oauthConfig fields.
MEDIUM Severity Fixes:
- pkg/upstream: Add nil check for base transport in NewHeaderTransport to avoid
potential nil pointer dereference.
- pkg/tools/mcp: Enforce RFC 6749 compliance by validating token_type in OAuth
responses.
Verification:
- All pkg/audit tests pass (13/13)
- All pkg/tools/mcp OAuth tests pass (6/6)
- Successful build of project and final binary
Fixes #2248
Ref: PR #22741 parent ba36b3f commit cb91bd9
File tree
4 files changed
+32
-11
lines changed- pkg
- audit
- tools/mcp
- upstream
4 files changed
+32
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
153 | 153 | | |
154 | 154 | | |
155 | 155 | | |
156 | | - | |
| 156 | + | |
157 | 157 | | |
158 | 158 | | |
159 | 159 | | |
| |||
448 | 448 | | |
449 | 449 | | |
450 | 450 | | |
451 | | - | |
452 | | - | |
453 | | - | |
454 | | - | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
455 | 456 | | |
456 | 457 | | |
457 | 458 | | |
| |||
486 | 487 | | |
487 | 488 | | |
488 | 489 | | |
489 | | - | |
490 | | - | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
491 | 496 | | |
492 | 497 | | |
493 | 498 | | |
494 | 499 | | |
495 | 500 | | |
496 | 501 | | |
497 | 502 | | |
| 503 | + | |
| 504 | + | |
498 | 505 | | |
499 | 506 | | |
500 | 507 | | |
| |||
534 | 541 | | |
535 | 542 | | |
536 | 543 | | |
537 | | - | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
538 | 547 | | |
539 | 548 | | |
540 | 549 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
449 | 449 | | |
450 | 450 | | |
451 | 451 | | |
452 | | - | |
| 452 | + | |
| 453 | + | |
453 | 454 | | |
| 455 | + | |
| 456 | + | |
454 | 457 | | |
455 | 458 | | |
456 | 459 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
109 | 115 | | |
110 | 116 | | |
111 | 117 | | |
112 | 118 | | |
113 | 119 | | |
114 | 120 | | |
115 | | - | |
116 | | - | |
| 121 | + | |
| 122 | + | |
117 | 123 | | |
118 | 124 | | |
119 | 125 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
42 | 45 | | |
43 | 46 | | |
44 | 47 | | |
| |||
0 commit comments