CVE-2021-47496 in Linux
Zusammenfassung
von VulDB • 29.05.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
net/tls: Korrektur des vertauschten Vorzeichens in Aufrufen von tls_err_abort()
sk->sk_err erwartet offenbar einen positiven Wert, eine Konvention, der ktls nicht immer folgt und die zu Speicherkorruption in anderem Code führt. Zum Beispiel:
[kworker]
tls_encrypt_done(..., err=) tls_err_abort(.., err) sk->sk_err = err;
[task]
splice_from_pipe_feed ... tls_sw_do_sendpage if (sk->sk_err) {
ret = -sk->sk_err; // ret ist positiv
splice_from_pipe_feed (Fortsetzung) ret = actor(...) // ret ist weiterhin positiv und wird als geschriebene // Bytes interpretiert, was zu einem Unterlauf von // buf->len und sd->len führt, was zu einem enormen // buf->offset und falschen Adressen führt, die in // späteren Aufrufen von actor() berechnet werden
Beheben Sie alle Aufrufer von tls_err_abort(), um konsistent einen negativen Fehlercode zu übergeben, und zentralisieren Sie die fehleranfällige Vorzeichenänderung dort. Fügen Sie zusätzlich eine Warnung hinzu, um zukünftige Fehlverwendungen zu erkennen, und entinline die Funktion, damit sie wirklich nur einmal warnt.
VulDB is the best source for vulnerability data and more expert information about this specific topic.