Warning: get_comment(): Argument #1 ($comment) must be passed by reference, value given in /var/www/virtual/benny-baumann.de/blog/htdocs/wp-includes/class-wp-query.php on line 3069

Warning: get_comment(): Argument #1 ($comment) must be passed by reference, value given in /var/www/virtual/benny-baumann.de/blog/htdocs/wp-includes/class-wp-query.php on line 3069
Kommentare zu: Sicherheitsbewusstsein von Softwareentwicklern http://blog.benny-baumann.de/?p=588 Thoughts the world doesn't need yet ... Sat, 13 Mar 2010 16:32:12 +0000 hourly 1 https://wordpress.org/?v=5.3.14 Von: Martok http://blog.benny-baumann.de/?p=588&cpage=1#comment-132 Sat, 13 Mar 2010 16:32:12 +0000 http://blog.benny-baumann.de/?p=588#comment-132

Ein Programm soll tun, was ich von ihm will, ist da nur allzu häufig eine der ersten Antworten, die man da zu hören bekommt.

Das finde ich auch immer toll. Immerhin impliziert diese Aussage ja, dass der Programmierer Abstürze *will* 😉 Normalerweise würde man ja annehmen, dass „es stürzt nicht gleich ab“ auch eine der Eigenschaften ist, die ein Programm haben sollte…

Nur: ich erwische mich auch ab und zu dabei, „nur schnell mal was zu hacken“… da ist dann keine Fehlerbehandlung drin und wenn doch, ist das ganze so krude, dass man direkt sieht, dass das gehackt war. Irgendwann landet man dann bei der Feststellung dass das Programm doch noch öfter gebraucht wird, und schreibt alles neu.
Nicht gerade effizient.

Zum Kommentar über mir passt auch sehr gut ein Satz aus der c’t 2010/6, S.197, in der es um die Ineffizienz von Flash geht.

Macromedia stellte mit Flash seinerzeit wenig programmieraffinen Designern eine leistungsfähige Plattform zur Verfügung – mit ähnlichen Folgen wie bei PHP: Eine große Zahl unerfahrener Entwickler gestaltete mit fehlertoleranten Werkzeugen Anwendungen, ohne auf den Ressourcenverbrauch zu achten.

Ähnlich wie Sicherheitsbewusstsein gehört auch das Bedenken von Ressourcenverfügbarkeit immer zu gut entwickelter Software. Manche Konstrukte sollte da ein Compiler / eine Runtime auch direkt ablehnen.
Grade auf XAMPP-Projekten sieht man unglaublich oft Seiten, die immer wieder die gleichen Datenbankabfragen ausführen. Das mag alles funktionieren, solange noch keiner die Seite besucht. Spätestens wenn man mal geslashdottet wird, hat sich das, weil die Datenbank immer zuerst in die Knie geht. Populäres Beispiel: WordPress. Wies richtiger geht, sieht man bei S9Y.
Aber das wäre schon wieder einen weiteren Artikel wert; viel zu viel um das in so einem kleinen Kommentarfeld zu schreiben… 😀

]]>
Von: robo47 http://blog.benny-baumann.de/?p=588&cpage=1#comment-131 Sat, 13 Mar 2010 11:26:36 +0000 http://blog.benny-baumann.de/?p=588#comment-131 Schön sowas mal zu lesen.

