Application und Wireshark

  • Allgemein

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Radinator.

    Application und Wireshark

    Hey ho,

    Ich bin zurzeit ein einem Projekt drann bei mir und habe auch eine übergabe von nutzerdaten die per PHP abgefragt werden auf meinem Server.

    nun gibt das Script per php name=test einige Daten die aber nicht weiter wichtig sind für andere oder Sicherheitsbedenkend.

    Aber per Wireshark habe ich nun genau 1:1 meine URL auslesen könn wo die Daten abgefragt werden.

    Wie schüzt Ihr euch ? Reicht ein Eazfuscator da aus? Oder doch die URL Crypten?

    Keine Datei ist 100% Sicher oder der Sourcecode für andere. Trotzdem möchte ich verhindern das angelegte daten die zur Abfrage dienen andere nutzen können.


    Mfg

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Nochmal. Das habe ich nicht verstanden. Du übergibst irgendwelche Daten an ein PHP-Skript. Von wo aus und wie? Wo genau ist da jetzt das Problem?
    Demnach müsste der Thread nämlich auch verschoben werden. Das ist ja kein OffTopic.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Das hat nichts mit OffTopic zu tun. Aus Deiner Frage lese ich irgendwas mit Datenübergabe an ein PHP-Skript heraus.

    Saphira104 schrieb:

    oder gebt ihr den Source Code so wie er Debugt wird mit?
    Ja, wie denn sonst? Irgendwelche Obfuksatoren bringen ja nichts außer mehr Ärger. Daher wäre es zu wissen, was Du überhaupt vor hast und was das Problem ist.

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Sagen wir z.B. Userdaten abfragen.

    Ich mache das per Login URL und übergebe per POST die Daten das nichts Unormales und Warte ab ob Server sagt Logged IN oder Nicht.

    Danach werden per Mysql im Web Daten ausgelesen daten.php?name=Saphira und davon per echo ausgegeben und per VB.net anwendung genuzt .

    Das zu Unterbinden das andere Die URL dazu nicht haben.
    Ah okay. Passwörter kann man ja dann gehasht übermitteln und auch serverseitig nochmal hashen und dann mit der Datenbank abgleichen. Dann werden die nicht im Klartext übergeben. Aber das hat ja nichts mit dem Client zu tun, sodass Obfuskatoren oder so da ja nichts bringen (tun sie davon abgesehen selbst dann nicht).
    Und verwende eine verschlüsselte Verbindung über HTTPS. Das ist schon die halbe Miete. ;)

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:
    Ganz wichtig: Bitte nutze keine Obfuskatoren. Das bringt null.
    Erweckt den anschein das du was böses vorhast und lässt Virenprogramme
    Fehlalarme schlagen. Und selbst mit nem Obfuskator lässt sich der Quellcode sehen.

    Desweiteren wirst du nie und never verhindern können das die Leute die URL rausfinden.
    Die kannst du crypten / verschlüsseln oder was auch immer.
    Sobald dann aber jemand seinen eigenen Netzwerk Traffic mitschneidet sieht er eh immer
    wo sich was hin verbindet.

    Wie Trade auch sagte HTTPS verwenden falls du dir kein Zertifikat leisten willst es gibt letsencrypt.org/
    da gibt es kostenlose Zertifikate nutze ich schon seit anfang an. Und wird auch von vielen Großen Firmen
    gesponsort.
    Grüße , xChRoNiKx

    Nützliche Links:
    Visual Studio Empfohlene Einstellungen | Try-Catch heißes Eisen

    Saphira104 schrieb:

    Wie schüzt Ihr euch ?
    Indem du die Daten nicht per GET an den Server überträgst, sondern per POST. Damit kann man zumindest nicht mehr in der URL erkennen, welche Parameter übergeben worden sind.

    Saphira104 schrieb:

    Reicht ein Eazfuscator da aus
    Was zum Foidl soll ein Eazfuscator sein?? Ich denke mal, du meinst Obfuscator. Und nein, der bringt dir nix. Damit kannst du höchstens dein Vb-Programm obfuscaten (bringt dir aber auch nix, da 1.) viele Virenscanner dann Alarm schlagen und 2.) es dein Programm nur unnötig verlangsamt

    Saphira104 schrieb:

    Oder doch die URL Crypten?
    Also example.com/script.php?foo=bar&foo2=bar2 in irgendeiner Weise zu verschlüsseln bringt dir gar nix, denn woher soll den der DNS Server wissen, zu welcher IP (also welchem Gerät) er denn den Buchstaben- und Zeichensalat auflösen soll, den du ihm gibst?
    Was du (!! theoretisch !!) machen kannst, ist den INHALT der Parameter zu "crypten" - ach Gott, wie ich diesen Anglizismus hasse! Dann sieht deine URL halt so aus: example.com/script.php?foo=v#r&foo2=v#r?.
    Aber wie im ersten Zitat: nimm lieber POST als Übergabe her, verwende SSL und übertrage die Daten per HTTPS. Dann brauchst du dir über den Inhalt keine Sorgen mehr machen.

    Lg Radinator
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
    Keine Datei ist 100% Sicher oder der Sourcecode für andere. Trotzdem möchte ich verhindern das angelegte daten die zur Abfrage dienen andere nutzen können.


    Dann hast du ein falsches Konzept. Man muss davon ausgehen das die Clientseite im Grunde immer offen ist und nicht geschützt sein kann.
    Du musst deine Serverseite also wenn dann schützen. Das heißt, keine Requests ohne Login Cookie, verwende ggf. CSRF Token etc.

    @Radinator Eazfuscator ist ein Obfuscator gapotchenko.com/eazfuscator.net

    Ein bisschen OT: Das was du PHP seitig hast klingt für mich fast wie ein Webservice. Dafür gibt es viele Frameworks wie zB slimframework.com/, welche dann auch schon entsprechende Möglichkeiten mit Permissions und Security mitbringen bzw bieten. Ich kenn das Framework nicht, ist nur ein Beispiel und klingt für mich erstmal nicht schlecht. (slim yeah)
    Ich bin in PHP leider nicht up to date bezüglich Frameworks für REST (oder SOAP,) aber das lässt sich sicher ergooglen.
    Vermutlich hast du eh keine Lust dich da einzulesen, aber ich wollte es zumindest mal erwähnt haben.
    Das ist meine Signatur und sie wird wunderbar sein!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Mono“ ()

    Radinator schrieb:

    Indem du die Daten nicht per GET an den Server überträgst, sondern per POST. Damit kann man zumindest nicht mehr in der URL erkennen, welche Parameter übergeben worden sind.


    Nein aber dann stehts einfach im Body ;) Es gibt absolut keine Möglichkeit die URL zu verbergen, der WebService muss nur enstprechend abgesichert werden sodass niemand sensible Daten auslesen kann.

    ThuCommix schrieb:

    Nein aber dann stehts einfach im Body
    @'ThuCommix' da musste ich ein bisschen schmunzeln...anscheinend hast du meinen Post nicht richti gelesen. Ich behaupte nicht, dass sich mit einem Wechsel von GET auf POST alle Probleme der Welt lösen lassen (in dem Fall das Auslesen der übertragenen Daten). Ich habe lediglich gesagt, dass man nach dem Wechsel die Daten NICHT MEHR in der URL stehen hat. Nicht mehr und nicht weniger habe ich gesagt:

    ThuCommix schrieb:

    zumindest nicht mehr in der URL erkennen, welche Parameter übergeben worden sind.


    Der Aussage

    ThuCommix schrieb:

    Es gibt absolut keine Möglichkeit die URL zu verbergen
    stimme ich voll und ganz zu. Du kannst die Daten nicht vestecken (im Sinne von nicht wiederfindbar machen - gut kann man schon: durch weg-lassen). Doch was soll dann die Gegenseite machen? Aus dem Hut zaubern? Eben!
    Das einzige was du machen kannst, ist es dem Angreifer erschweren an die Nutzdaten zu kommen (sei es durch verschlüsseln oder durch HTTP Tunneling.

    Lg Radinator
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell