php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 3 Stimmen, 5,00 durchschnittlich.
  #16 (permalink)  
Alt 10-01-2008, 17:41
der_milchmann
 Newbie
Links : Onlinestatus : der_milchmann ist offline
Registriert seit: Aug 2004
Beiträge: 51
der_milchmann ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hmm und wie soll ich es sonst regeln?

Welchen Sinn hat es, wenn ich

uservariable --> zweitevariable

Wie soll ich sonst etwas über die URL übermitteln OHNE dass es sichtbar wird.
Mit Zitat antworten
  #17 (permalink)  
Alt 10-01-2008, 17:49
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Wie soll ich sonst etwas über die URL übermitteln OHNE dass es sichtbar wird.
Wo sichtbar wird? Bzw wo soll es nicht sichtbar sein? Was du via URL übergibst ist immer sichtbar für den Client und den Server...
Wieso speicherst du die $_GET Var auf eine eigene Var??
PHP-Code:
if(isset($_GET['v']) && $_GET['v'] == ' deinWert'
reicht doch völlig aus.

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #18 (permalink)  
Alt 10-01-2008, 17:51
der_milchmann
 Newbie
Links : Onlinestatus : der_milchmann ist offline
Registriert seit: Aug 2004
Beiträge: 51
der_milchmann ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jahlives
Wo sichtbar wird? Bzw wo soll es nicht sichtbar sein? Was du via URL übergibst ist immer sichtbar für den Client und den Server...
Wieso speicherst du die $_GET Var auf eine eigene Var??
PHP-Code:
if(isset($_GET['v']) && $_GET['v'] == ' deinWert'
reicht doch völlig aus.

Gruss

tobi
Hi Tobi,

ok - du meinst, ich brauche die Variable, die ich hier auslese, quasi garnicht in eine weiter speichern bzw. übergeben?


Aber so wie ich H2O verstehe, bleibt das ja sonst ein Risiko.

Ich checke es daher nicht, weil doch der potentielle Angreifer weiterhin über die URL rumspielen kann und weiterhin meine möglichen Variablen manipulieren kann, immerhin hat sich in meinen Augen ja nur geändert, dass ich statt zuzvor, die Variable direkt auszulesen, sie nun erst prüfe, woher sie kommt, von GET, POST.....aber das nutzt doch nicht wirklich gegen Manipulation ??
Mit Zitat antworten
  #19 (permalink)  
Alt 10-01-2008, 17:55
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von der_milchmann
Welchen Sinn hat es, wenn ich
uservariable --> zweitevariable
Keinen! Du wirst doch nicht den Benutzer bestimmen lassen, was du ausgeben willst. Wenn du eine Variable dazu brauchst, dann nimm z.B. $x, aber nur wenn kein Parameter $_GET['x'] existiert. Das ist ja genau der Sinn, dass der Benutzer nicht mehr beliebige Variablen übergeben kann, sondern nur noch solche, die du auch haben willst.
__________________
Gruss
H2O
Mit Zitat antworten
  #20 (permalink)  
Alt 10-01-2008, 18:03
der_milchmann
 Newbie
Links : Onlinestatus : der_milchmann ist offline
Registriert seit: Aug 2004
Beiträge: 51
der_milchmann ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von H2O
Keinen! Du wirst doch nicht den Benutzer bestimmen lassen, was du ausgeben willst. Wenn du eine Variable dazu brauchst, dann nimm z.B. $x, aber nur wenn kein Parameter $_GET['x'] existiert. Das ist ja genau der Sinn, dass der Benutzer nicht mehr beliebige Variablen übergeben kann, sondern nur noch solche, die du auch haben willst.

Ok - das macht natürlich Sinn, aber ....

wenn meine Seite wie folgt vorgesehen ist, und ich nur eine Variable zulasse:

meineseite.php?einzige_variable=Wert

Also meine Scripte sind nicht so eingerichtet, dass der User X-Beliebige Variablen hinten anhängen kann, die dann im Script verarbeitet werden, beispielsweise wäre das hier unwirksam:

meineseite.php?einzige_variable=Wert&noch_eine_vom_Angreifer=angriff


Lediglich bei "einzige_variable" kann der User natürlich alle möglichen Werte probieren, manuell einzugeben.


Daher frage ich mich, ob es bei meinen Scripten überhaupt Sinn macht, Globals zu deaktivieren, da ich sowieso keinerlei andere Variablen zulasse. Und selbst bei register_globals=off kann ja der Angreifer dennoch alle möglichen Werte ausprobieren bei meiner einzigen zugelassenen Variable.
Mit Zitat antworten
  #21 (permalink)  
Alt 10-01-2008, 18:10
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich bin mir nicht sicher, ob du überhaupt begreifen willst. Natürlich kann der Benutzer beliebige Werte eingeben:
Code:
meineseite.php?einzige_variable=Wert&x=7&y=löschen
Aber damir definiert er eben keine Variable $x und keine Variable $y, sondern nur Variablen im globalen Array $_GET. Und es bleibt dann dir überlassen, was du damit machst. Aber wenn du im Script irgendwo eine Variable $x verwendest, kann der Benutzer diese nicht ändern.
__________________
Gruss
H2O
Mit Zitat antworten
  #22 (permalink)  
Alt 10-01-2008, 18:10
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Immer noch nicht verstanden?
Zitat:
meineseite.php?einzige_variable=Wert&noch_eine_vom_Angreifer=angriff
Und wenn der böse User rauskriegt, dass du in deinem Script eine Var login hast. Dann übergibt er einfach login (und glaube mir PHP wird das verarbeiten)
Erst wenn du ganz sauber programmierst, dann sind register_globals() on kein Problem mehr. Dh typensichere Vergleiche, JEDE Var initialisieren etc ppt...

Gruss

tobi
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #23 (permalink)  
Alt 10-01-2008, 18:18
der_milchmann
 Newbie
Links : Onlinestatus : der_milchmann ist offline
Registriert seit: Aug 2004
Beiträge: 51
der_milchmann ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ok - so langsam begreife ich!

Selbst wenn ich nur x als Variable verwende, die mir Werte übermittelt über die URL, kann es ja sein, dass ich "irgendwo" im Script die Variable z und y zusätzlich in ganz ganz anderem Zusammenhang verwende und ihr meintet jetzt, wenn das der Angreifer rausbekommt, wie auch immer - kann er meine Seite darüber steuern. Und zwar indem er einfach dieses anhängt....etwa so:

statt offiziell:

seite.php?x=einzige_variable

seite.php?x=einzige_Variable&y=variable_vom_angreifer&z=noch_eine_Angreifervariable

So hab ich das jetzt richtig kapiert?

Und per register_globals = off würde diese Variable y, die mir da der potentielle Angreifer eigenmächtig dranhängt, würde auf MEINE tatsächlich im Script verwendete Variable y keine Auswirkung haben.

Anders bei register_globals = on - wenn eingeschaltet, kann er MEINE eigene im Script verwendeten Variablen y oder z auch steuern.

Puhhh.

Ich bin leider nicht in der Informatikbranche tätig, ich hab mich aus Interessensgründen komplett aus diesem Bereich verabschiedet - leider auch zeitlich müssen, da ich in einem vollkommen anderen beruflichen Bereich tätig bin und leider hat mein Provider schlag auf schlag auf einmal umgestellt. Vorher hab ich mir wirklich selten Gedanken über sowas gemacht, war auch nicht nötig.

Jetzt wurde alles umgestellt - nur soviel dazu, also ich hab mich quasi das letzte Mal 2003 mit PHP beschäftigt.

Gut - muss ich halt jetzt wieder ran. Prinzipiell: Kennt einer ein Buch mit dem ich mich mal wieder reinarbeiten kann?

Ist ja erschreckend, dass sich so schnell alles weiterentwickelt, register_globals gabs damals auch schon, war aber garnicht verbreitet.
Mit Zitat antworten
  #24 (permalink)  
Alt 10-01-2008, 18:34
tontechniker
 PHP Senior
Links : Onlinestatus : tontechniker ist offline
Registriert seit: Jul 2005
Beiträge: 1.972
tontechniker ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Puhhh.
Geschaft!
Zitat:
Jetzt wurde alles umgestellt - nur soviel dazu, also ich hab mich quasi das letzte Mal 2003 mit PHP beschäftigt.
Am besten bei Kropff weiterlesen.
__________________
Die Regeln | rtfm | register_globals | strings | SQL-Injections | []
Mit Zitat antworten
  #25 (permalink)  
Alt 10-01-2008, 18:37
der_milchmann
 Newbie
Links : Onlinestatus : der_milchmann ist offline
Registriert seit: Aug 2004
Beiträge: 51
der_milchmann ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also danke an alle, ich war wirklich etwas genervt, wenn man sich fast 4 Jahre seinen eigenen Code nicht mehr ansieht und sieht, was sich geändert hat, naja, das kennt sicher jeder, der mal eine Zeit lang nicht programmiert hat....


also Danke nochmal!

Die Seite ist gebookmarked und wird sobald ich Zeit hab, gelesen, meine eigene hab ich sicherheitshalber erstmal deaktiviert, so wichtig ist sie auch nicht, dass sie im Netz bleiben muss, lieber mach ich das nochmal gescheit.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:48 Uhr.