Skip to content

Virenscanner und trügerische Sicherheit

In Abwandlung der Fachbegriffe der Informatik Nummer 264 könnte man schreiben: Virenscanner schützen vor Viren, Trojanern, Kettenbriefen und Taubenscheiße auf dem Autodach. Dem populären Glauben nach ist das auch so. Bredolab, ein neuer Trojaner, zeigt wieder einmal, wie gefährlich dieser Glaube sein kann. Der Trojaner tauchte am 13.Juli erstmalig auf und kein Virenscanner fand ihn. Fünf Tage später fanden ihn weniger als 50% der getesteten Produkte. Nebenan bei Websicherheit.org verfolgt man die Erkennungsraten. Ich bin gespannt, wann alle den Trojaner als solchen erkennen. Virenscanner sind eben nur eine Verteidigungslinie und wer sich ausschließlich darauf verlässt, ist manchmal verlassen.

Der totale Overflow

Meine Anfänge im Internet gehen in das Jahr 1996 zurück. Vielleicht auch etwas eher. So genau weiß ich das nicht mehr. Damals versuchte ich das unbekannte Territorium ein wenig zu erobern. Da gab es so merkwürdig klingende Dienste wie Gopher, Archie oder Veronica. Das, was heute fälschlicherweise als das Internet bezeichnet wird, nämlich das WWW existierte ebenso wie ein Dienst namens Usenet. Das war und ist ein riesiges weltweites Diskussionsforum mit einzelnen Räumen, den Newsgroups oder Gruppen. Das Usenet ist hierarchisch aufgebaut.Beispielsweise gibt es eine deutschsprachige Hierarchie. Darunter gibt es Gebiete für Diskussionen um Computer, um Wissenschaft, um Erholung etc. Diese teilen sich dann weiter auf in Computerhardware oder Mathematik oder Kartenspiele. In den einzelnen Gruppen fanden in der Regel sehr wertvolle Diskussionen statt, es wurden sinnvolle Lösungen weitergegeben etc. Mit dem Aufkommen von Foren, Blogs und guten Suchmaschinen begann der Stern des Usenet zu sinken. Die Diskussionen verlagerten sich an andere Stellen und heute schließen diverse Firmen Newsserver. Die Schreiber der Gruppen gehen andere Wege.

Der große Vorteil des Usenet ist aus meiner Sicht die einfache Bedienung, die Qualität der Beiträge und das Offline-Archiv. Geschrieben und gelesen wird das Usenet in der Regel in einem Programm, dem Newsreader. Google Groups bietet ebenso eine Schnittstelle zum Usenet. Zum Verfassen eines Beitrages kann ich somit den Editor bedienen und seine Stärken ausnutzen. Damit lässt effektiv ein Beitrag verfassen. Dies lassen die Webforen vermissen. Beiträge müssen im Webbrowser verfasst werden. Der bringt in der Regel keine Unterstützung für erweiterte Funktionen (Abkürzungen, Ersetzen etc.) mit. Ein Problem der Webforen ist die Aufsplitterung. Stellt euch vor, ich habe ein Problem mit meinem imaginären Opel und suche nach einem Opel-Forum. Welches von den sechs Millionen Funden ist das Richtige? Im Usenet gab es die Gruppe de.etc.fahrzeug.auto. Dort fanden alle Diskussionen zu dem Thema statt. Die ließen sich herunterladen und, während man mit der Bahn unterwegs war, konnte man sich zu dem Problem mit dem Opel belesen. Wie geht das bei einem Webforum?

Der letztgenannte Punkt ist heute kein großes Problem, dank UMTS und WLAN. Die ungelösten Probleme sterben nicht aus und wenn ich mich auf die Suche nach einer Lösung begebe, stoße ich in letzter Zeit gehäuft auf Stackoverflow. Die Seite richtet sich vorrangig an Programmierer und fiel mir durch qualitativ hochwertige Antworten auf. Die Suchergebnisse sind dementsprechend bei Google immer recht weit oben gelistet.

