marderh.blog

13/11/2008

Thunderbird Threadview

Filed under: — stefan @ 3:13 pm

Ich mag es wenn meine Mails in Threads dargestellt werden. Und zwar alle. Ich hasse “sent”-Verzeichnisse und Ähnliches, das fürr mich nur den Fluss und die Abfolge der Diskussion stört. Vielleicht ist es eine Sache der Gewohnheit, aber ich mags so wie bei Mutt und Forte Agent (hab ich allerdings nach Version 1.93 nicht mehr verwendet).

Mozilla Thunderbird

Seit einiger Zeit verwende ich Mozilla Thunderbird, weils so auf allen Plattformen, die ich verwende (n muss) die gleiche Software ist und ich nicht jedesmal alles mehrfach rausfinden und einrichten will.
Die Thread-Ansicht ist allerdings nicht so recht “wohlgeraten”. Nachdem Thunderbird den Kinderschuhen entwachsen war und nun auch nicht nur den “Subject”-Header zum Erstellen der Threads benutzte, sondern auch die Message-ID war ich erstmal zufrieden. Nachdem ich die erste Mailing-Liste mit “etwas mehr” Traffic abonniert hatte erregte ein anderer Umstand mein Unwillen:
Die Threads werden nach ihrem Startmail sortiert. Das heisst sehr lange oder langsam stattfindende Diskussionen wandern zwangsläufig immer weiter nach unten (bei meiner präferierten Sortierung). Wenn der nun das Verzeichnis, das den Thread enthält wohlgefüllt ist, wirds nach kurzer Zeit ziemlich mühsam und langwierig die neuen Mails zu lesen.
Nach langem und wenig fruchtbringendem Scrollen, bin ich über eine Liste mit nützlichen Thunderbird-Erweiterungen gestolpert (Thunderblog) und siehe da, es gibt ein AddOn, das meine Problem behebt:
ThreadBubble, sortiert die Threads nach dem Ankommen einer neuen Mail um, und zwar so wie ich es haben will: Die Threads mit den neuen Mails oben.
(Keine Ahnung wie es zu dem Namen kommt, aber Hauptsache es tut).
Also eigentlich tat es erstmal nicht. AddOn runtergeladen, installiert, Thunderbird neu gestartet, gespannt (und immer noch freuend, dass mein Problem gelöst sei) auf neue Mails in bereits bestehenden Threads gewartet, schnell hingeklickt und AARRGH nichts ist anders als zuvor. Also nochmal zurück auf die Webseite und, in der Hoffnung nicht der Einzige mit dem Problem zu sein in den “Reviews geschmökert:

There is an undocumented requirement that I stumbled across before this worked properly for me: you must set View | Sort By… | Date. I initially had TB set to sort by a different method (Order Received), and this extension did absolutely nothing in that case.

Also schnell die Sortierung auf “Date” geändert und es funktioniert tatsächlich. Allerdings muss man das anscheinend für jedes Verzeichnis einzeln einstellen. Ansonsten, Zufriendenheit…

29/9/2008

Auswertung Shell-History

Filed under: — stefan @ 12:48 pm

Mit:
history | awk '{a[$2]++ } END{for(i in a){print a[i] ” ” i}}’|sort -rn|head

Schaut bei mir so aus (auf einem produktiven System):

1045 ll
945 cd
925 apt-get
635 vi
402 cat
233 tail
148 /etc/init.d/apache2
146 watch
145 apt-cache
123 rm

:-)

18/7/2008

Volume/Mute-Buttons mit KDE

Filed under: — stefan @ 11:49 am

Ich verwende seit langem (nach einem kurzen, faulheitsbedingten, Ausflug in Richtung Ubuntu) wieder Debian (testing) auf meinem etwas angegrauten, aber lieb gewonnenen, Dell Latitude D610.
Mit KDE.
Funktioniert auch alles soweit fein. Ausser den 3 Buttons für die Soundsteuerung (Mute, Lauter, Leiser). Mit KDE. Gnome passt.

