"Hollywood-Hacker-Szene" aus einer Shell ausgeben


36

Dies mag wie eine seltsame Frage erscheinen, aber was würden Sie für die Erstellung der typischen Hollywood-Hacking-Szene verwenden?

Ich habe diese Anfrage von einem Freund bekommen und mein Gehirn war leer. Alles, woran ich denken konnte, waren all die Nmap-Szenen aus Filmen wie The Matrix und so weiter.

Aber das müsste auf einem Mac mit Standard-OSX gemacht werden, was meiner Meinung nach etwas von * nix ist, oder? Sie haben keinen Internetzugang, sodass eine Vorbereitung mit externen Tools nicht in Frage kommt.

Ich überlegte, wie ich vielleicht das Äquivalent von / var / log / messages auf den Bildschirm schreiben sollte ...


21
Nehmen Sie ein beliebiges Paket und machen Sie eine./configure && make
Alex B

Ich denke Alex hat recht. Testen Sie einige verschiedene Pakete, da Sie wahrscheinlich nicht möchten, dass etwas für mehrere Minuten kompiliert wird
Johnny

8
Lassen Sie ein RIESIGES Banner mit der Aufschrift "DECODIEREN" und anschließend zwölf Walzen im Stil von Spielautomaten darunter anzeigen, in denen sich verschiedene Zeichen drehen und jeweils eine anhalten, sodass Sie ein kleines Wörterbuchwort erhalten.
DanBeale,

2
Installieren Sie (falls möglich) FSN oder FSV. "Es ist ein Unix-System. Ich weiß das!"
DanBeale,

Wenn noch nie jemand etwas vorgeschlagen hat, können Sie versuchen, cmatrixin einem Terminalfenster zu arbeiten.
Bollovan

Antworten:


34

Wenn Sie gefragt werden, wie jeweils ein Zeichen auf dem Bildschirm gedruckt werden soll (ein in Hollywood-Filmen häufig vorkommender "Hacker" -Stil), sollte das folgende Skript ausreichen (Eingabe von stdin).

In bash:

#!/bin/bash

while IFS= read -r line; do
    length="${#line}"
    bol=1
    for (( offset = 0 ; offset < length ; offset++ )); do
        char="${line:offset:1}"
        printf '%s' "$char"
        if (( bol )) && [[ "$char" == " " ]]; then
            continue
        fi
        bol=0
        sleep 0.05
    done

    if (( length == 0 )); then
        sleep 0.$(( RANDOM % 3 + 2 ))
    else
        sleep 0.$(( RANDOM % 7 + 3 ))
    fi

    printf '\n'
done

Oder eine einfachere Version in C:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(void) {
    char buf[1];
    int len;

    while ((len = read(STDIN_FILENO, buf, sizeof(buf))) > 0) {
        if (write(STDOUT_FILENO, buf, len) != len) {
            perror("write");
            return EXIT_FAILURE;
        }
        usleep(50000);
    }
    if (len != 0) {
        perror("read");
        return EXIT_FAILURE;
    }
    return EXIT_SUCCESS;
}

Wenn Sie dmesgals Eingabe verwenden möchten, zum Beispiel:

dmesg | hollywood

2
Es $RANDOMkönnte auch Spaß machen, einige Verzögerungen in den Timings hinzuzufügen :-)
Stéphane Gimenez

1
Das Hinzufügen von Modemleitungsrauschen wäre sogar noch besser. Dies könnte der am häufigsten bearbeitete Beitrag unter UL werden.
Tim Post

1
Keine Ahnung, was Tim mit Leitungsrauschen meint, aber ich würde es implementieren, indem ich das erste printfzu dem zweiten printf '\b%s%c' "${_line:_offset:1}" $RANDOMändere und printf '\b \b'vor dem zweiten hinzufüge sleep.
Manatwork

1
HAHAHAH Ich habe das gerade mit dmesg gemacht und verdammt gelacht! Bitte aktualisiere dies weiter, es ist episch.
Nr.

2
Das ist Halarious. Auf jeden Fall ein Gewinner für "hacky" Ausgabe ...
rmckenzie

14
export GREP_COLOR='1;32'; cat /dev/urandom | hexdump -C | grep --color=auto "ca fe"

