So schützen Sie PHP-Quelldateien auf einem öffentlichen Server

1338
user499312

Ich habe eine Website, die ich mit PHP erstellt habe.

Weil ich meine Website auf einem öffentlichen Server hoste. Ich möchte wissen, ob es möglich ist, meinen PHP-Quellcode der Website auf diese Weise zu verschlüsseln, um das Lesen von PHP-Dateien durch einen Eindringling unmöglich zu machen.

Wenn nicht, können Sie andere Sprachen vorschlagen, mit denen wir unseren Quellcode verschlüsseln und auf dem Server ausführen können.

0
Haben Sie Angst vor Eindringlingen, die Ihren Quellcode stehlen? Oder haben Sie Angst davor, dass "Eindringlinge" Ihren Code hacken? So oder so denkst du darüber nach. JakeGould vor 8 Jahren 0

2 Antworten auf die Frage

1
nKn

Wenn sich der Angreifer nicht explizit auf Ihrem Server befindet, müssen Sie sich keine Gedanken um Ihren PHP-Code machen, da der von Ihnen verwendete Webserver den PHP-Code vorher analysieren und ausführen muss, um ihn nach außen zu senden, sodass der Angreifer den ausgeführten Code nicht kennt .

Wenn Sie jedoch Bedenken hinsichtlich der Daten haben, die zwischen Ihrem Server und einem Client übertragen werden können, empfehle ich die Verwendung SSL/TLS, um Daten zwischen Ihrem Server und Ihren Clients zu verschlüsseln. Dies sollte ausreichend sicher sein, damit Ihr Server sicher bleibt.

Beachten Sie, dass * jeder * des PHP-Codes (einschließlich verschachtelter Include- und Tags in Vorlagen) unter Verwendung von * short-Tags * (` Yorik vor 7 Jahren 0
0
Ira Baxter

Es gibt eine Vielzahl von Verschleierungswerkzeugen, die den Quellcode schwer verständlich machen und dennoch die gleiche Funktionalität bieten. [Ich mache eine davon; siehe meine bio].

Sie können auf einem Entwicklungsstandort im ursprünglichen Klartextformat Ihrer Quelle arbeiten. Sie können den Klartext verschleiern, um die geschützte Version zu erstellen, die dann bereitgestellt wird. Das bedeutet, dass Personen mit uneingeschränktem Zugriff auf den bereitgestellten Server nur den verschleierten Text sehen, was den Code sehr schwer zu verstehen macht.

Natürlich sollten Sie die verschleierte Version an Ihrem Entwicklungsstandort testen, bevor Sie sie bereitstellen, um sicherzustellen, dass der Obfuscator nichts beschädigt hat (oder es ist wahrscheinlicher, dass Sie den Obfuscator falsch konfiguriert haben).

Es ist nicht ideal; entschlossene Gegner können mit genügend Aufwand Ihren Code wahrscheinlich umbauen. Normalerweise reicht es aus, um sie zu entmutigen, und das ist alles, was Sie brauchen.

In Bezug auf Schlüsseler : Das ist eine sehr schlechte Idee, weil sie die Logik enthalten, den Quellcode zu entschlüsseln. Wenn Sie also verschlüsselte Versionen Ihres Codes bereitstellen, kann Ihr Gegner den Entschlüsseler verwenden, den Sie auch angeben müssen, um den Klartext Ihres Programms ziemlich trivial zu erreichen.