Veröffentlicht am Schreiben Sie einen Kommentar

ILSPY .NET Decompiler für C# und VB.NET

Hallo liebe Leser,
heute möchte ich euch ein bis heute aktives Projekt eines .NET Decompilers vorstellen (Juni 2011 – April 2019). Dieser Decompiler kann mit *.EXE und *.DLL Dateien von .NET C# (CSharp) und VB.NET umgehen und lesbaren Quellcode generieren.

Ein Dekompilierer ist ein Computerprogramm, das aus Maschinen- oder Objektcode für den Menschen wieder lesbaren Quelltext in einer Hochsprache erzeugt. Er versucht, den Vorgang des Kompilierens umzukehren.

.NET Decompiler für VB.NET und C#

n dem Beispiel auf dem Foto (§ 202c freundliches) sehen wir die MySQL.Connector für .NET. Es extrahiert die Kompletten Funktionsnamen des Programms oder der Bibliothek und zeigt dessen Quellcode an. Ein super .NET Decompiler der auch die Ursprungsform IL (Intermediate Language). Common Intermediate Language (CIL) (teilweise auch nur Intermediate Language (IL)) ist eine Zwischensprache, in die alle Programme der Common Language Infrastructure übersetzt werden. CIL ist eine objektorientierte Assemblersprache und ist vollständig stackbasiert. 

Auf dem Zielcomputer wird die CIL von einem Laufzeitsystem (Virtual Execution System) in systemeigenen Programmcode übersetzt, um in CIL vorliegende Programme ausführen zu können.
CIL ist in frühen Entwicklungsphasen von .NET als Microsoft Intermediate Language (MSIL) bezeichnet worden, mit der Standardisierung der Common Language Infrastructure ist diese Bezeichnung aber verworfen worden.
Bei der Kompilierung von Quellcode aus .NET-Sprachen wird nicht direkt systemeigener Programmcode erzeugt, sondern in einem ersten Schritt zunächst CIL-Code. In CIL werden die Programmbefehle als eine Folge von Bytewerten (teilweise auch mehr als ein Byte) angegeben. Dieser Code wird auf dem Ausführungsrechner in einem Laufzeitsystem zu nativem Maschinencode übersetzt (Just in time (JIT) Kompilierung) und ausgeführt.
Während der Übersetzung werden auch die Sicherheit und die Korrektheit des Codes (Manipulation) überprüft.


Was kann der ILSpy .NET Decompiler? (Juni 2011)
Es unterstützt das komplette Microsoft .NET Framework also auch VB und nicht nur C#, aber ist ja auch verständlich, weil die beiden Sprachen nun mal CIL sind. Es kann zwischen einer C# Ansicht und einer detaillierteren IL Ansicht gewechselt werden. Elemente werden Gruppiert und können bequem über ein “+” / “-” Zeichen aufgeklappt und zugeklappt werden. Der Disassembler unterstützt das Suchen von Funktionsnamen. ILSpy lässt sich erweitern durch Plugins. Beim erneuten öffnen zeigt euch das Programm die letzte Position im Baum an, was ich sehr praktisch finde. Achja importiert man eine *.EXE Datei welche weitere .NET Bibliotheken benutzt werden diese mit importiert und das ganze bleibt auch bei einem erneuten Programmstart erhalten. Bei bedarf können einzelne Teile über Rechte Maustaste entfernt werden. 

Der ILSPY Decompiler und Serial-Fishing

Diese können von Lizenznummern-Cracks berechnet werden oder aus dem Speicher abgelesen werden („Serial fishing“), das wäre bei Disassembler der Fall mit einem Decompiler habt ihr es einfacher und könnt direkt z.B. ein “magic Passwort / Hash” sehen und decrypten (gab in Vergangenheit und Zukunft) immer wieder Fälle wo diese “magic passwords” aufgedeckt wurden und die gerade Sicherheit von Hardware schwer in Mitleidenschaft ziehen können, weil ein komplexes Firmware-Update gebraucht wird, wenn der Hersteller überhaupt bereit ist ein Patch zu erstellen.
Wer kennt noch die “magic passwords” von BIOS der frühen 2000er? z.B. “LKWPETER”, damit konnte man wirklich jedes BIOS Passwort (manuell eingegeben umgehen, vielmehr aushebeln).
Hatte damals auch Zeit und Spaß daran kleinere Software zu untersuchen und in Schulen mein Unwesen zu treiben..
Aber eher mit Disassembler “Ein Disassembler ist ein Computerprogramm, das kodierte Maschinensprache eines ausführbaren Programmes in eine für Menschen lesbarere Assemblersprache umwandelt. Seine Funktionalität ist der eines Assemblers entgegengesetzt”

