Archive for the ‘Javascript’ Category
TLS/SSL für Heimwerker
Gastartikel von Oliver Sperke.
Ich bin 34 Jahre alt und seit 10 Jahren selbständiger Webentwickler. Mein Fokus liegt dabei auf der Erstellung, Beratung und Optimierung in den Bereichen High Performance, Usability und Sicherheit in den gängigsten Internetsprachen: PHP, HTML, Javascript und CSS.
In den vorhergehenden Beiträgen habe ich ja schon locker über Passwörter und wie man mit Ihnen umgehen sollte erzählt. Dabei wurde auch immer wieder mal angemerkt, dass meistens nicht der Login, sondern die Übertragung dieser Daten das eigentliche Problem wäre. „Man in the middle“, „Sniffer“ und der ganze … Mist. Das beste Mittel gegen viele Sicherheitsprobleme ist sicher SSL oder neu TLS, nur leider ist das für manche Webmaster immer noch nicht einsetzbar. Warum weiß ich persönlich nicht, denn eine zusätzliche IP, die evtl. benötigt wird, liegt bei etwa 1 Euro/Monat und einfache Shared Zertifikate, die meistens vollkommen ausreichen gibt es kostenlos.
Wer aus welchen Gründen auch immer kein TLS einsetzen kann oder will, sollte sich mit anderen Mitteln helfen. Das Ziel muss sein, alle wirklich sensiblen Daten (E-Mail, Passwörter, etc) so zu übertragen, dass sie auf dem Transport nicht gelesen werden können. Das ist schwierig, denn spätestens unser Server sollte es lesen können. Eine Idee ist, die Passwörter mit Einweghashes zu bearbeiten. Da unsere Passwörter aber natürlich sicher verstaut sind, können wir mit dem ankommendem Passwort nichts anfangen. Selbst wenn wir diesen Mechanismus in Javascript komplett nachbauen, wie kriegen wir den geheimen systemweiten Salt rein? Ausserdem gäben wir einem potentiellem „schlimmen Finger“ wichtige Informationen, was im Jahr 2011 keine gute Idee ist. Eine symmetrische Verschlüsselung kommt ebenfalls nicht in Frage, weil wir müssten mindestens einmal den Schlüssel übertragen, was das Verfahren überflüssig macht.
Die einzige sichere Möglichkeit ist das Verfahren, dass auch TLS benutzt. Asymmetrische Verschlüsselung! Da uns per Aufgabenstellung kein TLS zur Verfügung steht, ist unser Ziel, dieses Verfahren möglichst sicher zu kopieren – TLS für Heimwerker. Auch dieses Verfahren ist nicht ganz einfach, denn man muss zusätzliche Software installieren (können). Ich versuche den Aufwand und die Erklärungen aber so einfach wie möglich zu halten. Ein wirklicher Vorteil: Einmal eingerichtet ist es auf unbegrenzt viele Domains auf einem Server anwendbar, völlig unabhängig von der IP. Ein Anwendungszweck, der mir spontan einfällt sind Blog- oder Forenanbieter, wo die Anschaffung von Wildcardzertifikaten zu teuer wäre.
Linkpool Nummer 18
Ergänzend zum Blog-Artikel „Sichere Passwörter“ diese Woche:
7 Hinweise, eine sichere PHP Applikation zu erstellen:
In 5 Schritten zur „Offline-HTML5-Web-App“:
Wie man Zend_Config beschleunigen kann:
Cross-Site-Scripting(XSS) Lücke in Skype:
Mozillas Alternative zu OpenID: BrowserID
Linkpool Nummer 15
http://www.incloud.de/blog/2011/02/programming-professional-javascript-while-staying-sane
http://karrierebibel.de/suchthilfe-25-anzeichen-dass-sie-social-media-abhangig-sind/
http://www.dotdeb.org/2011/01/31/lets-monitor-your-php-applications-with-pinba/
http://www.harrieverveer.com/2011/02/01/benchmarking-xdebug/
SQL Injection:
Bild von http://bullshit.tumblr.com/post/3208223711/jacobjoaquin-r03-urban-sql-injection
Slides der ZendCon 2010
Vom 1. bis zum 4. November fand dieses Jahr die ZendCon statt, eine der wohl größten und bedeutendsten internationalen Konferenzen. Mit über 70 Sessions wurde von hochkarätigen Speakern (die Namen muss man sich mal alle anschauen, phänomenal) der Tagesplan reich gefüllt und sicher war/ist für jeden etwas dabei.
Da ihr wahrscheinlich, wie ich auch, nicht teilgenommen habt, stelle ich hier die bisher verfügbaren Präsentationen zusammen, zum Nachlesen der aktuell wichtigen Themen aus dem PHP- und Webumfeld. Falls ihr weitere Präsentationen gefunden habt, gebt bitte Bescheid.
Montag – 1. November 2010
Taming the Untestable Beast
Sebastian Bergmann, Stefan Priebsch
http://www.slideshare.net/sebastian_bergmann/taming-the-untestable-beast
Zend PHP Certification Boot Camp
Christian Wenz
Part I
Cloudy with a Chance of PHP
Josh Holmes, Eli White, Travis Swicegood
http://eliw.com/presentations/zendcon2010/zend-Cloudy_with_a_Chance_of_PHP.pdf
Linkpool Nummer 11
Evercookie: Das Cookie, das der User nicht mehr los wird
http://samy.pl/evercookie/
Über PHP-Entwicklung für Android
http://www.developer.com/features/article.php/52691_3904261_1/Build-Your-First-PHP-for-Android-Application.htm
Kleines Javascript Spiel zum Zerschiessen von Webseiten, gegen die Langeweile zwischendurch
http://erkie.github.com/
Sehr ausführliche Auflistung von Beispielfragen für die Zend Zertifizierung
http://jagatk.wordpress.com/2010/09/27/zend-certification-php-5-sample-questions/
Warum der MySQL Timestamp vom PHP Timestamp abweicht trotz gleichem Systemdatum
http://blog.pumka.net/2010/10/24/why-mysql-timestamp-is-24-seconds-different-from-php/
Interessantes (meist rein theoretisches) Problem: Remote Timing Attacks
http://blog.astrumfutura.com/2010/10/nanosecond-scale-remote-timing-attacks-on-php-applications-time-to-take-them-seriously/
Webseiten Performance Analyse Tool
http://www.yottaa.com/
Über Background Prozesse und wie man PHP Scripte etwas ausbremst für eine bessere Systemperformance
http://www.phpclasses.org/blog/post/132-Accelerate-Page-Accesses-Throttling-Background-Tasks-Unusual-Site-Speedup-Techniques-Part-2.html
Speicherung der Session Daten in memcached mittels Zend_Cache_Backend_Libmemcached
http://blog.digitalstruct.com/2010/10/24/zend-framework-cache-backend-libmemcached-session-cache/