<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
h3
        {mso-style-priority:9;
        mso-style-link:"Heading 3 Char";
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:13.5pt;
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:"Courier New";
        color:windowtext;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Courier New";
        color:windowtext;}
span.Heading3Char
        {mso-style-name:"Heading 3 Char";
        mso-style-priority:9;
        mso-style-link:"Heading 3";
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span style='font-family:"Courier New"'>This is probably more difficult to exploit than I thought in my first read through. <o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span style='font-size:13.5pt'>Workarounds<o:p></o:p></span></b></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>The problem can be avoided by limiting the size of the partial input data (or partial output digest) below 2^32 - 200 bytes. Multiple calls to the queue system can be chained at a higher level to retain the original functionality. Alternatively, one can process the entire input (or produce the entire output) at once, avoiding the queuing functions altogether.<o:p></o:p></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b>From:</b> Job Cacka <job@ccbox.com> <br><b>Sent:</b> Friday, October 21, 2022 11:33 AM<br><b>To:</b> 'openssl-users@openssl.org' <openssl-users@openssl.org><br><b>Subject:</b> CVE-2022-37454 SHA-3 buffer overflow<o:p></o:p></p></div></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='font-family:"Courier New"'>I was reading that SHA-3 has a buffer overflow in the C implementation that is used by PHP and Python.<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><a href="https://nvd.nist.gov/vuln/detail/CVE-2022-37454">https://nvd.nist.gov/vuln/detail/CVE-2022-37454</a><o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><a href="https://mouha.be/sha-3-buffer-overflow/">https://mouha.be/sha-3-buffer-overflow/</a><o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>How does OpenSSL implement SHA-3 in the following algorithms? Is SHA3 only used in SHA3-224, SHA3-256, SHA3-384, and SHA3-512?<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>root:/ openssl list -digest-algorithms<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-MD4 => MD4<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-MD5 => MD5<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-MDC2 => MDC2<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-RIPEMD160 => RIPEMD160<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA1 => SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA1-2 => RSA-SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA224 => SHA224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA256 => SHA256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA3-224 => SHA3-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA3-256 => SHA3-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA3-384 => SHA3-384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA3-512 => SHA3-512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA384 => SHA384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA512 => SHA512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA512/224 => SHA512-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SHA512/256 => SHA512-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RSA-SM3 => SM3<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>BLAKE2b512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>BLAKE2s256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>id-rsassa-pkcs1-v1_5-with-sha3-224 => SHA3-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>id-rsassa-pkcs1-v1_5-with-sha3-256 => SHA3-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>id-rsassa-pkcs1-v1_5-with-sha3-384 => SHA3-384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>id-rsassa-pkcs1-v1_5-with-sha3-512 => SHA3-512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>MD4<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>md4WithRSAEncryption => MD4<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>MD5<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>MD5-SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>md5WithRSAEncryption => MD5<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>MDC2<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>mdc2WithRSA => MDC2<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>ripemd => RIPEMD160<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>RIPEMD160<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>ripemd160WithRSA => RIPEMD160<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>rmd160 => RIPEMD160<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha1WithRSAEncryption => SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha224WithRSAEncryption => SHA224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha256WithRSAEncryption => SHA256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA3-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA3-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA3-384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA3-512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha384WithRSAEncryption => SHA384<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA512-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha512-224WithRSAEncryption => SHA512-224<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHA512-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha512-256WithRSAEncryption => SHA512-256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sha512WithRSAEncryption => SHA512<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHAKE128<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SHAKE256<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>SM3<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>sm3WithRSAEncryption => SM3<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>ssl3-md5 => MD5<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>ssl3-sha1 => SHA1<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>whirlpool<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>Thanks,<o:p></o:p></span></p><p class=MsoNormal><span style='font-family:"Courier New"'>Job </span><span style='font-size:9.0pt;font-family:"Courier New"'><o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>