philosapiens
Avatar philosapiens
Themenersteller
webdesigner
Fortgeschrittener (52 Beiträge)

Hacken lernen zum Testen der eigenen Seiten

am 11.05.2011, 21:45 Uhr eröffnete philosapiens folgenden Thread
Sicherheitslücken    21718 mal gelesen    37 Antwort(en).

Hallo,

ich habe nun mein kleines Projekt soweit erst einmal funktionstüchtig bekommen.

Nun möchte ich gerne auch noch etwas geschützt gegen die böse Seite des Netzes sein. Da ich ja schon ganz froh bin, den Code überhaupt soweit geschrieben bekommen zu haben und leider garkeine Ahnung vom hacken habe, frage ich hier einfach mal in die Runde, wo man sich dieses Wissen so weit anlesen kann, dass man wenigstens die "standards" selbst testen kann.

Oder gibt es vertrauenswürde Seiten, die einem da weiterhelfen? Gibt es vielleicht sogar Online-Test-Seiten?


Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.

Hier mein Versuch der Webseitenerstellung: http://idealseiten.de

seitenreport
Avatar seitenreport
Inhaber
TYPO3 Senior Developer
Content Gott (1772 Beiträge)
am 11.05.2011, 22:23 Uhr schrieb seitenreport

Hallo,

zum Testen Deiner Applikation auf Vulnerabilitys (Sicherheitslücken) kannst Du Nessus verwenden. Dieser ist zwar schon eher für fortgeschrittene Anwender, dafür spürt er aber auch sehr viele der bekannten möglichen Lücken auf und führt dutzende Penetrationstests durch (u.a. SQL Injections, Wildcard Angriffe usw.).

Zum Download auf der Nessus-Startseite etwas nach unten scrollen bis zum Bereich Tenable Nessus -> Download. Die Einrichtung und das Erlernen der Benutzung erfordert u.U. etwas Zeit.

Bitte nur für eigene Website verwenden. Der Einsatz auf anderen Domains kann ohne Genehmigung des jew. Site-Inhabers etwaig strafrechtliche Konsequenzen nach sich ziehen.

Dafür hast Du mit Nessus eines der besten Tools an der Hand, das es als Freeware in diesem Bereich gibt. :wink:

Beste Grüße,
Matthias


SEO Analyse und Website-Check mit Seitenreport

philosapiens
Avatar philosapiens
webdesigner
Fortgeschrittener (52 Beiträge)
am 12.05.2011, 18:27 Uhr schrieb philosapiens

Hallo Matthias,

vielen Dank für den sehr interessanten Tipp. Leider scheint das Programm in englisch zu sein. Da meine Kenntnisse sowohl der Sprache als auch dem zu erwartenden Inhalt doch stark rudimentär sind, werde ich wohl noch etwas länger brachen, bis ich mit dem Programm zu einem Ergebnis kommen werde.

Andererseits scheint es bei meinem Projekt (Webshop ohne DB und ohne Textdateien - nur über Session) schon gut zu sein, wenn ich versuche, XSS zu verhindern.

Ich habe nun ein wenig Code für alle Unterseiten des Projektes eingefügt und erhoffe mir dadurch schon einmal ein wenig Schutz.

