Quantcast
Channel: YouTube – Seite 35 – mynethome.de

WP XSS Wurm doch nicht soo freundlich?

$
0
0

Achtung, liebe Leser, es wird technisch :)

Vorgestern wurde der erste WordPress Wurm veröffentlicht, der eine Cross Site Scripting (XSS) – Lücke ausnutzt. Zum Glück ist er prinzipiell freundlich und will WordPress-Nutzern dabei helfen, diese direkt zu schließen. Dieses Ansinnen ist sehr ehrenwert von dem Autor – leider erfüllt der Wurm es anscheinend nicht.

Während ich versucht habe, dieses gerade auf WordPress migrierte Blog zu schützen, sind mir 2 Dinge aufgefallen:

  1. Das Patchen funktioniert nur, wenn der Webserver-Prozess auch Schreibrechte auf die zu patchenden Dateien hat. ist das nicht der Fall, wird der „Wizard“ dennoch durchlaufen und Erfolg gemeldet – obwohl die Lücke nicht geschlossen ist. Im Prinzip gibt es durch die fehlende Schreibberechtigung auch die Lücke nicht in der beschriebenen Form, dennoch wäre es schöner, den Nutzer zu informieren.
  2. Der Patch patcht nicht nur da wo er soll. Ein Diff der Worpressdateien – nach dem Setzen der Berechtigungen und einem Durchlauf des Wurm-Patch-Wizards – ergibt:
    Index: upload.php
    ===================================================================
    --- upload.php  (revision 15)
    +++ upload.php  (working copy)
    @@ -11,6 +11,12 @@
     // IDs should be integers
     $ID = (int) $ID;
     $post_id = (int) $post_id;
    +/*
    +Security Patch added by the Secure WordPress Worm
    +by Benjamin Flesch http://mybeni.rootzilla.de/mybeNi/
    +*/
    +$style = preg_replace('/[^A-Za-z]/', '', $style);
    +/* end of patch */ // Require an ID for the edit screen
     if ( $action == 'edit' && !$ID )
    Index: link-import.php
    ===================================================================
    --- link-import.php     (revision 15)
    +++ link-import.php     (working copy)
    @@ -73,7 +73,13 @@
    -               $cat_id = $_POST['cat_id'];
    +
    +/*
    +Security Patch added by the Secure WordPress Worm
    +by Benjamin Flesch http://mybeni.rootzilla.de/mybeNi/
    +*/
    +$cat_id = preg_replace("/[^0-9]/","",$_POST['cat_id']);
    +/* end of patch */
                    if ( $cat_id == '' || $cat_id == 0 )
                            $cat_id  = 1;
    @@ -102,7 +108,7 @@
                            include_once('link-parse-opml.php');
    
                            $link_count = count($names);
    -                       for ( $i = 0; $i < $link_count; $i++ ) {
    +                       for ( $i = 0; $i < $link_count; $i   ) {
                                    if ('Last' == substr($titles[$i], 0, 4))
                                            $titles[$i] = '';
                                    if ( 'http' == substr($titles[$i], 0, 4) )
    Index: options.php
    ===================================================================
    --- options.php (revision 15)
    +++ options.php (working copy)
    @@ -88,6 +88,14 @@
    check_admin_referer('update-options');
    +/*
    +Security Patch added by the Secure WordPress Worm
    +by Benjamin Flesch http://mybeni.rootzilla.de/mybeNi/
    +*/
    +if ( preg_match("/['\"<>]/", $_POST['page_options']) )
    +      wp_die(__('Cheatin, uh?'));
    +/* end of patch */
    +
            if ( !$_POST['page_options'] ) {
                    foreach ( (array) $_POST as $key => $value) {
                            if ( !in_array($key, array('_wpnonce', '_wp_http_referer
    ')) )
    @@ -108,7 +116,7 @@
    $referred = remove_query_arg('updated' , wp_get_referer());
            $goback = add_query_arg('updated', 'true', wp_get_referer());
    -       $goback = preg_replace('|[^a-z0-9-~+_.?#=&;,/:]|i', '', $goback);
    +       $goback = preg_replace('|[^a-z0-9-~ _.?#=&;,/:]|i', '', $goback);
            wp_redirect($goback);
         break;

    Wie man sehen kann, gehen in der Datei link-import.php und options.php +-Zeichen verloren.
    Entweder, es liegt an meinem System, es ist gewollt und nicht markiert, oder es ist noch keinem anderen aufgefallen. Ich hoffe, auf die erste Variante, denn die letzten beiden wären meinem Gefühl nach nicht sehr erfreulich.

Was lernen wir daraus? Auch gutmütigen Würmern sollte man nicht blind vertrauen :) (und Berechtigungen auf dem Dateisystem sind dafür da, restriktiv zu sein, und böswillige Schreib-Aktionen im Kern zu ersticken ;-) )

Mal sehen, vielleicht bekomme ich ja Feedback von Beni, dem ich trotz des kleinen Problems sehr herzlich dafür Danken möchte, mir den ersten Wurm zu zeigen, der in seiner Intention gutmütig ist :)

Update / Fazit

Ich habe noch ein paar weitere Testläufe durchgeführt, so dass ich den Wurm jetzt auf verschiedenen Server Systemen

  • Ubuntu, 64 bit, Apache 2.0, PHP 5.1.2
  • Debian, 32 bit, Apache 2.0, PHP 5.2.0
  • Windows XP, XAMMP, Apache 2.0, PHP 5.2.2

und mit verschiedenen Browsern (Firefox, Internet Explorer, Safari) ausprobiert habe. Im Internet Explorer (Version 6.0.29) hagelte es Javascriptfehler – deswegen ist der aussen vor.

Alle weiteren Tests haben aber meine Behauptung von oben, das der Wurm nicht nur die angegbenen Codestellen verändert, bestätigt. Es gehen, wie oben im Diff dargestellt, an 2 Stellen +-Zeichen verloren, so dass aus der for Schleife eine Endlosschleife wird und der reguläre Ausdruck nicht mehr das macht, was er soll.
Es ist also dringend davon abzuraten, dem Wurm zu vertrauen. Patcht lieber von Hand, oder kontrolliert zumindest, was der Wurm verändert.

Mich erschreckt wirklich, wieviele dem Wurm vertrauen und nicht genau nachsehen, was er verändert. Wäre beNi der Wolf im Schafspelz gewesen, gäbe es dort draussen nun unzählige kompromittierte WordPress-Installationen.

Vielleicht nehm ich mir später noch den Sourcecode des Wurms zur Brust, um zu sehen, warum und wo die +-Zeichen verloren gehen.

Update 2

beNi hat den Fehler gefunden und behoben. :-)


Microwave Cake

$
0
0

Soeben habe ich den ersten Microwellenkuchen meines Lebens gebacken :D

Wie auf der kleinen Collage zu sehen, gibt man einen aufwendig zubereiteten Teig (Wasser mit Pulver verrühren … ) in eine Schüssel, verteilt liebevoll Karamelsauce darüber und läßt das ganze 1,5 Minuten in der Microwelle garen backen.

Lecker schokoladig wars, wenn auch ein wenig trocken. Aber nett im Finish :P

Ein wenig Vanilleeis dazu hätt‘ bestimmt nicht geschadet ;-)

Übrigens…

Eureka Tower – die Bilder

Wie bereits geschrieben war ich letzte Woche auf dem Observation Deck des Eureka Tower, dem höchsten Geäude in Melbourne. Die beeindruckende Aussicht habe ich natürlich auch versucht auf Bildern festzuhalten, die ihr ab jetzt auch online sehen könnt, viel Spaß beim Gucken ;-)

Gehalt ?

$
0
0

Da ich im Herbst in das vorraussichtlich letzte Semester meines Bachelor-Studiums starte, kommt in Gesprächen mit Freunden, Bekannten und Studienkollegen immer wieder die Frage auf, was man denn so verdienen kann und was man auf die Frage nach den Gehaltsvorstellungen im Bewerbungsgespräch denn so antworten kann.

Natürlich kennen wir alle den c’t Gehaltsspiegel für IT Berufe, der einmal im Jahr auf Basis einer verlagseigenen Umfrage veröffentlich wird und schonmal eine gute Orientierung bieten kann. Oder berufsstart.de, wo man sich einen recht allgemeinen Überblick verschaffen kann, aber ist das schon alles?

Es scheint darüber hinaus nur wenig kostenfreie Informationsquellen zu geben. Die meisten Portale möchten für die gesammelten Gehaltsinformationen bares sehen – und häufig ist man hier gezwungen die Katze im Sack zu kaufen.

Eben bin ich jedoch über 2 Portale gestolpert, die interessant aussehen und – auch das ist nich immer gegeben – auch den Euroraum mit in Betracht ziehen.

salaryscout.com ist eine Plattform im Web2.0 Stil, die versucht durch die freiwilligen, anonymen und untereinander bewerteten Angaben der Benutzer realistische und relativ konkrete Profile zur verfügung zu stellen. Der Ansatz gefaellt mir, besonders weil man hier nirgens gegen eine “halt Du musst erst zahlen!” Mauer rennt. Leider sind noch nicht sehr viele Jobprofile vorhanden. Also auf, eingeben ;-)