Stackoverflow ist prinzipiell ein Webforum. Jedoch wählt es einen anderen Ansatz. Einerseits sind alle Beiträge für jedermann lesbar. Das steht im Gegensatz zu manchem Webforum, bei dem man sich erst anmelden muss, um Beiträge zu lesen. Wer macht das schon? Der Ansatz von Stackoverflow geht aber noch weiter. Jeder kann ohne Anmeldung auch Beiträge verfassen. Das heißt, Fragen stellen, kommentieren oder beantworten. Die Macher der Seite setzen hier auf die Weisheit der Massen. Um das Ganze ein wenig zu unterstützen, gibt es ein Bonussystem. Wer sich nämlich bei der Seite anmeldet, bekommt Bonuspunkte für gestellte Fragen, für Antworten und einiges mehr. Je mehr Punkte jemand besitzt, desto mehr Rechte bekommt er. Dieses Bonussystem wirkt sich nach meiner Beobachtung auf die Psyche aus. Wer alte Diskussionen aus dem Usenet kennt, der kennt RTFM und andere Abkürzungen, die einem Fragenden entgegengeworfen werden. Bei Stackoverflow herrscht hingegen eine weitgehend freundliche Atmosphäre. Antworten fallen schon einmal länger aus und enthalten Beispiele. Denn für eine gute Antwort bekommt der Antwortende Punkte. Jeder kann Fragen und Antworten bewerten und die Seite zeigt automatisch, die am besten bewerteten Antworten oben an. Das ist wiederum für den Suchenden sehr praktisch.

Innerhalb von Stackoverflow gibt es Tags, die zu Fragen vergeben werden. Diese stellen eine Art thematische Sortierung dar. Wer Fragen zu PHP, Haskell oder C++ stellen bzw. beantworten will, schaut sich den entsprechenden Tag an. Mehrere tausend Tags sind derzeit vergeben.

Nun stieß ich auf eine weitere Seite aus dem Stackoverflow-Universum, der Area51. Diese setzt eine weitere Idee aus dem Usenet um. Wer nämlich eine neue Diskussionsgruppe im Usenet errichten wollte, musste einen formalen Prozess aus verschiedenen Schritten durchlaufen. Das sollte sicherstellen, dass nicht sinnlos Gruppen für Partikularinteressen gegründet werden. Ähnlich ist Area51. Die Seite erlaubt wieder jedem einen Vorschlag für eine neue Seite einzubringen. Danach findet dazu eine Diskussion statt, d.h. andere müssen Beispielfragen bringen, die gut in das Thema passen würden. Andere diskutieren diese Fragen und vergeben Punkte, ob diese wirklich gute Fragen sind. Nach Abschluss des Prozesses werden Leute gesucht, die sich verpflichten für einen begrenzten Zeitraum Fragen zu beantworten. Kommen genügend Stimmen zusammen, so wird die Seite ins Leben gerufen. Das stellt sicher, dass hier nicht das n-te tote Forum im Web steht. Neben Stackoverflow kenne ich derzeit:

Serverfault
Eine Seite für Sysadmins
Superuser
Allgemeine Computerfragen
Meta
Meta-Fragen zur Seite selbst
Stackapps
Fragen zur Stack Exchange API
Cooking
Die Kochseite ist erst kürzlich der Area51 entsprungen und befindet sich jetzt in der Testphase.

Insgesamt macht es richtig Spass, auf den Seiten herumzustöbern, Fragen zu lesen und auch zu beantworten. Aus meiner Sicht müssen noch ein paar kleinere Usability-Schwächen behoben werden. Aber insgesamt kann ich die Seite nur empfehlen. Werft mal einen Blick und sagt mir eure Meinung. Ich bin gespannt!

Neue Schrift fürs Terminal

Das Wagnis startete heute nachmittag. Nach diversen Backup-Orgien war es an der Zeit, das Ubuntu auf die aktuelle Variante 10.04 zu upgraden. Ich wollte mal testen, ob das weitgehend klappt und hatte mich innerlich auf eine Neuinstallation eingerichtet. Doch, oh Wunder, bislang konnte ich kaum Probleme feststellen. Eines, was sofort auffiel, war die Schrift. Die ist bislang noch sehr ungenügend hier muss ich eine Lösung finden. Das zweite Problem war der Spamfilter CRM114. Das wurde aber schon während der Installation angekündigt, dass es Probleme geben kann. Bei der Suche nach der korrekten Schriftart stieß ich u.a. auch auf Comic Sans. Das wäre doch die beste Wahl:

GNOME Terminal in Comic Sans

Geschwindigkeit von Google DNS

Gerade bin ich wieder baff. Google DNS macht mich heute sprachlos.

Vor etwa einem Monat schrieb ich hier über die Aktion von Ingate, bei der es einen VServer zu gewinnen gab. Nach einiger Wartezeit kamen die Zugangsdaten an und derzeit richte ich den Rechner ein. Zur Einrichtung gehört mittlerweile für mich ein Test der Geschwindigkeit des (voreingestellten) DNS. Mittels einem Python-Programm namens namebench lässt sich das hervorragend machen. Im Blog findet sich dazu ein Beitrag. Nun spuckte namebench soeben das Ergebnis aus. Der Nameserver von Google ist fast viermal so schnell wie der beim Provider. Das ist so ziemlich die krasseste Abweichung, die ich bisher fand. Trotzdem bestätigt das, was ich bisher ermittelte. In allen meinen Versuchen seit Juni war immer der Nameserver von Google der schnellste. Außerdem zensiert der nicht. Insofern könnte man ihn jedem Nutzer empfehlen. Letztlich bleibt der hinlänglich diskutierte Datenschutzaspekt. Wer den nutzt, überlässt einmal mehr Daten einer Firma. Das will wohlüberlegt sein.

Untenstehend mal die Auswertung von namebench zum VServer von Ingate:

IP Descr. Hostname Avg (ms) Diff Min Max TO NX Notes
8.8.4.4 Google Public DNS-2 google-public-dns-b.google.com74.125.42.87 74.125.42.82 74.125.42.81 57.88 259.0% 9.6 737.2 0 4  
156.154.71.1Neustar Ultra Recursive UltraDNS-2 rdns2.ultradns.netudns2tcam.ultradns.net udns3tcam.ultradns.net 86.60 139.9% 16.4 874.3 0 3
4.2.2.4If you have a legitimate reason for requesting this info, please contact hostmaster@Level3.net Level 3/GTEI-4 vnsc-pri-dsl.genuity.netdns2.frf1 87.69 136.9% 7.1 1310.7 0 5  
78.47.115.1989.4.3b2 Cesidio 6 DE ns6.cesidio.netns6.cesidio.net 113.52 83.0% 4.0 1006.2 0 50
  • Replica of Cesidio B DE [78.47.115.197]
212.123.96.110 SYS-212.123.96.110 dns01.ip-exchange.de 150.74 37.8% 3.2 1625.3 0 4
  • A backup DNS server for this system.
208.67.220.220 OpenDNS resolver2.opendns.com12.ams 166.42 24.8% 14.6 3500.0 1 1  
194.8.57.129.6-ESV-R1 Nurnberger IX DE ns.N-IX.netrNS2 167.84 23.8% 4.0 1589.1 0 4  
212.114.153.1 Secondary-DNS DE ns.secondary-dns.de 181.08 14.7% 1.2 1643.7 0 4  
80.190.211.10 SYS-80.190.211.10 dns03.ip-exchange.de 207.77   0.6 1611.9 0 4
  • The current preferred DNS server.
216.146.35.35unbound 1.3.4 DynGuide resolver1.dyndnsinternetguide.comig-02-fra.dyndns.com 228.13 -8.9% 23.5 3500.0 2 3
83.142.86.1 CS-Arena DE ns1.core-backbone.com 242.89 -14.5% 3.5 3500.0 2 5
  • dns.query.BadResponse (2 requests)

DNS-Anfragen über Tor schicken

Das Tor-Projekt ist vor allem bekannt für die gleichnamige Software. Daneben entwickeln die Macher eine Vielzahl weiterer Software, die ebenfalls die Anonymität und Privatsphäre seiner Nutzer stärkt. Bekannte Projekte sind Vidalia, die Erweiterung für den Mozilla Firefox Tor-Button oder die kürzlich vorgestellte Erweiterung HTTPS Everywhere. Jacob Appelbaum stellte kürzlich ein weiteres Projekt ttdnsd vor. Der Name steht für Tor TCP DNS Daemon und versucht alle DNS-Verbindungen über Tor zu leiten.