Hier einmal der Code:
<?php
if(count($_GET)>0) {
header(\'Location: ./../\'); // wenn $_GET dann zurück zur Stratseite
exit;
}

if (isset($_POST)) {
foreach($_POST as $key=>$value) $_POST[$key]=stripslashes(strip_tags($value)); // Slashes und HTML löschen
}
?>


Gefunden bei:

www.weblarus.de/blog/2011/02/18/cross-site-scripting-teil-1/



und

www.oxxo.de/spam-blocking/KontaktFormular.php



und

xhtmlforum.de/309624-post12.html



Mal sehen, ob das zumindest schon einmal ein wenig hilft.


Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.

Hier mein Versuch der Webseitenerstellung: http://idealseiten.de

rdombach
Avatar rdombach
Security-Admin
Content Halbgott (608 Beiträge)
am 12.05.2011, 20:20 Uhr schrieb rdombach

Hallo Detlef,

also ich möchte Dir abraten, selbst als Hacker aktiv zu werden! Dies aus mehreren Gründen.
Hacken ist nichts, was man so "nebenbei" lernen kann! Hacken ist eine Passion, eine Leidenschaft, eine Berufung - oder schlicht der Broterwerb.

Ich denke mal, Du hast aber primär andere Interessen und verfolgst auch andere Ziele mit Deinem Engagement im Web. Daher wäre Hacken, nach meiner persönlichen Meinung, rausgeworfene Zeit! Du kannst mit Nessus oder anderen Framworks sicherlich (Penetration-)Tests machen, um zu erkennen, ob Dein Code anfällig ist. Aber wenn Dir das Framework nicht den enstprechendne Hinweis liefert, wie Du die Lücke schliessen kannst, hast Du nichts davon. Und wenn Du Deinen Code auf Schwachstellen testest, die Du kennst, hast Du diese sicherlich beim programmieren bereits vermieden.

Meine Empfehlung daher an Dich - Schuster, bleib bei Deinen Leisten. Mach einen Backup von Deinen Daten, installiere Security-Patche für Dein CMS und die sonst noch verwendeten Anwendungen und teste gelegentlich Deine Webseite auf Malware etc.

Wenn Dir das noch nicht sicher genug ist, lies einfach mal ein wenig in der Security-Szene mit, was es da so alles gibt, dann bekommst Du auch ein Gefühl dafür, welches Risiko Du hast und welche Schutzmaßnahmen es gibt. Falls Du dann trotzdem noch auf PEN-Test\'s bestehst, lass Deine Programm und/oder Webseite von jemanden analysieren/prüfen, der schon Erfahrung hat und auch ein Gespür dafür. Das geht sicherlich schneller und effektiver, als Du es in absehbarer Zeit bewerkstelligen kannst (ich würde es ebenso machen). Bei Bedarf frag einfach mal in die Runde, wer sich da als Dienstleister anbeiten würde - ggf. bekommst Du ja einen Freundschaftsrabatt.

Nichts für ungut!

Beste Grüße
Ralph


Bitte nicht vergessen, Virenscanner und Co. zu aktualisieren!
SecuTipp: GRATIS Security-Informationen für die eigene Webseite und [url="http://twitter.com/secuteach"][img]http://w

philosapiens
Avatar philosapiens
webdesigner
Fortgeschrittener (52 Beiträge)
am 12.05.2011, 21:56 Uhr schrieb philosapiens

Hallo Ralph,

da hast Du genau meine Meinung geschrieben. Klasse!

Eigentlich hatte ich mir hier erhofft, genau so einen Kontakt herstellen zu können. Ich möchte ja im Grunde auch nix von derdunklen Seite des Netzes können. Es wäre schon schick, wenn man den Scriptkiddies ein wenig die Tore verringern könnte. Doch ich lese häufig, dass man am besten selbst testen solle. Aber wie, wenn man noch so unwissend ist und es ja eigentlich auch bleiben möchte?

Was hälst Du denn von meinem Codeschnipsel? Trifft der wenigstens in die richtige Richtung? Immerhin habe ich schon versucht ohne Datenspeicherung auszukommen. Ich gebe mich stets derHoffnung hin, dass nicht erhobene Daten auchdie sichersten sind. Daher ist der Shop nur mit Formularübergaben als Sessions mit finaler E-Mail, die die Bestelldaten an den Shopbesitzer und den Auftraggeber gleichermaßen versendet. Ich halte das Konstrukt schon für halbwegs sicher. Nun bräuchte ich nur noch mehr oder weniger sichere Formulare. Oder?


Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.

Hier mein Versuch der Webseitenerstellung: http://idealseiten.de


gelöschter Benutzer
am 12.05.2011, 23:18 Uhr schrieb

Ralph schrieb:
also ich möchte Dir abraten, selbst als Hacker aktiv zu werden! Dies aus mehreren Gründen.



Hi Ralph, also da muss ich dir mal widersprechen.
Es ist sehr wichtig die Möglichkeit zu kennen wenn man sich schützen will, außerdem braucht man für so etwas ein sehr umfangreiches Wissen das man sich erst aneignen muss und das ist gar nicht mal so schlecht.
Wie man seine Fähigkeiten dann letztendlich einsetzt, entscheidet darüber ob gut oder böse.

Bei einem selbst geschrieben System gibt es keine Patches die man eben mal schnell herunterladen und installieren kann, da muss man selber für Sicherheit sorgen.


philosapiens schrieb:
Was hälst Du denn von meinem Codeschnipsel?


Wenn Du $_GET verbietest schick ichs dir halt per $_POST
Strip_tags() erwartet einen String was machst du wenn $value ein Array ist?

Fazit, mit deinem Code behinderst du dich mehr selbst als es dir nutzt. Die "Scriptkiddies", wie du sie so schön nennst, würde das nicht mal ansatzweise aufhalten.


Und noch einmal, "Hacken" ist nicht gleich böse! Es setzt sogar einen sehr hohen Sachverstand voraus.


Schöne Grüße
Thomas


romacron
JDev Xer
Content Gott (1224 Beiträge)
am 13.05.2011, 05:02 Uhr schrieb romacron

..Hacker klingt immer so böse.

"Wenn ich nicht in der Lage bin Skript anzugreifen, woher soll ich dann wissen wie ich meine eigenen Scripte schützen kann?"

@philosapiens, Deinen Lernwillen und jagt-trieb finde ich gut, er eröffnet dir die Möglichkeit in Sachen Web vorwärts zu kommen. Was zu diesem Zeitpunkt nicht funktionieren wird, sichere uns stabil laufende Applikation! Dies braucht einfach Zeit...

..immer schön trainieren, du bist auf dem besten Weg


klaus_b
Avatar klaus_b
Er ernährt mich ;-)
Content Meister (328 Beiträge)
am 13.05.2011, 10:03 Uhr schrieb klaus_b

