Archiv

Archiv für die Kategorie ‘Fun’

Fork-Bombe

5. Januar 2009

Das letzte Thema des vergangenen Jahres war Krieg, daher fangen wir dieses Jahr mit einer Bombe an: Eine Fork-Bombe.

Das Prinzip funktioniert so: Man öffnet auf einem System so viele Prozesse wie möglich, bis der Rechner nicht mehr in der Lage ist, mehr Prozesse zu öffnen. Das Ergebnis ist, dass die Maschine danach faktisch tot ist.

Klar, das will man nicht machen, ist auch nur ein witziges Beispiel, wie leicht eine solche Fork-Bombe in der Linux Shell zu basteln ist.

Und so geht’s: In der Bash lassen sich Funktionen durch name(){ code; } definieren und später mit Ihrem Namen aufrufen:

list(){ ls -Alh; }
list

Ruft man nun in der Funktion die Funktion selbst 2x auf, so ergibt dies wenige Millisekunden nach dem Start der Funktion sehr viele Prozesse – ein Standard-Linux bleibt in diesem Fall nahezu stehen:

list(){ list|list; }
list

Noch gemeiner wird es, wenn man die Funktion nicht ‘list’ nennt, sondern einfach nur Unterstrich (_) und den Aufruf mit einem Strichpunkt trennt, so dass es nur eine Zeile ergibt:

_(){ _|_; }; _

Unscheinbar, aber kann bei korrekter Eingabe (Leerzeichen beachten!) echt Probleme bringen. Also nicht starten, wenn der Rechner gerade noch benötigt wird :)

Was ich übrigend auch witzig finde:

(
echo -ne "x42x5ax68x39x31x41x59x26x53x59x1bx24x1dxf7x00x00"
echo -ne "xc2xffxf7xf6x71x80x80x53x20x60x60x7fx42x58x30xa0"
echo -ne "x40x10x04x40x71x60x80x41x20x40x64x00x00x94x00x01"
echo -ne "x00x20x00x90x30x00x00x00x03x41xa0x0dx00xd0x08xaa"
echo -ne "x44xc4x69x89xa3x68x8dx19x34xc4x31x36xa6x9ex27x90"
echo -ne "x52x90x19x00x7bx31x00xc2x1ex6ax95x2ax59x82xb9x00"
echo -ne "x72xaax56xa9xc1x52x79x7cx80x61x52xa5xe0x19x7bx80"
echo -ne "x76x54xa9xf5xfdx15x4dxc0x3exbcx55x36x4fx44xcax99"
echo -ne "x3axaax71x8fx00x1ax15x39x80xc9x37xdaxa4x3ax75x9a"
echo -ne "x89xd5x3ax2ax5bx4fxbcx55x21x64xaax9ex0ax91x8axa6"
echo -ne "x00x1axbbx71x5axa9x5axa5x96xffx8bxb9x22x9cx28x48"
echo -ne "x0dx92x0exfbx80"
) | bunzip | bunzip > outfile

Macht nichts schlimmes, legt nur ein outfile an – aber was für eins :-)

Fun, IT, LST , , ,

Nutzungsbedingungen in deutscher Sprache…

26. Dezember 2008

Schön, wenn ein Anbieter sich die Mühe macht, für deine deutschen Publikationen auch deutsche Nutzungsbedingungen zu schreiben. Schade nur, wenn der Inhalt vom amerikanischen Mutterkonzern übersetzt wird und dann sowas dabei rauskommt:

Diese Publikation wird als “as is” zur Verfügung gestellt, ohne jegliche Garantien, weder ausdrücklich noch impliziert, einschließlich, aber nicht ausschliesslich implizierter Garantien der Handlelsfähigkeit, Eignung für einen Gewissen Zweck, oder nichtverletzung von Verträgen.

Alles klar?

Fun ,

Let me google that for you…

4. Dezember 2008

Let me google that for you...

Oft sind Leute einfach zu faul zum Suchen und stellen dann dumme Fragen in Foren. Nun mag man mir widersprechen, es gäbe ja keine dumme Fragen – doch, gibt es! Und zwar wenn jemand im Forum eine Frage stellt, die ich durch Copy&Paste der Frage nach Google in der Hälfte der Zeit beantworte, als der Fragesteller für das Tippen der Frage benötigte.

Meine Frau macht sich manchmal sogar den Spaß, Antworten aus dem ersten Google-Hit zu kopieren, wenn sie vom Thema überhaupt keine Ahnung hat – bisher immer mit Erfolg, nicht wenige Serverbetreiber bedankten sich schon bei ihr für die schnelle Hilfe. :-|

Obwohl ein Google-Link in solchen Fällen die beste Antwort mit dem höchsten Lernfaktor wäre, wird dies meist als eher unhöflich empfunden. Der Dienst www.letmegooglethatforyou.com geht hier einen witzigen Weg:

Man gibt die Suchbegriffe dort ein, die direkt zum Ziel führen (am besten vorher bei Google überprüfen) und erhält dann einen Link (http://www.letmegooglethatforyou.com/?q=%22Michael+Butschek%27s+Blog%22).

Beim Klick auf den Link zeigt einem die Seite dann, wie man den Text künftig bei Google einzugeben hat – und leitet am Ende auch gleich auf Google weiter. Einerseits lernt der Fragesteller also für die Zukunft, wie Google funktioniert, andererseits erhält er aber auch gleich die Antwort durch die vorgefertigte Google-Suche.

Auf Wunsch kann man auch noch eine kurze URL (http://tinyurl.com/5tjwd5) generieren lassen, um so dem Fragesteller nicht gleich das Ziel zu verraten – sozusagen für den Überraschungseffekt.

Fun, IT, Webtipps

Ein LKW voller Post-ITs…

20. September 2008

Meist ist der Zweck von Post-ITs ziemlich vorherbestimmt: Irgendwer schmiert was drauf und klebt es wohin. Dort verweilt es, bis es am Ende im Müll landet. Doch was macht man, wenn man einen ganzen LKW von diesen Klebezetteln hat? EepyBird zeigt, wie man sich mit 280.000 ‘Sticky Notes’ die Zeit vertreiben kann…

Fun

Albtraum eines Linux-Sysadmins…

18. September 2008

Manche träumen davon, von einem Hochhaus zu fallen oder einen Flugzeugabsturz mitzuerleben. Sysadmins träumen aber anders – hier ein Albtraum, den ein Kollege hatte:

user@host:~# apt-cache show sysvinit
Package: sysvinit
Essential: yes
Priority: required
Section: admin
Installed-Size: 220
Maintainer: Debian sysvinit maintainers
Architecture: i386
Version: 2.86.ds1-38+etchnhalf.1
Depends: libc6 (>= 2.3.6-6), php5-common (= 5.2.0-8+etch11)
Pre-Depends: initscripts, sysv-rc (>= 2.86.ds1-1.2), sysvinit-utils
Filename: pool/main/s/sysvinit/sysvinit_2.86.ds1-38+etchnhalf.1_i386.deb
Size: 108090
Description: System-V-like init utilities
 This package contains programs required for booting
 a Debian system and doing basic process management.
 .
 The most important program in the package is /sbin/init.
 It is the first process started on boot and continues
 to run as process number 1 until the system halts. All
 other processes are descended from it.

Fun, IT , , ,