Sonntag, Januar 19, 2014

Blog moved | umgezogen

Continued here. --- Ab sofort hier.


Weiterlesen / Read more

Dienstag, Januar 26, 2010

Chiemgau Skyline

Mal wieder Zeit ein Foto zu posten. Diesmal ein Projekt, das mir schon länger am Herzen lag. Ein Panoramafoto, welches die Schönheit unseres Chiemgauer Voralpenlandes demonstriert :)


Also - langer Rede kurzer Sinn - hier ist das Foto:



Einige der markanteren sichtbaren Berge:
  • Zwiesel
  • Hochstaufen
  • Hoher Göll
  • Hochfelln
  • Hochgern
  • Loferer Steinberge
  • Hochplatte
  • Kampenwand
  • Hochries
  • Heuberg
Eine entsprechend beschriftete Version wird wohl bei Gelegenheit folgen :)

PS: Ich hab natürlich eine besser auflösende Version. Für's Web sollte diese Version aber erstmal reichen :)


Weiterlesen / Read more

Montag, Oktober 05, 2009

Urban Terror cheater caught on video

I was playing Urban Terror yesterday and stumbled across a pretty shameless player (named [ToC]LOGGS) with both wallhack and aimbot enabled. So - what better thing is there than getting a demo and post a video of his shame for everyone to see?

Well, posting the video and commenting on the game so that others can learn how to identify cheaters online, of course :D

Actually, I did two videos: one plain video and one with r_shownormals=1. The latter one should give an impression of what the cheater would have seen with his wallhack. I didn't yet figure out how to include videos after I uploaded them on Youtube - so here are the plain links.

Plain video: [ToC]LOGGS cheating on Algiers

Video with added normals: Analyzing [ToC]LOGGS' cheating

Have fun :)


Weiterlesen / Read more

Samstag, August 08, 2009

Bilder Projektreise Waterford


Jetzt komm ich endlich mal dazu ein paar Bilder meiner Projektreise nach Waterford (6.-9. Juli, WIT) hochzuladen. Anbei ein kurzer Lagebericht :)

Dublin, 7. Juli, ein Uhr früh. Bin stinksauer auf Aer Lingus. 40min Verspätung und mein Bus nach Waterford war weg. Eigentliche Ankunft war dann entsprechend erst Dienstag um vier Uhr Ortszeit.

Tramoure in der Nähe bietet Meeresblick und auf dem Weg dorthin findet man den ein oder anderen Dolmen - allerdings nur, wenn man direkt danach sucht. Obwohl der Dolmen ausgeschildert war, war er recht versteckt zwischen drei Feldern hinter einer Hecke gelegen.



Waterford selbst hat ausser einer schönen Hügellandschaft auch ein paar fotogene Bauwerke vorzuweisen, wie in der Gallerie zu sehen ist :)


Weiterlesen / Read more

Freitag, April 17, 2009

And now for something completely different...

Heute ging mir beim Surfen ein Gedanke durch den Kopf: Wer garantiert mir eigentlich, dass ich die Möglichkeit habe mich auf beliebigen Seiten im Internet zu informieren?

Angenommen mein Provider will mir den Zugriff auf bestimmte Webseiten sperren - sagen wir: er will nicht, dass ich mich über alternative Tarife bei einem Konkurrenten informiere. Welche Möglichkeiten hat er mich zu blockieren und welche Möglichkeiten habe ich eine derartige Blockade zu umgehen?

Nun, er könnte beispielsweise auf die Idee verfallen, eine sogenannte DNS Sperre einzurichten - also sobald ich eine URL in meinem Browser eingebe oder auf einen Link klicke, den Aufruf dieser Seite zu blockieren. Nun hat ein persönlicher Bekannter von mir hierbei schon einmal festgestellt, dass eine derartige Methode nicht sonderlich intelligent ist. Das Problem dabei: die DNS Sperre blockiert nur den Namen, nicht die Adresse - würde die Seite von Arcor gesperrt, so könnte ich zwar nicht mehr durch Eingabe von www.arcor.de im Adressfeld auf die Seite gelangen, 151.189.21.100 an der selben Stelle würde aber weiterhin problemlos funktionieren. Wenn ich Glück habe und mein Provider selten dämlich ist, leitet er mich statt auf die eigentliche Seite auf eine Seite, die (zum Beispiel mit einem "STOPP"-Schild) anzeigt, dass die eben aufgerufene Adresse gesperrt ist, wodurch ich erstens sofort weiß, dass eben eine Sperrung vorgenommen wurde und zweitens vermuten kann, dass hinter dieser Adresse möglicherweise ein interessantes Gegenangebot eines anderen Internetproviders steckt.

Ich will mir natürlich nicht für alle interessanten Seiten im Internet komplizierte IP-Adressen merken. Zum Glück muss ich das aber auch gar nicht. Solange nur wenige Adressen gesperrt sind, würde es mir reichen, die IP-Adresse anderweitig zu erfahren und dann manuell in meine lokale hosts-Datei einzutragen. Sollte dies aufgrund der Zahl der gesperrten Seiten zu aufwendig werden oder kann ich die IP-Adresse nicht direkt in Erfahrung bringen, so habe ich auch die Möglichkeit einen alternativen DNS-Server einzutragen. Zum Glück gibt es diesbezüglich bereits reichlich Informationen inklusive Anleitung im Internet. Selbst für einen technisch überaus unbedarften Benutzer sollte sich der Zeitaufwand zum Einrichten eines alternativen DNS-Servers unterhalb von zehn Minuten bewegen.

