PHP/Javascript Einbruchschronik

Hier zeige ich dir, wie Hacker vorgehen, wenn sie über PHP und Node.js einbrechen wollen und ich zeige dir auch, wie du gefährliche Operationen erkenn kannst. Zuerst muss unterscheidet werden, ob es sich um eine direkte (per Load) oder indirekte (Request) Operation handelt. Um überhaupt Schadcode auf dem Gerät zu platzieren, muss der Hacker irgendwie Zugriff erhalten, dabei nutzten sie meistens Inkrementierende Algorithmen. Wenn du dies also verhindern willst, solltest du nach sich vergrössernden Variabel-Antworten Ausschau halten. Manchmal wird diese Methode auch als Art DDOS verwendet um einen Prozess zu beenden (Bsp. Anti-Viren Software). Es kommt auch immer wieder vor, dass in Anfragen verschlüsselte Befehle stehen, die dann bei der Umwandlung in Assemblercode oder bei der Dekompilierung erst ihren Sinn zeigen bzw. diesen auch wirklich erfüllen. Wie du sicher weisst, ist es sehr schwierig solchen Code zu erkennen, da Anti Viren Programme nur auf den oberen Schichten (Normaler Code und bei manchen auch Assemblercode) aktiv sind! Welche Anti-Viren Software soll ich nutzen?

Regierungen wie die von Nordkorea könnten auch solche Angriffsmethoden nutzen, deshalb solltest du dich unbedingt schützen:

1.Führe eine Doppelte Validieren durch.

2.Wenn du wichtige Daten verschiebst, solltest du in der Netzwerkübersicht prüfen, was für Daten empfangen und gesendet werden.

3.Verschlüssle Variabeln:

Das heisst: nicht md5($_GET["variabel"] sondern $var1 = $_GET["variabel"]; md5($var1).

Um zu verhindern, dass ein Hacker die Verschlüsslung knackt kannst du folgendes tun:

Bei jeder Session wird ein random Passwort generiert und als Textdatei auf dem Server gespeichert, das PHP File liest die Datei aus und nutzt sie als Passwort für den vom User eingegeben Content!

Beispiel:

$passwort = file_get_contents('password.txt'); //Falls die Datei nicht im gleichen Ordner wie das Skript ist, ganzen Pfad angeben!
        $salt     = $_POST["hey"];
        echo md5($passwort.$salt); 

1.Das "Entenmaul"(<) am Anfang durch ein anderes Zeichen (Bsp: *) ersetzen.

Aus <script wird dann *script.

Dies erfordert allerdings ein sehr kompliziertes stück PHP Code.

2.Alle Daten die eingegeben werden können, sollen in eine TXT Datei geschrieben werden.

Dazu solltest die PHP Write Funktion nutzen. 

 

Die meisten Browser werden nicht herausfinden das es sich in Wirklichkeit um JavaScript handelt!

Ausserdem solltest du die normale ASCII14 Codierung verhindern.

3.Behalte deine Webseite im Auge. Stellst du verdächtige Aktivitäten fest, solltest du sie umgehend Offline nehmen!

4.Nutze all diese Tipps gleichzeitig!

Du hast eine Frage oder benötigst Hilfe?

Drücke hier um zum Support Chat zu gelangen.

Software-Shop

Das ist dann ähnlich wie wenn man ein zufälliges Französisches Wort auf Deutsch übersetzt und erst dann merkt, dass es sich um ein primitives Schimpfwort handelt. Es kommt manchmal auch vor, dass Nutzer ausersehen solche Daten senden, damit du aber den Einbruch verstehst, zeige ich dir dies kurz anhand eines Beispiels:

?ID=42

Der Hacker ändert den Inhalt des Befehls so, dass er den Wert mit der ID42 verändern kann: 

UPDATE+ID=43+SET+TYPE="admin"+WHERE+IDS=12

Bei diesem Beispiel wird der Wert von der ID 12 zur ID 42 integriert.

BSP FÜR EINE INFORMATION DIE ÜBERTRAGEN WIRD:

https://www.facebook.com/?stype=lo&jlou=AffUs1HhAitm7nZPk

Der Parameter stype sendet die im Login Formular angegeben Daten, zur Überprüfung an die SQL Datenbank, dort wird überprüft ob der Nutzer vorhanden ist.

Dabei nutzt Facebook eine sehr clevere Methode, um SQL Injections zu nutzen:

Sie verändern die Art wie die Daten übertragen werden ständig.

Die du im Link sehen kannst, werden die Informationen verschlüsselt übertragen, die Verschlüsselung wird dabei aber bei jedem Login geändert!

DATEN AUSSPÄHEN:

Das Problem hierbei ist, dass der WebMaster nichts davon mitbekommt oder erst davon erfährt, wenn es bereits zu spät ist.

42+UNION+SELECT+login,+password,+'x'+FROM+user

 

42 steht für das betreffende Datenfeld.

Dabei erhält der Hacker alle Daten die sich in dem betreffenden Feld befinden!

Mache unbedingt eine Duale Verifikation, da Client-Side Javascript verändert werden können.

javascript: void(document.file="variable"

Hier hat der Angreifer eine Serverseitige Variabel genommen.

Hier kurz ein paar Überprüfungstipps:

Um die Variabeln so sicher wie möglich zu verschlüsseln, solltest du sie als passive Variabeln verarbeiten.

Das heisst: nicht md5($_GET["variabel"] sondern $var1 = $_GET["variabel"]; md5($var1).

Um zu verhindern, dass ein Hacker die Verschlüsslung knackt kannst du folgendes tun:

Bei jeder Session wird ein random Passwort generiert und als Textdatei auf dem Server gespeichert, das PHP File liest die Datei aus und nutzt sie als Passwort für den vom User eingegeben Content!

Beispiel:

Bei der Übertragung von den Daten via CURL kann jedes Script auf der Website genutzt werden. Es ist also wichtig das die Ziel Url und das Datenziel, fest und statisch verankert sind! Dies kann zum Beispiel durch eine ht.access Datei, welche nur Nutzer mit einer bestimmten Session zulässt geregelt werden. Dazu muss aber jeder Ordner (der ein Script enthält) über eine eigene access Datei verfügen.

Session beispiel:

<?php
session_start();
 
 $hey = "True";
if (!isset($_SESSION['using'])) {
   $_SESSION['usomg'] = true;
} else {
   echo $hey;
}
?>

Hier werde ich auch einige Viren die hierfür bekannt sind angeben:



KONTAKT

Hinweis: Bitte die mit * gekennzeichneten Felder ausfüllen.


*: Bedeutet, dass KKTVCAM das Produkt/die Seite getestet hat und nun Affiliate der betreffenden Firma ist.

Made with ♥ in Bern (Switzerland)!

KKTVCAM ÜBERNIMMT KEINE HAFTUNG FÜR ALLE ANGABEN AUF DIESER SEITE.