Hier in aller Kürze wie es (letztlich) funktioniert:

  • im $HOME-Verzeichnis die Datei .Xmodmap  anlegen/erweitern (mit den Keycodes für die Buttons)

    keycode 160=F20
    keycode 174=F21
    keycode 176=F22

  • xmodmap (erstmals) ausführen

    xmodmap ~/.Xmodmap

  • in Kmix eintragen
    (KMix -> Settings -> Configure Global Shortcuts und dort bei den jeweiligen Einträgen einfach die passenden Buttons drücken)
  • im KDE-Xsession für alle oder in .xinitrc bzw. .xsession eintragen

    if [ -f $HOME/.Xmodmap ]; then
    /usr/X11R6/bin/xmodmap $HOME/.Xmodmap
    fi

tut…

22/2/2008

(nicht ganz) flüchtiges RAM…

Filed under: — stefan @ 6:06 pm

…sorgt dafür, dass Festplattenverschlüsselungssysteme (z.B.: Truecrypt oder dm-crypt), unter Idealbedingungen, geknackt werden können:

The root of the problem lies in an unexpected property of today’s DRAM
memories. DRAMs are the main memory chips used to store data while the
system is running. Virtually everybody, including experts, will tell you that DRAM contents are lost when you turn off the power. But this isn’t so.
(Introductory blog post - Freedom to Tinker)

Das ganze Research-Paper, ein Video und mehr gibts auf der Seite der Forschungsgruppe. Der gebräuchlichste Nutzen von Festplattenverschlüsselung, wie z.B. die Daten auf einem gestohlenen/verlorenen Notebook zu schützen, ist damit allerdings zum Glück weitgehend nicht dahin. Ausser man trägt das Teil die ganze Zeit im Suspend-Mode herum. Hab ich aber bisher nur bei Mac-Usern gesehen. SCNR :)

20/2/2008

Goolag

Filed under: — stefan @ 12:25 pm

Schon lang nicht mehr angesehen…
Die Sammlung von Google-Suchstrings, die Informationen zutage fördern, die eigentlich nicht öffentlich sein sollten ist ziemlich angewachsen (siehe die Google Hacking Database von johnny).
Wars auch bisher keine Hexerei die URLs oder Suchstrings von dort in den Browser zu kopieren, haben Cult of the Dead Cow (cDc) mit Goolag (hier die Ankündigung) das ganze wirklich Massen- und somit auch DAU-kompatibel gemacht. Selbige haben ja vor x-Jahren mit Back Orifice ähnliches vollbracht.
goolag
(via Google-Hacking Deluxe - heise Security)

27/12/2007

Debian Etch & Apache2 MySQL Authentication

Filed under: — stefan @ 1:25 pm

debian bottle

*AARRGGHHHH*

Jo eh, ich ja ned der erste der draufkommt, dass libapache-mod-auth-mysql/libapache2-mod-auth-mysql unter Debian Etch fehlt (siehe hier an der Quelle). Einfach futsch. Ein grosses Nix zwischen den Einträgen für Sarge und Lenny. Schaut so aus, wie wenn der Maintainer die Schmerzen nicht mehr ertragen konnte:


I don’t run any Apache servers any more, and I’m sick of the whole Apache module mess. Note to any potential adopters: you’re upstream as well, you’ve got a mess of a codebase, and the Apache2 module is supposedly being replaced with something native to Apache 2.2.

(zitiert aus dem Bugreport)

Versteh ich, aber trotzdem unschön für mich.

Also was tun?

Nach ein bisschen Recherche finden sich 3 Möglichkeiten:

    mod_auth_pam verwenden und über libpam-mysql authentifizieren (Debian preferred way).
    Scheidet für mich aus, weil mich persönlich Herumgetue mit PAM meistens schmerzt, auch wenns dann manchmal überraschend fein tut. Zusätzlich halt ichs für unschön www-data zur Gruppe shadow hinzuzufügen. Genaueres gibts hier.
    mod_dbd & mod_authn_dbd (Apache preferred way)
    Ist aber eher pfui, weils da Lizenzprobleme gibt und der MySql-Treiber nicht inkludiert ist und mensch dann ja sowieso das alte Modul (mod_auth_mysql) neu übersetzen kann (s.u.). Ein HowTo für diese Variante (incl.MySql-Treiber) findet sich hier.
    mod_auth_mysql selber kompilieren
    Hat erstmal fein funktioniert. Allerdings authentifiziert da nix (im besten Fall) oder es verabschiedet sich der Apache (im Schlechteren). Wieder herumgesucht und über diesen Ubuntu-Bugreport gestolpert. Speziell die letzten beiden Einträge sind hilfreich. Vor allem jener von Mrts (Vielen Dank dafür!!!):

    $ wget mod_auth_mysql-3.0.0.tar.gz
    $ wget mod_auth_mysql-3.0.0-apache-2.2.3.patch
    $ tar zxf mod_auth_mysql-3.0.0.tar.gz
    $ apt-get install apache2-prefork-dev libmysqlclient15-dev
    $ cd mod_auth_mysql-3.0.0
    $ patch < ../mod_auth_mysql-3.0.0-apache-2.2.3.patch
    $ sed -i ’s|#include <mysql.h>|#include <mysql/mysql.h>|’ mod_auth_mysql.c
    $ apxs2 -c -lmysqlclient -lm -lz mod_auth_mysql.c
    $ apxs2 -i mod_auth_mysql.la
    $ echo ‘LoadModule mysql_auth_module /usr/lib/apache2/modules/mod_auth_mysql.so’ >/etc/apache2/mods-available/auth_mysql.load
    $ a2enmod auth_mysql

:) *Jumps around && is happy*

21/6/2007

MySQL - Doppelte Einträge finden und entfernen

Filed under: — stefan @ 1:33 pm

Weils einfach immer wieder nötig ist sich mit den leidigen Daten auseinanderzusetzen…
Zum finden von Dupletten:

SELECT Table.key FROM Table
INNER JOIN Table AS Table2 ON
(Table2.Value1 = Table.Value1
AND Table2.Value2 = Table.Value2
AND ...)
WHERE Table2.key > Table.key

Vorausgesetzt wird in dem Fall natürlich ein numerischer Schlüssel (key), der raufzählt. Löschen geht dann folgendermassen:


DELETE Table.* FROM Table
INNER JOIN Table AS Table2 ON
(Table2.Value1 = Table.Value1
AND Table2.Value2 = Table.Value2
AND ...)
WHERE Table2.key > Table.key

Eine andere Variante, die gleichzeitig die zukünftige Eingabe von Dupletten verhindert funktioniert mit einem UNIQUE Index:

ALTER IGNORE TABLE Table ADD UNIQUE INDEX(Value1,Value2,...);

Ohne der Verwendung von IGNORE lässt sich der Index nicht erstellen, sofern doppelte Einträge vorhanden sind. Aus der MySQL - Doku geht auch nicht ganz eindeutig hervor welche der Dupletten dabei gelöscht werden, sprich in welcher Reihenfolge. Alles in allem aber immer wieder nützlich.

3/4/2007

Jikto - JavaScript Malware

Filed under: — stefan @ 4:10 pm

In aller Kürze: Jikto ist ein Vulnerability-Scanner der komplett in JavaScript geschrieben ist und somit auch einfach in eine Webseite eingebettet, oder per CrossSiteScripting (XSS) ausgeführt werden kann. Und das im Browser des (ahnungslosen) Benutzers der Seite. Vorgestellt wurde das Ding von Billy Hoffman auf der Shmoocon vor ein paar Tagen:

” The masses desire the sweet taste of 0-day? No problem.
I’ll give a live demo of Jikto, a complete web application vulnerability scanner written entirely in JavaScript. Jikto silently crawls and audits any public website and sends the results to a 3rd party. Jikto can be embedded into any website or XSS payload turning website visitors into accomplices that will scan and attack webservers on the Internet.”

Die Slides zu dem Vortrag gibt es hier.

Soweit so gut, den Sourcecode dazu hat er allerdings damals für sich behalten. Von anderen Fällen dieser Art ist eh hinlänglich bekannt wie lange sich so etwas geheimhalten lässt…

Jikto ist somit irgendwie veröffentlicht und findet sich zumindest derzeit noch auf business.name.

Obwohl:

It appears that the source code to Jikto is in the wild. I suppose it was only a matter of time, even though as you will see SPI to extreme steps to prevent this from happening.” (aus dem Blog der Firma des Autors)

Ja klar, BRUHAHAHA

Also viel Spass mit dem Source und auf das mir keiner blind wird bei soviel JavaScript.

Powered by WordPress