Commit b7253ef
committed
fwtpm: peer-review batch 5 + CI --disable-fwtpm
CI: Add --disable-fwtpm to non-fwtpm CI jobs that auto-enable fwtpm
on Linux x86_64 (autodetect, pedantic, clang-asan, symmetric,
swecdhe, old-wolfssl, multi-compiler, sanitizer).
Security (High):
- Session flush: free sessions when continueSession bit is not set
in command attributes (TPM 2.0 Part 1 §19.6.4)
- Import inner integrity: verify Hash(decryptedSens || objectName)
after AES-CFB inner decrypt, reject TPM_RC_INTEGRITY on mismatch
- FwImportReconstructKey: reject sensType != objectPublic.type
- KDFa derivation counter: start at 1 per TPM 2.0 spec (was 0)
- ECDH_ZGen/ZGen_2Phase: wc_ecc_check_key on peer points
- ZGen_2Phase: ForceZero ephemeral key after use
Security (Medium):
- ParamEnc/ParamDec: return TPM_RC_FAILURE for unknown symmetric alg
- FwComputeSessionHmac: bounds check sessionKey.size
- FwImportParseSensitive: validate totalSensSize against buffer
- FwDerivePrime: 28 Miller-Rabin rounds per FIPS 186-4 (was 8)
- SwTpmTransmit: reject negative bufSz1 parent 262be34 commit b7253ef
File tree
5 files changed
+94
-22
lines changed- .github/workflows
- src
- fwtpm
5 files changed
+94
-22
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
140 | 140 | | |
141 | 141 | | |
142 | 142 | | |
143 | | - | |
| 143 | + | |
144 | 144 | | |
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
148 | | - | |
| 148 | + | |
149 | 149 | | |
150 | 150 | | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | 151 | | |
158 | 152 | | |
159 | | - | |
160 | 153 | | |
161 | 154 | | |
162 | 155 | | |
163 | | - | |
| 156 | + | |
164 | 157 | | |
165 | 158 | | |
166 | 159 | | |
167 | 160 | | |
168 | 161 | | |
169 | 162 | | |
| 163 | + | |
170 | 164 | | |
171 | 165 | | |
172 | 166 | | |
173 | 167 | | |
174 | 168 | | |
| 169 | + | |
175 | 170 | | |
176 | 171 | | |
177 | 172 | | |
| |||
204 | 199 | | |
205 | 200 | | |
206 | 201 | | |
| 202 | + | |
207 | 203 | | |
208 | 204 | | |
209 | 205 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
465 | 465 | | |
466 | 466 | | |
467 | 467 | | |
468 | | - | |
| 468 | + | |
| 469 | + | |
469 | 470 | | |
470 | 471 | | |
471 | 472 | | |
| |||
4208 | 4209 | | |
4209 | 4210 | | |
4210 | 4211 | | |
| 4212 | + | |
4211 | 4213 | | |
4212 | 4214 | | |
4213 | 4215 | | |
| |||
4218 | 4220 | | |
4219 | 4221 | | |
4220 | 4222 | | |
| 4223 | + | |
4221 | 4224 | | |
4222 | 4225 | | |
4223 | 4226 | | |
| |||
4440 | 4443 | | |
4441 | 4444 | | |
4442 | 4445 | | |
| 4446 | + | |
| 4447 | + | |
4443 | 4448 | | |
4444 | 4449 | | |
4445 | 4450 | | |
| |||
4465 | 4470 | | |
4466 | 4471 | | |
4467 | 4472 | | |
| 4473 | + | |
| 4474 | + | |
| 4475 | + | |
| 4476 | + | |
| 4477 | + | |
| 4478 | + | |
| 4479 | + | |
| 4480 | + | |
| 4481 | + | |
| 4482 | + | |
| 4483 | + | |
| 4484 | + | |
| 4485 | + | |
| 4486 | + | |
| 4487 | + | |
| 4488 | + | |
| 4489 | + | |
| 4490 | + | |
| 4491 | + | |
| 4492 | + | |
| 4493 | + | |
| 4494 | + | |
| 4495 | + | |
| 4496 | + | |
| 4497 | + | |
| 4498 | + | |
| 4499 | + | |
| 4500 | + | |
| 4501 | + | |
| 4502 | + | |
| 4503 | + | |
| 4504 | + | |
4468 | 4505 | | |
4469 | 4506 | | |
4470 | 4507 | | |
| |||
4526 | 4563 | | |
4527 | 4564 | | |
4528 | 4565 | | |
| 4566 | + | |
4529 | 4567 | | |
4530 | 4568 | | |
4531 | 4569 | | |
| |||
6983 | 7021 | | |
6984 | 7022 | | |
6985 | 7023 | | |
| 7024 | + | |
| 7025 | + | |
| 7026 | + | |
| 7027 | + | |
| 7028 | + | |
| 7029 | + | |
| 7030 | + | |
6986 | 7031 | | |
6987 | 7032 | | |
6988 | 7033 | | |
| |||
11968 | 12013 | | |
11969 | 12014 | | |
11970 | 12015 | | |
| 12016 | + | |
| 12017 | + | |
| 12018 | + | |
| 12019 | + | |
11971 | 12020 | | |
11972 | 12021 | | |
11973 | 12022 | | |
| |||
12000 | 12049 | | |
12001 | 12050 | | |
12002 | 12051 | | |
| 12052 | + | |
| 12053 | + | |
| 12054 | + | |
| 12055 | + | |
12003 | 12056 | | |
12004 | 12057 | | |
12005 | 12058 | | |
| |||
12030 | 12083 | | |
12031 | 12084 | | |
12032 | 12085 | | |
| 12086 | + | |
| 12087 | + | |
| 12088 | + | |
12033 | 12089 | | |
12034 | 12090 | | |
12035 | 12091 | | |
| |||
12929 | 12985 | | |
12930 | 12986 | | |
12931 | 12987 | | |
12932 | | - | |
12933 | | - | |
12934 | | - | |
12935 | | - | |
12936 | | - | |
12937 | | - | |
| 12988 | + | |
| 12989 | + | |
| 12990 | + | |
| 12991 | + | |
| 12992 | + | |
| 12993 | + | |
| 12994 | + | |
| 12995 | + | |
| 12996 | + | |
| 12997 | + | |
| 12998 | + | |
12938 | 12999 | | |
12939 | 13000 | | |
12940 | 13001 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
552 | 552 | | |
553 | 553 | | |
554 | 554 | | |
555 | | - | |
| 555 | + | |
556 | 556 | | |
557 | 557 | | |
558 | 558 | | |
| |||
657 | 657 | | |
658 | 658 | | |
659 | 659 | | |
660 | | - | |
| 660 | + | |
661 | 661 | | |
662 | 662 | | |
663 | 663 | | |
| |||
686 | 686 | | |
687 | 687 | | |
688 | 688 | | |
689 | | - | |
| 689 | + | |
| 690 | + | |
690 | 691 | | |
691 | 692 | | |
692 | 693 | | |
| |||
1886 | 1887 | | |
1887 | 1888 | | |
1888 | 1889 | | |
1889 | | - | |
| 1890 | + | |
| 1891 | + | |
| 1892 | + | |
1890 | 1893 | | |
1891 | 1894 | | |
1892 | 1895 | | |
| |||
1968 | 1971 | | |
1969 | 1972 | | |
1970 | 1973 | | |
| 1974 | + | |
| 1975 | + | |
| 1976 | + | |
| 1977 | + | |
| 1978 | + | |
| 1979 | + | |
1971 | 1980 | | |
1972 | 1981 | | |
1973 | 1982 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
229 | 229 | | |
230 | 230 | | |
231 | 231 | | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
232 | 235 | | |
233 | 236 | | |
234 | 237 | | |
| |||
275 | 278 | | |
276 | 279 | | |
277 | 280 | | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
278 | 284 | | |
279 | 285 | | |
280 | 286 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
98 | 98 | | |
99 | 99 | | |
100 | 100 | | |
101 | | - | |
| 101 | + | |
102 | 102 | | |
103 | 103 | | |
104 | 104 | | |
| |||
0 commit comments