Archive for the Category »Javascript «

Anzeigen, ob ein Besucher bei Facebook, Twitter oder Google+ eingeloggt ist

Einen interessanten Trick hat sich Tom Anthony einfallen lassen, um bei allen wichtigen Browsern festzustellen, ob ein Besucher seiner Internetseite aktuell bei Facebook, Twitter oder Google+ eingeloggt ist. Bei Facebook ist das ja noch einfach, denn die Funktion FB.getLoginStatus aus dem API beantwortet die Frage direkt.

Auch Twitter bietet mit twitterSessionsPresent eine ähnlich API-Funktion, die funktioniert aber nicht bei Surfern, die mit dem Internet Explorer 9 unterwegs sind. Google+ bietet keine API-Funktion dazu, so dass sich der Entwickler etwas einfallen lassen musste.

Bei seiner Lösung nutzt er aus, dass eine Ressource, genau gesagt ein Bild, nur aufrufbar ist, wenn der Benutzer eingeloggt ist. In dem Fall kann er über eine Redirect-URL auf das Bild zugreifen.

Die gesamte Lösung mit allen Details hat Tom Anthony auf seiner Homepage veröffentlicht.

 

Der Menüknopf von Android soll verschwinden

Im Android-Entwicklerblog war zu lesen: Wer Anwendungen für Smartphones und Tabs unter Android 4.0 (Ice Cream Sandwich) entwickelt, sollte sich langsam von dem Menü-Knopf verabschieden. Seit Android 3.0 gibt es ja die Klasse ActionBar, die in Zukunft statt des Menüknopfes genutzt werden soll. Da Android 4 auf immer mehr Geräten läuft, ist dieser Umstieg sehr sinnvoll.

Dabei führt das Starten einer für Android 2.3 entwickelten App dazu, dass rechts in der ActionBar ein Icon mit drei Punkten gezeigt wird. Das ist der “Action Overflow Button”, der den Aufruf der auf Android 2.3-Geräten unter dem physischen Menüknopf liegenden Funktionen ermöglicht. Man sieht diesen virtuellen Menüknopf auch, wenn die App gar keine entsprechenden Funktionen anbietet.

DDoS-Angriffe werden für Kriminelle mit Javascript einfacher

Bisher wurden für DDoS-Angriffe auf Internetseiten entweder zentral über einen Kommandoserver gesteuerte Botnets oder aber DDoS-Programme wie das von Anonymous favorisierte Low Orbit Ion Cannon (LOIC), das jeder Mit-Angreifer vor dem Einsatz downloaden und dann die anzugreifende Adresse eingeben muss, eingesetzt.

Beim “Dankeschön” für die Abschaltung von Megaupload und die Verhaftung von Kim Schmitz in der letzten Woche nutzte die Hackergruppe eine neue Javascript-Variante für den DDoS-Angriff. Wer immer die entsprechend präparierte Seite aufrief, sendete damit massenweise http-Anfragen an den schon voreingestellten anzugreifenden Internetserver. Es können also auch Leute an dem Angriff teilnehmen, die sich dessen überhaupt nicht bewusst sind.

Diese Methode dürfte auch bald bei den immer häufigeren DDoS-Angriffen zur Erpressung von “Lösegeld” über Ucash auftauchen.

POST-Anfragen können Internetserver lahmlegen

Auf dem Kongress des Chaos Computer Clubs wurde eine neue Schwachstelle von Internetservern offengelegt. Die Entwickler Alexander Klink und Julian Wälde haben das Problem entdeckt und beschrieben.

Über POST-Requests kann man gezielt Hash-Kollisionen auslösen, die die Last eines Internetservers drastisch erhöhen, und so eine DoS-Angriff fahren. Das klappt im Grunde bei allen Webservern, denn das Problem liegt in den verwendeten Scriptsprachen wie PHP, ASP oder Javascript.

Durch solche provozierten Hash-Kollisionen braucht man weniger als 100 kBit/s Bandbreite, um eine moderne CPU komplett auszulasten und einen Internetserver in die Knie zu zwingen. Als bestes Mittel dagegen gilt es, die Hash-Funktion zu randomisieren.

Einige Hersteller haben schon auf die Angriffsmöglichkeit reagiert. Microsoft bietet einen Patch für ASP.Net an, der heute erscheinen soll. Bei PHP empfiehlt sich die Absicherung mit Suhosin an. Für Tomcat gibt es ein Workaround und für Ruby einen Patch.

Coffeescript: Ein weiteres “besseres” Javascript

Javascript-Alternativen tauchen aktuell vermehrt auf. Mit Coffeescript steigt eine weitere Lösung in den Ring. Die Entwickler preisen Coffeescript als “einfacher” an:

“Unter all diesen unschönen Klammern und Semikolons hat Javascript im Herzen ein großartiges Objektmodell. Coffeescript ist ein Versuch, die guten Eigenschaften von Javascript auf einfache Art und Weise bereitzustellen”

Eigentlich ist Coffeescript ein Precompiler, der Javascript-Code erzeugt. Dieser Javascript-Code kann normal im Browser ausgeführt werden, ist leicht lesbar und hat die JS Lint-Tests bestanden.

Man kann Coffescript unter coffeescript.org downloaden. Eine Sprachreferenz führt Einsteiger in die Coffeescript-Syntax ein.

Neue JavaScript-Funktionen von Microsoft

Unter “Javascript-Prototypen für Globalisierung, Mathematik, Zeichenketten und Zahlen” veröffentlicht Microsoft als Teinehmer der EMCA-Arbeitsgruppe TC39 neue Erweiterungen von Javascript, zunächst noch experimenteller Art.

Das Problem kennen Webdesigner und –programmierer. Mit HTML5 werden die Funktionalitäten immer umfangreicher und die Webanwendungen anspruchsvoller. Umgebungen, in denen auch für triviale Aufgaben der Server erneut abgefragt werden muss, kommen kaum mehr in Frage.

Die neuen Funktionen sollen JavaScript tauglicher für zukünftige Anwendungen machen. Referenzimplementierungen kann man schon von Microsoft’s HTML5 Labs downloaden, dort gibt es auch Beispiele wie die Globalization Demo. Zum Testen muss man aber den Internet Explorer 9 verwenden, darauf wird auch beim Download hingewiesen, wenn man das mit einem älteren IE oder einem anderen Browser versucht.

Ein Android-Rechner im USB-Stick für Entwickler

Als Webentwickler kommt man ja an Google’s mobilem Betriebssystem Android kaum noch vorbei. Immer mehr Kunden haben Wünsche zur Anzeige ihrer Internetseiten auf Smartphones und Tablets. Aber auch für andere Zwecke läßt sich das mobile Betriebssystem gut einsetzen.

Jetzt ist unter der Bezeichnung “Cotton Candy” von der Firma FXI ein USB-Stick auf dem Markt, der einen kleinen Rechner mit HD-Videointerface, Bluetooth- und WLAN-Schnittstelle mit dem Betriebssystem Android eingebaut hat. Als Speicher kann man eine Micro-SD-Karte mit maximal 32 GB einsetzen. Ein interessantes Produkt für Entwickler, die sich näher mit Android beschäftigen möchten oder müssen.

Der USB-Stick-Rechner hat neben dem USB-Stecker auch einen HDMI-Stecker, über den man ihn direkt an einen Fernseher anschließen und zum Beispiel mit einem Smartphone über Bluetooth steuern kann. So läßt sich ein Monitor oder ein Fernseher mit einem Internetzugang versehen oder als Medienplayer nutzen.

Steckt man den Stick in einen PC oder einen Mac, können Monitor, Tastatur und Maus bzw. Touchpad zur Steuerung des Kleinrechners benutzt werden. Dabei läuft Android in einem Bildschirmfenster.

Schnelleres Javascript mit der Beta von Firefox 9

Typinferenz nennt sich die Technik, mit der die Beta von Firefox 9 den Ablauf von Javascript-Programmen deutlich beschleunigen will. Dabei erzeugt die Jacascript-Engine Spidermonkey durch Analyse des Codes und Überwachung während der Ausführung vollautomatisch Typinformationen zu den Javascript-Programmen.

Bei der nachfolgenden Just-in-Time-Übersetzung werden diese Typinformationen benutzt, um hocheffizienten Code zu erstellen. Benchmarks zeigen dabei Verbesserungen der Ablaufgeschwindigkeit bis zu 30 % an.

Die Erkennung der “Do not track”-Funktion für die Privatsphäre der Benutzer, die nicht möchten, dass ihre Aktivitäten verfolgt werden, ist jetzt in FF 9 möglich.
Sämtliche Neuerungen in Firefox 9 sind in den Release Notes zu finden.

Googlebot lernt den Umgang mit dynamisch nachgeladenen Inhalten

Google’s Crawler Googlebot erhält gerade eine Zusatzausbildung: Er lernt, auch Inhalte, die erst mittels AJAX dynamisch nachgeladen werden, für die Indizierung zu nutzen. Diese Konstrukte werden ja auf modernen Websites immer mehr eingesetzt und der Crawler kam bisher nicht dran. Jetzt kann er sogar selbst POST-Requests auslösen, um solche Inhalte abzufragen. Wie das geht, beschreibt Google im Webmaster Central Blog.

Allerdings tauchen auch erste und nachvollziehbare Fragen der Webmaster auf. So zum Beispiel die, ob dabei nicht ungewollte Nutzeraktionen vorgegaukelt und damit die Statistiken verfälscht werden. In dem Zusammenhang erinnert Google nur an die Roboter-Steuerdatei robots.txt, mit der man das Verhalten der Webcrawler dirigieren kann.

Sicherheitsupdate für Java SE von Oracle

Zum Ende letzter Woche hat Oracle ein Java SE-Update veröffentlicht, das insgesamt 20 Sicherheitslücken schließen soll. Das Update gibt es für Windows, Linux und Solaris. Die Windows-Version wird über die automatische Schnittstelle Windows Update angeboten, man kann aber alle Patches bei Oracle downloaden.

Bis auf eine lassen sich alle 20 Sicherheitslücken über das Netz ohne Authentifizierung nutzen. Sechs davon werden von Oracle als “kritisch” eingestuft.

Auch die seit Ende September bekannte Lücke in Version 1.0 der Transport Layer Security (TLS), einer Verschlüsselung, die per HTTPS aufgerufene Websites sichern soll, wird mit diesem Update geschlossen.