Derzeit muss die Software entweder aus den Quellen oder als Debian-Paket installiert werden. An RPMs wird noch gearbeitet. Eine Unterstützung für Windows ist noch nicht umgesetzt. Nach der Installation läuft die Software als Dienst im Hintergrund. In der Datei /etc/ttdnsd.conf befindet sich die Konfiguration. Standardmäßig enthält diese den Nameserver von Google mit der Adresse 8.8.8.8. Weitere Nameserver können eingetragen werden. Ich lasse immer mal wieder namebench laufen und wähle aus der Auswertung einige Server aus. Es empfiehlt sich, aus der Liste der zensurfreien Server einige zu wählen. Die Anzahl der Einträge in der Datei ist unbegrenzt. Die Software wählt bei jedem Lauf zufälligerweise einen Eintrag aus.

Nachdem die Software eingerichtet wurde, sollte auch das eigene System überredet werden, den ttdnsd für DNS-Anfragen zu nutzen. Im einfachsten Fall öffnet ihr die Datei /etc/resolv.conf und tragt dort die Zeile nameserver 127.0.0.1 ein. Wenn ihr dynamische IP-Adressen nutzt, hat das unter Umständen den Nachteil, dass der Eintrag bei jeder Aktualisierung überschrieben wird. Für Ubuntu würde ich daher empfehlen, in der Datei /etc/dhcp3/dhclient.conf den Eintrag prepend domain-name-servers 127.0.0.1; zu setzen. Dann wird der Nameserver bei jedem Update korrekt in die /etc/resolv.conf eingetragen. Wenn ihr nur einmalig testen wollt, könnt ihr natürlich dem jeweiligen Programm die Adresse übergeben: dig @127.0.0.1 torproject.org oder host torproject.org 127.0.0.1.

Die Beantwortung von Anfragen über Tor dauert natürlich etwas länger als über eine nicht anonymisierte Verbindung. Kai Raven hat in seinem Wiki eine Beschreibung zum DNS-Proxy pdnsd. Dieser hat einen Zwischenspeicher für DNS-Anfragen und antwortet schneller, wenn die Ergebnisse in seinem Speicher sind.

Der ttdnsd ist noch in Entwicklung, d.h. einige Stellen im Quellcode müssen überarbeitet werden und derzeit kann ein Angreifer den Anfragen an dem Server vorbei leiten. Diese Punkte sind bekannt und sollen in den folgenden Versionen behoben werden. Ich halte die Software schon benutzbar und kann euch einen Test nur ans Herz legen. ;-)

Praktikumsprotokolle mit LaTeX

Ich habe ein Problem mit LaTeX. Das funzt nicht!!11!11!!elf, so oder ähnlich lauten Anfragen, die mich hin und wieder per E-Mail erreichen. In der Regel ist klar, wo der Fehler liegt und ich verweise dann auf die entsprechende Dokumentation. Bei größeren Problemen zeige ich dann Richtung der entsprechenden Mailinglisten, Newsgroups etc.

Kürzlich erreichte mich eine Anfrage eines Studenten, der seine Protokolle mit LaTeX setzen möchte. Den Ansatz finde ich recht löblich. Die Herangehensweise war, sagen wir, verbesserungswürdig. Untenstehend findet ihr das (verfremdete) Originaldokument. Anhand dessen will ich Verbesserungen diskutieren.

