Schrift
[thread]624[/thread]

CGI Sicherheit: Vermeidung gefährlicher Inhalte (Seite 9)

Leser: 2


<< |< 1 ... 6 7 8 9 10 11 12 ... 17 >| >> 166 Einträge, 17 Seiten
esskar
 2005-12-17 15:05
#6198 #6198
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
das problem ist aber, dass du nicht "zuhörst" und immer wieder anfängst von sachen, die man schon als nicht schädlich abgelegt hat, wieder für schädlich deklarierst. Sowas ist echt müßig. Und persönlich angegriffen hab ich dich in keinster weise
Antworten mit Zitat
pq
 2005-12-17 15:31
#6199 #6199
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=Bauhaus,17.12.2005, 13:21]Das 'Wort' allein ist nicht gefährlich.
Das 'Wort' in Kombination ist gefährlich (so sagt man jedenfalls).
Aber ich will hier nicht weiter Hacker-Methoden publizieren; das könnte einen labil veranlagten Leser u.U. zu unüberlegten Handlungen hinreißen.[/quote]
oha, da machst du uns jetzt aber angst.
ich werde nie mehr ruhigen gewissens ein print schreiben.

pass übrigens auf, wenn dir ne schwarze katze von links übern weg läuft.
das bringt unglück (so sagt man jedenfalls).
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Antworten mit Zitat
Gast Gast
 2005-12-17 15:42
#6200 #6200
[quote=esskar,17.12.2005, 14:05]das problem ist aber, dass du nicht "zuhörst" und immer wieder anfängst von sachen, die man schon als nicht schädlich abgelegt hat, wieder für schädlich deklarierst. Sowas ist echt müßig. Und persönlich angegriffen hab ich dich in keinster weise[/quote]
Nein, dass Problem ist:
1. du hast selbst geschrieben dass ich nicht alles glauben soll was im Netz geschrieben steht - deine Antworten stehen aber im Netz geschrieben.

2. du hast Sachen als 'nicht schädlich' abgelegt (ohne eine Begründung zu liefern) und ich soll dem nun "zuhörend" und glaubend folgen obwohl ich mich wirklich intensiv mit dem Thema beschäftigt, und dabei anderslautende Artikel gelesen habe.

CGI-Sicherheit ist aber mit Sicherheit keine Glaubensfrage.
[Sorry - das war ein (sogar doppeltes) Wortspiel].
Antworten mit Zitat
Gast Gast
 2005-12-17 15:44
#6201 #6201
[quote=pq,17.12.2005, 14:31][quote=Bauhaus,17.12.2005, 13:21]Das 'Wort' allein ist nicht gefährlich.
Das 'Wort' in Kombination ist gefährlich (so sagt man jedenfalls).
Aber ich will hier nicht weiter Hacker-Methoden publizieren; das könnte einen labil veranlagten Leser u.U. zu unüberlegten Handlungen hinreißen.[/quote]
oha, da machst du uns jetzt aber angst.
ich werde nie mehr ruhigen gewissens ein print schreiben.

pass übrigens auf, wenn dir ne schwarze katze von links übern weg läuft.
das bringt unglück (so sagt man jedenfalls).[/quote]
Endlich mal ein sachdienlicher Hinweis ;)
Antworten mit Zitat
esskar
 2005-12-17 16:17
#6202 #6202
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=Bauhaus,16.12.2005, 16:17]
Code: (dl )
1
2
my $the_file = "FileName.exe\0" 
open FH, "> $the_file.txt" or die $!;
[/quote]
Klar. dies würde eine Datei FileName.exe auf dem system anlegen. Zumindest auf einem Windows system (keine ahnung wie linux das \0 handelt.

Aber, ja und. Nur weil die Datei da liegt heißt es noch lange nicht, dass sie auch ausgeführt wird, oder? Und wer soll sie denn ausführen ?
Meistens ist es auch so, dass webserver auf einer linux-kiste laufen. da bringen die dateiendungen einfach nix. => außerdem müsste man dann auch noch executeable einschleusen, dass für die richtige linux version compiliert wurde.
Antworten mit Zitat
Gast Gast
 2005-12-17 17:36
#6203 #6203
[quote=esskar,17.12.2005, 15:17][quote=Bauhaus,16.12.2005, 16:17]
Code: (dl )
1
2
my $the_file = "FileName.exe\0" 
open FH, "> $the_file.txt" or die $!;
[/quote]
Klar. dies würde eine Datei FileName.exe auf dem system anlegen. Zumindest auf einem Windows system (keine ahnung wie linux das \0 handelt.

Aber, ja und. Nur weil die Datei da liegt heißt es noch lange nicht, dass sie auch ausgeführt wird, oder? Und wer soll sie denn ausführen ?
Meistens ist es auch so, dass webserver auf einer linux-kiste laufen. da bringen die dateiendungen einfach nix. => außerdem müsste man dann auch noch executeable einschleusen, dass für die richtige linux version compiliert wurde.[/quote]
Vergiss das mit der Extension mal ...
Das Ding funktioniert auch (und gerade) unter Linux (hat mir aktuell , vor einer Stunde, jemand vorgeführt).
Allerdings war der Mensch nicht so nett mir zu sagen warum das funktioniert hat - Arggghhh

Edit:
hab vergessen zu erwähnen das er so nett war, nur die von mir vorgegebene Datei auf dem Server zu löschen.
Ist das Leben nicht schön?\n\n

<!--EDIT|Bauhaus|1134834671-->
Antworten mit Zitat
ptk
 2005-12-17 17:56
#6204 #6204
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=esskar,17.12.2005, 15:17]keine ahnung wie linux das \0 handelt.[/quote]
\0 ist das einzige Zeichen, dass in Unix-Dateinamen nicht vorkommen kann. Perl (oder das Betriebssystem) schneidet einfach alles nach \0 ab.

@bauhaus: Vielleicht solltest du einen Sicherheitsprofi anheuern? Es sieht so aus, als ob wir hier im Forum nicht weiter kommen...
Antworten mit Zitat
esskar
 2005-12-17 18:48
#6205 #6205
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=ptk,17.12.2005, 16:56]\0 ist das einzige Zeichen, dass in Unix-Dateinamen nicht vorkommen kann. Perl (oder das Betriebssystem) schneidet einfach alles nach \0 ab.[/quote]
ja, das macht windows auch.