Was nun, wenn aber der Provider nicht nur die Adresse sondern auch den Inhalt der Seite sperrt? Er könnte beispielsweise den Text einer Seite auf verdächtige Angebote scannen und unerwünschten Text in seinem Sinne verändern. Aber auch hier gilt: Obwohl der technische Aufwand seitens des Providers immens wäre, könnte selbst ein unterdurchschnittlich versierter Benutzer innerhalb von zehn Minuten lernen eine derartige Sperre zu umgehen. Alles was er tun muss, ist, die entsprechende Adresse - also www.arcor.de - statt im Adressfeld eines Browsers im Suchfeld eines per HTTPS/SSL gesicherten Web Proxies einzugeben. Die Seite baut sich etwas langsamer auf, aber die Sperre ist umgangen. Zum Glück gibt es auch hier bereits reichlich entsprechende Angebote im Netz.

Es scheint also keine Sperrmöglichkeit für meinen Provider zu geben. Letzendlich eigentlich auch nicht verwunderlich - schafft es doch selbst ein Staat wie China, trotz eines Willkürregimes sondergleichen, nicht die eigenen Bürger wirksam an der Informationsbeschaffung im Internet zu hindern.

Bleibt dem Provider noch mir das gesamte Internet zu sperren. Aber damit würde er ja letztendlich nur sich selbst torpedieren :)




PS: Kinderpornographie ist schlimm. Aber die von Frau von der Leyen vorgeschlagenen Sperren retten kein einziges Kind.


Weiterlesen / Read more

Mittwoch, April 08, 2009

HTPC Schritt 1: Fertiggestellt

Wie bereits im letzten Post angedeutet, habe ich damit begonnen mir einen Home Theater PC zu bauen. Den ersten Schritt auf dem Weg zur perfekten Entertainment-Box konnte ich dabei gestern schließlich zu Ende bringen.

Kurz zur Erklärung - was erwarte ich mir von einem derartigen Gerät? Wie üblich habe ich etwas "eigene" Vorstellungen vom "notwendigen" Funktionsumfang, weswegen eine Fertiglösung für mich von vornherein nicht in Frage kam.

Die wichtigsten Funktionen aus meiner Sicht sind:

  • Gängige Video- und Audio-Mediaformate/-container (DivX/XviD, Ogg Theora, ...) von allen portablen Medien abspielen - insbesondere externe USB-Platten und CDs/DVDs. Ersteres wird bei vielen gekauften Geräten leider schon schwierig.

  • Abspielen von Film-DVDs und Audio-CDs

  • Videos und Musik zum bequemen Zugriff auf der lokalen Platte lagern

  • Unterstützung für diverse "Gamepad-kompatible" Spiele (insbesondere Konsolen-Emulatoren)

  • Internet-Zugriff auf Video-Seiten wie Youtube

  • Anbieten der lokal gespeicherten Filme und Musik über Netzwerkfreigaben

  • Typische DVR-Funktion - d.h. Aufnahme von Fernsehsendungen mit der Option die Sendung zeitversetzt anzuschauen, Werbung zu überspulen, etc.

  • Leise Hardware, um den Film-/Musikgenuss nicht zu trüben

  • ... und das ganze natürlich per Fernbedienung ohne Maus und Tastatur fernsteuerbar.


Dabei kam als Hardware zum Einsatz:
  • Ein Intel Core2 Duo Prozessor auf einem Intel G45 Chipsatz

  • Ein Silverstone HTPC Gehäuse mit LCD-Anzeige und eigener Fernbedienung

  • Ein Terabyte Festplattenspeicher

  • Eine Hauppauge HVR 1300 TV-Karte

Auf der Softwareseite habe ich mich wegen der bequemen Installation und der einfachen Konfigurierbarkeit für Mythbuntu entschieden.

Nach Installation aller Komponenten war schließlich gestern der Tag erreicht, an dem ich den ersten "Milestone" als abgehakt betrachte: Der PC läuft absolut leise, die Grafik ist dank dem Intel-Chipsatz und HDMI astrein und sowohl lokal gespeicherte als auch extern (über USB, CD oder DVD) angebundene Filme oder Musikstücke lassen sich bequem per Fernbedienung anwählen und starten. FireWire und eSATA Medien habe ich mangels Verfügbarkeit nicht getestet, diese sollten aber auch funktionieren. Der PC benötigt keine Tastatur, nur zum Herunterfahren brauche ich derzeit noch eine Maus. Ansonsten ist für die ersten Filmabende schon mal gut vorgesorgt :)

Die nächsten Stolpersteine, um die ich mich kümmern muss, sind:
  • Netzwerkverbindung - interessantes Thema in einer Altbauwohnung: ich muss eine Wand durchqueren, um den PC ans Internet anzuschließen. WLAN ist mir dabei zu unzuverlässig, PowerLAN scheitert an einer dazwischenliegenden Sicherung und ein Loch durch ~50cm Steinmauer zu bohren scheint mir auch nicht direkt attraktiv zu sein - insbesondere weil der Vermieter Einspruch erheben könnte. Derzeit hoffe ich das Kabel unter der Türschwelle durchquetschen zu können.

  • Fernbedienung & LCD-Display - Das Gehäuse kam mit einer eigenen Fernbedienung, die scheinbar eine Maus zumindest teilweise ersetzen könnte. Leider funktioniert der derzeitig in den Paketquellen dafür verfügbare Treiber nicht - ich müsste eine aktuelle Version selbst kompilieren. Stattdessen benutze ich momentan die Fernbedienung der TV-Karte. Allerdings würde ich die LCD-Anzeige des Gehäuses, die mit dem selben Treiber angesprochen wird, beizeiten gerne nutzen

  • Aufnahme von Fernsehsendungen - ich habe zwar die TV-Karte eingebaut, habe sie aber noch nicht weiter konfiguriert. Nicht so wesentlich, da ich eh selten auf Fernsehen zurückgreife.

  • Wesentlicher ist da schon die Funktion der Spieleemulatoren: habe ich noch nicht getestet. Andererseits sehe ich keinen Grund für Probleme - ZSNES ist installiert und sobald ich meinen Gamepad angeschlossen und ein paar ROMs aufgespielt habe, sollte der Spass losgehen.

  • Schließlich: die Grafikausgabe über HDMI funktioniert zwar einwandfrei, aber der Treiber erlaubt mir momentan nicht das Audiosignal ebenfalls über HDMI auszugeben. Stattdessen nutze ich derzeit den Standard-Stereo-Klinkenausgang. Derzeit nicht tragisch, aber Audio über HDMI würde weniger Kabel und potentiell bessere Qualität bedeuten - dem wäre ich nicht abgeneigt.