payscale.com moechte zwar auch fuer detailliere Reports Geld sehen, bietet aber zumindest als kostenlose Orientierung nette Graphen mit der Gehaltsverteilung. Ebenfalls mit Daten für den deutschen Arbeitsmarkt. Ein nettes Gimmik auf payscale.com ist auch GigZig, wo man anhand seiner Job-Bezeichnung sehen kann, wohin die Karriereleiter einen bringen könnte. Leider wiederrum auf den amerikanischen Markt fokussiert … und so Bezeichnung sind gerade in der IT Branche oft Schall und Rauch.

Generell gesagt ist das liebe Geld ja nicht alles, das Gesamtbild des Arbeitsgebers muss passen. Und da spielen die “weichen Faktoren” natuerlich eine viel groessere Rolle – Arbeitszeiten, Atmosphäre, usw. – doch leider sind diese nicht so einfach greif- und vergleichbar.

Wie gehts euch, wo holt ihr euch eure Infos?

Hausarbeit schreiben?

$
0
0

Neben meinem Praktikum muss ich bis zum nächsten Semester auch eine „praxisbegleitende Studienarbeit“ anfertigen. Da das Praktikum sich leider langsam dem Ende neigt, habe ich natürlich auch schon begonnen, die Arbeit zu verfassen. Allerdings mit einiger Unsicherheit, ob meine Herangehensweise denn die Richtige ist.