Security Code Review – Anwendungsfall (Juni 2011)
Ein Anwendungszenario ist zum Beispiel die Überprüfung des eigenen Quellcodes ob dort Konstanten angegeben wurden, man stelle sich statische Lizenzschlüssel vor, also nur einen für das komplette Programm der nicht generiert wird. Gleiches gilt für Benutzernamen und Passwort zum Beispiel Standardwerte, welche bei der Entwicklung vorhanden waren. Der SAMSUNG DATA MANAGEMENT SERVER SQLI besitzt z.B. ein Defaulwert root und ein Kennwort was ich hier nicht schreibe, ihr könnt euch einen guten Artikel zu dem Thema ansehen

Weitere Informationen und Download von ILSpy Decompiler für VB.NET und C# findet ihr auf Github 

Rechtliche Lage zu Decompilern,”Patchen”,”Cracks” in Deutschland und International

Quelle: https://de.wikipedia.org/wiki/Crack_(Software)#Rechtliche_Lage
Die meisten kommerziellen Applikationen untersagen in ihren Lizenzbedingungen jegliche Modifikationen der Software oder sogar schon den Vorgang des Disassemblierens. In vielen Ländern existieren Gesetze, die definieren, inwieweit eine Modifikation eines Binärprogramms erlaubt ist. In Deutschland ist das Modifizieren eines Binärprogramms somit grundsätzlich erlaubt, solange die ursprüngliche Funktionalität des Programms nicht beeinträchtigt wird. Zusätzliche Funktionen dürfen dabei alleine zum Zwecke der Herstellung von Kompatibilität zu eigenen Programmen implementiert werden. Ein Patch darf dabei nur in Form eines Programms verbreitet werden, das die Originaldatei nach Vorgaben verändert, jedoch nicht in Form einer modifizierten Kopie der Originaldatei. Das Recht, ein Programm zum Zwecke der Herstellung von Kompatibilität zu verändern, ist auf internationaler Ebene nicht selbstverständlich. Das Untersagen jeglicher Modifikationen in den Lizenzbedingungen hat jedoch in den seltensten Fällen rechtswirksame Konsequenzen, da dies u. a. auch den Vorgang des Entfernens eines Computervirus durch Antivirenprogramme in Frage stellt.

Da die rechtliche Lage häufig unklar ist, was das Entfernen von einem Kopierschutz betrifft, verwenden manche kommerzielle Applikationen einen verschlüsselten oder komprimierten Binärcode, wodurch die Daten gemäß Vorgaben in ausführbaren Maschinencode konvertiert werden müssen, bevor sie vom Computer interpretierbar sind. Da die Programme jedoch dem Rechner „verraten“ müssen, wie die integrierten Daten zu konvertieren sind, ist es auch für Cracker nachvollziehbar, wie sich der Code in einen interpretierbaren Zustand konvertieren lässt. Die Software-Industrie implementiert solche Verfahren, um es einerseits den Crackern zu erschweren, das Programm zu interpretieren, jedoch auch, um die Möglichkeit zu unterbinden, ein Patch-Programm zur Modifikation des Original-Programms zu veröffentlichen, da es so nicht mehr möglich ist, das Programm durch das Verändern einzelner Bytes zu modifizieren, und als einzige Möglichkeit die Verbreitung einer vollständigen modifizierten Originaldatei verbleibt. Dies ist urheberrechtlich meist eindeutig untersagt.

Quelle: Juni 2011 (kid2elite, von mir) | Reviewed April 2019.

Veröffentlicht am Schreiben Sie einen Kommentar

Firefox DNS abfragen absichern mit DoH (DNS over HTTPS) – Anti-Netzzensur stopp blocking me

Hallo liebe Bludau Media Blog Leser ,

die meisten von euch werden noch nie Ihre DNS Einstellungen geändert haben…
Öffentliche DNS können für einen schnelleren Aufbau zum Webserver sorgen als Beispiel gibt es von Google 8.8.8.8 und von Cloudflare 1.1.1.1 (schnellster DNS – alter Benchmark).

Cloudflare hilft Firefox Build-in DNS im speziellen DNS over HTTPS (DoH) anzubieten.
Mittels DNS-over-HTTPS werden DNS-Spoofing / DNS-Hijacking / Cache Poisoning und Men-in-the-Middle (MITM) – Angriffe unterbunden.
Eine Umstellung auf diese technik ist absolut empfehlenswert aus IT Security Sicht, gerade auch bei öffentlichen WLAN Hotspots.
Die nötige Konfigurationsänderung ist sehr einfach zu bewerkstelligen, mit allen aktuellen Firefox Versionen.

Dafür ruft Ihr im Browser “about:preferences” auf und scrollt auf der Einstellungsseite ganz zum Ende

Firefox 2019-04-10 20_42_05-Einstellungen.png

Dort klicken Sie auf “Einstellungen”.

Firefox 2019-04-10 20_42_15-Einstellungen.png