\documentclass[german]{article}
\linespread{1.5}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{graphics}
\pagestyle{headings}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=25mm, top=4cm, bottom=3cm}
\begin{document}
\begin{center}
  {\Huge Synthese von Aquamarins"aure-$\textit{n}$-hexylester}${^{^\mathrm{^{[1]}}}}$
   \end{center}\vspace{20mm}
 \begin{tabular}{ll}
  Name:&Peter Meier\\
  Assistent:&Hanno Lehmann\\
  Datum des Versuches:&19.05.10
 \end{tabular}\vspace{10mm}  

\underline{\textbf{Reaktionsgleichung}}
\begin{figure}[h]
	\centering
		\rotatebox{0}{\scalebox{0.7}[0.7]{\includegraphics{bild1.jpg}}}
	\label{fig:Aquamarins"aure-\textit{n}-hexylester}
\end{figure}\\
\noindent \underline{\textbf{Sicherheitsdaten}}\\ \\
 \begin{tabular}{ll}
 Aquamarins"auredehydrid (C)&R 34\\
 &S (1/2)-26-45\\
 1-Methanol (Xn)&R 22\\
 &S (2)-24/25\\
 Schwefels"aure (C)&R 35\\
 &S (1/2)-26-30-45\\
 Methylether (F+, Xn)&R 12-19-22-66-67\\
 &S (2)-9-16-29-33\\
 \end{tabular}
\vspace{0,5cm}\\
\noindent\underline{\textbf{Entsorgung}}\\ \\
 \begin{tabular}{ll}
 Aquamarins“auredehydrid&Organische L”osungsmittelabf"alle\\
 1-Methanol&Organische L“osungsmittelabf”alle\\
 Schwefels“aure&Neutralisieren, dann kommunale Abf”alle\\
 Methylether&gesonderde Abf"alle\\
 \end{tabular}\\ \\
\vspace{0,5cm}\\ 
\newpage
\noindent\underline{\textbf{Durchf"uhrung}}$^{[1]}$\\ 
\begin{sloppypar}
\noindent 
Eine L“osung von Aquamarins”auredehydrid (22.1~g, 170~mmol, 1.00~"Aq.)
und 1-Methanol (15.3~mL, 150~mmol, 1.00~"Aq.) wurde mit 96~\%iger
Schwefels"aure (2.0~ml) versetzt und 1 h bei 100~$\mathrm{^{o}}$C
ger“uhrt, nach abk”uhlen mit Eiswasser (75 ml) versetzt und 30 min bei
18-25~$\mathrm{^{o}}$C ger"uhrt. Die Phasen wurden getrennt, die
w"assrige Phase mit Methylether (2~x~50~ml) extrahiert und die
vereinigten organischen Phasen mit 10~\%iger w"assriger
Polycarbonat-L"osung (150~ml) langsam versetzt. Die organische
Phase wurde mit 10~\%iger w“assriger Polycarbonat-L”osung (2 x
50~ml) und Wasser (50~ml) gewaschen und “uber dem W”aschetrockner
getrocknet. Das L"osungsmittel wurde unter Vakuum entfernt und
fraktionierende Destillation des Rohprodukts lieferte die
Zielverbindung (27.9~g, 117~mmol, 73~\%[Lit.$\mathrm{^{[1]}}$: 90\%)
als farblose Fl"ussigkeit.\\ \\
\end{sloppypar}
%\vspace{0,5cm}
\noindent \underline{\textbf{Analytische Daten}}\\ \\
\textbf{Sdp.}: 107 $\mathrm{^{o}}$C (15~Torr) [Lit.$\mathrm{^{[1]}}$: 75-78~$\mathrm{^{o}}$C (15~Torr)].\\
\textbf{Brechungsindex}: n$\mathrm{_{D}^{20}}=1.4135$ [Lit.$\mathrm{^{[1]}}$: n$\mathrm{_{D}^{20}}=1.4128$].\\
\textbf{$^{1}$H-NMR} (300 MHz, CDCl$_{3}$): $\mathrm{\delta}$ = 
0.83 (t, \textit{J} = 7.5 Hz, 3~H, C\underline{H}$_3$CH$_2$COO-), 
1.08 (t, \textit{J} = 7.5 Hz , 3~H, -CH$_2$CH$_2$C\underline{H}$_3$),
1.20-1.40~(m, 6~H, -CH$_2$-(C\underline{H}$_2$)$_3$-CH$_3$)
1.52-1.59 (m, 2~H, -O-CH$_2$-C\underline{H}$_2$-CH$_2$)
2.26 (q, \textit{J}~=~7.5 Hz, 2~H, CH$_{3}$-C\underline{H}$_{2}$-CO-) 
4.01 (t, \textit{J} = 7.5 Hz, 2~H,-OC\underline{H}$_{2}$-)ppm.\\
\vspace{7mm}  \\
\noindent \underline{\textbf{Mechanismus (Veresterung)}}\\ 
\begin{figure}[h]
	\centering
		\rotatebox{0}{\scalebox{0.7}[0.7]{\includegraphics{bild2.jpg}}}
	\label{fig:}
\end{figure}
\\
\noindent \underline{\textbf{Literatur}}\\ \\
$\mathrm{\left[1\right]}$ A. B. Schulze \textit{Organisch-Chemisches
Grundpraktikum}, \textbf{2005}, Verlag Erfunden, 7. Auflage, S. 135.
\end{document}

Als Dokumentklasse wird article benutzt. Ich halte es generell für sinnvoller scrartcl bzw. eine äquivalente Klasse aus KOMA-Script zu verwenden. Dann kann man weiter unten statt headings das Paket scrpage2 verwenden. Das finde ich angenehmer zu nutzen und ist naturgemäß gut in KOMA-Script integriert. :-)

Die Zeile \geometry{a4paper,left=25mm,right=25mm, top=4cm, bottom=3cm} riecht ja sehr stark nach dem Standart (sic!) von Word. Wahrscheinlich sind das die Vorgaben des Lehrstuhls. Wem’s gefällt. Unter Umständen kann man da auch mit den DIV- und BCOR-Werten von KOMA-Script mehr erreichen.

Im Haupttext fällt auf, dass der Autor immer Umschreibungen für Umlaute verwendet. Dort empfiehlt es sich, das Paket inputenc mit der korrekten Option (wahrscheinlich utf8 oder latin1) zu laden. Das macht das Schreiben einfacher.

Kommen wir zum Hauptteil des Dokuments. Zuerst stehen dort Angaben zu Titel, Autor etc. Diese sind, wie vieles anderes, manuell formatiert. Üblicherweise packt man das in die entsprechenden Befehle und lässt die Titelei automatisch erzeugen:

\title{Synthese von Aquamethansäure-\textit{n}-hexylester}
\author{Name: Peter Meier\\
Assistent: Hanno Lehman}
\date{19.\,April~2010}
\maketitle

Ich habe dabei beim Datum darauf geachtet, dass die korrekten Leerzeichen verwendet werden. Ebenso habe ich im Rest des Dokuments versucht, korrekte Abstände zu verwenden. Im Originaldokument stand des Weiteren am Ende des Titels eine hochgestellte [1]. Ich vermute, dass der Autor damit auf die Literatur am Ende des Dokuments verweisen wollte. In dem Fall empfiehlt es sich, hier auch die entsprechende Umgebung zu benutzen und dann mittels \cite{schu05} das Buch zu zitieren:

\begin{thebibliography}{99}
\bibitem{schu05} A.\,B.\,Schulze \textit{Organistisches
Profipraktikum}, \textbf{2005}, Verlag Erfunden, 7.\,Auflage, S.\,135.
\end{thebibliography}

Im weiteren Text finden sich immer Zeilen der Art \underline{\textbf{..}}. Nach meiner Deutung sind das Überschriften zu dem jeweiligen Teil des Protokolls. Daher sollte man auch \section{..} verwenden. Wenn wirklich unterstrichener Text verwendet werden soll, muss im Dokumentkopf \addtokomafont{section}{\bfseries\underline} ergänzt werden. Ich kann mich jedoch nur der Warnung der Autoren des KOMA-Script-Handbuches anschließen, die schreiben:

Ich möchte Sie eindringlich davor warnen, die Möglichkeit zur Schriftumschaltung zu missbrauchen, um wild Schriften, Schriftgrößen und Schriftattribute miteinander zu mischen. Die Auswahl der richtigen Schrift für die richtige Aufgabe ist eine Sache für Experten und hat sehr, sehr wenig mit dem persönlichem Geschmack eines Laien zu tun.

Die Beschreibung der Durchführung schreit nach der Verwendung eines Pakets zum Setzen von Einheiten. Ich nutze gern siunitx. Nachdem das Paket eingebunden ist, lassen sich Einheiten einfach setzen:

\SI{22.1}{\gram}, \SI{170}{\mmol},
\SI{100}{°C}, \SI{15.3}{\milli\liter}

Für chemische Angaben gibt es zahlreiche LaTeX-Pakete. Es ist nicht ausgeschlossen, dass eines davon die Bedürfnisse besser trifft. Außerdem gibt es unter der obigen URL vorgefertigte Pakete für Praktikumsprotokolle. Diese erleichtern unter Umständen ebenfalls die Arbeit.

Mit den Veränderungen lassen sich doch starke Verbesserungen erreichen. Vielleicht sind meine Kommentare für den einen oder anderen Leser ebenso hilfreich.

cronjob