Abo
  • Services:
Anzeige
Entwickler bei Stack Overflow entdeckten einen Fehler in .Nets RyuJIT-Compiler, nachdem dort das Caching nicht mehr korrekt funktionierte.
Entwickler bei Stack Overflow entdeckten einen Fehler in .Nets RyuJIT-Compiler, nachdem dort das Caching nicht mehr korrekt funktionierte. (Bild: Stack Overflow/Screenshot: Golem.de)

Kritischer Softwarefehler: RyuJIT verändert willkürlich Parameter

Entwickler bei Stack Overflow entdeckten einen Fehler in .Nets RyuJIT-Compiler, nachdem dort das Caching nicht mehr korrekt funktionierte.
Entwickler bei Stack Overflow entdeckten einen Fehler in .Nets RyuJIT-Compiler, nachdem dort das Caching nicht mehr korrekt funktionierte. (Bild: Stack Overflow/Screenshot: Golem.de)

In Microsofts aktuelles .Net 4.6 hat sich ein gravierender Fehler eingeschlichen. Dessen Just-in-Time-Compiler RyuJIT verarbeitet Eingaben nicht korrekt. Microsoft arbeitet bereits an einem Patch. So lange sollten Entwickler auf ein Upgrade auf .Net 4.6 verzichten.

Anzeige

Der Fehler ist nur schwer aufzuspüren und kann gravierende Auswirkungen beim Verarbeiten von Code haben. In der aktuellen Version 4.6 von Microsofts Entwicklungsumgebung .Net hat sich ein Bug in den Just-in-Time-Compiler (JIT) RyuJIT in der 64-Bit-Version eingeschlichen. Er verarbeitet ihm übergebene Parameter nicht korrekt. Entdeckt wurde der Fehler von den Systemadministratoren und Entwicklern Nick Craver und Marc Gravell bei Stack Overflow. Microsoft arbeitet nach eigenen Angaben an einem Patch, der demnächst veröffentlicht werden soll.

  • Mit diesem Code spürten Entwickler bei Stack Overflow einen Fehler in RyuJIT auf. (Bild: Stack Overflow)
  • Während der Verarbeitung wurden Parameter willkürlich verändert. (Bild: Stack Overflow)
Mit diesem Code spürten Entwickler bei Stack Overflow einen Fehler in RyuJIT auf. (Bild: Stack Overflow)

Der Bug tritt dann auf, wenn die Optimierungen aktiviert sind. Bei der Optimierung des Endaufrufs (Tail Call Optimization) werden eingangs übergebene Parameter von RyuJIT willkürlich verändert. Craver und Gravell gaben dem Fehler daher den Namen Tail Call Bug. Bei Stack Overflow führte er dazu, dass das HTTP-Caching nicht korrekt funktionierte und so zu einer Überlastung der Server führte.

Nur schwer aufzuspüren

Bei der Entwicklung und Testphase in der Entwicklungsumgebung Visual Studio 2015 tritt der Fehler nicht auf. Wird ein Debugger eingesetzt, verschwindet der Fehler ebenfalls. Erst beim produktiven Einsatz macht er sich bemerkbar.

Besonders gravierend seien die Auswirkungen des Fehlers dann, wenn .Net etwa im medizinischen Bereich verwendet wird, schreiben die Entwickler bei Stack Overflow in einem Blog. Ihr Rat: Über einen Registry-Eintrag lässt sich RyuJIT vorübergehend deaktivieren. Wer .Net noch nicht auf Version 4.6 aktualisiert hat, sollte damit noch warten.

Deaktivieren und abwarten

Ähnliches rät auch Microsoft in einem Advisory und weist darauf hin, dass RyuJITs Vorgänger JIT64 immer noch Teil des .Net-Frameworks ist und verwendet werden kann. Wer in F# programmiert, sollte mit einem Update auf .Net 4.6 warten, denn allem Anschein nach sind Anwendungen, die in der Programmiersprache entwickelt wurden, besonders betroffen. Selbst Anwendungen, die noch für .Net 4.0 entwickelt wurden, könnten aber von dem Fehler betroffen sein. Microsoft will einen Patch schnellstmöglich zur Verfügung stellen.


eye home zur Startseite
Quantium40 30. Jul 2015

Macht Microsoft doch. Erst basteln die was und dann muss jeder Kunde testen - ob er...



Anzeige

Stellenmarkt
  1. Bermuda Digital Studio, Bochum
  2. CG Gruppe Aktiengesellschaft, Berlin
  3. Daimler AG, Leinfelden-Echterdingen
  4. Hessischer Rundfunk, Frankfurt am Main


Anzeige
Spiele-Angebote
  1. (-46%) 26,99€
  2. (-20%) 35,99€

Folgen Sie uns
       


  1. Cray und Microsoft

    Supercomputer in der Azure-Cloud mieten

  2. Wiper Premium J XK

    Mähroboter mit Persönlichkeitsstörung

  3. Fall Creators Update

    Microsoft will neues Windows 10 schneller verteilen

  4. Canon

    Riesiger Bildschirm soll DSLR und Tablet vereinen

  5. Wibotic Powerpad

    Induktions-Drohnenlandeplatz erhöht die Reichweite

  6. Mercedes-Benz Energy

    Elektroauto-Akkus werden zum riesigen Stromnetzspeicher

  7. Unternehmen

    1&1 Versatel bietet Gigabit für Frankfurt

  8. Microsoft

    Xbox One emuliert 13 Xbox-Klassiker

  9. DMT Bonding

    Telekom probiert 1 GBit/s ohne Glasfaser aus

  10. Telekom-Software

    Cisco kauft Broadsoft für knapp 2 Milliarden US-Dollar



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
ZFS ausprobiert: Ein Dateisystem fürs Rechenzentrum im privaten Einsatz
ZFS ausprobiert
Ein Dateisystem fürs Rechenzentrum im privaten Einsatz
  1. Librem 5 Purism zeigt Funktionsprototyp für freies Linux-Smartphone
  2. Pipewire Fedora bekommt neues Multimedia-Framework
  3. Linux-Desktops Gnome 3.26 räumt die Systemeinstellungen auf

Verschlüsselung: Niemand hat die Absicht, TLS zu knacken
Verschlüsselung
Niemand hat die Absicht, TLS zu knacken
  1. RSA-Sicherheitslücke Infineon erzeugt Millionen unsicherer Krypto-Schlüssel
  2. TLS-Zertifikate Zertifizierungsstellen müssen CAA-Records prüfen
  3. Certificate Transparency Webanwendungen hacken, bevor sie installiert sind

Zotac Zbox PI225 im Test: Der Kreditkarten-Rechner
Zotac Zbox PI225 im Test
Der Kreditkarten-Rechner

  1. Re: Problem = Nutzer

    chewbacca0815 | 09:29

  2. Auf Linux migrieren?

    cicero | 09:29

  3. Re: Oder gleich sicher designen

    Bouncy | 09:28

  4. Re: Diese Idee ist völlig in Ordnung in Praxisnah

    otraupe | 09:28

  5. @heise Gleich Google Fit mit in's Visier nehmen

    logged_in | 09:28


  1. 09:15

  2. 09:00

  3. 08:23

  4. 07:34

  5. 07:22

  6. 07:11

  7. 18:46

  8. 17:54


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel