Bombenbau-Anleitungen (für angehende Informatiker)


Fork-Bombe

Eine Fork-Bombe ist ein Programm/Skript oder ein Kommandozeilen-Befehl der unbeschränkt forkt und sich dadurch bombenartig vervielfältigt.
Ein Beispiel für die Shell ist diese Zeile, die auch auf der Kommandozeile (der Bash und ähnlicher Shells) funktioniert:

:(){ :|:& };:

Hier wird zunächst die Funktion : definiert (bis zum Semikolon) und anschließend wird diese ausgeführt.
Danach geht es rund: Die Funktion ruft sich zweifach selbst auf und jeder dieser neuen Aufrufe ruft sich auch zweifach auf und so weiter.
Die Pipe (|) sorgt dafür dass die Shell sich forkt um das erste : auszuführen (es muss ja gleichzeitig mit dem zweiten laufen, um seine Ausgabe als Eingabe für das zweite zu verwenden); das & sorgt dafür, dass die Shell sich forkt, um den ganzen Ausdruck (also : | :) im Hintergrund auszuführen. Jeder Funktionsaufruf sorgt also für zwei neue Prozesse; diese führen den gleichen Code selber ebenfalls aus (da die Funktion sich ja selber aufruft), erzeugen als ebenso zwei neue Prozesse. Das sind schon vier; bei der nächsten Runde werden es 8; usw..
Wie beim Explodieren von A-Bomben hat man auch hier anfänglich ein exponentielles Wachstum; daher der Name der Fork-Bombe.

Ein äquivalentes Beispiel für Batch-Dateien (MS-Windows) ist

%0|%0

Diese 5 Zeichen in einer Text-Datei mit Namen beispiel.bat reichen aus; zum Ausführen reicht dann ein Doppelklick.

Verwendet werden Fork-Bomben beispielsweise zum Testen von Limitierungen beispielsweise mittels ulimit oder /etc/security/limits.conf: Wurde richtig limitiert, kann eine Fork-Bombe nicht stören; hat ein User keine Limitierungen, was traditionellerweise beim Superuser der Fall ist, MUß der Rechner hierdurch hängen bleiben, aber Notfall-Aktionen wie z. B. der Magic System Key Request, müssen weiterhin funktionieren.
Ein weiteres Anwendungsfeld ist das Überprüfen von Echtzeit-Eigenschaften beispielsweise von RTAI.
Unter BSD findet man ein Fork-Bomb-Programm normalerweise unter ports/packages/pkgsrc, zum Üben der System-Administration: http://bsdwiki.reedmedia.net/wiki/Monitor_disk_input--output.html.
Eine Fork-Bombe ist eine der wenigen Möglichkeiten einen Rechner gezielt abstürzen zu lassen um beispielsweise Watchdogs, die bei den meisten Server- u. Workstation-Mainboards sowie IPMI-Modulen integriert sind, auch remote zu testen.

Link dazu.

Zip-Bombe

Eine Zip-Bombe ist eine komprimierte Datei, die unkomprimiert viel größer ist. Dieser Begriff ist also nicht streng definiert; es ist Ansichtssache ob eine stark komprimierte Datei eine Zip-Bombe ist.
Eine Zip-Bombe ensteht praktisch immer, wenn man ein komprimiertes Image einer fabrikneuen Festplatte anfertigt, weil sie fast immer nur binäre Nullen oder zumindest sehr stark komprimierbare Muster enthält.
Ein anderes Beisiel ist 42.zip. Diese Datei enthält 16 gezipte Dateien, die wiederum 16 gehzipte Dateien enthalten, die wiederum 16 gehzipte Dateien enthalten, die wiederum 16 gehzipte Dateien enthalten, die wiederum 16 gehzipte Dateien enthalten, die je eine Datei von 4,3 GB Größe enthalten, so dass die Datei nach dem Entpacken 4,5 PByte groß ist. Der Grund für diesen Aufbau ist, das zip keine Dateien größer 4 GiB verarbeiten kann.

