<div class="container">
    <h1>Security update for curl</h1>

    <table class="table table-striped table-bordered">
        <tbody>
        <tr>
            <th>Announcement ID:</th>
            <td>SUSE-SU-2025:20824-1</td>
        </tr>
        <tr>
            <th>Release Date:</th>
            <td>2025-09-25T10:50:20Z</td>
        </tr>
        
        <tr>
            <th>Rating:</th>
            <td>important</td>
        </tr>
        <tr>
            <th>References:</th>
            <td>
                <ul>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1246197">bsc#1246197</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249191">bsc#1249191</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249348">bsc#1249348</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249367">bsc#1249367</a>
                        </li>
                    
                    
                        <li style="display: inline;">
                            <a href="https://jira.suse.com/browse/PED-13055">jsc#PED-13055</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://jira.suse.com/browse/PED-13056">jsc#PED-13056</a>
                        </li>
                    
                </ul>
            </td>
        </tr>
        
            <tr>
                <th>
                    Cross-References:
                </th>
                <td>
                    <ul>
                    
                        <li style="display: inline;">
                            <a href="https://www.suse.com/security/cve/CVE-2025-10148.html">CVE-2025-10148</a>
                        </li>
                    
                        <li style="display: inline;">
                            <a href="https://www.suse.com/security/cve/CVE-2025-9086.html">CVE-2025-9086</a>
                        </li>
                    
                    </ul>
                </td>
            </tr>
            <tr>
                <th>CVSS scores:</th>
                <td>
                    <ul class="list-group">
                        
                            <li class="list-group-item">
                                <span class="cvss-reference">CVE-2025-10148</span>
                                <span class="cvss-source">
                                    (
                                    
                                        NVD
                                    
                                    ):
                                </span>
                                <span class="cvss-score">5.3</span>
                                <span class="cvss-vector">CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N</span>
                            </li>
                        
                            <li class="list-group-item">
                                <span class="cvss-reference">CVE-2025-9086</span>
                                <span class="cvss-source">
                                    (
                                    
                                        SUSE
                                    
                                    ):
                                </span>
                                <span class="cvss-score">7.5</span>
                                <span class="cvss-vector">CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H</span>
                            </li>
                        
                            <li class="list-group-item">
                                <span class="cvss-reference">CVE-2025-9086</span>
                                <span class="cvss-source">
                                    (
                                    
                                        NVD
                                    
                                    ):
                                </span>
                                <span class="cvss-score">7.5</span>
                                <span class="cvss-vector">CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</span>
                            </li>
                        
                    </ul>
                </td>
            </tr>
        
        <tr>
            <th>Affected Products:</th>
            <td>
                <ul class="list-group">
                    
                        <li class="list-group-item">SUSE Linux Micro 6.0</li>
                    
                </ul>
            </td>
        </tr>
        </tbody>
    </table>

    <p>An update that solves two vulnerabilities, contains two features and has two fixes can now be installed.</p>

    


    
        <h2>Description:</h2>
    
    <p>This update for curl fixes the following issues:</p>
