Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Webmaster-Security Fragen zur richtigen Serverkonfiguration oder Absicherung dynamischer Scripte gehören hier hinein.

Response Header

Diskussion: Response Header im Forum Webmaster-Security, in der Kategorie Security Area; Anzeige Hi, ich habe mal folgende Frage an Euch: Seit ein paar Tagen wird überall der reddit Header veröffentlicht: Code: ...

Antwort
Alt 23.05.10, 14:04   #1 (permalink)
 
Registriert seit: 23.05.10
Flashkobb Leistung: Facit NTK
Likes: 0
Question Response Header

Anzeige

Hi,

ich habe mal folgende Frage an Euch:

Seit ein paar Tagen wird überall der reddit Header veröffentlicht:

Code:
tycho@alcarin ~ $ curl -I http://www.reddit.com/
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Set-Cookie:  reddit_first=%7B%22organic_pos%22%3A%201%2C%20%22firsttime%22%3A%20%22first%22%7D;  Domain=reddit.com; expires=Thu, 31 Dec 2037 23:59:59 GMT; Path=/
Server: '; DROP TABLE servertypes; --
Date: Thu, 06 May 2010 23:09:17 GMT
Connection: keep-alive
Hierbei sollen Leute, die mit CURL oder WGet-S die Seite aufrufen Ihr blaues Wunder erleben.

Was bedeutet das?

Also Curl und WGet werden doch dafür genutzt, um komplette Seiten herunterzuladen?!

DROP TABLE ist der SQL Befehl für das Löschen einer Datenbanktabelle.

Was ist denn die servertypes Tabelle? Gehört die zu CURL?

Wird diese Tabelle dann gelöscht, wenn jemand per CURL die Seite aufruft?

Welche Auswirkungen hat das für ihn?

Muss er sich dann curl neu installieren?

Ich finde das höchst interessant, aber möchte gerne verstehen, warum reddit diesen Header gesetzt hat und was er bewirkt.

Wäre es denn dann nicht eigentlich für alle Webseitenbetreiber sinnvoll, einen solchen Header zu setzen?
Flashkobb ist offline   Mit Zitat antworten
Alt 23.05.10, 14:58   #2 (permalink)
 
Benutzerbild von Dresko
 
Registriert seit: 30.01.10
Dresko Leistung: 8086Dresko Leistung: 8086
Likes: 1
Standard

Diesen Header bekommt scheinbar jeder ausgeliefert.
Wobei normale Browser dieses Headerfeld ignorieren sollten, da das Semikolon am Anfang einen ungültigen Wert darstellt.

Offensichtlich versucht sich reddit.com damit gegen SQL-Injections zu wehren. Diese werden meist über Kommandozeilen-Scripte oder -Tools (u.a. mit curl) ausgeführt und unter bestimmten Bedingungen könnte sich so der Angreifer selbst die Tabelle 'servertypes' (falls vorhanden) beim Ausführen des Angriffs löschen.

In meinen Augen nur eine kleine Spielerei und nichts worüber man sich ernsthaft Gedanken machen müsste.

Und nein, wenn du ganz normal die Seite mit curl oder wget anfrägst wird dir nichts passieren, genausowenig wie mit einem Browser.
__________________
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
- Rick Cook -
Dresko ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 23.05.10, 19:48   #3 (permalink)
Themenstarter
 
Registriert seit: 23.05.10
Flashkobb Leistung: Facit NTK
Likes: 0
Standard

Hi Dresko,

erstmal danke für Deine Antwort.

Soweit habe ich das verstanden, aber was hat ein Response Header mit einem SQL-Befehl zu tun? Wieso wird der SQL ausgeführt?

Die Tabelle servertypes muss ja eine ganz spezielle Bedeutung haben, da reddit versucht, diese zu löschen.

Es wird keine MySql Tabelle sein. Ich vermute, daß dies irgendwie mit curl zusammenhängt, da der Rsponse direkt auf CURL Aufrufe reagiert.
Flashkobb ist offline   Mit Zitat antworten
Alt 23.05.10, 23:15   #4 (permalink)
Member of Honour
 
Benutzerbild von beavisbee
 
Registriert seit: 22.02.07
beavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium IIIbeavisbee Leistung: Pentium III
beavisbee eine Nachricht über ICQ schicken
Likes: 77
Standard

also wenn man normal mit wget oder curl 'ne Seite zieht, sollte dieser Header wirklich NICHTS bewirken.

Und wieso sollten das deiner Meinung nach (wenn es was bringen sollte, was es nicht tut) alle so machen?
Es gibt viele Fälle, in denen Zugriff über wget oder curl sogar erwünscht ist.
(z.B. Seiten, bei denen Mirror erwünscht sind oder z.B. Web-Services - wo also andere Scripte z.B. über REST irgendwelche Daten abfragen)