Naja, jedenfalls kann ich mich jetzt erstmal bequem am Fernseher durch meine Filmsammlung arbeiten :)


Weiterlesen / Read more

Freitag, April 03, 2009

Long time no see

Nun hat mich also letztendlich das "Real-Life" doch eingeholt: fast ein Jahr seit dem letzten Post. Dabei gäbs durchaus das ein oder andere Projekt oder Erlebnis, was sich hier verewigen könnte. Also, was hab ich eigentlich das letzte Jahr so gemacht?

Bereits beim letzten Post war ich dabei, einigen Netzwerkproblemen näher auf den Grund zu gehen, was seither einen Großteil meiner Zeit einnimmt.

Seit letztem Sommer bin ich stolzer Besitzer eines OpenMoKo Smartphones. Auch wenn das Ding so seine Macken hat - ich find's tausendmal interessanter als jedes iPhone. Alleine die Möglichkeit, eine Root-Shell über USB zu öffnen, läßt den Geek in mir im Endorphinrausch schwelgen :)

Dann war da im September/Oktober noch ein Umzug, der mich nach wie vor mit einer Wohnung hinterlässt, die noch mit einigen Möbeln zu füllen ist (mir war vorher nie klar, wie viele Bücher ich eigentlich hab). Aber die Wohnung ist groß, gut gelegen, und eine wunderbare Gelegenheit, ein paar private Projekte anzugehen.

Davon wäre eines ein umfassendes VPN in meinem Bekanntenkreis. Leider beschränkt sich das derzeit auf eine Verbindung zum Lehrstuhl, aber die Grundlagen sind mit einem eigenen Router schon gelegt. Schließlich muss man sein Netzwerkwissen ja auch irgendwann anwenden :)

Außerdem hab ich Anfang diesen Jahres begonnen, mir eine Heimkinoanlage aufzubauen. Vor kurzem habe ich mir einen HTPC dazu besorgt - schnuckeliges Teil. Erfordert noch einiges an Einrichtungsarbeit, aber ich bin zuversichtlich, dass ich da mit Hilfe von MythTV was nettes draus basteln kann. DVDs und DivX/XviD Filme spielt er jedenfalls schon einwandfrei.

Wer mich spielend antreffen will: Ich treib mich gern auf deutschen Urban Terror Servern rum. Aber auch für Wesnoth bin ich immer wieder zu haben - insbesondere, da die neue Version 1.6 ja gut getestet werden will :)

Also - soweit die Kurzzusammenfassung des letzten Jahres. Ich versprech mal nicht, dass ich mehr schreiben werd, versuch mich aber zu bemühen.


Weiterlesen / Read more

Donnerstag, Mai 01, 2008

Mal wieder Zeit

So, jetzt finde ich langsam wieder ein bisschen Zeit mich um mein Blog zu kümmern. Das nutze ich gleich mal um ein Stück Code zu posten, was mich schon länger fasziniert.

Es ist eigentlich nur kurz, aber ich fordere jeden heraus selbst herauszufinden, was es tut, ohne es vorher zu kompilieren.

#include <stdio.h>

struct values {
int a;
char b;
short c;
double d;
int* e;
};

int main() {
int i = 0;
struct values val;
val.a = 1819043144;
val.b = 111;
val.c = 8236;
val.d = 17772928018443055750142378752
9445406531473442920180139133343049801
2916652608327063483957532130480119417
0146354883598704890228200485135295197
79571104209539432448.000000;
val.e = &i;

char* pointer = (char *) &val;
printf("%s\n", pointer);
return 0;
}

Die Programmiersprache ist (offensichtlich) C. Die Zahl hinter 'val.d' muss selbstverständlich auf eine Zeile - die hab ich nur der besseren Lesbarkeit halber umgebrochen.

Wer rausgefunden hat was dieses Programm macht und seine Hypothese überprüfen will: übersetzen lässt es sich einfach mit

gcc -Wall $DATEINAME


Man beachte, dass - trotz "Warn-Parameter" '-Wall' keine Warnungen ausgestoßen werden. Man kann mit C und Pointern halt wunderbar kryptische Sachen schreiben :)


Weiterlesen / Read more

Dienstag, Februar 12, 2008

Trigger Happy

Am neunten Februar 2008 wurde die militärische Entwicklung der Schusswaffen vollendet. Seit Samstag verfüge ich über eine funktionsfähige Lego-Knarre.

Als Handfeuerwaffe ergänzt sie sich wunderbar mit der Trebuchet. Zwar lassen Durchschlagskraft und Reichweite noch zu wünschen übrig, aber die Feuerfrequenz kann sich im Vergleich zur Trebuchet durchaus sehen lassen. Ausserdem macht es einfach unglaublich Spass, das Ding durchzuladen :)

Fairerweise muss ich gestehen, dass der Michi einen wesentlichen Teil der Arbeit geleistet hat. Insbesondere war er verantwortlich für Design und Entwicklung von Griff und Auslösemechanismus zu einem Zeitpunkt an dem ich schon am resignieren war und mich damit beschäftigte, einen Boxermotor nachzubauen.

Aber schließlich hat es doch geklappt. Obwohl es schon noch was zu tun gibt: Bislang ist es nur ein einfacher Vorderlader. Zudem zerlegt sich der Schlagbolzen nach häufiger Benutzung. Das Problem ist zwar schon besser geworden, aber noch lange nicht gelöst.