<ul>
<li>CVE-2025-9086: Fixed Out of bounds read for cookie path (bsc#1249191)</li>
<li>CVE-2025-10148: Predictable WebSocket mask (bsc#1249348)</li>
<li>Fix the --ftp-pasv option in curl v8.14.1 [bsc#1246197]</li>
<li>
<p>tool_operate: fix return code when --retry is used but not
  triggered [bsc#1249367]</p>
</li>
<li>
<p>Updated to 8.14.1: [jsc#PED-13055, jsc#PED-13056]</p>
</li>
<li>Add _multibuild</li>
<li>
<p>Bugfixes:</p>
<ul>
<li>asyn-thrdd: fix cleanup when RR fails due to OOM</li>
<li>ftp: fix teardown of DATA connection in done</li>
<li>http: fail early when rewind of input failed when following redirects</li>
<li>multi: fix add_handle resizing</li>
<li>tls BIOs: handle BIO_CTRL_EOF correctly</li>
<li>tool_getparam: make --no-anyauth not be accepted</li>
<li>wolfssl: fix sending of early data</li>
<li>ws: handle blocked sends better</li>
<li>ws: tests and fixes</li>
</ul>
</li>
<li>
<p>Sync spec file with SLE codestreams: [jsc#PED-13055, jsc#PED-13056]</p>
</li>
<li>
<p>Add curl-mini.rpmlintrc to avoid rpmlint shlib-policy-name-error
    when building the curl-mini package in SLE.</p>
</li>
<li>Add libssh minimum version requirements.</li>
<li>Use ldconfig_scriptlets when available.</li>
<li>
<p>Remove unused option --disable-ntlm-wb.</p>
</li>
<li>
<p>Update to 8.14.0:</p>
</li>
<li>
<p>Changes:</p>
<ul>
<li>mqtt: send ping at upkeep interval</li>
<li>schannel: handle pkcs12 client certificates containing CA certificates</li>
<li>TLS: add CURLOPT_SSL_SIGNATURE_ALGORITHMS and --sigalgs</li>
<li>vquic: ngtcp2 + openssl support</li>
<li>wcurl: import v2025.04.20 script + docs</li>
<li>websocket: add option to disable auto-pong reply</li>
</ul>
</li>
<li>
<p>Bugfixes:</p>
<ul>
<li>asny-thrdd: fix detach from running thread</li>
<li>async-threaded resolver: use ref counter</li>
<li>async: DoH improvements</li>
<li>build: enable gcc-12/13+, clang-10+ picky warnings</li>
<li>build: enable gcc-15 picky warnings</li>
<li>certs: drop unused <code>default_bits</code> from <code>.prm</code> files</li>
<li>cf-https-connect: use the passed in dns struct pointer</li>
<li>cf-socket: fix FTP accept connect</li>
<li>cfilters: remove assert</li>
<li>cmake: fix nghttp3 static linking with <code>USE_OPENSSL_QUIC=ON</code></li>
<li>cmake: prefer <code>COMPILE_OPTIONS</code> over <code>CMAKE_C_FLAGS</code> for custom C options</li>
<li>cmake: revert <code>CURL_LTO</code> behavior for multi-config generators</li>
<li>configure: fix --disable-rt</li>
<li>CONTRIBUTE: add project guidelines for AI use</li>
<li>cpool/cshutdown: force close connections under pressure</li>
<li>curl: fix memory leak when -h is used in config file</li>
<li>curl_get_line: handle lines ending on the buffer boundary</li>
<li>headers: enforce a max number of response header to accept</li>
<li>http: fix HTTP/2 handling of TE request header using "trailers"</li>
<li>lib: include files using known path</li>
<li>lib: unify conversions to/from hex</li>
<li>libssh: add NULL check for Curl_meta_get()</li>
<li>libssh: fix memory leak</li>
<li>mqtt: use conn/easy meta hash</li>
<li>multi: do transfer book keeping using mid</li>
<li>multi: init_do(): check result</li>
<li>netrc: avoid NULL deref on weird input</li>
<li>netrc: avoid strdup NULL</li>
<li>netrc: deal with null token better</li>
<li>openssl-quic: avoid potential <code>-Wnull-dereference</code>, add assert</li>
<li>openssl-quic: fix shutdown when stream not open</li>
<li>openssl: enable builds for <em>both</em> engines and providers</li>
<li>openssl: set the cipher string before doing private cert</li>
<li>progress: avoid integer overflow when gathering total transfer size</li>
<li>rand: update comment on Curl_rand_bytes weak random</li>
<li>rustls: make max size of cert and key reasonable</li>
<li>smb: avoid integer overflow on weird input date</li>
<li>urlapi: redirecting to "" is considered fine</li>
</ul>
</li>
<li>
<p>Update to 8.13.0:</p>
</li>
<li>
<p>Changes:</p>
<ul>
<li>curl: add write-out variable &#x27;tls_earlydata&#x27;</li>
<li>curl: make --url support a file with URLs</li>
<li>gnutls: set priority via --ciphers</li>
<li>IMAP: add CURLOPT_UPLOAD_FLAGS and --upload-flags</li>
<li>lib: add CURLFOLLOW_OBEYCODE and CURLFOLLOW_FIRSTONLY</li>
<li>OpenSSL/quictls: add support for TLSv1.3 early data</li>
<li>rustls: add support for CERTINFO</li>
<li>rustls: add support for SSLKEYLOGFILE</li>
<li>rustls: support ECH w/ DoH lookup for config</li>
<li>rustls: support native platform verifier</li>
<li>var: add a &#x27;64dec&#x27; function that can base64 decode a string</li>
</ul>
</li>
<li>
<p>Bugfixes:</p>
<ul>
<li>conn: fix connection reuse when SSL is optional</li>
<li>hash: use single linked list for entries</li>
<li>http2: detect session being closed on ingress handling</li>
<li>http2: reset stream on response header error</li>
<li>http: remove a HTTP method size restriction</li>
<li>http: version negotiation</li>
<li>httpsrr: fix port detection</li>
<li>libssh: fix freeing of resources in disconnect</li>
<li>libssh: fix scp large file upload for 32-bit size_t systems</li>
<li>openssl-quic: do not iterate over multi handles</li>
<li>openssl: check return value of X509_get0_pubkey</li>
<li>openssl: drop support for old OpenSSL/LibreSSL versions</li>
<li>openssl: fix crash on missing cert password</li>
<li>openssl: fix pkcs11 URI checking for key files.</li>
<li>openssl: remove bad <code>goto</code>s into other scope</li>
<li>setopt: illegal CURLOPT_SOCKS5_AUTH should return error</li>
<li>setopt: setting PROXYUSERPWD after PROXYUSERNAME/PASSWORD is fine</li>
<li>sshserver.pl: adjust <code>AuthorizedKeysFile2</code> cutoff version</li>
<li>sshserver: fix excluding obsolete client config lines</li>
<li>SSLCERTS: list support for SSL_CERT_FILE and SSL_CERT_DIR</li>
<li>tftpd: prefix TFTP protocol error <code>E*</code> constants with <code>TFTP_</code></li>
<li>tool_operate: fail SSH transfers without server auth</li>
<li>url: call protocol handler&#x27;s disconnect in Curl_conn_free</li>
<li>urlapi: remove percent encoded dot sequences from the URL path</li>
<li>urldata: remove &#x27;hostname&#x27; from struct Curl_async</li>
</ul>
</li>
<li>
<p>Update to 8.12.1:</p>
</li>
<li>
<p>Bugfixes:</p>
<ul>
<li>asyn-thread: fix build with &#x27;CURL_DISABLE_SOCKETPAIR&#x27;</li>
<li>asyn-thread: fix HTTPS RR crash</li>
<li>asyn-thread: fix the returned bitmask from Curl_resolver_getsock</li>
<li>asyn-thread: survive a c-ares channel set to NULL</li>
<li>cmake: always reference OpenSSL and ZLIB via imported targets</li>
<li>cmake: respect &#x27;GNUTLS_CFLAGS&#x27; when detected via &#x27;pkg-config&#x27;</li>
<li>cmake: respect &#x27;GNUTLS_LIBRARY_DIRS&#x27; in &#x27;libcurl.pc&#x27; and &#x27;curl-config&#x27;</li>
<li>content_encoding: #error on too old zlib</li>
<li>imap: TLS upgrade fix</li>
<li>ldap: drop support for legacy Novell LDAP SDK</li>
<li>libssh2: comparison is always true because rc <= -1</li>
<li>libssh2: raise lowest supported version to 1.2.8</li>
<li>libssh: drop support for libssh older than 0.9.0</li>
<li>openssl-quic: ignore ciphers for h3</li>
<li>pop3: TLS upgrade fix</li>
<li>runtests: fix the disabling of the memory tracking</li>
<li>runtests: quote commands to support paths with spaces</li>
<li>scache: add magic checks</li>
<li>smb: silence &#x27;-Warray-bounds&#x27; with gcc 13+</li>
<li>smtp: TLS upgrade fix</li>
<li>tool_cfgable: sort struct fields by size, use bitfields for booleans</li>
<li>tool_getparam: add "TLS required" flag for each such option</li>
<li>vtls: fix multissl-init</li>
<li>wakeup_write: make sure the eventfd write sends eight bytes</li>
</ul>
</li>
<li>
<p>Update to 8.12.0:</p>
</li>
<li>
<p>Changes:</p>
<ul>
<li>curl: add byte range support to --variable reading from file</li>
<li>curl: make --etag-save acknowledge --create-dirs</li>
<li>getinfo: fix CURLINFO_QUEUE_TIME_T and add &#x27;time_queue&#x27; var</li>
<li>getinfo: provide info which auth was used for HTTP and proxy</li>
<li>hyper: drop support</li>
<li>openssl: add support to use keys and certificates from PKCS#11 provider</li>
<li>QUIC: 0RTT for gnutls via CURLSSLOPT_EARLYDATA</li>
<li>vtls: feature ssls-export for SSL session im-/export</li>
</ul>
</li>
<li>
<p>Bugfixes:</p>
<ul>
<li>altsvc: avoid integer overflow in expire calculation</li>
<li>asyn-ares: acknowledge CURLOPT_DNS_SERVERS set to NULL</li>
<li>asyn-ares: fix memory leak</li>
<li>asyn-ares: initial HTTPS resolve support</li>
<li>asyn-thread: use c-ares to resolve HTTPS RR</li>
<li>async-thread: avoid closing eventfd twice</li>
<li>cd2nroff: do not insist on quoted <> within backticks</li>
<li>cd2nroff: support "none" as a TLS backend</li>
<li>conncache: count shutdowns against host and max limits</li>
<li>content_encoding: drop support for zlib before 1.2.0.4</li>
<li>content_encoding: namespace GZIP flag constants</li>
<li>content_encoding: put the decomp buffers into the writer structs</li>
<li>content_encoding: support use of custom libzstd memory functions</li>
<li>cookie: cap expire times to 400 days</li>
<li>cookie: parse only the exact expire date</li>
<li>curl: return error if etag options are used with multiple URLs</li>
<li>curl_multi_fdset: include the shutdown connections in the set</li>
<li>curl_sha512_256: rename symbols to the curl namespace</li>
<li>curl_url_set.md: adjust the added-in to 7.62.0</li>
<li>doh: send HTTPS RR requests for all HTTP(S) transfers</li>
<li>easy: allow connect-only handle reuse with easy_perform</li>
<li>easy: make curl_easy_perform() return error if connection still there</li>
<li>easy_lock: use Sleep(1) for thread yield on old Windows</li>
<li>ECH: update APIs to those agreed with OpenSSL maintainers</li>
<li>GnuTLS: fix &#x27;time_appconnect&#x27; for early data</li>
<li>HTTP/2: strip TE request header</li>
<li>http2: fix data_pending check</li>
<li>http2: fix value stored to &#x27;result&#x27; is never read</li>
<li>http: ignore invalid Retry-After times</li>
<li>http_aws_sigv4: Fix invalid compare function handling zero-length pairs</li>
<li>https-connect: start next immediately on failure</li>
<li>lib: redirect handling by protocol handler</li>
<li>multi: fix curl_multi_waitfds reporting of fd_count</li>
<li>netrc: &#x27;default&#x27; with no credentials is not a match</li>
<li>netrc: fix password-only entries</li>
<li>netrc: restore _netrc fallback logic</li>
<li>ngtcp2: fix memory leak on connect failure</li>
<li>openssl: define <code>HAVE_KEYLOG_CALLBACK</code> before use</li>
<li>openssl: fix ECH logic</li>
<li>osslq: use SSL_poll to determine writeability of QUIC streams</li>
<li>sectransp: free certificate on error</li>
<li>select: avoid a NULL deref in cwfds_add_sock</li>
<li>src: omit hugehelp and ca-embed from libcurltool</li>
<li>ssl session cache: change cache dimensions</li>
<li>system.h: add 64-bit curl_off_t definitions for NonStop</li>
<li>telnet: handle single-byte input option</li>
<li>TLS: check connection for SSL use, not handler</li>
<li>tool_formparse.c: make curlx_uztoso a static in here</li>
<li>tool_formparse: accept digits in --form type= strings</li>
<li>tool_getparam: ECH param parsing refix</li>
<li>tool_getparam: fail --hostpubsha256 if libssh2 is not used</li>
<li>tool_getparam: fix "Ignored Return Value"</li>
<li>tool_getparam: fix memory leak on error in parse_ech</li>
<li>tool_getparam: fix the ECH parser</li>
<li>tool_operate: make --etag-compare always accept a non-existing file</li>
<li>transfer: fix CURLOPT_CURLU override logic</li>
<li>urlapi: fix redirect to a new fragment or query (only)</li>
<li>vquic: make vquic_send_packets not return without setting psent</li>
<li>vtls: fix default SSL backend as a fallback</li>
<li>vtls: only remember the expiry timestamp in session cache</li>
<li>websocket: fix message send corruption</li>
<li>x509asn1: add parse recursion limit</li>
</ul>
</li>
</ul>



    

    <h2>Patch Instructions:</h2>
    <p>
        To install this SUSE  update use the SUSE recommended
        installation methods like YaST online_update or "zypper patch".<br/>

        Alternatively you can run the command listed for your product:
    </p>
    <ul class="list-group">
        
            <li class="list-group-item">
                SUSE Linux Micro 6.0
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLE-Micro-6.0-477=1</code>
                    
                    
                
            </li>
        
    </ul>

    <h2>Package List:</h2>
    <ul>
        
            
                <li>
                    SUSE Linux Micro 6.0 (aarch64 s390x x86_64)
                    <ul>
                        
                            <li>curl-8.14.1-1.1</li>
                        
                            <li>libcurl4-8.14.1-1.1</li>
                        
                            <li>curl-debuginfo-8.14.1-1.1</li>
                        
                            <li>curl-debugsource-8.14.1-1.1</li>
                        
                            <li>libcurl4-debuginfo-8.14.1-1.1</li>
                        
                    </ul>
                </li>
            
        
    </ul>

    
        <h2>References:</h2>
        <ul>
            
                
                    <li>
                        <a href="https://www.suse.com/security/cve/CVE-2025-10148.html">https://www.suse.com/security/cve/CVE-2025-10148.html</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://www.suse.com/security/cve/CVE-2025-9086.html">https://www.suse.com/security/cve/CVE-2025-9086.html</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1246197">https://bugzilla.suse.com/show_bug.cgi?id=1246197</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249191">https://bugzilla.suse.com/show_bug.cgi?id=1249191</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249348">https://bugzilla.suse.com/show_bug.cgi?id=1249348</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1249367">https://bugzilla.suse.com/show_bug.cgi?id=1249367</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://jira.suse.com/browse/PED-13055">https://jira.suse.com/browse/PED-13055</a>
                    </li>
                
            
                
                    <li>
                        <a href="https://jira.suse.com/browse/PED-13056">https://jira.suse.com/browse/PED-13056</a>
                    </li>
                
            
        </ul>
    
</div>