Dies (und andere Befehle von http://www.commandlinefu.com/commands/view/6663/pretend-to-be-busy-in-office-to-enjoy-a-cup-of-coffee ) scheint auch sehr, , hackisch '' und verwirrt die meisten Leute, die im gegebenen Moment auf das Terminal starren;)


6
Sie müssen GREP_COLOR nicht exportieren und cat nicht verwenden. Verwenden Sie einfachhexdump -C /dev/urandom | GREP_COLOR='1;32' grep --color=auto 'ca fe'
Chris Down

+1000 Das ist eine großartige Antwort!

6
  1. Verwenden Sie Compiz mit Dingen wie Wall, Expose, teilweise transparenten Fenstern usw.
  2. Verwenden Sie tcpdump auf mindestens einem Bildschirm.
  3. Verwenden Sie IRC und Irssi, um mit anderen "Hackern" auf einem anderen Bildschirm zu sprechen.
  4. Kompilieren Sie einen Kernel. Sie müssen es nicht installieren, sondern nur kompilieren, die Module erstellen und dann neu beginnen, indem Sie kompilierte Objekte bereinigen und die Kompilierung neu starten. Verwenden Sie GCC-Farbe, um den Effekt zu verstärken.
  5. Wenn OpenBSD auf einem Bildschirm gestartet wird, können Sie dafür eine VM verwenden, wenn Sie keine Ersatzmaschine haben.
  6. Zeilenweiser Druck von dmesg.
  7. Öffnen Sie einige Quellcodedateien in Gvim und verwenden Sie das Farbschema von Cobald oder meins .
  8. Ändere xscreensaver "phosphor" und starte es in einem Fenster. Es kann Zeichen für Zeichen drucken. Ich habe es ein paar Mal für den visuellen Effekt verwendet.
  9. Verwende mplayer mit aalib oder cacalib. Es gibt einen Matrixfilter, aber das scheint eine billige Abzocke zu sein.
  10. Ich schlage vor, zsh mit farbiger ls-Ausgabe (dircolor) sowie eine schöne Shell zu verwenden.

4

Wie wäre es mit diesem Setup für ein Hollywood-Hackish-Setup?

  • Verwenden Sie keinen Fenstermanager, der wie Windows oder Mac aussieht, alle anderen sehen hackisch aus, da normale Leute nicht wissen, was es ist.
  • Wählen Sie einige wirklich nerdige Farben für das Terminal aus, z. B. "Bernstein auf Schwarz" oder "Grün auf Schwarz".
  • Lassen Sie den Hexdump von Random (wie Wiesław Herr beschrieben) in einem Fenster im Hintergrund laufen.
  • Haben Sie etwas, das aussieht wie ein Protokoll, das in einem anderen Fenster ausgeführt wird, möglicherweise ein tcpdump, das fast von Menschen gelesen werden kann.
  • etc etc

Das sollte ein schöner Fake-Start sein.


4

Das musste ich vor einem Monat machen. Ich habe gerade "find /" abgefeuert und es hat gereicht.


3

Sie können verwenden

pv /var/log/messages -qL 100

Running man pvgibt die folgenden Definitionen für qund LFlags an.

-q, --quiet - Keine Ausgabe. Nützlich, wenn die Option -L alleine verwendet wird, um nur die Übertragungsrate einer Pipe zu begrenzen.

-L RATE, --rate-limit RATE - Begrenzen Sie die Übertragung auf maximal RATE Bytes pro Sekunde. Ein Suffix von "k", "m", "g" oder "t" kann hinzugefügt werden, um Kilobyte (* 1024), Megabyte usw. zu bezeichnen.

Das 100ist die Anzahl der Bytes / Sekunde

PS great todler protector (Stellen Sie sicher, dass Sie nicht im Fenstermodus sind ALT+ CTRL+ F2funktioniert besser so)

BEARBEITEN


Warum benutzt du lessüberhaupt? Leiten Sie die Datei einfach weiter in pv.
Chris Down

oops an oversite, normalerweise benutze man rsyncich i moded es für die frage . Fixing ..
whoami

Einige googeln schlägt vor, dass pvnicht standardmäßig auf Mac verfügbar ist (verfügbar über HomeBrew und Ports aber).
Chris Down

Es ist nicht hier auf meiner 10.6-Installation ...
Serverhorror

Ich habe es auf Ubuntu und Fedora zum Laufen gebracht, ich habe noch nie Macs benutzt, also bin ich mir nicht sicher, was die Voraussetzung dafür ist, aber ich bin mir sicher, dass du es installieren kannst.
Ich

3

Dies mag wie eine seltsame Frage erscheinen, aber wie würden Sie die typische Hollywood-Hacking-Szene gestalten?

Hollywood-Technodrama sollte genug Inspiration für das sein, wonach Sie suchen. Es ist als Paket für Linux erhältlich, auch auf Github . Es sollte in der Lage sein, die von Ihnen gewünschten Bits herauszusuchen und unter OS X ein Paket zu erstellen.

Auf einem Debian / Ubuntu-System können Sie wie folgt installieren:

sudo apt-get install hollywood

Oder wenn das nicht geht:

sudo apt-add-repository ppa:hollywood/ppa
sudo apt-get update
sudo apt-get install hollywood

2

von commandlinefu:

tr -c "[:digit:]" " " < /dev/urandom | dd cbs=$COLUMNS conv=unblock | GREP_COLOR="1;32" grep --color "[^ ]"

oder

echo "You can simulate on-screen typing just like in the movies" | pv -qL 10


1

Ich verstehe, dass nmap die Standard-Hackish-Hollywood-App ist, und hier ist eine Seite von einem Mann, der daran gearbeitet hat, das Hollywood-Hacking auf Tron realer zu machen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.