Der Hinweis im Artikel „Wissenschaftliches Arbeiten – so geht es auch“ im Männerblog auf VISION der TU Harburg kommt also sehr gelegen.
VISION ist eine durch nettes Layout und Animationen aufgepeppte Einführung in das wissenschaftliche Arbeiten. Meine Unterlagen aus der passenden Vorlesung habe ich gerade nicht zur Hand und so bin ich sehr froh um diese ansprechende Möglichkeit, meine Erinnerungen aufzufrischen ;)

Für die Phase der Materialsammlung bietet sich übrigens auch direkt das Tutorial zum Thema Informationskompetenz, DISCUS, an.

Mit soviel Hilfe kann ja hoffentlich nichts mehr schief gehen :)

Sydney

$
0
0

Seit ein paar Stunden bin ich aus Sydney zurück. Ein geniales Wochenende mit super Wetter, ein wenig Glück beim Leute & Locations kennenlernen und vielen schönen Eindrücken liegt hinter mir.

Was die Fotos angeht, hab ich kein gutes Gefühl, ich glaube, mein „Fotosinn“ war in Melbourne geblieben. Aber mal sehen, was die Sichtung so bringt…vielleicht sind ja doch ein paar fuer die Galerie dabei.

Apropo Galerie: Irgendwer hat sich mit dem Benutzernamen tnl bei foto.mynethome.de angemeldet. Wenn derjenige immernoch auf Freischaltung wartet, bitte kurze Info an mich, denn aus dem Kürzel und der spam-catch-mailadresse hab ich’s nicht erkennen koennen.

Oh, mir fällt gerade durch den Hinweis in einer eMail auf, dass es ein weiteres Ereignis gibt, was ich diesen Sommer verpassen werde: Das Siegburger Stadtfest 2007 – wundert euch also nicht, wenn man mich nicht dort findet, ich vergnüge mich auf der anderen Seite der Erdkugel ;)