Es bleibt zu erforschen, wie man eine Vollautomatik realisiert. Zum dauernden Nachladen ist man ja schließlich viel zu faul ;)
Allerdings fürchte ich dazu benötige ich eine verlässlichere Energiequelle als Gummibänder. Naja... erstmal ein Magazinsystem entwickeln...

Irgendwann find ich noch raus, wie ich mit Lego einen Nuklearsprengkopf bastle ;)

Ach ja, bei Gelegenheit poste ich noch Fotos...


Weiterlesen / Read more

Sonntag, Februar 03, 2008

Virenscanner und PFWs - Diskussion

Ich will mich hier mal mit einigen weitverbreiteten Irrtümern zum Thema Computerviren, Personal Firewalls und allgemeine Computersicherheit beschäftigen. Leider tauchen in verbreiteten Foren immer wieder dieselben Halbweisheiten und Mythen auf, und es wird mit der Zeit mühsam, immer wieder die selben Scheinargumente entkräftigen zu müssen. Darum hier ein konzentrierter Versuch, die gängigsten Mythen zu enttarnen.

Diese Betrachtungen beziehen sich in erster Linie auf PCs im Heimanwenderbereich. Größere Firmennetzwerke haben andere Bedürfnisse - allerdings meist auch einen (hoffentlich) geschulten Netzwerkadmin, der kaum meines Ratschlags bedarf und in der Lage sein sollte, seine Anforderungen selbst zu beurteilen.

Irrtum 1:

"Ich kann mich absichern, indem ich nur genug Sicherheitssoftware installiere."

Theorie:

Mehr Software kann immer nur mehr Bugs haben - nie weniger. Zusätzliche Software bringt immer die (sehr reale) Gefahr mit sich, noch weitere Sicherheitslücken ins eigene System zu reißen. Die korrekte Frage, die man sich stellen sollte, lautet daher nicht "Was muss ich installieren, um sicher zu werden?" sondern "Was muss ich deinstallieren, um sicher zu werden?".

Praxis:

Sicherheitslücken, die von der Sicherheitssoftware erst aufgerissen wurden, sind durchaus keine nur abstrakte Gefahr. In einem sehr informativen CCC-Video[1] wird gezeigt, wie man einem Rechner, dank installierter Firewall, das Internet (genauer: den Zugriff auf einen DNS-Server) von einem anderen Rechner aus unbefugt "abstellen" kann. Weiter berichtete Heise Online erst vor kurzem von der Gefahr, die von nachlässig programmierten Virenscannern ausgeht[2].

Irrtum 2:

"Ein Virenscanner wird mich zuverlässig vor eingehenden Schädlingen schützen."

Theorie:

Es ist beweisbar unmöglich, Viren zuverlässig zu erkennen. Das wurde schon vor langer Zeit von Fred Cohen[3] erkannt.[4]

Praxis:

Bislang arbeiteten Virenscanner mit Virensignaturen bekannter Viren. Allerdings gibt es inzwischen derart viele Mutationen, dass viele Virenscanner dem nicht mehr gewachsen sind und sich auf die eingebauten Heuristiken verlassen müssen. Die sind jedoch bedeutend schlechter in ihrer Erkennungsrate. Zudem kämpfen Virenscanner zunehmend mit sogenannten "False Positives" - also Fehlalarmen[5]. Und mit Malware wie beispielsweise Blue Pill[6] wird sich die Situation noch weiter verschärfen.

Irrtum 3:

"Linux/Unix ist unsicher, weil es keine Virenscanner gibt."

Theorie:

Diese Aussage (die leider in der ein oder anderen Form immer wieder auftaucht) ist zuallererst einmal falsch. Es gibt durchaus Virenscanner für Linux und andere Unices[7, 8].

Praxis:

Da es unter Nicht-MS-Systemen praktisch nur Viren "aus dem Labor" gibt[9], und damit nahezu keine Gefahr besteht, sich zu infizieren, werden die verfügbaren Virenscanner unter Unix dazu eingesetzt, angeschlossene Windowsrechner zu schützen - beispielsweise indem eingehende Mails auf dem Mailserver geprüft werden, bevor sie von einem Windowsrechner abgeholt werden.

Irrtum 4:

"Linux/Unix ist unsicher, weil es keine Firewalls gibt."

Theorie:

Auch hier gilt dasselbe wie beim vorherigen Argument: Es gibt durchaus leistungsfähige Firewalls für Linux und andere Unices[10, 11]
Zugegebenermaßen haben diese Programme meist kein so nettes Interface, wie gängige Windows-Securitylösungen. Das hat einen Grund: Auf dem Desktop werden diese Anwendungen selten benötigt - und Vollzeitadministratoren, welche größere Computernetzwerke betreuen müssen, haben einerseits die Zeit, sich in komplexe Software einzuarbeiten, brauchen aber auch andererseits die zusätzliche Flexibilität, die anderer Software fehlt.

Praxis:

Firewalls werden unter Unix meist dazu eingesetzt, ganze Netzwerke zu schützen, nicht einzelne Rechner. Einen einzelnen Rechner zu schützen ist oft sinnlos: Der Software auf einem befallenen Rechner kann man generell nicht vertrauen. Auch wenn groß "Sicher" draufsteht. Eine Firewall sollte aus diesem Grund immer auf einem anderen Rechner laufen, als der gefährdete Dienst. Ich empfehle noch einmal, sich das CCC-Video zum Thema "Personal Firewalls"[1] zu Gemüte zu führen.

Irrtum 5:

"Linux/Unix wäre genauso gefährdet wie Windows, wäre es genauso
verbreitet."

Theorie:

Ja und nein. Einerseits sorgt eine Monokultur immer für eine übermäßige Anzahl an Schädlingen - in der Biologie genauso wie in der Softwarelandschaft. Andererseits hinken MS-Betriebssysteme seit Jahren der Konkurrenz in Sachen Sicherheit hinterher. Mechanismen, die erst vor kurzem mit Vista eingeführt wurden[12, 13], sind woanders längst bekannt und perfektioniert[14, 15, 16]. Und Microsoft hat es bislang - zur Freude der Virenautoren - noch nie versäumt, die Sicherheit ihrer Produkte zugunsten der "Benutzerfreundlichkeit" zu vernachlässigen.