Dieser Header ist an sich nichts weiter als eine SQL-Injection und soll anscheinend irgendwelche Bots ärgern, welche Domain und zugehörigen Server-Infos in 'ner Datenbank abspeichern, um dann z.B. anhand des Server-Strings automatisch mit irgendwelchen Exploits auf die Server zu schießen...
beavisbee ist gerade online   Mit Zitat antworten
Alt 23.05.10, 23:45   #5 (permalink)
Themenstarter
 
Registriert seit: 23.05.10
Flashkobb Leistung: Facit NTK
Likes: 0
Standard

Hi beavisbee,

die Erklärung habe ich jetzt verstanden...

Sorry, wenn meine Fragen ein wenig unbeholfen sind, aber ich beschäftige mich noch nicht lange mit dem Thema IT-Sicherheit, XSS und SQL Injections.

Daß man über den Response Header überhaupt etwas in der Richtung machen kann, wäre mir nie in den Sinn gekommen.

Ich werde mich doch mal ein wenig mehr mit curl und/oder wget auseinandersetzen.

Ich will einfach mal wissen, was damit alles gemacht werden kann... Wenn Du schon exploits ansprichst... dann ist das sicherlich ein heikles Thema.

Zitat:
Es gibt viele Fälle, in denen Zugriff über wget oder curl sogar erwünscht ist.
(z.B. Seiten, bei denen Mirror erwünscht sind oder z.B. Web-Services - wo also andere Scripte z.B. über REST irgendwelche Daten abfragen)
Ich sehe schon, daß ich noch viele viele Sachen lernen muss.

Vielen Dank an Euch
Flashkobb ist offline   Mit Zitat antworten
Alt 24.05.10, 19:17   #6 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Im Grunde hast du aber schon recht, eigentlich ist das ziemlich schwachsinnig. So einen "Schutz" kann man einbauen, wenn man sonst wirklich mal überhaupt gar nichts zutun hat.
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist gerade online   Mit Zitat antworten
Alt 25.05.10, 14:27   #7 (permalink)
 
Benutzerbild von Dresko
 
Registriert seit: 30.01.10
Dresko Leistung: 8086Dresko Leistung: 8086
Likes: 1
Standard

Nunja, man sollte sich mal folgende Dinge überlegen:

1.) Die meisten SQL-Injections sind skriptgesteuert und voll- oder zumindest teilweise automatisiert.
2.) Diese Skripte sind in der Regel einfach "zusammengehackt" sodass sie irgendwie funktionieren. Strings werden da selten überprüft.
3.) Sehr wahrscheinlich wird das Server-Feld ausgewertet und irgendwie verarbeitet.

Ich finde es also garnicht mal so unwahrscheinlich, dass bei einem automatisiertem, großflächigen Angriff die Serverversionen, IPs oder sonstige Infos über den aktuellen Server in eine Tabelle namens "servertype" eingetragen werden. Wenn diese ausgelesene Variable mit dem Query-String verkettet oder eingesetzt wird, könnte das für den ein oder anderen bös' ins Auge gehen.

Schwachsinnig finde ich es daher nicht unbedingt, nur übertrieben und mehr eine techn. Spielerei.
__________________
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
- Rick Cook -
Dresko ist offline   Mit Zitat antworten
Alt 25.05.10, 18:23   #8 (permalink)
Senior Member
 
Benutzerbild von Chakky
 
Registriert seit: 28.10.03
Chakky Leistung: 8086
Chakky eine Nachricht über ICQ schicken
Likes: 110
Standard

erinner mich an diverse sql injectionen über die "user agent" variabel bei statistikscripten
__________________
cu
Chakky

we are dreaming in digital
we are living in realtime
we are thinking in binary
we are talking in IP
welcome to our world
Chakky ist offline   Mit Zitat antworten
Alt 26.05.10, 20:32   #9 (permalink)
 
Benutzerbild von p0ven
 
Registriert seit: 01.10.06
p0ven Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Zitat von Dresko Beitrag anzeigen
2.) Diese Skripte sind in der Regel einfach "zusammengehackt" sodass sie irgendwie funktionieren. Strings werden da selten überprüft.
3.) Sehr wahrscheinlich wird das Server-Feld ausgewertet und irgendwie verarbeitet.
Ich hoffe doch mal nicht, dass jemand die von Aussen kommenden Headers ausführt. Das wäre wirklich peinlich.

Eventuell hat eines der bekannten Frameworks das mal gemacht und Reddit versucht damit jetzt Scriptkiddies zu verarschen, die sich irgendne alte Version zusammengegoogelt haben. :-)

Geändert von p0ven (28.05.10 um 09:18 Uhr)
p0ven ist offline   Mit Zitat antworten
Alt 27.05.10, 21:16   #10 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Das könnte ich mir sogar vorstellen
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist gerade online   Mit Zitat antworten
Antwort

Stichworte
curl, reddit, response header, wget
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Security Area » Webmaster-Security » Response Header
Themen-Optionen
Ansicht

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 sind aus
Pingbacks sind aus
Refbacks sind aus



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61