Gerade in „einfachen“ Sprachen wie beispielsweise php sieht man viele der beschriebenen Probleme ja sehr oft. PHP ist einfach, PHP kann jeder und führt schon nach kurzer Zeit zu erkennbaren Erfolgen, sei es durch das selbst schreiben oder das verändern irgendwelchen fremden Codes.
Aber gerade die große Gefahr bei PHP, jeder stellt seinen Code in null komma nix irgendwo ins netz, nicht in Form eines Archivs, sondern als laufender Code auf irgendeinem kostenlos Webspace oder noch viel schlimmer auf leistungsstarken gut angebundenen V/Root-Servern. Die Gefahr dass solche Scripte mißbraucht ist extrem groß, da muss man nur mal die logs von einer Webseite anschauen und gucken wie viele Bots da unterwegs sind die auf bekannte Fehler in Systemen wie phpbb, wordpress, joomla und co testen oder die „besseren“ bots die wirklich sich Quelltexte der Seite anschauen und versuchen (ähnlich Tools wie Chorizo [https://chorizo-scanner.com/] und co) z.b. Code einzuschleusen, über ein Kontakt-Formulare Spam abzusetzen oder andere eventuell mißbräuchlich nutzbaren lücken zu finden. Im Endeffekt betreiben die oftmals automatisiert das, was eigentlich der Programmierer tun sollte, seine Applikation auf sicherheitslücken testen. Der unterschied liegt dann halt auch im Ergebnis, während man selbst bei finden von Sicherheitslücken diese schließen kann, berichtet der Bot eventuell gefundene Lücken seinem Meister oder nutzt sie abhängig von seiner Programmierung auch direkt in einer vorbestimmten Art und Weise aus.

Gerade wenn man ein System mit Kommentar-Funktion oder irgendeiner Form wo User-input erlaubt ist betreibt sieht man ja was da täglich an Spam reinkommt und wie dort versucht wird BBCode, html, Javscript oder ähnliches einzuschleusen, geht man dann einen schritt weiter und schaut sich die verlinkten seiten an, trifft man sehr häufig wieder auf veraltete foren oder community-systeme bei denen sich in profilen oder Beiträgen recht einfach html/javascript-code einschleußen lässt, weil die Systeme total veraltet sind und nicht mehr gepflegt werden

Und da sind wir schon beim nächsten Problem das viele Leute im Web „produzieren“. Sei es das kleine Forum für den örtlichen Verein, die Schule, einen Clan/Gilde/Community oder ähnliches, am besten auf kostenlosem Webspace gehostet, dann denkt da keiner mehr nach nem halben jahr dran, wenn es eh keiner mehr nutzt, die eventuell jetzt schon total veraltete Software einfach zu löschen, nein sie läuft und läuft und läuft und wird älter und mehr lücken werden bekannt. Damit bieten sie dann diversen Spammern, Phishern und anderen Personen diverse Möglichkeiten, sei es für email-versand, einfach nur eine seite wo sie eventuell bösen code lagern können oder auch z.b. eine weitere Datenbank für Emailadressen von Leuten (mit etwas glück auch passwörter in ungesicherter Form mit denen man ja einen bot ausstatten soll der anhand dem email-adressen prefix nach solchen accounts auf anderen foren/communitys sucht und schaut ob er da mit dem passwort auch reinkommt)
Gerade auch für Laien ein oftmals großes Problem, sobald sie mal ein paar Zeilen oder mehr an einem System sei es phpbb,joomla, wordpress oder sonstwas, selbst verändert haben, wollen sie das nicht nochmal machen (Wie erstellt man Patches ? Wie wendet man sie auf Code an ? wie merged man (händisch) Code ? Wie testet man seine änderungen dann [automatisiert]? … das kennt/kann der Laie alles nicht), was auch wieder darin resultiert dass keine Updates gemacht werden und die Software von Tag zu Tag älter wird und mehr bekannte Sicherheitslücken aufweist.

Auch immer sehr schön wenn man solche Leute auf eventuelle Sicherheits-Probleme anspricht die Kommentare die man da erhält … „mich will schon keiner hacken“, „warum sollte mir das passieren“, „die seite nutzt eh kaum jemand“, „ich kann das nicht updaten weil dann plugin-x und meine eigenen modifikationen y nicht laufen“, …. .
Kaum jemand von diesen Leuten realisiert, dass in den heutigen Zeiten kein Scriptkiddie mehr sich den aufwand macht explizit eine gewisse Seite vom ortsverein für gemüse-züchter in Unter-Was-Weis-Ich-Was zu hacken, da laufen ein paar Bots die einfach das Web crawlen und auf Sicherheitslücken oder spezielle Programme und Versionen testen, die vielleicht auch eine Datenbank mit seiten und den verwendeten systemen (+version wenn preisgegeben) erstellen um später mit weniger aufwand bei bekanntwerden einer lücke diese direkt ausnutzen zu können.
Auch ein schöner Kommentar: „Aber das seh ich ja dann und dann kann ich was machen“.
Eben nicht, im Idealfall wird immer versucht sowas nicht erkennbar zu machen, sieht man ja an Botnetzen und den ganzen Zombie-PCs, wo die Würmer sogar Virenscanner installieren (in manipulierter Form) um weiter potentielle Schädlinge drausenzuhalten, damit sie selbst die Resourcen nutzen können und es dem User möglichst nicht auffällt.

]]>