Praxis:

Es gibt derart viele Linuxdistributionen[17], dass eine Monokultur nicht zu befürchten ist. Und dann gibt es ja auch noch MacOS X, FreeBSD, NetBSD,
OpenBSD, Solaris, ...
Tatsächlich würde in Sachen Sicherheit eine Verringerung des Marktanteils auf - sagen wir - 30% Windows mehr nützen als schaden: Dann gäbe es kein bevorzugtes Ziel für Virenautoren mehr, und der Aufwand um einen funktionierenden Virus zu schreiben würde sich bedeutend erhöhen - möglicherweise derart stark, dass es nicht mehr rentabel wäre ihn zu schreiben.

Fazit:


Es gäbe zu diesem Thema noch jede Menge zu schreiben, aber da dieser Post sowieso schon übermäßig lang ist, werde ich mich mit dem hier geschriebenen erstmal zufriedengeben. Ich hoffe das ein oder andere zur Aufklärung beigetragen zu haben.

Zum Schluss noch ein kleiner Disclaimer:
Bin ich dagegen, dass jemand Microsoft Windows als Betriebssystem verwendet?
Ich bin der festen Überzeugung, dass MS Windows in vieler Hinsicht ein minderwertiges Betriebssystem ist - nicht nur aus Sicherheitsgründen. Trotzdem sollte jeder natürlich die freie Wahl haben, selbst zu entscheiden, welches Betriebssystem er verwenden will. Ich will alle dazu ermutigen, sich ohne Vorbehalte andere Betriebssysteme anzuschauen und sich dann für das passendste zu entscheiden - ggf. auch Windows. Immerhin ist es ja möglich, dass ich - trotz Erfahrung mit Windows 3.11, 95, 98 und 2000 und trotz meiner Gehversuche mit XP und Vista - einfach noch nicht weiß, wie man Windows richtig" bedient ;)

Quellen:


  1. Chaos Seminar 2004/12, CCC Ulm

  2. Heise.de - Antiviren-Software als Einfallstor

  3. Wikipedia.org - Fred_Cohen

  4. Computer Viruses - Theory and Experiments, Fred Cohen

  5. Heise.de - Virenschutz schlechter als vor einem Jahr

  6. Wikipedia.org - Blue Pill

  7. www.clamav.net/

  8. www.fprot.org

  9. www.wildlist.org

  10. Wikipedia.org - Iptables

  11. Wikipedia.org - PF Paketfilter

  12. Wikipedia.org - User Account Control

  13. Microsoft.com - Understanding and Working in Protected Mode Internet Explorer

  14. Ubuntu.com - Administrative Tasks

  15. Wikipedia.org - Chroot

  16. Freebsd.org - The Jail Subsystem

  17. distrowatch.com


Weiterlesen / Read more

Samstag, Januar 26, 2008

Virenscanner und Personal Firewalls

Ok, hier biete ich vorrangig erstmal die Möglichkeit als aktuelle Reaktion auf eine Lawblog-Diskussion über Sinn und Unsinn von Virenscannern und Personal Firewalls zu debattieren - auch um dort das endgültige Abrutschen ins Off-Topic zu vermeiden.

Längerfristig werde ich versuchen einige Argumente zusammenzuschreiben um endlich eine dauerhafte Diskussionsgrundlage zu diesem Thema zu haben.

[Update]
Fertig:
http://balanceofcowards.blogspot.com/2008/02/ich-will-mich-hier-mal-mit-einigen.html


Weiterlesen / Read more

Montag, Dezember 24, 2007

Algorithmen - Teil 1: Quicksort

Neulich hab ich versucht, den Unterschied zwischen funktionalen und imperativen Programmiersprachen zu erklären und dabei festgestellt, dass man das am besten anhand von Beispielcode machen kann. Darum habe ich angefangen Quicksort in drei Programmiersprachen (C, Python, Haskell) zu implementieren. Da Perl und Ruby populäre Sprachen sind, die mich schon länger interessieren, sind die heute auch gleich dazugekommen - eine willkommene Gelegenheit für mich, diese beiden Sprachen näher kennenzulernen und gleichzeitig die Unterschiede und Gemeinsamkeiten der einzelnen Sprachen aufzuzeigen.

Bevor's losgeht noch ein paar kurze Bemerkungen:
Die Aufgabe ist mit Hilfe von Quicksort ein Integer-Array aufsteigend zu sortieren. Dabei habe ich nur in C eine In-Place Sortierung implementiert.
Als Pivot-Element wird das erste Element gewählt und mit 'p' bezeichnet. 'a' bezeichnet das Array und 'l' und 'r' stehen für den "linken" (kleineren) sowie den "rechten" (größeren) Teil des Arrays.
Die gezählten verwendeten Codezeilen beziehen sich nur auf die Funktion selber - zusätzliche Zeilen, die zur Ausführung benötigt werden (main()-Funktion, etc.) werden nicht gezählt.
Also, los gehts:

C

  • LOC: 16
  • Bemerkungen: In-Place Sortierung, längste Implementierung

#include <stdio.h>
void qsort(int a[], int len) {
if (len == 0) return;
int p = a[0];
int l = 0;
int r = len-1;
while (l < r) {
if (a[l] > a[r]) {
int tmp = a[l];
a[l] = a[r];
a[r] = tmp;
}
(a[l] == p) ? r-- : l++;
}
qsort(a, l);
qsort(&a[l+1], len-l-1);
}

int main(int argc, char** argv) {
int i = 0;
int test[10] = {6, 4, 9, 1, 2, 5, 3, 8, 7, 0};
qsort(test, 10);
printf("[");
for (i = 0; i < 9; i++) {
printf("%d, ", test[i]);
}
printf("%d]\n", test[9]);
}