So genug der Belanglosigkeiten, will ja nicht langeweilen :) Vielleicht ist ja wenigstens das Foto den Beitrag wert …

Die schöne Welt der Überwachung

$
0
0

Komm gerade per Mail zu mir und hat mir, obwohl ich es bisher noch nicht komplett gucken konnte, wiedermal einen Schauer über den Rücken gejagt:

Schöne Welt der Überwachung auf SpOn – ein wirklich gut gemachter interaktiver Film zur aktuellen Thematik der Überwachung, wie wir immer mehr zum gläsernen Bürger werden und warum das garnicht gut ist.

Lohnt sich, anzusehen. Und danach hoffentlich nicht nur murmel ‚ja, stimmt wohl irgend wie‘ und mit den Schultern zucken…
Man kann auch auf stehen und rausgehen, zum Beispiel zur Demo Freiheit statt Angst am 22.09. in Berlin.

Das Bild stammt aus einem früheren Blogeintrag von mir: Big Brother lässt Grüßen

Mailserver Statistik: AwStats für Postfix

$
0
0

Achtung, jetzt wirds mal wieder technisch :) Es geht um die Auswertung der Protokolldateien eines E-Mail-Servers.

Möchte man im Auge behalten, was der Mailserver den lieben langen Tag so macht, bietet sich der Einsatz eines Statistiktools an. AwStats ist ein solches, das neben Webserver Logs auch eine Reihe von Mailserverlogs auswerten und grafisch ansprechend darstellen kann.

Leider gibt es ein kleines Problem beim Auswerten der Logfiles von Postfix unter Ubuntu beim Einsatz von Amavis (Mail-Virus-Scanner), da das zu AwStats mitgelieferte Perlskript, das die Logdatei aufbereitet, nicht ganz auf dem aktuellen Stand ist. Es werden nur noch die Meldungen der fehlgeschlagenen oder abgelehnten Mails aufgelistet.

Da ich kein Perlfan bin, war ich ganz froh, bei netzpiraten einen Beitrag zum Thema mit einem Ruby-Skript zu finden, dass genau diese Aufgabe, die Logdatei für AwStats aufzubereiten, für mich übernehmen kann.

Ich habe es noch um 2 Dinge erweitert:

  • – die size Angabe , also die Größe der Mails, wird nun mit ausgewertet und ausgegeben
  • – from/to wird richtig geparsed und mit ausgegeben

Konfiguration

Eingebunden wird das Skript wie auch zuvor das Perlskript, bei mir schauts dann so aus:

LogFile=“/path/to/maillogconvert.rb regulären Ausdrücken ist dies mit Ruby ja kein Hexenwerk :)

Hier also das Skript zum Download: maillogconvert.rb

Ruby ?!
Uhm, ja, richtig, ich hab mich schon im letzten Semester begeistern lassen, mir die Sprache mal anzusehen, besonders durch die verschiedenen Ruby On Rails Demos.

Die beste Seite zum Einstieg, die mir dabei begegnet ist, ist das interaktive Tutorial Try Ruby – hat einfach Spaß gemacht damit anzufangen, Ruby kennenzulernen :) Wenn man damit durch ist, kann man sich Why’s (Poignant) Guide to Ruby vornehmen oder einfach in der Doku wühlen.

Klar, prinzipiell nehmen sich die aktuellen Skriptsprachen wie PHP, Python oder eben Ruby nicht viel, aber Ruby ist erfrischend einfach, hat eine Syntax, die Spass macht und man kommt schnell zum Ergebnis. Wahrscheinlich ist Ruby auch für Einsteiger sehr gut geeignet. Ich möchte empfehlen, es einfach mal auszuprobieren :)

Camping in Wilsons Promontory National Park

$
0
0

