[Samstag, 3. Mai 2008]

secure (web)applications?

in der heutigen zeit sprießen programme und webapplikationen wie pilze aus dem boden. sobald die applikation irgendwie funktioniert, wird sie releast - im zeitalter von web 2.0 gibt es die tollen logos mit einem kleinen "beta" dran.

nun ja - es wird uns auch meist so vorgelebt (zb verwendet microsoft seine user ja auch als beta-tester). die heutige zeit ist in diesem bereich so schnell-lebig, dass viele meinen, dass man es sich nicht mehr leisten kann die applikation zb ausreichend zu testen - oder von der anderen sichtweise: wenn die applikation wirklich fertig wäre, dann ist sie schon wieder veraltet.

ich weiß nicht, ob es allgemein so ist, aber in meinem fall trifft es zu: ich habe nie gelernt SICHER zu programmieren! ich habe zwar gelernt zu programmieren, aber der security-aspekt war meiner meinung nach nicht wirklich vorhanden. mein ganzes (noch kleines) security know-how habe ich mir selbst erlernen müssen.

warum schreibe ich nun diesen blogeintrag?
ich bin sehr froh, dass ich nun endlich mein fh-projekt (j2ee, jsp) zum laufen gebracht habe. es ist ein simples programm. man ruft es im browser auf und gibt in das eingabefeld die matrikelnummer ein (und drückt enter oder klickt auf den button). danach wird in der datenbank gesucht und, wenn ein eintrag gefunden wird, dieser angezeigt (also matrikelnummer, name und nickname). falls kein entsprechender eintrag gefunden wird, sieht man die meldung "no student found for [matrikelnummer]".

studinfo-matrikelnummer

mein erster gedanke war gleich: "was wäre, wenn ich jemanden suche, der mit mir zu mc donalds geht?" natürlich habe ich sofort statt einer matrikelnummer going to mc donalds eingegeben - leider wurde keiner gefunden ;)

studinfo-mcdonalds

der nächste gedanke war: "OJE! XSS ALARM!" und die eingabe von <script>alert(/XSS/);</script> bestätigte dies!

studinfo-xss

hmm ... da im hintergrund eine datenbank ist und derzeit noch die eingabe direkt in die sql-query kommt, könnte auch eine sql injection erfolgreich sein - sie war es ;)

studinfo-sqlinjection

und die moral von dieser geschichte?
alle benutzereingaben sind BÖSE (bzw sollten als solches angesehen werden)!
ich habe 6 zeilen an code hinzugefügt, um die benutzereingabe zu überprüfen und somit die xss-attacke und sql-injection zu verhindern bzw erfolgreich abzufangen.

wer nun diesen minimalen aufwand bezüglich security weglassen will, der soll es von mir aus auch tun - it's your choice!
security muss nicht unbedingt komplex sein - keep it simple!

mfg mailo

user status

Du bist nicht angemeldet.

status

online seit 464 Tagen
last update: 9. Jul, 18:35

archiv

Mai 2008
Mo
Di
Mi
Do
Fr
Sa
So
 
 
 
 1 
 2 
 4 
 5 
 6 
 7 
 8 
 9 
10
11
12
13
15
16
17
18
20
21
22
23
24
25
26
27
28
29
30
31
 
 

HINWEIS

ich übernehme KEINE haftung bezüglich der verwendung der informationen, die in meinem blog vorkommen.

aktuelle beiträge

huawei unter vista
da ich nun zuhause ohne internetanschluss bin, habe...
mailo - 9. Jul, 18:33
mein labor #02
als nächsten post gibt es hier meine einstellungen: host...
mailo - 9. Jul, 18:01
mein labor #01
da ich beim anwendungsprojekt meinen kollegen bei der...
mailo - 9. Jul, 18:00
wahre worte ...
aber ich werde doch noch bei vista bleiben, da ich...
mailo - 10. Jun, 11:12
ah verdammt, zu langsam..
ah verdammt, zu langsam..
Davey (anonym) - 8. Jun, 19:34
In Vista muss man sich...
In Vista muss man sich nicht einleben; über Vista...
Patrick (anonym) - 8. Jun, 19:31
neue situation
da ich nun einen neuen laptop habe, hat sich meine...
mailo - 8. Jun, 18:08
backup - sofort!!!
ein backup der daten ist sehr wichtig. zwar weiß...
mailo - 8. Jun, 18:05

wetter

Aktuelles Wetter in Eisenstadt:


Temperatur: 18 C
UV Index: 1
Luftfeuchte: 72 %
Sichtweite: 15.0 km
Luftdruck: 990.2 mb
Windstärke: 29 km/h

Weather data provided by weather.com

creditz

Knallgrau New Media Solutions - Web Agentur für neue Medien

powered by Antville powered by Helma


xml version of this page
xml version of this page (summary)
xml version of this page (with comments)

twoday.net AGB