Sie setzen den Haken wie in dem Screenshot zu sehen bei “DNS über HTTPS aktivieren”. Wählen dort Standard verwenden “https://mozilla.cloudflare-dns.com/dns-query” aus. Wie bereits erwähnt ist Cloudflare der performanteste DNS Server derzeit und überbietet selbst den öffentlichen DNS Server von Google (8.8.8.8). DNS Server Änderungen können ebenfalls verwendet werden um sogenannte “Netzsperren” zu umgehen. Aber wenn Sie wie bei Vodafone (ehemals Kabel Deutschland) oder 1 & 1 sind sollten Sie in Erwägung ziehen Ihren DNS  zu wechseln (Windows / Systemweit / Router / Browser). Es werden sicherlich Statistiken über die Anzahl der geblockten Inhalte angefertigt, außerdem läuft dort eine Software die aktiv Seiten aus dem Netz verschwinden lässt. Hintergrund die GEMA hat Vodafone dazu verdonnert diese Netzsperren umzusetzten.

Ich persönlich bin ein Anhänger von “Information wants to be free“.

Zitat: “”Information wants to be free” is an expression that means all people should be able to access information freely. It is often used by technology activists to criticize laws that limit transparency and general access to information.”

“The expression is often credited to Stewart Brand, who was recorded saying it at a hackers conference in 1984.“.
“According to this philosophy, hackerscrackers, and phreakers are liberators of information which is being held hostage by agents demanding money for its release.”

Wie gesagt darüber könnte ich nen eigenen Block Beitrag schreiben, es gibt keine deutsche Wikipedia dazu, diese Aussage “Information wants to be free” oder auch “Information should be free” gehört zu einen der alten Hacker-Weisheiten in der Amerikanischen Hacker-Szene.

Datenschutztechnisch lassen sich von allen Internet-Service-Providern Statistiken über die Nutzung eines jeden Kunden anfertigen (DNS-Access-Logfile) sowie über Städte, Regionen, bei Multi-Konzerenen sogar über Ländergrenzen hinweg. Es ist zu diesem Thema nicht viel bekannt, ob es wirklich ein Tracking von den Internet-Service-Providern (ISP) gibt. Die jetzige Verteidigungsministern hat vor einiger Zeit eine Debatte um das “Zugangserschwerungsgesetz” geführt, in Deutschland wäre es das sogenannte “BKA Stoppschild” geworden. Wurde ein Glück verhindert, lustig das es jetzt die GEMA schafft, mit 404-Seite existiert nicht. Also nutzt Tor-Browser und alle Sorgen sind weg, vergesst teilweise teure VPN’s.

Also schimpft nicht immer nur auf die GAFA (Google,Amazon,Facebook,Apple)!
Das hat sicherlich auch finanzielle und geostrategische Hintergründe, das diese Disskusionen in den Medien geführt werden.

Wer sich tiefergend mit DNS über HTTPS (DoH) befassen will kann z.B. Firefox komplett verbieten auf DoH zu verzichten.

“Mit folgende Werten könnte man TRR in Firefox unter “about:config” konfigurieren:

  • Mit dem TRR-Mode kann man auswählen, wie DNS-over-HTTPS verwendet wird: network.trr.mode = 0 (Abgeschaltet aufgrund der Default Einstellung.)
    network.trr.mode = 1 (Frage System DNS + TRR und verwende erstes Ergebnis.)
    network.trr.mode = 2 (Verwende TRR und System DNS als Fallback.)
    network.trr.mode = 3 (Verwende ausschließlich TRR nach dem Start.)
    network.trr.mode = 4 (TRR parallel zum System DNS aber nicht verwenden.)
    network.trr.mode = 5 (Abgeschaltet aufgrund der Auswahl des Nutzers. FF61+)

Es emfielt sich TRR (Trusted Recursive Resolver– so heißt die DNS Technik wirklich) Modus manuell auf network.trr.mode = 3 zu setzen!
zu beachten bei trr.mode=3 ist folgendes:
>> “Damit das funktioniert, muss man unter network.trr-bootstrapAddress noch die IP-Adresse des DNS-Servers mit DoH-Support (146.185.167.43) eingetragen werden.”

>>”Set `network.trr.mode` to 2 to make DNS Over HTTPS the browser’s first choice but use regular DNS as a fallback (0 is “off by default”, 1 lets Firefox pick whichever is faster, 3 for TRR only mode, 5 to explicitly turn it off).

Unterstützt wird diese wenig bekannte Technik von Firefox 60+ und ebenso von Thunderbird 60+.