Das letzte Wochenende hab‘ ich mit einer 2 Tages Wander- & Camping-Tour im Wilson’s Promontery National Park verbracht. Organisiert hat das ganze mein Areitskollege Steve und so waren wir eine lustige, 7-Kopf starke Gruppe.
Samstags sind wir ca. 10km durch schöne Natur und einen sich langsam erholenden Wald (s.u.) zu einem der Plätze, an denen Wildcamping erlaubt ist, gewandert. Normalerweise dürfen dort wohl 25 Leute übernachten, da aber Winter ist, waren wir alleine.
Nur 100 Meter entfernt war der Strand der „Oberon Bay“ – menschenleer natürlich! Leider war es zu kalt, um im Meer baden zu können :) Insgesamt hatten wir aber mit dem Wetter glück. Es hat nicht geregnet und es war die meiste Zeit so warm, dass man ohne Jacke wandern konnte.
Leider wurde uns der Sonnenuntergang durch die Wolken verwehrt, aber später klarte es dochnoch auf und man konnte ein wenig den (dank der nicht vorhandenen Zivilisation im Umland unglaublich klaren&hellen) Sternenhimmel sehen.
Gekocht haben wir auf Gaskochern, Licht spendete ein Lampenaufsatz für die Gaspartronen – denn Feuer ist nicht erlaubt. An manchen meiner Bilder kann man vielleicht auch sehen warum – der Nationalpark hat sich noch immer nicht wieder von den Folgen eines außer Kontrolle gerateten kontollierten Bushfire (das eigentlich dazu dient, das Unterholz auszudünnen und die Waldbrandgefahr zu verringern) erholt. (Nein, die Bäme haben nicht wegen des Winters ihre Blätter verloren. In Australien gab es keine Bäume, die im Winter die Blätter abwerfen, bis die Europäer welche mitgebracht haben.)

Sonntags auf dem Rückweg (wieder 10km, aber ne andere Strecke ;) ) bin ich doch dem Ruf des Ozeans erlegen und bin baden gegangen. Frisch war’s, aber schön :D . Und natürlich habe ich es mir nicht nehmen lassen, meinen Mitstreitern zu zeigen, was für ein Spaß Geocaching ist und einen Cache gesucht und gefunden.
Über den Strand an Norman Bay sind wir dann zurück zum Parkplaz, wo unser Auto stand. Bei der Rast dort hatten wir Spaß mit den lustigen Vögeln, die man, wie jedes wildlebene Tier, nicht füttern soll. Diese Exemplare waren aber durch lange Touristenerfahrung so dreist, das sie einem das Essen aus der Hand geklaut haben .
Den Abschluss sollte dann unser Besuch amSquirky Beach bilden, der seinen Namen daher hat, dass der Sand so fein ist, dass er lustig quietscht während man darüber läuft.
Beim Verlassen des Strandes war ich schon ein wenig traurig, dass wir zwar unglaublich viel Wombat-Sch**** gesehen hatten, aber kein einziges Wombat. Dem wurde aber zum Glück noch abgeholfen – erst sahen wir ein totes am Straßenrand liegen :(, dann aber auchnoch ein wirklich großes und lebendiges Exemplar :D
So kann ich hoffentlich die kürzlich doch recht hohe Nachfrage nach Wombatbildern noch ein wenig befriedigen ;)

Von den für Australien obligatorischen ‚roos waren natürlich auch welche dort. Ich habe eine kleine Serie geknipst, bei der man wunderbar sehen kann, wie der Schwanz der fortbewegung dient. Los geht es mit diesem Bild.

Viel Spass beim Betrachten der Fotogalerie Wilsons Promontery – am besten mit der fullscreen Slideshow :)


Cheatsheets

$
0
0

Nachdem ich mit diesem Blog auf WordPress umgestiegen bin, schau‘ ich natürlich auch gerne unter die Motorhaube und beschäftige mich ein wenig mit dem System. Nicht zuletzt, um meine Seite so zu gestalten, wie ich es möchte und mein Template zu optimieren :)

Dazu habe ich den Artikel WordPress cheatsheets summarized gefunden, der eine Reihe von sogenannten cheatsheets(das sind Zusammenfassungen der wichtigsten Dinge zu einem Themenbereich auf einer Seite) für WordPress auflistet.

Cheat-Sheets zu vielen anderen IT Themen findet man auch unter Dave Child’s ilovejackdaniels.com :)

Vielleicht kann’s ja noch jemand gebrauchen … ;)

energiesparendes Suchen





Latest Images