เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบดเบ‡ TPM 2.0 เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™ cryptochip

เปƒเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบดเบ‡เบ‚เบญเบ‡ TPM 2.0 (Trusted Platform Module), เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเป„เบ”เป‰เบ–เบทเบเบฅเบฐเบšเบธ (CVE-2023-1017, CVE-2023-1018) เบ—เบตเปˆเบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบ‚เบฝเบ™เบซเบผเบทเบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡ buffer เบ—เบตเปˆเบ–เบทเบเบˆเบฑเบ”เบชเบฑเบ™. เบเบฒเบ™เป‚เบˆเบกเบ•เบตเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบ›เบฐเบกเบงเบ™เบœเบปเบ™ crypto เป‚เบ”เบเปƒเบŠเป‰เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบชเบฐเบเบฑเบ”เป€เบญเบปเบฒเบซเบผเบทเบ‚เบฝเบ™เบ—เบฑเบšเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบŠเบดเบšเป€เบŠเบฑเปˆเบ™: เบเบฐเปเบˆ cryptographic. เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ‚เบฝเบ™เบ—เบฑเบšเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เป€เบŸเบตเบกเปเบง TPM เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เป‚เบ”เบเบœเบนเป‰เป‚เบˆเบกเบ•เบตเป€เบžเบทเปˆเบญเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡ TPM, เป€เบŠเบดเปˆเบ‡, เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ” backdoors เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบ”เป‰เบฒเบ™ TPM เปเบฅเบฐเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบเบงเบ”เบžเบปเบš. เป‚เบ”เบโ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบเบฒเบ™โ€‹.

เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปเบกเปˆเบ™เป€เบเบตเบ”เบกเบฒเบˆเบฒเบเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบเปˆเบฝเบงเบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™ CryptParameterDecryption() เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ‚เบฝเบ™ เบซเบผเบทเบญเปˆเบฒเบ™เบชเบญเบ‡เป„เบšเบ•เปŒเป€เบเบตเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบšเบฑเบŸเป€เบŸเบตเบ—เบตเปˆเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเบŸเบฑเบ‡เบŠเบฑเบ™ ExecuteCommand() เปเบฅเบฐเบกเบตเบ„เปเบฒเบชเบฑเปˆเบ‡ TPM2.0. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” firmware, เบชเบญเบ‡ bytes เบ—เบตเปˆเบ–เบทเบเบ‚เบฝเบ™เบ—เบฑเบšเบชเบฒเบกเบฒเบ”เป€เบชเบเบซเบฒเบเบ—เบฑเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบซเบผเบท pointers เปƒเบ™ stack.

เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ–เบทเบเบ‚เบนเบ”เบฎเบตเบ”เป‚เบ”เบเบเบฒเบ™เบชเบปเปˆเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบ›เบฑเบ™เบžเบดเป€เบชเบ”เป„เบ›เบซเบฒเป‚เบกเบ”เบนเบ™ TPM (เบœเบนเป‰เป‚เบˆเบกเบ•เบตเบ•เป‰เบญเบ‡เบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบš TPM). เบšเบฑเบ™เบซเบฒเป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เปƒเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเป€เบžเบฒเบฐเบ‚เบญเบ‡ TPM 2.0 เบ—เบตเปˆเบ›เปˆเบญเบเบญเบญเบเบกเบฒเปƒเบ™เป€เบ”เบทเบญเบ™เบกเบฑเบ‡เบเบญเบ™ (1.59 Errata 1.4, 1.38 Errata 1.13, 1.16 Errata 1.6).

เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เป€เบ›เบตเบ” libtpms, เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบŠเบญเบšเปเบงเบ‚เบญเบ‡เป‚เบกเบ”เบนเบ™ TPM เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ TPM เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ hypervisors, เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡. เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เปƒเบ™เบเบฒเบ™เบ›เปˆเบญเบ libtpms 0.9.6.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™