Results 1 to 15 of 15

Thread: TLS 1.2 support for Windows XP

  1. #1
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621

    TLS 1.2 support for Windows XP

    The included readme tells you everything you need to know, but I'll quote the most relevant parts:

    Code:
    NOTE: This patch only works on the x86 edition of Windows XP. It won't
    work on the x64 edition or Windows Server 2003, and attempts at applying
    it to either will completely break your system.
    
    Here's the list of things you will have after doing all this:
    * Support for the TLS 1.1 and 1.2 protocols on programs that use
    Schannel and do not specify one by default (e.g. uTorrent)
    * Support for the AES 128 and 256 ciphers on programs that use Schannel
    (most Windows and .NET apps)
    * Support for SHA-128, 256 and 512 certificate signatures
    * A more secure setup that disables most cipher suites known to be weak
    or insecure as of April 2019
    
    And the things you _won't_ have:
    * TLS 1.1 and 1.2 support on Internet Explorer 8
    * Forward secrecy and elliptic curve encryption ciphers
    * Server Name Indication (an extension that's unrelated to the protocol
    version in use and not implemented by Microsoft)
    * TLS session tickets (same)
    If you're getting a "received an unexpected EOF or 0 bytes from the transport stream" on mRatio or RatioMaster Plus under Windows XP, installing this may fix it. Unfortunately, I was unable to get either program to use TLS 1.2 no matter what I tried (up to and including stealing a copy of System.dll from newer versions of the .NET Framework), so they're stuck with TLS 1.0.

    Enjoy!

    Attached Files Attached Files
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  2. Who Said Thanks:

    sbmodhd (18.06.19) , Lucius (07.04.19) , DashingDave (16.10.18) , lost.keys (02.10.18) , H265 (30.05.18) , cloud99 (30.05.18)

  3. #2
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    As it turns out, you can get TLS 1.1 and 1.2 support on IE8 if you uncomment a certain block of the attached registry file that says otherwise and install KB4339093...



    Of course, there's no forward secrecy or SNI, and Internet Explorer 8 is still Internet Explorer 8, but if you're reading this thread you probably don't care
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  4. Who Said Thanks:

    lost.keys (02.10.18)

  5. #3

    Join Date
    11.01.13
    Posts
    19
    Activity Longevity
    0/20 11/20
    Today Posts
    0/5 sssssss19
    WTF, Waffles is working on XP again!!! They only use HTTPs tracker announcer and thanks to this method, it is now possible to use uTorrent with Waffles & any other tracker using HTTPs announcers. Very underappreciated post right there, people...

    God, how I love SB-Innovation, for many years now... Anon & Lucius - you guys are some kult personnes
    Reply With QuoteReply With Quote
    Thanks

  6. Who Said Thanks:

    alpacino (02.10.18)

  7. #4
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    This was just a throwaway project of mine until someone reported mRatio was broken on Waffles under Windows XP, and version 1 of this patch solved the problem. At that point, I decided to improve it with files from newer security updates and give it a separate thread. It took me two days to test and put everything together, so I'm glad it was useful I can't believe Microsoft never added support for the AES cipher through a "normal" update during the 13 years Windows XP was officially supported.

    Also, you are fortunate Waffles is apparently hosted on a dedicated server (as this patch doesn't add SNI support), and to a lesser degree that it supports the cipher suites listed above, though the latter isn't likely to change soon. A lot of sites still allow the relatively unsafe combination of RSA, AES and SHA1 (which by the way is all mRatio can do under XP even after installing this, due to its reliance on .NET 2.0).

    Also², I wanted to backport GPT support from Server 2003 to XP as well, but tests have been unsuccessful thus far.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  8. #5

    Join Date
    15.10.18
    Location
    United Arab Emirates
    P2P Client
    uTorrent
    Posts
    6
    Activity Longevity
    0/20 2/20
    Today Posts
    0/5 ssssssss6
    This information is very useful. It works perfectly as it should on Windows 7.
    I hope XP guys can make it work though! Everything needs a little effort.
    Reply With QuoteReply With Quote
    Thanks

  9. Who Said Thanks:

    VIARIAmib (07.05.19)

  10. #6
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    A new version of the patch is out, please redownload and reapply.

    You're highly encouraged to read this, apply the POSReady registry tweak, and install all available updates before Microsoft shuts the Windows Update site down on July. They will add a variety of improvements and security fixes.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  11. Who Said Thanks:

    sbmodhd (18.06.19)

  12. #7
    Hallo anon,

    ich hoffe es ist in Ordnung, wenn ich auf Deutsch schreibe.

    Ich habe den neuen Patch in WinXP SP3 installiert.
    Es lief alles ohne Probleme ab.

    Wenn ich aber mit dem IE8 https://www.howsmyssl.com/ aufrufe, wir mir weiterhin nur TLS 1.0 angezeigt.

    Auch ein anderes Programm, welches auf .net basiert hat weiterhin folgende Fehlermeldung:
    ===========================================
    Socket Fehler: GetRequestStreamCallback System.Net.WebException: Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden.. ---> System.IO.IOException: Unerwartetes Dateiende oder 0 Bytes vom Transportstream erhalten.
    bei System.Net.TlsStream.EndWrite(IAsyncResult asyncResult)
    bei System.Net.PooledStream.EndWrite(IAsyncResult asyncResult)
    bei System.Net.ConnectStream.WriteHeadersCallback(IAsy ncResult ar)
    --- Ende der internen Ausnahmestapelüberwachung ---
    bei System.Net.HttpWebRequest.EndGetRequestStream(IAsy ncResult asyncResult, TransportContext& context)
    bei System.Net.HttpWebRequest.EndGetRequestStream(IAsy ncResult asyncResult)
    bei AlfSocketNet.AlfSocket.GetRequestStreamCallback(IA syncResult asynchronousResult)
    ===========================================

    Was kann/muss ich noch ändern?

    Viele Grüße.
    Reply With QuoteReply With Quote
    Thanks

  13. #8
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    Um TLS 1.2 Support für den IE8 zu erreichen, muss zunächst KB4493435 installiert werden (https://www.catalog.update.microsoft...px?q=KB4493435). Danach müssen folgende Befehle ausgeführt werden.

    Code:
    reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "SecureProtocols" /t REG_DWORD /d 0xa80 /f
    reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "SecureProtocols" /t REG_DWORD /d 0xa80 /f
    
    reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\AdvancedOptions\CRYPTO\TLS1.1" /v "OSVersion" /f
    reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\AdvancedOptions\CRYPTO\TLS1.2" /v "OSVersion" /f
    
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" /v "DefaultSecureProtocols" /t REG_DWORD /d 0xa80 /f
    Bei .NET-basierten Programmen ist unter Windows XP leider kein TLS über Version 1.0 möglich. Egal welche .NET-Framework Version benutzt wird oder welche Workarounds du probierst.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  14. #9
    Ok, danke.
    Der IE8 ist eigentlich nicht so wichtig, da ich einen anderen Browser verwende.

    .NET wäre wichtiger...

    Meinst du, dass ich trotzdem alle Updates von POSReady in WinXP installieren sollte?

    In 2017 habe ich die bis dahin aufgeführten POSReady-Updates installiert.
    Ist da noch Wichtiges dazu gekommen?

    Nachtrag:
    Verändert der Patch (DLL oder Registry) auch die Anzeige der Schriften?
    Ich habe seit der Änderung bei einem .NET basierenden Programm eine veränderte Schrift. Diese ist unscharf. Aber nicht alle Texte bei dem Programm, sondern nur einige davon.

    Was muss ich ggf. ändern?
    Last edited by Abarth; 21.08.19 at 22:29.
    Reply With QuoteReply With Quote
    Thanks

  15. #10
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    Quote Originally Posted by Abarth View Post
    Der IE8 ist eigentlich nicht so wichtig, da ich einen anderen Browser verwende.
    Ich empfehle den Browser New Moon. Dieser wird noch regelmäßig aktualisiert und unterstützt Windows XP.

    Meinst du, dass ich trotzdem alle Updates von POSReady in WinXP installieren sollte?

    In 2017 habe ich die bis dahin aufgeführten POSReady-Updates installiert.
    Ist da noch Wichtiges dazu gekommen?
    Wenn deine CPU SSE2 Instruktionen unterstützt, was sie tut, wenn sie innerhalb der letzten 15 Jahre hergestellt wurde, empfehle ich die POSReady Updates zu installieren. Seit 2017 gab es viele Updates (einschließlich eines präventiven Fixes für eine besonders kritische Sicherheitslücke) und diese sind alle praxiserprobt. Das einzige Problem auf welches du stoßen kannst betrifft den Windows Installer, der unter Umständen nicht mehr funktioniert. Dies kann aber mit den folgenden Befehlen behoben werden.

    sc stop MSIServer
    regsvr32 /u /s msi.dll
    regsvr32 /s msi.dll

    Verändert der Patch (DLL oder Registry) auch die Anzeige der Schriften?
    Nein, der Patch verändert nichts in Bezug auf die Schriften. Ich habe dein Problem während meiner Tests nicht nachvollziehen können, weshalb ich keine Idee habe, was dies verursacht haben könnte.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  16. #11
    Hallo anon,

    alle POSReady-Updates drin.
    TLS 1.2 funktioniert beim IE8 noch nicht, aber das ist egal.

    Aber ich habe ein anderes Problem.
    Und zwar bei einem Programm, welches auf .NET basiert, meldet einen Fehler, wenn ich die Datenbank im Programm reorganisiere.

    Es kommt folgender Fehler:
    Die Anweisung "0x099c13bf" verweist auf Speicher bei "0x00000000". Die Daten wurden wegen eines E/A-Fehlers in "0x00000000...75b1b11c" nicht in den Arbeitsspeicher übertragen.

    Das Programm läuft sonst fehlerfrei.
    Wenn ich den Reorg von einem anderen Rechner im Netz starte (ohne POSReady-Updates), dann läuft der Reorg fehlerfrei durch.

    An was kann das liegen?
    Reply With QuoteReply With Quote
    Thanks

  17. #12
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    Quote Originally Posted by Abarth View Post
    alle POSReady-Updates drin.
    TLS 1.2 funktioniert beim IE8 noch nicht, aber das ist egal.
    Du musst wahrscheinlich das .reg File erneut ausführen. Auch beim echten POSReady mit allen installierten Updates, ist TLS 1.1 und TLS 1.2 standardmäßig deaktiviert und muss manuell aktiviert werden (was die Registry-Befehle tun).

    Aber ich habe ein anderes Problem.
    Und zwar bei einem Programm, welches auf .NET basiert, meldet einen Fehler, wenn ich die Datenbank im Programm reorganisiere.

    Es kommt folgender Fehler:
    Die Anweisung "0x099c13bf" verweist auf Speicher bei "0x00000000". Die Daten wurden wegen eines E/A-Fehlers in "0x00000000...75b1b11c" nicht in den Arbeitsspeicher übertragen.

    Das Programm läuft sonst fehlerfrei.
    Wenn ich den Reorg von einem anderen Rechner im Netz starte (ohne POSReady-Updates), dann läuft der Reorg fehlerfrei durch.

    An was kann das liegen?
    Wenn deine CPU keine SSE2 Unterstützung hat, solltest du die Updates ab August 2018 nicht installieren. Microsoft hat dort nämlich angefangen, die Binaries mit SSE2 Instruktionen zu kompilieren. Dies führt dann zu merkwürdigen Fehlern wie du ihn hast. Das Gleiche gilt auch für Windows 7 Updates die zur gleichen Zeit rauskamen.

    Ansonsten habe ich keine Idee Ich habe bei .NET Programmen keine derartigen Probleme und habe darüber auch keine Meldungen im MSFN.org Forum gefunden, welches ich aktiv verfolge.

    Es wäre auch immer noch möglich, dass eins oder mehrere .NET-Framework Updates kaputt sind. In diesem Fall wäre es sinnvoll, die Updates eins nach dem anderen zu deinstallieren, bis du das kaputte Update gefunden hast.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  18. #13
    Quote Originally Posted by anon View Post
    Du musst wahrscheinlich das .reg File erneut ausführen. Auch beim echten POSReady mit allen installierten Updates, ist TLS 1.1 und TLS 1.2 standardmäßig deaktiviert und muss manuell aktiviert werden (was die Registry-Befehle tun).
    Das habe ich gemacht und die Einträge sind auch in der Reg drin.

    Wenn deine CPU keine SSE2 Unterstützung hat, solltest du die Updates ab August 2018 nicht installieren. Microsoft hat dort nämlich angefangen, die Binaries mit SSE2 Instruktionen zu kompilieren. Dies führt dann zu merkwürdigen Fehlern wie du ihn hast. Das Gleiche gilt auch für Windows 7 Updates die zur gleichen Zeit rauskamen.

    Ansonsten habe ich keine Idee Ich habe bei .NET Programmen keine derartigen Probleme und habe darüber auch keine Meldungen im MSFN.org Forum gefunden, welches ich aktiv verfolge.

    Es wäre auch immer noch möglich, dass eins oder mehrere .NET-Framework Updates kaputt sind. In diesem Fall wäre es sinnvoll, die Updates eins nach dem anderen zu deinstallieren, bis du das kaputte Update gefunden hast.
    Es ist ein Phenom II x4 945 verbaut, welcher SSE2, SSE3, SSE4a hat.
    Daran sollte es nicht liegen.

    Wenn ich den Reorg aufrufe, dann wird ja wahrscheinlich aus dem Programm heraus ein anderes Programm gestartet. Gibt es eine Möglichkeit aufzuzeichnen, was hier im Hintergrund passiert? Dann könnte ich schauen, welches Programm/Datei hier in Frage kommt.
    Reply With QuoteReply With Quote
    Thanks

  19. #14
    Moderator anon's Avatar
    Join Date
    01.02.08
    Posts
    35,621
    Activity Longevity
    11/20 19/20
    Today Posts
    0/5 ssss35621
    Quote Originally Posted by Abarth View Post
    Das habe ich gemacht und die Einträge sind auch in der Reg drin.
    Naja, selbst mit TLS 1.2 wäre der Internet Explorer 8 immer noch ein veralteter Browser, der nur die einfachsten Seiten korrekt darstellen kann. Ganz zu schweigen von einem fehlenden Update oder Patch für SNI-Zertifikats-Support (was mittlerweile für viele sichere Server benötigt wird). Also sollte das auf jeden Fall kein großes Problem sein

    Es ist ein Phenom II x4 945 verbaut, welcher SSE2, SSE3, SSE4a hat.
    Daran sollte es nicht liegen.

    Wenn ich den Reorg aufrufe, dann wird ja wahrscheinlich aus dem Programm heraus ein anderes Programm gestartet. Gibt es eine Möglichkeit aufzuzeichnen, was hier im Hintergrund passiert? Dann könnte ich schauen, welches Programm/Datei hier in Frage kommt.
    Ich würde für diese Aufgabe den Process Monitor 3.10 empfehlen (siehe https://superuser.com/questions/1131344/) oder alternativ Event Monitor Service.
    "Come visit sometime, okay? We'll always be here for you. We... we all love you."
    Reply With QuoteReply With Quote
    Thanks

  20. #15
    Ich bin jetzt auf was gestoßen, was mit dem Fehler zusammen hängt:
    Es kommt folgender Fehler:
    Die Anweisung "0x099c13bf" verweist auf Speicher bei "0x00000000". Die Daten wurden wegen eines E/A-Fehlers in "0x00000000...75b1b11c" nicht in den Arbeitsspeicher übertragen.

    Und zwar soll es an der ntdll.dll liegen, welche in der deutschen Version bei den POS-Updates fehlerhaft sein soll.

    Ich wollte diese gegen eine ältere Version ersetzen, aber das klappt einfach nicht.
    Wie kann ich diese austauschen und ist das dann problemlos möglich, so dass keine weiteren Fehler kommen?
    Reply With QuoteReply With Quote
    Thanks

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •