Mails > 2009 = SPAM

Interessant welche Auswirkungen ein kleiner Fehler in einem weit verbreiteten Antispam-Modul haben kann. Auch bei meinem Provider 1und1 konnte ich den Effekt beobachten.

Hier der Header einer Dilbert-Mail vom 30.12.2009:

X-SpamScore: 2.9
 tests= HTML_IMAGE_RATIO_04 HTML_MESSAGE HTML_MIME_NO_HTML_TAG MIME_HTML_ONLY

Und hier der Header der Dilbert-Mail vom 01.01.2010, die auch prompt von 1und1 in den Spamfilter befördert worden ist:

X-SpamScore: 6.1
 tests= FH_DATE_PAST_20XX HTML_IMAGE_RATIO_08 HTML_MESSAGE HTML_MIME_NO_HTML_TAG MIME_HTML_ONLY
X-Nemesis-Spam: rulefilter

Wie man sieht, ist der besagte Filter FH_DATE_PAST_20XX dabei und vermutlich für das hohe Spamscoring verantwortlich – der Dilbert-Comic-Strip wurde bisher noch nie aussortiert. Frohes Neues! 🙂

BSOD auslösen unter Windows 7

Es hört sich etwas verrückt an, aber tatsächlich gibt es Situationen an denen man einen Blue Screen braucht. Und zwar wenn das System so eingefroren ist, dass man weder Taskmanager noch Ctrl+Alt+Entf einsetzen kann, um sich irgendwie aus der Klemme zu helfen. In diesem Fall bleibt normalerweise nur ein Reset – und beraubt sich damit in der Regel jede Möglichkeit einer Fehleranalyse.

Unter dem Absatz „Methods to generate a manual memory dump file“ listet der Microsoft KB-Artikel 969028 interessante Möglichkeiten für eine solche Situation auf.

Mein Favorit: CrashOnCtrlScroll. Natürlich muss man das vorher einstellen, aber man muss nicht mal booten sofern man die USB-Tastatur einmal abzieht und wieder einsteckt. Wenn man den Registry-Eintrag gemacht hat, schaut man mit einem beherzten Strg+ScrollLock+ScrollLock (auf deutschen Tastaturen auch „Rollen“) auf einen hübschen Blue Screen of Death. Und wenn das unbekannte Problem wieder auftritt kann man per Tastenkombination einen Minidump erzeugen und sich später mit WinDebug den Crashdump ansehen. Wenn das Problem z.B. durch ein Treiber ausgelöst wird, sollte mit etwas Glück die entsprechende .sys-Datei noch im Stack zu finden sein.

Das ganze sieht dann z.B. so aus:

1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

MANUALLY_INITIATED_CRASH (e2)
The user manually initiated this crash dump.
Arguments:
Arg1: 0000000000000000
Arg2: 0000000000000000
Arg3: 0000000000000000
Arg4: 0000000000000000

Debugging Details:
------------------

CUSTOMER_CRASH_COUNT:  1

DEFAULT_BUCKET_ID:  VISTA_DRIVER_FAULT

BUGCHECK_STR:  0xE2

PROCESS_NAME:  System

CURRENT_IRQL:  2

LAST_CONTROL_TRANSFER:  from fffff88005bd4dcf to fffff80002a7cf00

