Wer wie Kollege Torquie allmorgendlich bereits kaum lösbare Herausforderungen zu bewältigen hat, kann nun online üben:
Donnerstag, 31. August 2006
Nicht nur für Frauen: Einparkierhilfe
Tags: Uncategorized
Labels: Uncategorized
Donnerstag, 31. August 2006
Wer wie Kollege Torquie allmorgendlich bereits kaum lösbare Herausforderungen zu bewältigen hat, kann nun online üben:
Tags: Uncategorized
Labels: Uncategorized
Sonntag, 27. August 2006
Nachtrag: Langer Rede kurzer Sinn – wer folgenden Befehl in Terminal.app ausführt, hebelt das Trial Limit aus (<user> muss entsprechend ersetzt werden):
chmod 000 "/Users/<user>/Library/Application Support/.ic241" chmod 000 "/Library/Application Support/.ic241"
Dieses Wochenende gehörte voll und ganz iConquer. Nach einigen Runden (die ich allesamt gegen Melanie und den Computer verloren hatte) war klar: Da muss eine Lizenz her. Noch am Samstag-Mittag bestellte ich deshalb über die Web-Site des Entwicklers einen Lizenzschlüssel. Leider ist bis jetzt, kurz nach Sonntag-Mitternacht, immer noch kein Mail eingetrudelt, mit dessem Inhalt ich die Applikation freizuschalten wäre. Das ist nicht so erfreulich:
Da es sich um Trial-Ware handelt, ist das Produkt zwar benutzbar – aber nur für 10 „uses“ (Spiele? Programmtarts?). Das Limit hatten ich und Melanie leider bereits am späteren Samstag-Abend erreicht …
Da sich umgehend erste Entzugserscheinung breit machten, versprach ich Melanie, das Programm zu „hacken“ (auch hier wieder in Anführungszeichen, denn wie bei meinen anderen „Hacks“ trennen mich Welten von den Mitnicks & Co. da draussen).
Wer nun denkt, dass ich kurzerhand zu im Netz herumschwirrenden Serials griff, liegt komplett falsch. Mein Ziel war es, das Programm völlig legal freizuschalten, den Zähler also auf null Spiele zurückzusetzen.
Ich vermutete (korrekterweise), dass der Entwickler des Programms die Anzahl gespielter Spiele irgendwo speichern musste (eigentlich logisch). Als erstes löschte ich deshalb den Applikations-Ordner, auch wenn ich keine grosse Hoffnung hegte, den Zähler so zurücksetzen zu können. Und tatsächlich: Nachdem ich das Programm frisch aus dem .dmg auf die Platte kopiert hatte, war der Zähler immer noch da. Nächste Vermutung deshalb: Irgendwo unter ~/Library/ wird sich eine Datei befinden, die die gesuchten Daten enthält. Fände ich diese Datei, könnte ich den Zähler zurücksetzen.
Ich erinnerte mich daran, dass ich auf identische Weise in grauer Vorzeit bereits eine Test-Version von FontAgent Pro mehr oder weniger in eine Kauf-Version umgewandelt hatte.
Die wohl einfachste Methode, die gesuchte Datei zu finden, war die Applikation beim Start zu „debuggen“ (oder verwende ich hier den falschen Begriff? Wäre „tracen“ besser?“). Auf gut deutsch: Mittels eines anderen Tools aufzuzeichnen, auf welche Dateien iConquer.app nach dem Doppelklick auf das Applikations-Symbol zugriff. Die gesuchte Datei müsste relativ zu Beginn des Startvorgangs geladen werden, da der Nag-Screen sekundenbruchteile nach dem Start auftauchte.
Leider entschied ich mich für das falsche Tool – lsof – welches für diese Zwecke nicht wirklich geeignet war. Immerhin entdeckte ich eine sehr ausführliche Seite im Netz, die so einiges an Kommandozeilen-Parameter erläuterte:
Wichtig erschien mir hierbei die Option -r <sec>, mit der man lsof anwies, alle X Sekunden erneut die Liste der geöffneten Dateien auszugeben. Mittels grep versuchte ich, die Datenmengen zu filtern, doch irgendwie tauchten in der Liste keine vielversprechenden Dateinamen auf:
lsof -r 1 | grep iConquer
Ob mit -r 1 evtl. Informationen verloren gehen?
… das Gute liegt so nah!
Nach ca. 30 Minuten pröbeln verpasste lsof seine letzte Chance und ich begann mich, nach anderen Tools umzusehen. Zuerst stiess ich auf die GUI-Applikation fseventer, die noch weniger brauchbar war. Erst danach bemühte ich Google erneut und stiess … auf einen Blog-Eintrag von mir selbst:
fstat, lsof und fs_usage unter Mac OS X
fs_usage? Ja klar doch, wieso habe ich dieses Tool nicht bereits früher herangezogen?!
Ich aktivierte es also mittels …
sudo fs_usage | grep iConquer | grep open
… und wurde nicht enttäuscht:
01:14:18 open /Library/Application Support/.ic241 0.000010 iConquer 01:14:18 open /Users/mario/Library/Application Support/.ic241 0.000007 iConquer
Sehr schön, wie der Entwickler die Datei getarnt hat: Der Punkt verhindert, dass die Textdatei, die nur eine Zahl enthält, im Finder angezeigt wird. Der kryptische Name soll den Urheber verschleiern. Aber gegenüber fs_usage kann auch hier nichts vertuscht werden *smile*
Mit vim setzte ich die Zahl von 10 auf 0 zurück (man könnte die Datei übrigens auch einfach löschen – ist etwas sauberer) – und genoss weitere zehn Runden iConquer.
Wer fahrlässigerweise mit einem Benutzerkonto arbeitet, das über Administratorenrechte verfügt, muss zusätzlich folgende Datei anpassen:
iConquer.app/Contents/Resources/English.lproj/Statistics.strings
Als Administrator hat man nämlich die Berechtigung, in Applikations-Ordner zu schreiben, wovon der Entwickler von iConquer Gebrauch gemacht hat: In dieser Datei wird sozusagen doppelt Buch geführt über die Anzahl der Programmstarts.
Wenn doch der Lizenzschlüssel bald kommen würde …
Eine Frechheit finde ich es übrigens, dass das Game dank einer eindeutigen (?) Maschinen-Nummer an den PC gebunden wird. Ich möchte das Programm auf meinem MacBook wie auch auf meinem PowerMac installieren und benutzen.
Die Registry. Unter Windows würde ein solcher Zähler garantiert in dieser teuflischen Registry gesichert. Da lob‘ ich mir doch, dass unter Mac OS X – wie bei allen anderen Unixes – solche Dinge in hundsnormale Dateien gespeichert werden.
Tags: Windows
Labels: Allgemein
Samstag, 26. August 2006
(Ich hoffe, dass die Entwickler von Partyguide.ch mitlesen …)
Gestern habe ich mich daran gemacht, die Web-Site meines Arbeitgebers zu überarbeiten.
Zuerst nahm ich mich dem Layout an. Dieses hatte ich zu Beginn des Jahres 2003 entwickelt – einer Zeit, als Tabellenlayouts noch State-Of-The-Art waren (jedenfalls in meinem Kopf) und ich CSS gerade erst zu entdecken begann, um damit … Texte zu formatieren.
Dass man mit den Cascading Stylesheets noch viel mehr anstellen konnte, verschloss sich mir damals noch.
Viel hat sich in der Zwischenzeit getan und heute möchte ich die Funktionalität von CSS2 nicht mehr missen. Die Templates für Web-Sites lassen sich rascher und mit viel weniger Overhead erstellen und auch nachträglich ohne Eingriff in den Code abändern. Zudem sind sie behindertengerechter.
Leider, leider, hat sich der 500-Pfund-Gorilla aus Redmond bei der CSS-Implementation in den sichersten Browser der Welt (just kidding) nicht viel Mühe gegeben, weshalb man immer überprüfen muss, ob auch der MSIE auch wirklich alles korrekt anzeigt, wie es seine standardkonformeren Kollegen Firefox, Safari und Opera anstandslos tun.
Erst dank CSS habe ich gelernt, ganz normale HTML-Tags wie h1 und p zu lieben. Zu nothing-Zeiten benutzte ich beispielsweise nicht etwa h1, um Überschriften festzulegen, sondern etwas in der Form
<span class="contentTitleFirstLevel">Title</span>
Es gibt Leute, die Spass daran haben, das Rad immer wieder neu zu erfinden. Auch ich gehörte dazu. Abgebucht unter: Jugendsünde. Denn er wusste nicht, was er tat …
Neben der Verschlankung des Designs (die Grösse des Templates konnte in etwa halbiert werden!) liess ich natürlich auch eine Web 2.0-Komponente in das Design einfliessen: Eine interaktive Personensuche.
Aus den Fehlern von Partyguide schlau, legte ich besonderes Augenmerk auf XSS-Sicherheitslücken. Für Aussenstehende: XSS bedeutet das „Einschleusen“ von Code auf eine Web-Site. Je nach Art der Web-Site lassen sich so mehr oder weniger grosse Dummheiten anstellen. Bei Partyguide hatte man bei der Attacke beispielsweise Zugriff auf die Cookies des Benutzers, in denen das (glücklicherweise nach meiner Intervention) verschlüsselte Passwort abgelegt war.
Damit bei meiner Personensuche nicht ungewollt Code eingeschleust werden kann, der sich für eine XSS-Attacke missbrauchen liess, baute ich eine (hoffentlich recht zuverlässige) Sicherung ein:
1 ...
2 if(!isset($_GET['string'])) {
3 $str_output .= '<p>Fehler: Formular nur teilweise übermittelt.</p>';
4 die($str_output);
5 }
6
7 $str_lookup_string = $_GET["string"];
8 $str_lookup_string = preg_replace("/[^a-zA-ZäöüÄÖÜ]/",NULL,$str_lookup_string);
9
10 if(strlen($str_lookup_string) < 3) {
11 $str_output .= '<p>Hinweis: Mind. 3 Zeichen eingeben.</p>';
12 die($str_output);
13 }
14 ...
15 $str_atom = $str_field . " LIKE '%" . mysql_escape_string($str_search_string) . "%'";
16 ...
Hier kurz einige erläuternde Erklärungen:
Tags: Partyguide
Labels: Allgemein
Samstag, 26. August 2006
iConquer – ein genialer Zeitvertrieb (für Mac OS X), angelehnt an das Brettspiel Risiko.
Nur mit dem Gewinnen hapert es noch ein wenig. Bis zum nächsten gemeinsamen Wochenende mit Melanie muss ich mich deutlich verbessern. Das bedeutet: Üben, üben und nochmals üben …
Tags: Uncategorized
Labels: Uncategorized
Donnerstag, 24. August 2006
„Geben wir Local.ch mal eine Chance …“ dachte ich mir soeben.
Das Ziel war simpel: Ich suchte eine Papeterie in der Stadt Bern (Objekt der Begierde: Sichtmäppchen für CD-Hüllen zum Einordnen).
Und tatsächlich, es funktioniert:
Solchen Lokalisierungs-Diensten gehört eindeutig die Zukunft.
Einziger Kritikpunkt: In der Marktgasse gibt es wohl die grösste (?) Papeterie in Bern, wo ich bereits solche Hüllen gekauft habe. War es Paputik? Ah, nein, Kollbrunner! Beide werden nicht angezeigt.
Zwei Erklärungsversuche:
Ich hau’s jetzt jedenfalls ab in die City und kaufe mir eine Ladung Mäppchen.
Özel: Off.
Tags: Uncategorized
Labels: Uncategorized
Mittwoch, 23. August 2006
Es soll ja noch Leute geben, die mit Windows ME, 98 oder gar 95 unterwegs sind … Heute bin ich wieder einem solchen Sonderfall begegnet.
Viele Computer, die anno dazumal (noch im letzten Jahrhundert) mit Windows 98 ausgeliefert wurden, weisen eine USB-Schnittstelle auf – doch um daran Geräte wie Digitalkameras oder USB-Sticks (die glücklicherweise der Floppy und den ZIP-Drives endlich den wohlverdienten Todesstoss verpasst haben) zu betreiben, benötigt man … Treiber.
Während Windows 2000 und XP bereits generische Treiber mitbringen, die wohl fast jedes „normale“ USB-Gerät unterstützen, das sich als Wechsellaufwerk vorstellt, benötigt Windows 98 im Normalfall einen Treiber, der vom Hersteller des Sticks geliefert wird. Quizfrage: Wer kriegt heutzutage schon eine Treiber-CD zu seinem USB-Stick mit? Respektive: Wer hat diese nicht schon längst dem Rundordner übergeben?
Wie dem auch sei, das WWW lässt einem auch in dieser Angelegenheit nicht in Stich:
nusb23e.exe – Generischer Treiber für USB-Sticks unter Windows 98
Windows 98, especially in it’s second edition (also known as Windows 98SE), handles USB very well, however there are no generic drivers preinstalled in the operating system, so you will need to install some additional drivers for it.
Quelle: Installing USB Mass Storage Devices on Windows 98
Den (englischen) Treiber habe ich kaltblütig unter einem französischen Windows 98 installiert und die Frage, ob explorer.exe mit einer englischen Version ersetzt werden sollte, verneint. Auch bin ich mir nicht sicher, ob das betreffende Gerät wirklich über das anscheinend erforderliche Windows 98SE (= Second Edition) verfügte.
Auf jeden Fall kam das Gerät nach dem obligatorischen Neustart ohne Probleme hoch. Der Stick wurde aber erst erkannt, als ich im Geräte-Manager nach dem Treiber suchen liess und den USBSTOR.INF (oder sinngemäss) als passenden Treiber auswählte. Das gelbe Fragezeichen verschwand und der Stick wurde in der Folge problemlos gemountet.
Fünf Minuten – wenn doch beim PC-Support immer alles so rasch und erfolgreich abliefe …
Tags: Windows
Labels: Allgemein
Mittwoch, 23. August 2006
(Nein, es geht hier nicht um Frauen- oder sonstige Quoten, sondern um das engl. Verb „to quote“, sprich zitieren).
Da wollte ich der Menschheit etwas gutes tun und regte Kollege Söudu mit einigen lesenswerten Links (Outlook auf englische Abkürzungen umstellen RE statt AW sowie Wie stelle ich mein Microsoft Outlook XP/2000 richtig ein?) an, E-Mail-Antworten an mich doch korrekt zu betiteln und zu „quoten“ (bitte kein Tofu). Nada. Anstelle des >-Zeichens läuft er mit Outlook (Microsoft sei Dank!) Amok – und ich erhalte nun Mails mit folgendem Totschläger-Einrückzeichen:
Asülgesetz nein! 2x nein!—–Ursprüngliche Nachricht—–
Asülgesetz nein! 2x nein!Von: Mario Aeby
Asülgesetz nein! 2x nein![…]
(Notabene: Inhaltlich durchaus auf meiner Linie, aber formell überhaupt nicht)
Mittlerweile habe ich den meines Erachtens wohl besten Artikel zum Thema gefunden – leider auf Englisch, aber was solls. Mehr gibt es zum Thema wirklich nicht zu sagen:
Tags: Uncategorized
Labels: Uncategorized
Dienstag, 22. August 2006
Dann werdet ihr auch so gross und stark wie diese Heisssporne!
PS: Der Schnuggel vorne Rechts wäre noch zu haben. Bewerbung inkl. Ganzkörper-Photo per E-Mail bitte an mich …
Tags: Uncategorized
Labels: Uncategorized
Montag, 21. August 2006
Im Dock von Mac OS X kann man nicht nur Icons von häufig benutzten Applikationen ablegen, sondern auch Laufwerke und Ordner darauf ziehen, deren Inhalt bei gedrückter Maustaste angezeigt wird.
Nachfolgend zwei Beispiele, wie man mit solchen Ordnern seine Produktivität steigert:
Man öffne Terminal.app und wähle im Menu Save as… aus. Im erscheinenden Dialogfeld legt man einen (aussagekräftigen) Dateinamen („Save as:“) fest, aktiviert den unteren Radio-Button mit der Beschreibung „Execute this command (specify complete path)“ und gibt im Eingabefeld den gewünschten Befehl ein, der mit Klick auf diesen Shortcut im Terminal ausgeführt werden soll.
In unserem Falle also beispielsweise:
ssh luna@192.168.0.101
Da ich sicherlich nicht der einzige bin, der desöfteren mit SSH auf verschiedenste Server zugreifen muss, handelt es sich hierbei um eine deutliche Arbeitserleichterung (und spart eine Menge Tipparbeit).
Für jeden Server eröffnet man nun einen solchen Shortcut. Sobald die Funktionsfähigkeit der erstellten Kurzbefehle geprüft worden ist, erstellt man von den Befehlen Aliasse. So kann man den Befehlen beliebige Namen geben und die lästige .term-Endung weglassen. Die Aliasse werden in einem separaten Ordner abgelegt und dieser danach ins Dock gezogen.
Mittels weniger Mausgesten kann ich ab sofort Verbindung zu all meinen Linux-Kisten aufnehmen. Arbeitet man mit SSH-Keys und nicht mit Passwörtern, loggt man sich so ohne zusätzliche Benutzerinteraktion auf den entfernten Server ein. Wunderbar, nicht?
Analog verfährt man mit auf dem Desktop gemounteten Samba-Freigaben: Mit Apfel+L erstellt man einen Alias des Netzlaufwerkes. Klickt man mit Doppelklick darauf, wird das Laufwerk gemountet (vorher das Share mittels Apfel-E „ejecten“, damit man Mac OS X nicht durcheinander bringt). falls man die SMB-Zugangsdaten (Workgroup, User, Password) in der Keychain abgelegt hat, geschieht auch dies ohne weitere Benutzerinteraktion.
Auch diese Shortcuts legt man in einen Dateiordner ab (bei mir heisst dieser „SMB“) und zieht ihn dann ins Dock.
Tags: Uncategorized
Labels: Uncategorized
Sonntag, 20. August 2006
Danke für all‘ die Anfragen, die ich im Laufe dieser Woche erhalten habe. Ich darf meine Leser beruhigen: Weder bin ich mittlerweile Insasse einer geschlossenen Strafanstalt, noch wurde ich von Partyguide-Photographen zu Tode geblitzt.
Viel einfacher: Ferien! Ich war vom Samstag, 12. August 2006, bis Samstag, 19. August 2006, an der (azur)blauen Küste und habe dort mit Kollegen die Gegend um Nizza und St. Raphael unsicher gemacht. Wir haben sogar eine Sicherheitslücke entdeckt (und ausgenutzt), doch dazu später mehr.
Nun bin ich wohlbehalten zurück und werde es in den nächsten Tagen hoffentlich fertig bringen, ein Artikel „Ausgehen in Nizza“ (analog zu Ausgehen in Zürich – von Bernern für Berner, Ausgehen in Madrid – von Schweizern für Schweizer und Erste Osternacht in Kopenhagen) zu verfassen.
Notabene: Da ist man gerade mal sieben Tage weg, und schon spriesst ein neues Blog-Pflänzlein aus dem verregneten Boden. Torquie, herein, Willkommen im Verein!
Tags: Partyguide
Labels: Allgemein