Woran könnte es liegen, dass die Entschlüsselung der AES verschlüsselten Nachricht vom Client auf der Serverseite nicht korrekt funktioniert?

Beschreibung:

Ich habe eine Client-Server-Anwendung, bei der der Server einen Befehl an den Client sendet, der diesen Befehl auf dem Client ausführt und dann das Ausgaberesultat zurück an den Server schickt. Der Command-Output wird verschlüsselt, bevor er an den Server gesendet wird, und sollte auf der Serverseite entschlüsselt werden, um die Ausgabe anzuzeigen.

Ablauf:

Client:

public void executeCommand() {
    try {
        Process p = Runtime.getRuntime().exec("cmd /c " + commandInput);
        p.getOutputStream().close();


        InputStream processStdOutput = p.getInputStream();
        Reader r = new InputStreamReader(processStdOutput);
        BufferedReader br = new BufferedReader(r);
        String line;


        while ((line = br.readLine()) != null) {
            writeToServerSocket("cmd18721378231dcad2");
            writeToServerSocket(line + "\n");
            writer.flush();
        }


        p.waitFor();
    } catch (Exception ex) {
        System.out.println(ex.getLocalizedMessage());
    }
}

public void writeToServerSocket(String message) {
	try {
		String encodedMessage = EncryptionHelper.encrypt(message);
		writer.write(encodedMessage);
	} catch (Exception e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}

Server:

In einer Dauerschleife wird überprüft:

...
String encryptedInput = scanner.nextLine();
            		String input = EncryptionHelper.decrypt(encryptedInput); // Hier vermutlich Fehler
...
else if (input.contains("cmd18721378231dcad2")) {
    String commandOutput = input.substring(19);
    // Problem: Die Entschlüsselung des commandOutput funktioniert nicht korrekt
    // Hier sollte der entschlüsselte Text angezeigt werden
    controller.updatejTextAreaAllChat(commandOutput + "\n");
}

...

Problem:

Der verschlüsselte Command-Output wird vermutlich (nicht komplett sicher da System.out.println zum debuggen beim Server nicht funktioniert aus welchem Grund auch immer) erfolgreich an den Server gesendet, aber die Entschlüsselung auf der Serverseite funktioniert nicht wie erwartet. Der entschlüsselte Text wird nicht korrekt angezeigt, und es wird sobald ich die Anwendung beende die Fehlermeldung "Input byte array has incorrect ending byte" angezeigt.

Code für die Verschlüsselung/Entschlüsselung:

public class EncryptionHelper {
    private static final String KEY = "mysecretkey";


    public static String encrypt(String plainText) throws Exception {
        // ... (Verschlüsselungslogik)
    }


    public static String decrypt(String encryptedText) throws Exception {
        // ... (Entschlüsselungslogik)
    }
}

Was habe ich bereits versucht:

  • Die Übertragung der verschlüsselten Daten wurde überprüft und scheint intakt zu sein.
  • Die Verschlüsselungslogik wurde überprüft und sie scheint korrekt zu sein.
  • Andere Bereiche des Codes wurden überprüft, um sicherzustellen, dass sie das Entschlüsselungsproblem nicht verursachen.
Java, Code, Eclipse, encryption, Socket
PC nach eventuellem Virus tot. (Kein BIOS, Nix) Was genau ist der Grund?

Seit einiger Zeit wird mein PC immer langsamer (ist auch nicht mehr so jung, deshalb nix besonderes). So kam es dann letztendlich dazu, dass das OS ned mehr immer richtig und ziemlich langsam startet.

Dann, ließ sich auch nicht mehr daran zocken (Valorant Fehler: VAN 1067 Connection Error). Naja auch nix besonderes, hat aber vielleicht einen Zusammenhang.

Später, als ich ein Windows Update installieren wollte, hab ich seit langem mal wieder in den Sicherheits-tab geschaut. Microsoft Defender war aber aus. "Neu starten" ist in einer Fehlermeldung geendet. System-Update ist dann beim Re-boot auch fehlgeschlagen und ursprüngliches System wurde wiederhergestellt.

Natürlich etwas Verwirrt zurück in Update Einstellungen sehe ich, dass jetzt nach dem Reboot auch andere Sicherheitseinstellungen geändert wurden. Schnell Internetkabel getrennt, auf anderen PCs im Haus ist keine Malware oder ähnliches vorgedrungen... Zum Glück...

Dann Forschung. Was ist passiert? Event-Viewer: 4703 (Authorization Policy Change). und von dieser Meldung nicht wenige. Von einem Programm ausgeführt, dass irgendwo "crypt" im Namen hatte.

Dann, User-Management oder wie das heißt. Ein nicht Admin Account, den ich vor einiger Zeit zum Testen von Programm-autostarts angelegt habe, hatte plötzlich Admin-Rechte. Andere Accounts, waren auch plötzlich da (2 Stück).

Zurück zum Event-viewer, und tatsächlich wurden die 4903er von meinem Adminlosen Test-Account ausgeführt.

Dann PC gecrasht. Ja okay? Restart. Laufwerk C: wird repariert. Gut, mach das, System. Naja, dann ist's nicht wirklich erfreut und Quälend langsam gebootet und wieder gecrasht. Im Recovery Mode oder wie der heißt nochmal gebootet, hat nicht so gut funktioniert. Shut down speed auf 3 sek. Noch ein Reboot und der war dann tatsächlich schnell im Recovery Mode.

Files austesten.. wurden files verschlüsselt (wie ich befürchte) und ich kann tatsächlich nicht alle Sachen öffnen. Irgendwie komisch.

Also einfach aus. Richtig aus. Nachdenken. Entschließe, einfach alles zu formatieren, Nehm nen usb mit "Disinfec't" und der lässt sich nicht booten. UEFI/BIOS funktioniert auch noch erkennt aber keinen Usb.

Dann aber nicht mehr.

"reboot and select proper boot device or insert boot media in selected boot device and press a key"

Keys drücken bringt aber rein gar nichts. Auch rebooten durch ein/ausschaltknopf bringt nicht

Kurze Recherche per Handy:

5 sek. lang Anschalter ohne Strom betätigen. Naja es hat sich was getan: Es tut gar nix mehr. Es ist, als wäre kein Strom da.

Ersteinmal danke an jeden, der sich diesen langen Text durchgelesen hat. (Bestimmt nicht viele).

Nun meine Vermutung: Ich glaube, dass letztendlich einfach durch den Tausende Stunden langen Vollbetrieb einfach mein Mainboard kaputt gegangen ist.

Es interessiert mich wirklich, was eure Meinung dazu ist. Danke für jede Antwort!!!

PC, Computer, Technik, Virus, Linux, CPU, IT, Festplatte, Recovery, BIOS, booten, Connection, Error, Mainboard, Malware, PC-Problem, pc Virus, Personal Computer, SSD, virus entfernen, Fehlermeldung, Crypt, encryption, Error Code, errors, Massenspeicher, recovery-cd, recovery mode, recovery modus, Virusinfektion, Windows 10, UEFI
Ich hab ein paar Fragen zu Tpm Sicherheit?

Ich habe Tpm nie benutzt, seit Windows 11 hab ich mich dazu durchgelesen.

Erstens ist Tpm nur für Windows?

Zweitens ist es sicher?

Denn ich hatte bis jetzt nie Probleme ich verwende auch kein Bit locker sondern Veracrypt...

Ich habe gelesen das Tpm Gehackt werden kann, und entschlüsselt, dann ausgelesen werden kann.

Drittens hat Microsoft, nicht selber dann ein Backdoor, zu dieser Tpm Verschlüsselung um alles auszulesen?

Viertens ich habe es jetzt mal zu Testzwecken aktiviert, jedoch war Windows schon Installiert. Was ich weiß aktiviert sich Tpm erst bei Installation, ist das richtig?

Kann ich ihn also ohne zu löschen einfach wieder Deaktivieren? Oder sind jetzt schon Daten drauf gespeichert? Also wenn Windows schon installiert war und Nachträglich Tpm aktiviert wurde?

5. Ist mein System nicht sicherer wenn ich es ohne Microsoft Konto Nutze, keine Cache und Logdatein gespeichert sind, ich meine zumindest mehrmals Täglich gelöscht. Damit meine ich die gesamten Windows Logs über die Power Shell. Ich jeden Browser ohne Verlauf nutze, und beim beenden Alles gelöscht wird. Cookies etc. Eine Router nutze eine Internet Security Nutze. Ein Standart Konto Nutze, das administrative Passwort geschützt ist. Vpn nutze.

Oder wäre es einfach gesagt sicher, Tpm dazu zu benutzen und dem ganzen zu vertrauen.?

Oder ist es eh hinfällig mit Veracrypt?

Bitte erklärt mir das Genau, ich habe Standart gemäss kein Vertrauen zur Privatsphäre und Windows...

Und da man es wohl doch nicht für Windows 11 benötigt, sondern man halt dann nur eine Warnmeldung bekommen wird das der Punkt nicht sicher isr.

Überlegte ich einfach so ohne Tpm weiter zu fahren wie ich es schon immer bin...

Ausser es erklärt mir hier wer genau das dieses nicht nur für Microsoft gedacht ist, und es sicher ist als ohne, mit dem Maßnahmen die man so schon so sicher wie möglich in Windows stellen kann.

PC, Computer, Windows, Microsoft, Technik, Hack, Sicherheit, Hardware, Elektrotechnik, Mikrocontroller, Rechner, EDV, Embedded, Embedded Systems, Hacker, Hacking, Kryptographie, Kryptologie, Security, Technologie, TPM, encryption, VeraCrypt, Windows 11, TPM 2.0

Meistgelesene Beiträge zum Thema Encryption