Python

  • LOC: 9
  • Bemerkungen: Verständlicher Ternary-Operator

def qsort(a):
if (a == []):
return []
p = a.pop()
l = []
r = []
for e in a:
l.append(e) if (e < p) else r.append(e)
return qsort(l) + [p] + qsort(r)


Haskell

  • LOC: 3
  • Bemerkungen: Kürzeste Implementierung

qsort :: Ord a => [a] -> [a]
qsort [] = []
qsort (p:xs) = qsort([l | l <- xs, l < p]) \\
++ [p] ++ qsort([r | r <- xs, r > p])

(letzte Zeile zur Lesbarkeit umgebrochen)

Perl

  • LOC: 11
  • Bemerkungen: Abgefahrenste Syntax

#!/usr/bin/env perl
sub qsort {
my @l = ();
my @r = ();
my @a = @_;
return () if (@a == 0);
my $p = shift @a;
foreach (@a) {
($_ < $p) ? (@l[++$#l] = $_) : (@r[++$#r] = $_);
}
return (qsort(@l), $p, qsort(@r));
}

print qsort(1, 4, 3, 5, 2, 9, 8, 0, 6, 7);
print "\n"


Ruby

  • LOC: 13
  • Bemerkungen: Python nicht unähnlich

#!/usr/bin/env ruby
def qsort(a)
if !a.empty?
p = a.shift
l = Array.new
r = Array.new
a.each do |e|
e < p ? l.push(e) : r.push(e)
end
(qsort(l) << p) + qsort(r)
else
Array.new
end
end

puts qsort([4, 1, 6, 3, 8, 7, 2, 5, 9, 0])

Die Python- und Haskell-Module habe ich im jeweiligen Interpreter (Hugs bzw. die Python-Konsole) geladen.
Bemerkenswert: C hat die längste Implementierung, ist aber dafür In-Place. Haskell schießt dafür am entgegengesetzten Ende den Vogel ab, mit nur drei Zeilen (von denen die erste noch nicht einmal dringend nötig ist). Und das Perl-Statement
($_ < $p) ? (@l[++$#l] = $_) : (@r[++$#r] = $_);
finde ich dermaßen abgefahren, dass ich mir überlege das auszudrucken und an die Wand zu hängen. Ich habe selten dermaßen viele Sonderzeichen in einer Codezeile gesehen!
Wenn ich Zeit habe, werd ich auch noch Java-Code schreiben. Ansonsten überleg ich mir, was der nächste Algorithmus wird. Dijkstra vielleicht...


Weiterlesen / Read more

Freitag, September 28, 2007

Review - Ubuntu 7.10 Beta

Ubuntu 7.10 Beta Review

Sep 28, 2007 by Andreas Fischer★★★☆☆

Einleitung

Nachdem gestern Ubuntu 7.10 als Beta veröffentlicht wurde, konnte ich nicht widerstehen die neue Version zu testen. Folglich habe ich meinen Rechner noch am selben Abend aktualisiert.

Die Spezifikationen:
  • CPU: 700MHz Athlon
  • RAM: 512 MB
  • Grafikkarte: NVidia GeForce 2 MX
  • Vorheriges Betriebssystem: Ubuntu 7.04

Kurz mit "update-manager -d" das Update erzwungen, ein paar Dialoge durchgeklickt, und dann hieß es erst mal warten. Genauer: 6 Stunden. Allein der Download hat beträchtliche Zeit in Anspruch genommen und beim installieren und einrichten hat sich das Alter meiner Kiste doch deutlich bemerkbar gemacht. Folgendes ist mir dabei positiv/negativ aufgefallen:

Cons

Leider wurde der NVidia-Binärtreiber bei der Installation nicht mitinstalliert, was mir zwar hier die Möglichkeit gab, den neuen Fail-Save Grafikmodus zu begutachten, im Allgemeinen aber trotzdem ärgerlich ist, insbesondere, weil Fail-Save in diesem Fall wirklich nur Fail-Save war: Mein 19" Monitor war auf eine Auflösung von 800x600 bei 60Hz beschränkt. Auch nach der Neuinstallation des NVidia-Treibers brauchte es einen manuellen Eingriff in die xorg.conf, um die Auflösung auf brauchbare 1280x1024 Pixel bei 85Hz anzuheben. Hier versagt leider die neue Autokonfiguration des X-Servers - möglicherweise wegen fehlerhafter EDID-Informationen meines Monitors?
Weitaus unangenehmer war aber das anfänglich recht instabile Verhalten: Einige Programme stürzten ab, der Rechner stand dauerhaft unter Vollast und die Konsole wurde mit Fehlermeldungen zugemüllt. Zudem wurde mein externes Home-Verzeichnis nicht eingebunden. Gut - da hatte ich fast mit Problemen gerechnet, da es verschlüsselt ist. Es dauerte ein wenig, bis ich die Ursache dieser Fehler auf einen bereits bekannten Bug zurückführen konnte. Und in der Tat: nach der Deinstallation des evms-Pakets waren die Probleme gelöst - auch das fehlende Home-Verzeichnis - die Verschlüsselung war anscheinend kein Problem. Ich hoffe allerdings stark, dass obiger Fehler bis zum Erscheinen der offiziellen Version behoben wird.
Vom neuen Hintergrundbild war ich nicht so begeistert - das alte hat mir besser gefallen... aber das ist ja sowieso Geschmackssache.
Jedenfalls waren die Probleme nach einer weiteren Stunde behoben und ich konnte somit nach sieben Stunden anfangen, die Vorzüge des neuen Systems zu genießen:

Pros

Gut gefallen hat mir der neue Fail-Save Modus: auch wenn 800x600 etwas mickrig sind - für den unbedarften Nutzer auf jeden Fall besser, als ihn vor eine Textkonsole zu setzen.
Regelrecht begeistert war ich von der Einrichtung von Compiz-Fusion. Einerseits finde ich die 3D-Effekte angenehm dezent, andererseits lief ein 3D-Desktop auf dieser Kiste noch nie so problemlos: mit Ubuntu 7.04 und Beryl musste ich erst einen experimentellen NVidia-Treiber aus einem externen Repository installieren. Allerdings würde ich mir noch mehr Einstellungsmöglichkeiten wünschen (wo ist meine Expose-Funktion?).
Was auch sehr schön - aber meinerseits eigentlich schon in der letzten Version erwartet - war, war die vollständige Integration von Beagle bzw. Tracker in Nautilus. Jetzt fehlt nur noch eine einfache Möglichkeit, um Such-Anfragen als Bookmarks bzw. virtuelle Ordner zu speichern.
Ein kleines Schmankerl war der geänderte Text beim Sudo-Passwortprompt. Statt einfach "password:" auf die Konsole zu knallen, wird hier darauf hingewiesen, dass an dieser Stelle Sudo nach einem Passwort fragt. Bei verschachtelter Nutzung von ssh, sudo und/oder anderen Passwort-geschützten Programmen konnte da schon einmal Verwirrung herrschen.

Fazit

Alles in allem sieht dies nach einem runden Update aus. Spektakulär wird auf neue Nutzer wohl der standardmäßig aktivierte 3D-Desktop wirken - allerdings gabs den für versierte Nutzer auch vorher schon. Ansonsten sind die Neuerungen teils einfach fällig (Nautilus + Tracker), teils beschränken sie sich auf kleinere Annehmlichkeiten (der kombinierte Erscheinungsbild-Dialog).
Wegen des groben Fehlers beim Update, der doch etwas Hintergrundwissen verlangte (remote über ssh einloggen, apt-get remove auf der Konsole), gibts nur 3 Punkte. Aber bis zum finalen Release ändert sich das hoffentlich noch.


Weiterlesen / Read more

Montag, September 24, 2007

Wilder Kaiser - Teil 3


So, jetzt hab ich endlich auch Michis Fotos hochgeladen (das dauert vielleicht...).

Da gibt's jetzt noch mehr Fotos aus der steinernen Rinne. Die fehlen bei mir, weil ich zu dem Zeitpunkt den Fotoapparat weggepackt hatte.

Die Filme hab ich jetzt nochmal weggelassen... mal schaun, was daraus wird.

Was mir Sorgen macht: Der Speicherverbrauch in Picasa steigt beunruhigend schnell. Hab schon bald die Hälfte des verfügbaren Speichers aufgebraucht. Kann sein, dass ich die Auflösung der Fotos demnächst ein wenig eindampfen muss, um Platz für neue zu schaffen.

Auf alle Fälle geht's hier zu den neuen Fotos.


Weiterlesen / Read more

Sonntag, September 23, 2007

Spam-Blog

Da hat mich Google doch glatt letztens als Spam-Blog identifiziert.
Muss an dem OOXML-Post liegen - da hatte ich ja haufenweise "nichtssagende" Links im Text...

Naja jedenfalls bin ich jetzt wieder freigeschaltet und im Google-Index tauch ich auch wieder auf :)


Weiterlesen / Read more

Donnerstag, September 06, 2007

Wilder Kaiser - Teil 2


So - hier gibt's den zweiten Teil der Fotos.

Leider hab ich keine Fotos aus der Steinrinne, da ich wegen des steilen Wegs die Kamera eingepackt hatte.

Ein paar der Fotos sind eigentlich als Vorlagen für kleine Panoramen gedacht - wenn ich Zeit habe und meine Platte ein wenig freischaufeln kann, werd ich mich mal dransetzen und sie zusammenstitchen.

In der Zwischenzeit - viel Spass mit dem vorhandenen Material.

Hier geht's zur zweiten Fotostrecke.
Und hier nochmal der Link zu den ersten Fotos.


Weiterlesen / Read more

Mittwoch, September 05, 2007

Layout überarbeitet

Hab ein paar kleine Änderungen am Layout vorgenommen um das Blog etwas personalisierter zu machen.


Weiterlesen / Read more

Dienstag, September 04, 2007

OOXML Roundup

The results are coming in, and ISO already announced the outcome of the vote on OOXML. As was predicted here (and elsewhere), the OOXML vote failed - though by quite a narrow margin.



I hope I could provide a valuable service here, allowing everyone to keep track on published votes.

This started out as a private checklist on paper, but as soon as I went online with this, information quickly was added faster than I could have done it myself - partly to better informed sources, partly to my language barriers. So at least for me it has been a valuable experience and I want to express my thanks to all those participating in the process and providing me with the necessary information to fill up the gaps in my list. This would have been nothing without you.



The vote is over, the results are public - so where do we stand now?

Things are lining up for the BRM in February and the situation remains tense. I have seen some interesting ideas about OOXML, notably the proposition of France, effectively splitting the standard into two parts - one basic document part and one extension part - and merging it with ODF. Allowing vendors then to provide backwards compatibility via an ODF-extension would IMHO truly improve customer experience. Alas - that's probably not in the best interest of Microsoft.

So I sincerely hope each country that provided comments will take these comments seriously in February and will not allow itself to be soothed by an half-hearted attempt to solve the problems, but will insist on clean and proper resolution of them.



Let's hope the best for the future.

Greetings

Andreas Fischer (balanceofcowards)


Weiterlesen / Read more

Montag, September 03, 2007

Bergtour im wilden Kaiser - Teil 1


Gestern haben Michi, Sigi, Wolfgang und ich eine Bergtour im Wilden Kaiser in Angriff genommen.



Losgegangen sind wir mittem im Kaisergebirge vom Kaiserbachtal aus. Schon da war der Anblick der zackigen Felsen um uns herum beeindruckend.



Ziel war es, die hintere Goinger Halt durch den Aufstieg durch die Steinerne Rinne zum Ellmauer Tor zu erreichen. Der Aufstieg gestaltete sich dabei als überaus sehenswerte, aber auch anstrengende Tour. Schwindelfreiheit ist hier definitiv ein Muss.



Ich lade heute nur einen Teil der Fotos online - der Rest folgt später in einem zweiten Posting.



Fotos (Teil 1)


Weiterlesen / Read more

Freitag, August 31, 2007

Tracking the status of Office Open XML


UPDATE: OOXML has failed!

Final roundup here.

nilesh has created a google-map that shows the voting status.

See below for further info on the voting.

Update2: The official result has leaked by now. Lots of approval from non-P-Members, but not enough from P-Members.

Results are available here.



The submission of the OOXML document file format by Microsoft to ISO for fast-track acceptance as a worldwide standard, has created a heated discussion. Many (including me) view this >6000 page specification as being incomplete and severly bugridden. Nevertheless, only a few days short of the dead-line, many countries seem to either go for approve ("Yes"/"Yes with comments") or abstain - sometimes under very dubious circumstances - as can be read on noooxml.org.



Here I will try to keep track of votes, as published by each country, trying to allow estimations on whether the standard will be approved or not.





I am working mostly with noooxml.org as a source here. List of P-Members is taken straight from the iso.org website.
A word about me beforehand: I am just an interested individual - I have no insight into any official standards procedures nor am I affiliated with any of the involved parties. So - take my information with a grain of salt.


This is the list, then:



Participating Countries (JTC1 and/or JTC1/SC34)


  • Australia ( JTC1 ): abstain

  • Azerbaijan ( JTC1 ): ?

  • Belgium ( JTC1 ): ?

  • Brazil ( SC34 ): no

  • Bulgaria ( SC34 ): ?

  • Canada ( JTC1 & SC34 ): ?

  • Chile ( SC34 ): abstain

  • China ( JTC1 & SC34 ): no

  • Colombia ( SC34 ): yes

  • Cyprus ( JTC1 & SC34 ): ?

  • Czech Republic ( JTC1 & SC34 ): no

  • Côte-d'Ivoire ( JTC1 & SC34 ): ?

  • Denmark ( JTC1 & SC34 ): no

  • Egypt ( SC34 ): ?

  • Ecuador ( JTC1 ): no

  • Finland ( JTC1 & SC34 ): abstain

  • France ( JTC1 & SC34 ): no

  • Germany ( JTC1 & SC34 ): yes

  • India ( JTC1 & SC34 ): no

  • Iran ( JTC1 ): no

  • Ireland ( JTC1 ): no

  • Italy ( JTC1 & SC34 ): abstain

  • Jamaica ( JTC1 ): ?

  • Japan ( JTC1 & SC34 ): ?

  • Kazakhstan ( JTC1 & SC34 ): ?

  • Kenya ( JTC1 & SC34 ): yes

  • Korea, Republic of ( JTC1 & SC34 ): no

  • Lebanon ( JTC1 & SC34 ): ?

  • Malaysia ( JTC1 ): ?

  • Malta ( JTC1 & SC34 ): yes

  • Netherlands ( JTC1 & SC34 ): abstain

  • New Zealand ( JTC1 ): no

  • Norway ( JTC1 & SC34 ): no

  • Pakistan ( JTC1 & SC34 ): ?

  • Poland ( SC34 ): yes

  • Romania ( SC34 ): yes

  • Saudi Arabia ( JTC1 ): ?

  • Singapore ( JTC1 ): yes

  • Slovenia ( JTC1 ): ?

  • South Africa ( JTC1 ): no

  • Spain ( JTC1 ): abstain

  • Sri Lanka ( SC34 ): ?

  • Sweden ( SC34 ): abstain

  • Switzerland ( JTC1 & SC34 ): yes

  • Thailand ( SC34 ): ?

  • Trinidad and Tobago ( JTC1 & SC34 ): ?

  • Turkey ( JTC1 & SC34 ): ?

  • USA ( JTC1 & SC34 ): yes

  • United Kingdom ( JTC1 & SC34 ): no

  • Uruguay ( JTC1 ): yes

  • Venezuela ( JTC1 & SC34 ): ?



Other countries




Some countries seem to be missing from that list - I wonder about the state of New Zealand, South Africa, Palestine and Portugal now?!

I think I finally understood the voting rules. I'll add another column to the table for countries, who are not P- or O-Members, but generally members of ISO.


Edit: Completely reordered the list. Now both P-Members of JTC1 and JTC1/SC34 are appearing.



Unfortunately there are still quite a lot of '?'s - would be great, if somebody could provide additional information.



Summary:







Votes P-M JTC1 (41)P-M SC34 (36)OthersTotal
yes 7 8 1 11
no 13 9 1 15
abstain 5 5 2 9
unclear 16 14 0 20




A note on the P-Members: the iso website says that there are 41 members, however only 40 are listed - perhaps the list is not up to date.
Edit: missed the USA at the top. Updated list accordingly



Up to now, nothing seems to be decided yet... discounting my possible lack of information, of course.



UPDATE:
According to this information, the vote for OOXML has failed. It did not reach the 2/3rds majority required by the P-Members of JTC1, as 13 members have been reported, voting "no" and 5 members are abstaining, with a total of 41 members. To get the 2/3rds majority, 19 members would have to vote "yes" on top of the 7 members that did already. However, only 16 members are remaining without a vote.



I will continue to fill in the gaps as more information gets public, until the official outcome is revealed. Meanwhile a great thanks goes to all those providing me with the necessary information - I could not have done it alone.



(End Update)






I'll try to link sources for each confirmed vote soon. Please contact me, if you have better (more accurate) information.





--Edit--
Sources updated


Combined result into table for better readability





--Edit--
List of members was flawed - relevant list is: JTC 1/SC 34


Weiterlesen / Read more