Ein ganz einfacheres Beispiel kann man selber erstellen (Beispiel für Linux/Unix/Cygwin):

dd if=/dev/zero bs=1G count=1024 | bzip2 -9 > klein.bz2

Das Erstellen dieser klein.bz2 dauert rund 11 Stunden mit einem Opteron 8216 (2,4 GHz), weil bzip2 und dd jeweils nur einen Core auslasten und bzip2 mit knapp 28 MB/s lahm ist.
Die mit 767 kB relativ kleine klein.bz2 ist enpackt 1 TiB groß und enthält genau das, was eine fabrikneue 1 TiB große Festplatte üblicherweise enthält. Auf ein 2007 mittelmäßig schnelles kleines RAID, beispielsweise ein RAID0 bestehend aus acht 15k6 SAS-Festplatten, kann diese entpackte Datei in einer Viertelstunde geschrieben werden.
Weniger rechenintensiv als die Erstellung mit dd ist natürlich den Header einer komprimierten Datei zu bearbeiten und so die dekomprimierte Größe einzustellen.
Hier noch eine ähnliche Datei, die mit 2 GiB statt 1 GiB erstellt wurde und die durch die binär gerade Größe auf nur 102 kB komprimiert wurde: mittel.bz2.

Der Name der Zip-Bombe entstand durch schlampig programmierte Software, die durch interne Fehler komprimierte Dateien nicht richtig verarbeitet (siehe nächstes Kapitel und Link) und hat nichts mit exponentiellem Wachstum zu tun.

Solche Programmierfehlern können ebenfalls zum Hängen bleiben führen unter Anderem bei Hard Links, Sparse Files, Link Loops (z. B. ln -sf foo bar; ln -sf bar foo) und Directory Loops, beispielsweise in Zip-Dateien und anderen Dateien die einen Verzeichnisbaum enthalten, wie beispielsweise ISO-Images. Der Grund für ein mögliches Hängen bleiben ist, das das Expandieren, also Kopieren als einfache (andere) Datei, sowohl von Hard Links wie von Sparse Files und Link Loops sowie auch Directory Loops, den Platzbedarf vervielfachen kann und es leicht Probleme gibt, wenn ein Programmierer dies nicht berücksichtigt.
Open-Source-Source-Software wie z. B. die GNU Core Utilities und direkt von den Betriebssytemherstellern stammende Programme haben praktisch nie Probleme damit, wie beispielsweise ein Test mit Link Loops in der Bash zeigt:

> date; ln -sf foo bar; ln -sf bar foo; cat bar; rm bar; rm foo; date
Thu Jul 31 11:49:21 CEST 2008
cat: bar: Too many levels of symbolic links
Thu Jul 31 11:49:21 CEST 2008
>

Link dazu.

Mail-Bombe

Eine Mail-Bombe ist eine Zip-Bombe (s. o.) als Anhang einer E-Mail.
Schlampig programmierte Virenscanner, die beim Scannen von E-Mails komprimierte Dateien ohne Überprüfungen und Limitierungen ganz gnadenlos entpacken, können damit zum Absturz oder Hängenbleiben gebracht werden oder den verfügbaren Platz auf Festplatte und vielleicht auch im RAM komplett belegen. Solche unlimitierten Aktionen sind typische Anfänger-Fehler beim Programmieren, die man am (C-)Sourcode daran erkennt, das fget, malloc, strcat, strcpy, sprintf, strcmp, strdup, strlen oder vprintf verwendet werden, denn die sicheren äquivalenten Funktionen sind fgets, calloc, strncat, strncpy, strnprintf, strncmp, strndup, strnlen und vsnprintf.
Zum Auffinden der genannten unsicheren Funktionen gibt es Programme wie Flawfinder.
Genauer und auch für andere Programmiersprachen beschrieben findet man dies unter der Rubrik Secure Coding bei CERT: http://www.cert.org/secure-coding/.
Siehe auch SPSA: The Secure Programming Skills Assessment und 24C3-Vortrag: Grundlagen der sicheren Programmierung.
Für zuverlässige Programme ist zusätzlich fachmännische Programmierung erforderlich. Hierzu gehört beispielsweise Rückgabewerte zumindest generell auszuwerten und Daten aus gepufferten Schnittstellen wie der seriellen Schnittstelle mit select und nicht mit read einzulesen sowie Schnittstellen wie die serielle nur exklusiv zu öffnen um auszuschließen, das mehrere Programme sie gleichzeitig verwenden und sich gegenseitig Daten überschreiben/wegnehmen:

...
  if (-1 == ioctl (fd, TIOCEXCL, &modelines)) // Put the tty into exclusive mode. Schnittstelle exklusiv öffnen.
  {
      (void)fprintf (stderr, "ERROR at ioctl TIOCEXCL on port %s, exiting! Schnittstelle %s konnte nicht exklusiv geöffnet werden; Exitus!\n", a_device, a_device);
      perror ("ioctl()");
      return (-1);
  }
...

Bei vielen Programmen ist dies aber ignoriert worden, so das beispielsweise ntpd und apcupsd problemlos die gleiche serielle Schnittstelle öffnen können und sich damit gegenseitig die Daten überschreiben und kryptische Fehlermeldungen produzieren.
Solche Fehler finden sich in sehr vielen Programmen und sind die Ursachen, weshalb Hersteller wie Apple und Microsoft regelmäßig als Updates bezeichnete Bugfixes veröffentlichen. Das Problem betrifft insbesondere auch Sicherheits-Software wie Virenscanner und Firewalls: http://www.businessweek.com/technology/content/jun2005/tc20050617_1613_tc024.htm.

Das lange bekannte Mail-Bomben-Problem mit schlampig programmierten Virenscannern gibt es auch noch 2007, beispielsweise bei der Web-Mail von web.de: Versucht man die 42.zip anzuhängen, bekommt man die Fehlermeldung "Dateiname: 42.zip gefundener Virus: ZIP-Crash", was schlicht falsch ist und zeigt, dass immer noch ein schlampig programmierter Virenscanner verwendet wird: Die Datei enthält keinerlei Code und kann daher überhaupt keinen Virus enthalten!
Andere Dateien wie klein.bz2 werden von web.de sogar kommentarlos entfernt, so dass wenn man nicht extra kontrolliert, das Löschen der Datei überhaupt nicht mitbekommt!
Dies sind schwerwiegende Bugs, denn sie bedeuten, das man über web.de praktisch keine einfach komprimierten Festplatten-Images verschicken kann!
Als Workaround bleibt nur ein Verschlüsseln der Dateien, z. B. von *.img-Dateien, mittels "zip -P PaSsWoRt -r images *.img", oder in ein Steganogramm packen oder den Mail-Provider zu wechseln.

Allerdings gibt es auch DAPs, dümmste anzunehmende Provider, die das Problem auf die Kunden verlagern, indem sie in ihre AGBs schreiben, das Mail-Bomben unzulässig sind. Ein Beispiel findet man in §5 der AGBs der ANTACOM Online Services (Stand 2008-05-31): http://antacom.com/wsp/wagb.htm. Weil dies eine überraschende Vertragsklausel ist, ist sie aber unwirksam. Hinzu kommt, das ohne die Präzisierung, ab welchen Werten genau eine Mail auch eine Mail-Bombe ist, diese Vertragsklausel unklar und auch deswegen unwirksam ist.

Link dazu.

Logische Bombe

Eine logische Bombe ist ein Teil eines Computerprogramms oder Skripts, der unter bestimmten Bedingungen schädliche Aktionen wie z. B. das überschreibende Löschen aller gemounteten und beschreibbaren Dateisysteme auslöst. Auch für Logische Bomben gibt es keine klare Definition, so das es Ansichtssache ist, ob beispielsweise das Leeren des Papierkorbs eine logische Bombe ist.
Klassische Beispiele für logische Bomben sind format C: und rm -rf /, aber mittels undelete-Programmen ist der Schaden von diesen Klassikern reparierbar, weil die Daten nicht überschrieben werden und deshalb noch auf den Datenträgern wiedergefunden werden können. Sofern man keine uralte Version von rm hat, fehlt zudem noch die Option --no-preserve-root und auch mit dieser Option bleiben alle Verzeichnisse erhalten, die ein gemountetes Dateisystem enthalten; rm weigert sich mit der Fehlermeldung Device or resource busy.
Statt rm sollte man daher find nehmen und fehlertolerant nach inodes löschen: http://www.cyberciti.biz/tips/delete-remove-files-with-inode-number.html oder alle Datenträger low-level und fehlertolerant überschreiben mit ddrescue oder dd_rescue. Zum mehrfachen Überschreiben eignen sich Programme wie shred und badblocks.

Ein Anwendungsgebiet ist der Datenschutz auf gestohlenen PCs und Notebooks und natürlich das Löschen von gebrauchten Datenträgern vor dem Verkauf. Beispielsweise bietet "Lost Data Destruction" von Beach Head Solutions drei verschiedene Varianten zum Löschen aller Daten und Mobile Security 7.0 von Kaspersky hat eine Löschfunktion für verlorene oder gestohlene Mobiltelefone, die alle Daten löscht.

Link dazu.

Kryptologische Bombe

Die Kryptologische Bombe ist ein elektromechanisches Dechiffriergerät, das mit der deutschen Enigma verschlüsselte Nachrichten entzifferte.
Sie wird auch Turing-Bombe genannt, weil Allan Turing daran beteiligt war, aber sie ist praktisch nur von historischem Interesse.

Link dazu.

Ping-Bombe

Als Ping-Bombe wird ein flooding Ping bezeichnet, der eine Netzwerkverbindung sehr langsam und damit praktisch unbrauchbar machen kann. Hierfür benöitgt der Sender der Ping-Pakete mehr Bandbreite als das Ziel.
Der Name wird beispielsweise auf Wikipedia verwendet: http://en.wikipedia.org/wiki/Wikipedia:Disabling_edits_by_unregistered_users_and_stricter_registration_requirement und er kommt daher, das das Ziel mit Ping-Paketen "bombardiert" wird. Er hat nichts mit dem Ping of death zu tun.

Eine Ping-Bombe wird unter Anderem zum Bestimmen von Bandbreiten verwendet.
Beispiel:

ping -s 65507 -p 0f1e2d3c4b5a6978 -f 192.168.0.1

Die Bandbreite kann man über ifconfig/ipconfig anhand der übertragenen Datenmenge ausrechnen. Programme wie gkrellm, xosview usw. zeigen die erreichte Datenrate direkt an.
Neben dem einfachen Ping kann man prinzipiell auch arping, httping sowie hping und andere wie bing, fping, mtr und pathping verwenden.

BGP-Bombe

Die BGP-Bombe ist der Mißbrauch des Border Gateway Protocol (BGP, RFC 4271) zum "kapern" von Webservern (bzw. deren IP-Nr.). Solche Bomben sind sehr effektiv, weil das BGP so gut wie keine Autorisierungsmechanismen hat, die Missbrauch verhindern könnten.
Die Pakistan Telecom hat mit so einer Bombe im Februar 2008 stundenlang Youtube.com nicht nur in Pakistan sondern sogar weltweit gesperrt, obwohl diese Mißbrauchs-Möglichkeit schon über 10 Jahre vorher allgemein bekannt war: http://www.eweek.com/c/a/Security/Pakistan-Drops-the-BGP-Bomb/
http://www.heise.de/security/Router-luegen-nicht-was-wenn-doch--/news/meldung/114984

Bomb48

Für alle Informatik-Studenten, die ihre Bombe verloren haben. Von Dr. Evil.
Quelle: http://www.infmath.de/wbb/index.php?page=Thread&threadID=940

E-Bombe/EMP-Bombe

E-Bomb
Quelle: http://www.globalsecurity.org/military/systems/munitions/hpm.htm.
Weiterer Link dazu.


ANSI-Bombe

(nur für MS-DOS/MS-Win9x/ME)

Postscript-Bombe



Textur-Bombe, 3D-Bombe



Google-Bombe



Bombe (Fehlermeldung)



Microsoft-Bombe



Internet-Bombe



Safari-Teppich-Bombe



XBomb



ESX-Zeitbombe



PCBombe



Nicht direkt zur Informatik gehörend, aber auch für Informatiker interessante "Bomben" ;-)

Stinkbombe (FeS + 2HCl => H2S (g) + FeCl2)

Sexbombe

Who?-Me?-Bombe und Gay Bomb

Bomba - eine Kalorienbombe.

Weitere Kalorienbomben sind die Rumbombe und die Eisbombe.

Vulkanische Bombe

Schmutzige Bombe und Sprengsatz-Bombe

Geldbombe

Arschbombe

Rauchbombe

Lachbombe

Bombenidee

Bomberjacke passend zum Bomber.

Bombenwetter

Bomben-Software

Bombenjahre

Schlaue Bomben

Intelligente Bomben

Säurebombe (Acid Bomb); nicht zu verwechseln mit Säurezündern.

Grüne Bomben: Nicht nur stärker als Bomben mit TNT sondern auch ökologisch korrekt durch Sprengstoffe der nächsten Generation wie z. B. Tetrazolen HBT und G2ZT.

23 Bomben-Rezepte

Vitaminbombe

Ein berühmter Fernseh-Bombenbenauer ist MacGyver, aber dessen Bomben sind im Film meist deutlich übertrieben.

In Büchern hingegen findet man meist brauchbare Bombenauanleitungen, beispielsweise: Schwarzpulver für Survival - Band 1 Improvisation von Schwarzpulver und ähnlichen Mischungen, Schwarzpulver und Sprengsalpeter, Nitroglyzerin und Dynamit oder Die Sprengstoffe - Ihre Chemie und Technologie. Allerdings enthalten Bücher meist wenig zu leicht herstellbaren und schwer nachweisbaren Sprengstoffe wie Hexamethylentriperoxiddiamin (HMTD) und Triaceton-Triperoxid (TATP).

Anleitung zum Bau einer Atombombe und der Hintergrund-Artikel Wie baut man eine Atombombe der Zeit über den Wert von Bauanleitungen für Kernsprengköpfe und von tacit knowledge.

Pornoatombombe

Kawumm

http://bombenterror.de - Viele Bauanleitungen; von der Rohrbombe bis zur Wasserstoffbombe findet man dort alles.

Unter http://bombenbauanleitungen.de/ findet man allerdings keine Bombenbauanleitungen.

Zum bombigen Feiern eignen sich T.N.T. Dynamite Parties, zum bombigen Spielen wie für eine explosive Stimmung bei Fußballspielen eignet sich TNT Dynamite Soccer.

Zum Bombenbauen, Bombenlegen sowie zum Bombardieren passende Lieder gibt es von Interpreten wie Dynamite Deluxe; beispielsweise das Lied Bombs, Dynamite Deluxe: TNT und Dynamite Deluxe: Dynamit und natürlich den Klassiker TNT Dynamite von AC/DC sowie Spiel mir das lied vom Tod. Deutlich altmodischere Lieder sind beispielsweise "Bomben auf England", die man auch in diversen Tauschbörsen online findet und die es auch als Klingelton gibt.
Auf Musik-Seiten wie www.pandora.com findet man dutzende weitere Lieder: Allein pandora.com listet 30 verschiedene Lieder mit Dynamite im Titel!
Dort findet man auch Musik zum Entschärfen von Bomben; beispielsweise How to Dismantle an Atomic Bomb.
Zudem gibt es auch bombige Bands wie z. B. COTTONBOMB.

Im Magazin Bomb findet man allerdings praktisch nichts zu Bomben.

Richtig gute Bombenbau-Kurse, auch mit Übungssprengungen und Kursen zur effizienten Neutralisierung von Menschen, Maschinen und Gebäuden gibt es bei der Bundeswehr und den meisten anderen Armeen, aber generell nur für registrierte Gefechtsfeld-Manager (früher Soldaten genannt) und gedacht hauptsächlich zur Friedenserzwingung (früher Krieg genannt).
Hierzu gibt es beispielsweise das Improvised Munitions Handbook das zwar nur konventionelles enthält, aber dies relativ ausführlich, inklusive Minen, Granaten, Raketen Zündverzögerer usw. auch mit Abbildungen erläutert. Zur Theorie, z. B. die Berechnung der optimalen Explosions-Höhe als Funktion der Sprengkraft, den Sicherheitsvorschriften und den erforderlichen Genehmigungsverfahren findet man in diesem Buch allerdings praktisch nichts.

Farbbomben und andere Spielereien findet man im Anarchist Cookbook und Anleitungen zum Bombenlegen im Buch Hit Man.
Links u. A. zum Badminds Cookbook , das dem Anarchist Cookbook ähnelt, findet man unter http://www.burks.de/forum/phpBB2/viewtopic.php?p=33557.

Bei Bombenbauern beliebt sind neben Explosionszeichnungen auch für Metall-Detektoren unsichtbares Zubehör wie Keramik-Messer, die es in Discountern wie Norma ab 8,99 EUR gibt: http://norma-online.de/_de_/_angebote_/_ab-mittwoch-19.12._/
Allerdings kann der Griff Metall enthalten; viele Keramik-Messer sind deshalb für Metall-Detektoren nicht unsichtbar, so wie auch die meisten "metallfreien" Minen, die aus Kostengründen fast immer eine Sprengkapsel aus Aluminium enthalten. Enthält ein Keramikmesser nur wenig Metall, kann man es mit Säuren wie Salzsäure meist relativ leicht wegätzen und dünne Metall-Schichten kann man meist in einem Mikrowellen-Grill verdampfen.

Vor allem bei nächtlichen Bombenbauern beliebt sind Nachtsichtgeräte mit integrierter Infrarotbeleuchtung zur Beobachtung bei völliger Dunkelheit, die es bei Discountern wie Plus ab 149,95 Euro gibt: http://www.plus.de/Nachtsichtgeraet-Visiomar-3x42/de_vpd-98363900-534KAYCLLl4AAAEZxAZW62Fq-9tMKAYCLAZAAAAEZshRW61wu-gi.html.

Zum Bomben-Transport bevorzugen echte Bombenbauer für Paket-Bomben den Express-Versand und für Brief-Bomben die Post von http://www.tnt.com/.

Für Bombenstimmung findet man auf www.perl.de PC-gesteuerte Raketenwerfer mit echt fliegenden Raketen, Bomberfun, Bomberman, Fliegende Bomben, Autobomben, Wasserbomben, Bomb Jack und einiges andere.

Rush for the Bomb: Das bombige Add-On zum vielfach preisgekrönten Taktik-Hit "Rush for Berlin"!

Die Bombe unter der Achselhöhle

Käse als Übungsbombe und warum in US-Flughäfen Handy-Ladegeräte höchst verdächtig sind und Käse quasi verboten ist.

Über 200.000 Bomben findet man auf Youtube; insbesondere Cola-Bomben!

Sprengen und sparen

Warum der Vorname Bob in australischen Flugzeugen Bombenalarm auslöst und wieso es in Australien illegal ist auf einen unbenutzten Spuckbeutel die Abkürzung oder den Namen "BOB" zu schreiben.
Schließlich haben die Australier das Terrorbyte erfunden.

all Warum in USA alles eine Bombe ist.


Passend dazu gibt es auch den Hoster BombDrop in USA: http://www.bombdrop.net/

Detonationen ohne Sprengstoff kann man beispielsweise auch mit Hochspannung erzeugen: http://www.powerlabs.org/emguns.htm

Einen (vielleicht bombenbastelnden?) echt deutschen Hacker findet man ganz in der Nähe, unter http://www.german-hacker.de/


Bombige Museen

AtomicBombMuseum.org


Bombige Zitate

Die Bombardierung beginnt in 5 Minuten!
Mikrofon-Test-Text von Ronald Reagan, 11. August 1984



Werbung

all