STACK_TEXT:
fffff880`0351b5a8 fffff880`05bd4dcf : 00000000`000000e2 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KeBugCheckEx
fffff880`0351b5b0 fffff880`05bd490b : fffffa80`0377c6b8 00000000`00000000 00000000`00000000 fffffa80`05f7f970 : kbdhid!KbdHidProcessCrashDump+0x1df
fffff880`0351b5f0 fffff880`05b96629 : fffffa80`068a8970 fffffa80`068ab190 fffffa80`00000000 00000000`0000000e : kbdhid!KbdHid_InsertCodesIntoQueue+0xbb
fffff880`0351b650 fffff880`05b9687c : fffffa80`000000c6 fffffa80`068ab190 00000000`0000000e 00000000`00000001 : HIDPARSE!HidP_KbdPutKey+0x3d
fffff880`0351b680 fffff880`05b967d2 : 00000000`00000000 fffff880`05b949d6 00000000`00000007 fffff880`05060000 : HIDPARSE!HidP_TranslateUsage+0x6c
fffff880`0351b6c0 fffff880`05bd461e : 00000000`00000000 fffffa80`068a893c fffffa80`068a8860 00000000`00000000 : HIDPARSE!HidP_TranslateUsageAndPagesToI8042ScanCodes+0xde
fffff880`0351b720 fffff800`02a7f516 : fffffa80`068bf88b fffff880`00000001 fffffa80`00000000 00000000`00000009 : kbdhid!KbdHid_ReadComplete+0x222
fffff880`0351b7a0 fffff880`05b7eacc : fffffa80`068aacc0 fffffa80`068aac06 fffffa80`06895c00 00000000`00000000 : nt!IopfCompleteRequest+0x3a6
fffff880`0351b880 fffff880`05b7ed35 : fffffa80`0688e302 fffffa80`0688e3c0 fffffa80`06895cb0 00000000`00000008 : HIDCLASS!HidpDistributeInterruptReport+0x130
fffff880`0351b910 fffff800`02a7f516 : fffffa80`0686fb1b 00000000`00000000 fffffa80`06895b01 fffffa80`0686f850 : HIDCLASS!HidpInterruptReadComplete+0x235
fffff880`0351b9a0 fffff880`045735d9 : fffffa80`05a08050 fffffa80`03fe6600 00000000`00000000 00000000`00000000 : nt!IopfCompleteRequest+0x3a6
fffff880`0351ba80 fffff880`04573ab7 : fffffa80`07987502 fffffa80`0686f850 00000000`ffffffff fffffa80`05a08ea8 : USBPORT!USBPORT_Core_iCompleteDoneTransfer+0xa15
fffff880`0351bb60 fffff880`0457164f : fffffa80`05a08ea8 fffffa80`05a081a0 fffffa80`05a09040 00000000`00000000 : USBPORT!USBPORT_Core_iIrpCsqCompleteDoneTransfer+0x3a7
fffff880`0351bbc0 fffff880`04562f89 : fffffa80`05a08050 00000000`00000000 fffffa80`058af702 fffffa80`05a08ea8 : USBPORT!USBPORT_Core_UsbIocDpc_Worker+0xf3
fffff880`0351bc00 fffff880`0106f4ce : fffffa80`058af000 fffffa80`05a08ea8 fffffa80`058af750 fffffa80`05a08ec0 : USBPORT!USBPORT_Xdpc_Worker+0x1d9
fffff880`0351bc30 fffffa80`058af000 : fffffa80`05a08ea8 fffffa80`058af750 fffffa80`05a08ec0 fffff880`009ef180 : spxe+0x424ce
fffff880`0351bc38 fffffa80`05a08ea8 : fffffa80`058af750 fffffa80`05a08ec0 fffff880`009ef180 00000000`00000000 : 0xfffffa80`058af000
fffff880`0351bc40 fffffa80`058af750 : fffffa80`05a08ec0 fffff880`009ef180 00000000`00000000 fffff880`009f3ec0 : 0xfffffa80`05a08ea8
fffff880`0351bc48 fffffa80`05a08ec0 : fffff880`009ef180 00000000`00000000 fffff880`009f3ec0 00000000`00000022 : 0xfffffa80`058af750
fffff880`0351bc50 fffff880`009ef180 : 00000000`00000000 fffff880`009f3ec0 00000000`00000022 00000000`00000000 : 0xfffffa80`05a08ec0
fffff880`0351bc58 00000000`00000000 : fffff880`009f3ec0 00000000`00000022 00000000`00000000 00000000`00000000 : 0xfffff880`009ef180

[...]

Der Fall des langsamen Outlooks

Mein Outlook 2007 war vor einigen Tagen plötzlich extrem langsam. Jeder Versuch eine neue Mail zu schreiben oder eine gerade offene Mail zu schließen wurde mit mehreren Sekunden Donut quittiert. Da meine Kollegen keine Probleme mit ihrem Mailzugriff hatten, habe ich unseren Exchange-Server als Verursacher ausgeschlossen. Zudem trat das Problem auch im Offline-Modus auf.

Vermutung: Lokales Applikationsproblem. Daraufhin habe ich den Microsoft Sysinternals Process Monitor gestartet und mit einem Rechtsklick auf eine der Outlook-Zeilen den Filter auf outlook.exe eingegrenzt („Include OUTLOOK.EXE“).

process-monitor-outlook-include-14.11

Danach habe ich im Outlook eine neue Mail geöffnet mit dem Process Monitor im Blickfeld. Kurz darauf rasten bereits hunderte ReadFile-Events im Process Monitor vorbei, bei der Outlook auf die Datei C:\Users\<username>\AppData\Roaming\Microsoft\Outlook\outcmd.dat zugegriffen hat.

process-monitor-outlook-readfile-14.11

Ein „Jump to…“ bringt mich direkt zu dieser Datei, die eine Größe von 325 MB aufweist.

process-monitor-outlook-jump-to-14.11

Ein kurze Internet-Suche nach der Datei outcmd.dat brachte unter anderem diesen Artikel hervor, der von einem trägen Outlook durch eine korrupte outcmd.dat spricht. Glücklicherweise hatte ich noch eine zwei Wochen alte Sicherung der outcmd.dat, darum konnte ich auf die Löschung der Datei verzichten. Noch bevor ich es testen konnte, verdichteten sich die Hinweise auf die Datei als Verursacher des Problems weiter. Denn im Gegensatz zu der defekten 325 MB-Datei hatte die outcmd.dat aus der Sicherung eine Größe von nur 5 KByte.

process-monitor-outlook-filesize-14.11

Nach dem ich die Datei aus der Sicherung wiederhergestellt hatte, habe ich Outlook gestartet und siehe da, das Problem war verschwunden. Dank Process Monitor konnte das Problem in kürzester Zeit gelöst werden 🙂

Technical Blog about IT Security and Networking

http://yurisk.info/

In der Rubrik Checkpoint NG/NGX z.B.:

Wie man auf einer Check Point SecurePlatform telnet nachinstalliert. Telnet??? Ja, telnet. Um schnell zu prüfen, ob der entsprechende Port eines Zielhosts erreichbar ist. Ich weiß nicht, warum Check Point dieses Paket nicht standardmäßig mit installiert.

Das Paket befindet sich auf der SPLAT-CD (auch auf der R70):
\SecurePlatform\RPMS\telnet-0.17-26cp.i386.rpm

#expert
#mount /mnt/cdrom
#cd /mnt/cdrom/SecurePlatform/RPMS
#rpm -i telnet-0.17*