kostenloser Webspace werbefrei: lima-city


Updatesystem - Sicherheit

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    Hi,

    jedes PHP System von dem mehrere Instanzen laufen benötigt ja eine zentrale Update-Funktion.

    Ich habe mich jetzt allerdings gefragt, welche Sicherheitsaspekte zu beachten sind.

    1) Angenommen ich stelle ein Zip-File mit den Updatefunktionen bereit, welchen von den einzelnen Systemen beim Ausführen eines Updates heruntergelaen wird. Wie kann ich sicherstellen, dass NUR berechtigte Instanzen dieses Zip-File herunterladen können? (Andernfalls würde ja jeder Teile des Sourcecodes downloaden können).

    2) Wäre es möglich, dass man den Updates-bereitstellenden Server 'imitiert' um auf irgendeinem Wege ein eigenes Update einzuspeisen? Das wäre offensichtlich katastrophal, weil daurch die Möglichkeit gegeben wäre, eigenen Sourcecode einzuspeisen. (Könnte man ggF über einen hash vergleichen oä, aber die Übermittlung des Hashes müsste dann sicher sein - ähnliches Problem).

    Falls sich jemand damit auskennt / soetwas bereits gemacht hat wäre ich über nützliche Infos und Erfahrungsberichte aber auch für andere Wege zur Realisierung offen und dankbar!

    Vielen Dank und Grüße
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. programtools schrieb:
    1) Wie kann ich sicherstellen, dass NUR berechtigte Instanzen dieses Zip-File herunterladen können? (Andernfalls würde ja jeder Teile des Sourcecodes downloaden können).

    Man könnte der ZIP-Datei ja einen zufälligen Namen geben wie 4359345749357ß6dflskflsd.zip, allerdings frage ich mich wozu: Wenn man die Software unter einer entsprechenden Lizenz stellt, dann macht sich der, der das unberechtigt herunterlädt und nutzt, strafbar und man kann nicht so einfach die Verbreitung von Codes verhindern. Nahezu jede Software gibt es irgendwo gecrackt im Netz. Das Entscheidende sollte nicht die Verhinderung des Downloads sein, sondern eine Abschreckung durch Strafen bzw. ein Lizenzsystem, das in der Software intrigiert ist und die Software unbrauchbar macht, wenn es keine gültige Lizenz gibt.
    programtools schrieb:
    2) Wäre es möglich, dass man den Updates-bereitstellenden Server 'imitiert' um auf irgendeinem Wege ein eigenes Update einzuspeisen? Das wäre offensichtlich katastrophal, weil daurch die Möglichkeit gegeben wäre, eigenen Sourcecode einzuspeisen. (Könnte man ggF über einen hash vergleichen oä, aber die Übermittlung des Hashes müsste dann sicher sein - ähnliches Problem).

    Um den Server zu "imitieren" müsste man doch den entsprechenden Code im PHP-System ändern, oder? Das heißt, man könnte dann sowieso eigenen Sourcecode einspeisen. Das Abändern des Codes bei einem PHP-System zu verhindern ist generell sehr schwer. Ich persönlich sehe aber keinen Sinn dahinter, so einen Schutz einzubauen. phpBB hat das mit der neuesten Version versucht (nach meinen eigenen Erfahrungen werden die Server-Variablen von PHP erkannt - da ein paar meiner Anpassungen damit nicht mehr gingen, verwende ich jetzt kein phpBB mehr - allerdings konnte phpBB damit nicht alle Anpassungen verhindern. Ein paar meiner Scripte funktionierten trotzdem.) und damit sicher sehr viele Nutzer verloren.

    Zusammenfassend kann ich sagen: Stelle deine Software lieber unter einer entsprechenden Lizenz und verklage jeden, der dagegen verstößt. Einen Schutz vor Veränderungen an der eigenen, heruntergeladenen Instanz und unberechtigten Zugriff auf Quellcode ist nahezu unmöglich. Um das feststellen zu können, brauchst du nur auf entsprechende Seiten im Netz zu surfen, auf denen gecrackte Programme angeboten werden, die meist von den größten Software-Konzernen der Welt stammen und teilweise noch nicht mal offiziell veröffentlicht wurden.

    Evtl. wäre SaaS was für dich? (Da dürften so gut wie alle deine Probleme wegfallen :biggrin:)
  4. programtools schrieb:

    1) Wie kann ich sicherstellen, dass NUR berechtigte Instanzen dieses Zip-File herunterladen können?


    Du kannst ein kleines Loginscript in PHP oder co erstellen, sodass man mittels /update.php?key=[random-Key]&version... das Update herunterladen kann.
    Dann gibst du jeder Installation einen Key, womit sich diese Installation selbst updaten könnte. Für alle, welche den Key nicht besitzen, ist es nicht möglich das Update herunterzuladen.

    programtools schrieb:

    2) Wäre es möglich, dass man den Updates-bereitstellenden Server 'imitiert' um auf irgendeinem Wege ein eigenes Update einzuspeisen?

    Wofür die Imitation des Updateservers, wenn er doch einfach den Code auf seinem Server/Webspace verändern kann?
    Falls die Installation aber ihren Hersteller prüfen soll, kannst du einfach eine Digitale Signatur(https://de.wikipedia.org/wiki/Digitale_Signatur) nutzen. Dann unterschreibst du einfach deine Updates mit deinem geheimen Schlüssel und alle Installationen können mittels des öffentlichen Schlüssels überprüfen, dass es auch wirklich von dir stammt(asymetrische Kryptographie ist hier entscheidend).
    Dies nutzt z.b. Microsoft, um für seine Updates die Echtheit zu beweisen(Bei den Administratordialogen steht ja auch immer Herausgeber: Microsoft. Dies ist die digitale Signatur).

    Fazit: Du kannst deinen Updatevorgang sicher machen. Aber wer Zugriff auf den Zielserver hat, kann natürlich auch alles abändern und das Update somit auch unsicher machen. Dann müssten die Eigentümer schon keinen Zugriff auf den Server haben, um Modifikationen zu verhindern.

    P.S.: Die Idee mit den Lizenzen und dem Verklagen ist zwar schön, aber wenig praktikabel. Viele teuere Produkte von großen Firmen findet man heutzutage gecrackt im Netz. Lizenzen helfen am besten gegen Softwarenachahmungen, welche unter richtigem Namen veröffentlicht werden. Aber da musst du auch dich erstmal auf die Anwaltskosten einlassen.

    Mfg pueschel
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!