Ich denke das man erkennt was ich machen möchte
Ich möchte die index.php aus dem Ordner $forum_auswahl inlcuden.
Dennis
Ich denke das man erkennt was ich machen möchte
Ich möchte die index.php aus dem Ordner $forum_auswahl inlcuden.
Dennis
--«Wir können alles schaffen, wir brauchen nur genug dressierte Affen» - infinite monkey theorem
Schön, und wieso macht du dann nen Punkt hinter den Var-Namen ($forum_auswahl)?
Wenn das Entfernen des Punktes nix bringt, haste die Variable falsch gesetzt.
frundliche Grüße, Rolus
In Strings mit einfachen Anführungszeichen werden keine Variablen ersetzt.Zitat von dennis_meckel
schreib mal
oder Edit:
Da stand gerade ein ziemlicher Shice. Ist mir noch was aus der alten Zwischenablage reingerutscht, dann hab' ich zu viel gelöscht. Egal, berichtigt.
Geändert von Lukas (25.01.2005 um 16:27 Uhr)
Stimmt immer noch nicht:
(Es soll ja die Datei im Ordner, der in $forum_auswahl gespeichert ist, geladen werden)
Jo, aber die Variable hat am ende noch ein / drinnZitat von getöteter_ork
THX
Dennis
--«Wir können alles schaffen, wir brauchen nur genug dressierte Affen» - infinite monkey theorem
Hmh... *kratzambart* Der Code sieht mir zu unsicher aus.
Wird die Variable $forum_auswahl per GET-Methode übergeben?
Dann sollte man prüfen was passiert wenn man der Variable den Wert "/etc/shadow?" bzw. "/etc/passwd?" gibt.
Wenn da was kommt: Nixgut.
Außerdem wäre das eine potentielle Schwachstelle gegenüber dem neuen PHP-Wurm.
Hmm... Bei ersterer gäbs ne Zugriffsverletzung und bei der anderen wüsste man höchstens den Usernamen, da das Passwort vermutlich in der /etc/shadow steht.Zitat von Chocwise
Außerdem kann ja auch der Safe Mode aktiv sein oder ein chroot.
Trotzdem hast du recht, auch wenn mir spontan auf einem reinen Serverrechner keine Datei einfällt, die von nobody gelesen werden darf und irgenteinen Inhalt hat, den man ausnutzen kann, wenn nur Port 80 vom masqueradenden Router/von der Firewall durchgelassenwerden.
--Was man mit CSS alles anstellen kann
Opera rulez! opera.com - opera-info.de - Opera- Skins, Banner, Einstellungen und vieles mehr
--
Windows 9x/ME
A thirty-two bit extension and GUI shell to a sixteen bit patch to an eight bit operating system originally coded for a four bit microprocessor and sold by a two-bit company that can't stand one bit of competition.
blub, die idee ist geschichte
Und zu den Problemen:
Nein, per POST.
Und wenn es per GET wäre, wäre (²) es auch nicht schlimm.
Ich bastel wie schon öfters gesagt kein Forum
Dennis
--«Wir können alles schaffen, wir brauchen nur genug dressierte Affen» - infinite monkey theorem
In der Übertragung per POST sehe ich auch keine wirkliche Sicherheit. Schließlich kann sich jedes Scriptkiddie ein kleines Formaular basteln, das die "passenden" Daten per POST an die Seite schickt.
Tja aber jeder normale Coder sätz einen Code rein wobei der Host abgefragt wird und nur von dem Host werden Scripte zugelassen !Zitat von masterquest
Das + POST ist soziemlich ein Guter Schütz aber Wayne es wird doch sowieso kein Forum
gebaut also wozu die aufregung wegen sicherheit etz. ?
--
Auch Refererabfrage ist kein Schutz.
Anleitung für Opera: hier den Button "Refresh display - reloads the page only from the cache." aus der Sektion "Various Other Buttons" auf eine Leiste ziehen. Auf die Seite mit dem gewünschten Referer gehen, CTRL-F3 drücken, die Seite nach seinem Gusto bearbeiten, speichern und danach mit dem Refresh-Button die Seite aus dem Cache laden.
Außerdem kann man den Referer auch ausschalten, und man sollte solche Leute nicht aussperren.
--Was man mit CSS alles anstellen kann
Opera rulez! opera.com - opera-info.de - Opera- Skins, Banner, Einstellungen und vieles mehr
--
Windows 9x/ME
A thirty-two bit extension and GUI shell to a sixteen bit patch to an eight bit operating system originally coded for a four bit microprocessor and sold by a two-bit company that can't stand one bit of competition.
Wenn man schnell ein Formular "umgestalten" will geht meins schneller.
Man kann zum Beispiel bei Easyguestbook. de die Freischaltung von Beiträgen umgeben, in dem man einfach den Wert von dem versteckten Inputfeld "moderation" von 1 auf 0 setzt (kranker Anbieter, nicht? Ist aber so.).
Das geht schneller, als die Seite zu speichern, sie zu editieren, seinen Proxymotron umzustellen, die Seite zu öffnen, abzusenden und dann zu löschen. (Nicht dass ich davon gebrauch machen würdeIch hab nur mal ein TestGB angelegt und es getestet)
Aber egal, ich schweif vom Thema ab §ot
--Was man mit CSS alles anstellen kann
Opera rulez! opera.com - opera-info.de - Opera- Skins, Banner, Einstellungen und vieles mehr
--
Windows 9x/ME
A thirty-two bit extension and GUI shell to a sixteen bit patch to an eight bit operating system originally coded for a four bit microprocessor and sold by a two-bit company that can't stand one bit of competition.
Ach ja?! Und du hast ein großes Maul! (Insider)Zitat von wrtlprnft
Es wird sicherlich noch einen Filter für'n Proxomitron geben der GET-Variablen als POST-Variablen ausgibt. Damit fiele der komplette Dateifummelmurks weg.
Wat wird dat hier BTW? Ein Skiptkiddy-Battle-Jam?![]()
Und 90% aller Forumulare im Internet würden nicht mehr gehen.Zitat von Chocwise
Was weiß ich? Wenigstens effizient will man ja "arbeiten"Zitat von Chocwise
![]()
--Was man mit CSS alles anstellen kann
Opera rulez! opera.com - opera-info.de - Opera- Skins, Banner, Einstellungen und vieles mehr
--
Windows 9x/ME
A thirty-two bit extension and GUI shell to a sixteen bit patch to an eight bit operating system originally coded for a four bit microprocessor and sold by a two-bit company that can't stand one bit of competition.
Rate mal, welcher Filter bei mir prinzipiell an ist.Zitat von Chocwise
BTW, es gibt keine Möglichkeit, den User sicher Daten an den Server übergeben zu lassen - wenn der User etwas senden soll, dann kann er alles mögliche senden, einen userseitigen Schutz gegen Fehleingaben gibt es nicht. Man sollte in seinem Skript grundsätzlich den gesendeten Daten mißtrauen, sprich: Maßnahmen ergreifen, um mögliche Fehleingaben unschädlich zu machen.
Bei dem oben genannten Codeschnipsel dürfte allerdings selbst die Eingabe von "/etc/shadow" nicht viel bringen, da kaum ein Server, der nicht gerade von einem volltrunkenen MCSE eingerichtet wurde, die Dokumentenwurzel bei / hat (und daß jemand sein System so umbaut, daß die Konfiguration in /var/www/html/etc ö.ä. liegt, kann man wohl kaum annehmen). Da alle Pfade relativ zur Dokumentenwurzel sind würde die Eingabe von "/etc/shadow" dazu führen, daß das Skript versucht, die Datei /var/www/html/etc/shadow/index.php zu öffnen.
Uhm... falsch?Zitat von Jesus_666
Wann hast du zuletzt PHP gescriptet?
Per Include lässt sich über den aboluten Systempfad, safe_mode auf off; Dateileserechte auf a+r bzw. entsprechend ge-chown-ed vorrausgesetzt, jede Datei auf dem System einbinden und somit ausgeben.
Sicherlich stimm ich dir zu, dass man eine möglichst entstandardisierte Systemordnerstruktur auf einem Serversystem etablieren sollte und natürlich auch möglichst wenig Dateirechte zugestehen, sowie safe_mode, chroot und einen vHost als eigenen User laufen lassen, nur ist deine Aussage, das Dateien nicht über den vollen Systempfad einbindbar sind, sondern IMMMER vom relativen Pfad ausgegangen wird, falsch.![]()
Ahhstimmt, habe da verkehrtrum gedacht. Du hast recht.
Wobei ich dem safe_mode nur als .htaccess-Direktive zustimme; für alles außerhalb des Docroots (sprich: das CLI) ist safe_mode eher störend.
Oder direkt im vHost definiert.Zitat von Jesus_666
Wirkt sich ebenfalls nicht auf die CL-Fähigkeit PHP's aus.
BZW: Maa~hn heut hab ich aber echt mal genug klug geschissen.![]()
So war des mim Avatar (richtig geschrieben nahc 2 versuchen xD) aber net gemint hierZitat von Chocwise
Dennis
--«Wir können alles schaffen, wir brauchen nur genug dressierte Affen» - infinite monkey theorem