Hallo zusammen,

im Großen und Ganzen hat es Thomas, AKA Ultima, sehr schön auf den Punkt gebracht:
"Wenn ich nicht weis wie Script- oder SQL-Injection oder ein simples Cross-Side-Scripting funktioniert, wie soll ich mich dann davor schützen?"

@Ultima

Ultima schrieb:
Wenn Du $_GET verbietest schick ichs dir halt per $_POST

Ich weis nicht wie das beim Apache funktioniert, aber in einer ASP.NET App auf einem IIS kann ich auf Anwendungsebene die Verben explizit für einzelne HttpHandler erlauben oder eben nicht. Wenn dann eben nur GET erlaubt ist, muss ich mich um einen möglichen POST-Request nicht mehr kümmern, da das Framework den POST-Request mit 403 forbidden quitiert.
Des weiteren müssen die Daten für eine POST-Request in einem Stream übermmittelt werden. Die Daten im Stream müssen dabei auch noch in einem bestimmtem Format serialisiert sein.
Also nicht ganz so trivial

Servus,
Klaus


klaus_b@.NET über alles was an .NET und C# Spass macht.

der_booker
Foren Moderator
selbständig
(2762 Beiträge)
am 13.05.2011, 11:09 Uhr schrieb der_booker

Ich bin der Meinung, dass wir die Sache ruhig vertiefen können, um aufzuzeigen, wie man sich vor Angriffen schützen kann. Welche Art von Angriffen gibt es überhaupt und welchen Nutzen bringen sie dem Angreifer? Wer wäre den alles mit dabei, tiefer in die Materie einzusteigen?


Heiko Jendreck
personal helpdesk
http://www.phw-jendreck.de
http://www.seo-labor.com

klaus_b
Avatar klaus_b
Er ernährt mich ;-)
Content Meister (328 Beiträge)
am 13.05.2011, 11:42 Uhr schrieb klaus_b

Hallo Heiko,

lange nicht mehr gelesen

der_booker schrieb:
Ich bin der Meinung, dass wir die Sache ruhig vertiefen können, um aufzuzeigen, wie man sich vor Angriffen schützen kann.


Prinzipiell eine gute Idee, allerdings auch ein zweischneidiges und dazu sehr scharfes Schwert.
Um einen Prüf- oder Verteidigungsmechanismus zu erklären, muss erst der Angriff im Detail gezeigt werden. Sonst kann man nur schwer den Nutzen einer bestimmten Maßnahme verdeutlichen.
Wenn du so einen Thread aufziehen willst, dann bitte nicht in einem öffentlichen und indizierbarem Forum.

Just my 2 cents.
Klaus


klaus_b@.NET über alles was an .NET und C# Spass macht.

der_booker
Foren Moderator
selbständig
(2762 Beiträge)
am 13.05.2011, 13:09 Uhr schrieb der_booker

klaus_b schrieb:

lange nicht mehr gelesen


Stimmt, freut mich auch wieder etwas von Dir zu hören/lesen.

klaus_b schrieb:

der_booker schrieb:
Ich bin der Meinung, dass wir die Sache ruhig vertiefen können, um aufzuzeigen, wie man sich vor Angriffen schützen kann.


Prinzipiell eine gute Idee, allerdings auch ein zweischneidiges und dazu sehr scharfes Schwert.
Um einen Prüf- oder Verteidigungsmechanismus zu erklären, muss erst der Angriff im Detail gezeigt werden. Sonst kann man nur schwer den Nutzen einer bestimmten Maßnahme verdeutlichen.
Wenn du so einen Thread aufziehen willst, dann bitte nicht in einem öffentlichen und indizierbarem Forum.



Ganz klar, die Frage geht zunächst in die Richtung Interesse und wenn es genügend Leute gibt, sollte es kein großes Problem sein, einen separaten Raum dafür zu finden. Das hätte den Vorteil, dass wir User in den Raum einladen können. Vielleicht könnte man auch einen Themenabend daraus machen und die Sache in den Chat verlagern. Da bin ich aber für Vorschläge offen.

Themen könnten beispielsweise sein:

* SQL-Injection
* Umbiegen von Formulardaten (Warenkorb bei Bestellungen)
* unsicherer SMTP-Server (SMTP-Server ist offen und lässt sich als Spam missbrauchen)
* unsicherer FTP-Server (keine Sicherheitsregeln für Gast-Zugang)
* Zugangsdaten
* und vieles mehr.

Ob da ein Thread ausreichen wird, das glaube ich fast nicht, denn jeder Bereich sollte sein eigenen Bereich haben. Evtl. kann man mit einer Subdomain arbeiten, aber bevor wir uns darüber Gedanken machen können, möchte ich erst das Interesse abfragen.


Heiko Jendreck
personal helpdesk
http://www.phw-jendreck.de
http://www.seo-labor.com



« zurück zu: Sicherheitslücken

Das Seitenreport Forum hat aktuell 5273 Themen und 36107 Beiträge.
Insgesamt sind 48346 Mitglieder registriert.