Weitere DNS über HTTPS Server aus dem Privacy Handbuch:

  • “Für Mozilla stellt Cloudflare extra zwei separate DNS-over-HTTPS Server zu Verfügung, für die eine privacy-freundlichere Datenschutz Policy gilt: network.trr.uri = https://mozilla.cloudflare-dns.com/dns-query
    network.trr.bootstrapAddress = 104.16.111.25 (1. Server als Bootstrap) network.trr.bootstrapAddress = 104.16.112.25 (2. Server als Bootstrap)
     (Für länger als 24h werden auf diesen DNS Servern nur akkumulierte DNS Statistiken gesammelt, aber die sind für ein US-Unternehmen auch interessant und Gold wert: “Welche Dienste im Internet im Internet sind für die breite Masse interessant? Welche Newcomer haben scheinbar Erfolg?”)
  • SecureDNS ist ein kostenfreies Projekt mit No-Logging-Policy: network.trr.uri = https://doh.securedns.eu/dns-query
    network.trr.bootstrapAddress = 146.185.167.43
  • Konfiguration für Quad9 DNS-over-HTTPS Servernetwork.trr.uri = https://dns.quad9.net/dns-query
    network.trr.bootstrapAddress = 9.9.9.9
  • Konfiguration für Standard Cloudflare DNS-over-HTTPS Server: network.trr.uri = https://cloudflare-dns.com/dns-query
    network.trr.bootstrapAddress = 1.1.1.1
  • Für Googles DNS-over-HTTPS Server gilt die Datensch(m)utz Policy von Google: network.trr.uri = https://dns.google.com/resolve
    network.trr.bootstrapAddress = 216.58.214.110

Über DNS über HTTPS (DoH) lassen sich auch Werbenetzwerke Filtern und blockieren:

Ein DNS-Server der das anbietet ist “https://ads-doh.securedns.eu/dns-query ” (ungetestet, brauche für meine Arbeit doch häufige mal Google Ads 😉 )

In Zukunft wird sich entscheiden ob DNS-over-HTTPS oder DNS-over-TLS und DNSCrypt gewinnen wird.

Schreibt den Jungs von Windows im Insider Hub das wir alle zumindest DNS-over-HTTPS systemweit von Windows 10 / Windows Server wünschen.

Das war es auch schon, bis morgen 😉

Veröffentlicht am Schreiben Sie einen Kommentar

Öffentlicher Quellcode für Browser Passwörter auslesen

Hallo liebe Leser,

 

Konformes Projekt, das gespeicherte Anmeldungen von Google Chrome, Firefox, Internet Explorer und Microsoft Edge abrufen kann. In Zukunft wird dieses Projekt erweitert, um Cookies und Verlaufselemente aus diesen Browsern abzurufen.

Auf den Schultern von Riesen stehen

Dieses Projekt nutzt die Arbeit von @plainprogrammer und seine Arbeit an einem konformen.NET 2.0 CLR konformen SQLite-Parser, der hier zu finden ist. Darüber hinaus hat @gourk einen wunderbaren ASN-Parser und Kryptographiehelfer zum Entschlüsseln und Parsen der FireFox-Logindateien erstellt. Es verwendet eine überarbeitete Version seiner Arbeit (hier zu finden), um diese Logins zu analysieren. Ohne ihre Arbeit wäre dieses Projekt nicht annähernd so schnell zusammengekommen wie es war.

 

Quellcode SharpWeb herunterladen

 

IT Sicherheit Gegenmaßnahme

 

Als Gegenmaßenahme empfehle ich den Einsatz von Keepass im zusammenspiel mit Kee  (kann Sie per Teamviewer Schulung einweisen). Keepass alleine ist lame, aber im Zusammenspiel mit “kee” und dem entsprechenden RPC Plugin für Keepass ist es möglich komplett auf den Passwortmanager von Chrome (ungetestet) und Firefox (bereits lange im Einsatz) zu verzichten.

Veröffentlicht am Schreiben Sie einen Kommentar

Windows Server Security UAC Level 3

Hallo liebe Leser,

ich möchte euch eine Möglichkeit vorstellen wie die UAC (Benutzerkontensteuerung) unter einem Windows Server z.B. für ein JTL Wawi MS-SQL Hosting gehört.

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

Schlüssel: ConsentPromptBehaviorUser 

Wert: Neuer von “1” auf Wert “3” (sehr hohe Sicherheit), es wird bei jedem Zugriff auf wichtige Windows Systemelemente das Passwort verlangt. 

Meines Wissens ist das nicht über die Windows Oberfläche einstellbar.

Dies ist sehr effektiv, weil Sie selbst am System angemeldet bleiben können ohne das jemand viel machen kann. Effektiv bei Internet Remote Desktop Zugriff (RDP).

 Regedit UAC ConsentPromptBehaviorUser 

Ob Exploits welche UAC aushebelt blockiert werden ist die Frage, die Logik welche aufgerufen wird ist eine andere anstelle von JA / Nein wird das Passwort oder PIN verlangt (höchste Sicherheit). Weitere Informationen bei Microsoft über UAC