@bauhaus: dann sag mir mal, wie du ihm diese Datei untergejubbelt haben willst?
Antworten mit Zitat
pq
 2005-12-17 21:22
#6206 #6206
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
[quote=Bauhaus,17.12.2005, 14:42]2. du hast Sachen als 'nicht schädlich' abgelegt (ohne eine Begründung zu liefern)[/quote]
begründe doch mal, warum eine schwarze katze von links kein unglück bringt.

im übrigen solltest du selbst mal langsam konkret werden.
irgendwas (system...) in eine datei schreiben ist nicht gefährlich.
diese datei nach "file.exe" zu schreiben ist auch ungefährlich.
diese datei ausführbar zu machen ist auch noch ungefährlich, so lange
nur du sie ausführen kannst.
wenn du sie selbst ausführst, oder für andere ausführbar machst, dann
würde ich sagen, selbst schuld.

ich sagte schonmal in diesem thread, du musst wissen, wo du userinput
benutzt und was du damit machst.
wenn du weißt, du schreibst eine datei, die du später ausführst, dann
sollte es sonnenklar sein, dass du das, was du reinschreibst, nicht dem zufall
überläßt.\n\n

<!--EDIT|pq|1134847403-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Antworten mit Zitat
Dubu
 2005-12-17 23:32
#6207 #6207
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
@ptk: Nullbyte und Slash (/) sind nicht erlaubt in Unix-Dateinamen. Unter DOS/Windows ist die Negativliste deutlich laenger.

Das Problem mit dem "Poison Null Byte" hat nicht direkt etwas mit Unix oder Windows zu tun, sondern mit C, und beide Betriebssysteme sind in C geschrieben. Perl-Strings koennen alle Zeichen enthalten, C-Strings dagegen sind nullterminiert. Sobald ein Perl-String als C-String an eine OS-Routine oder eine C-Funktion uebergeben wird, faellt alles nach dem Nullbyte weg.

Es geht auch nicht darum, ob jetzt eine Datei mit der Endung ".exe" erzeugt werden kann, sondern dass hier nicht der Programmierer das Dateiende festlegt, sondern der Angreifer! Auch wenn Unix/Linux fuer die Ausfuehrbarkeit nicht auf Dateiendungen achtet - der Apache z.B. tut es. Wenn der faule CGI-Programmierer also denkt, dass sein CGI-Skript ruhig irgendwelche Daten im selben Verzeichnis ablegen darf, dann jubelt ihm der Angreifer vielleicht so eine Datei mit Endung ".cgi" und einem Skript als Inhalt unter.

Zusammen mit einem Directory-Traversal-Angriff (Zeichenfolgen der Form "../../../" in einem uebergebenen Dateipfad) koennte man auch an beliebige Dateien im Dateisystem kommen. Das Problem ist natuerlich auch nicht neu, sondern wurde u.a. schon vor sechs Jahren im Phrack Magazine beschrieben. Der Artikel ist auch sonst immer noch lesenswert.

Ansonsten schliesse ich mich den anderen an: Bauhaus scheint bisher nur recht vage Vorstellungen davon zu haben, vor welcher Art von Angriffen er sich jetzt schuetzen moechte. Es gibt hunderte von Angriffsarten und mindestens dutzende von "Best Pratices", wie man so etwas verhindert, und alle paar Monate gibt es auf beiden Seiten neues. Die Literaturtipps von esskar sind sicherlich ein guter Anfang. Und der schon mehrfach gefallene Ratschlag "traue grundsaetzlich keinen Benutzereingaben!"
Antworten mit Zitat
<< |< 1 ... 6 7 8 9 10 11 12 ... 17 >| >> 166 Einträge, 17 Seiten



View all threads created 2005-12-12 17:10.