Drucksache: Windows Developer 10.15 - Wie sicher ist C# 6.0?
Im windows.developer 10.15 ist ein Artikel zur Sicherheit von C# 6.0 erschienen.
C# 6 ist da. Ebenso Visual Studio 2015 und .NET 4.6. Und auch wenn C#6 keine sicherheitsrelevanten Änderungen enthält gibt es Neuigkeiten rund um die Sicherheit.
Sicherheitsrelevante Änderungen in C# waren eigentlich auch nicht zu erwarten. Denn im Gegensatz zu C wurde C# ja von Anfang an auch in Hinblick auf die Sicherheit entwickelt, so dass viele Probleme gar nicht erst entstanden. Einige der neuen Features können aber trotzdem die Sicherheit erhöhen, zum Beispiel indem sie den Code klarer machen.
Im .NET-Framework gibt es vor allem neue Krypto-Funktionen, so dass Sie nun die Möglichkeit haben, die Daten und Kommunikation Ihrer Programme mit aktuellen Protokollen, Implementierungen, Verfahren und Schlüssellängen zu schützen. Aber die alten Implementierungen waren auch nicht wirklich unsicher, wenn man von veralteten Algorithmen wie RC4, veralteten Protokollen wie SSL 3.0 oder zu kurzen Primzahlen beim DH-Schlüsselaustausch absieht.
Und in der Hinsicht ist Kryptographie sowieso immer nur ein Zeitschloss. Irgendwann gibt es effektive Algorithmen und/oder Rechner, die einen Brute-Force-Angriff auf früher einmal als sicher eingestufte Schlüssellängen oder Algorithmen ermöglichen, oder in den Implementierungen oder Standards von Algorithmen oder Protokollen werden Schwachstellen entdeckt, die einen Angriff möglich machen.
Also: So lange Sie aktuelle Tools verwenden (egal ob Sprache, Entwicklungs- oder Laufzeitumgebung oder APIs), droht ihren Programmen aus dieser Richtung keine Gefahr.
Update 19.10.2015:
Der Artikel ist jetzt auch online
auf entwickler.de
zu lesen.
Ende des Updates
Und hier noch die Links und Literaturverweise aus dem Artikel:
- [1] Neal Gafter; dotnet/roslyn Wiki auf GitHub: "New Language Features in C# 6"
- [2] Neal Gafter; dotnet/roslyn Wiki auf GitHub: "New Language Features in C# 6" - "Getter-only auto-properties"
- [3] Carsten Eilers: "Microsoft Security Development Lifecycle"; windows.developer Magazin 4.2012
- [4] Neal Gafter; dotnet/roslyn Wiki auf GitHub: "New Language Features in C# 6" - "Null-conditional operators"
- [5] Carsten Eilers: "Der Code sagte GOTO FAIL, und Apples SSL-Prüfung gehorchte"
- [6] Neal Gafter; dotnet/roslyn Wiki auf GitHub: "New Language Features in C# 6" - "Exception filters"
- [7] MSDN Library: "What's New in the .NET Framework - .NET 2015 and .NET Framework 4.6"
- [8] GitHub: TokenBinding/Internet-Drafts
- [9] MSDN Library: ".NET Framework 4.6 and 4.5 - <UseRandomizedStringHashAlgorithm> Element"
- [10] MSDN Library: "SQL Server 2016 - Always Encrypted (Database Engine)"
- [11] MSDN Library: "SQL Server 2016 - Always Encrypted (client development)"
- [12] MSDN Library: ".NET Framework 4.6 and 4.5 - System.Security Namespaces - System.Security.Cryptography Namespace"
- [13] Windows Dev Center: "Cryptographic Next Generation (CNG) Reference"
- [14] Carsten Eilers; Microsoft Security Developer Center: "Cryptography API: Next Generation"
- [15] Carsten Eilers: "Heute aufgezeichnet – morgen entschlüsselt?"; PHP Magazin 5.2014
- [16] Carsten Eilers: "Kurze Schlüssel, große Gefahr"; PHP Magazin 5.2015
- [17] Security Research & Defense Blog: "Security Advisory 2868725: Recommendation to disable RC4"
- [18] Carsten Eilers: "Kryptografie im NSA-Zeitalter"; Entwickler Magazin 2.2014
- [19] Mathy Vanhoef, Frank Piessens: "RC4 NOMORE - Numerous Occurrence MOnitoring & Recovery Exploit"
- [20] Carsten Eilers: "Poodle - SSLv3 gefährdet Ihre Daten!"
- [21] Carsten Eilers: "BEAST - Ein neuer Angriff auf SSL und TLS 1.0"
- [22] Visual Studio 2015 RTM Release Notes
- [23] Jack Tang; TrendLabs Security Intelligence Blog: "Exploring Control Flow Guard in Windows 10"
- [24] Daniel Lehmann, Ahmad-Reza Sadeghi; Black Hat USA 2014: "The Beast is in Your Memory: Return-Oriented Programming Attacks Against Modern Control-Flow Integrity Protection Techniques"
- [25] Byoungyoung Lee, Yeongjin Jang, Tielei Wang; Black Hat USA 2014: "Abusing Performance Optimization Weaknesses to Bypass ASLR"
- [26] Carsten Eilers: "Schutzmaßnahmen: ASLR gegen Pufferüberlauf-Schwachstellen"
- [27] MSDN Library: "C# Keywords - unsafe (C# Reference)"
- [28] MSDN Library: "C# Programming Guide - Unsafe Code and Pointers"
- [29] Black Hat USA 2015 ¦ Briefings
- [30] Alex Ionescu; Black Hat USA 2015: "Battle of the SKM and IUM: How Windows 10 Rewrites OS Architecture"
- [31] Yunhai Zhang; Black Hat USA 2015: "Bypass Control Flow Guard Comprehensively"
- [32] Seth Moore, Baris Saydag; Black Hat USA 2015: "Defeating Pass-the-Hash: Separation of Powers"
- [33] Mark Vincent Yason; Black Hat USA 2015: "Understanding the Attack Surface and Attack Resilience of Project Spartan's New EdgeHTML Rendering Engine"
- [34] Sean Michael Kerner; eWEEK: "Black Hat Set to Expose More Than 30 Zero-Day Flaws"
Trackbacks
Dipl.-Inform. Carsten Eilers am : Drucksache: Windows Developer 12.15 - Windows 10: Sicherheit für Entwickler
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : "Windows 10: gefährlich oder gefährdet?" auf entwickler.de
Vorschau anzeigen