IT Grundschutz Konzepte und Klassifizierungen von Daten

Security Konzepte und Vorüberlegungen

dialog-password

Eine ausführliche Anleitung zu IT Grundschutz Standarts und Vorgehensweisen, kann auf den Seiten des “Bundesamts für Sicherheit in der Informationstechnik” nachgelesen werden Link.

So detailiert wie im BSI möchte ich hier nicht in die Materie eintauchen, aber einen kurzen Überblick zu den Schlüsselthemen geben, welche bei der Planung eines sicheren Systems zu beachten ist.

Continue reading

ASA SSH Zugang über ASDM einrichten

Cisco ASA 5505 SSH

CISCO-ASA-5505

Ich stand mal vor dem Problem, dass trotz gefühlt korrekter Einrichtung des SSH Zugangs über ASDM, der eigentliche Zugang einfach nicht funktionieren wollte.
Dabei kam ich per SSH bis zum Anmeldevorgang, der bei Eingabe meines Usernamens und Passworts einfach den Zugang verweigerte, obwohl die eingegeben Daten zu 100% korrekt waren.
Continue reading

Raspberry Pi beschleunigen / Terminalsitzungen [Part 2]

Raspberry Pi Terminalsitzungen abschalten

raspberry

Wir kämpfen weiterhin um den knappen Arbeitsspeicher von 512 MB. Der Pi gönnt dem Benutzer nach dem Startprozess ganze  6 Terminalsitzungen. Aber welcher User braucht so viele? Otto-Normalverbraucher gibt sich mit eins bis zwei zufrieden. Was spricht also dagegen die überflüssigen abzuschalten? Nichts, also ran as Werk!
Continue reading

Raspberry Pi beschleunigen / Dienste Abschalten [Part 1]

Raspberry Pi Dienste Abschalten

raspberry

Das kleine Wundergerät kann mit einigen wenigen Handgriffen doch fühlbar flotter laufen.
Im ersten Schritt sollte man alle Dienste abschalten, die nicht benötigt werden. Was man bei Windows mit dem Befehl msconfig macht, geschieht bei Linux mit sysv-rc-conf. Dieses müssen wir uns aber erst installieren.
Continue reading

Cisco ASA IPSec Remote Access VPN

Mit der Cisco IPSec Lösung ist es möglich mobile Benutzer über eine gesicherte VPN-Leitung an ein Zielnetzwerk anzubinden. Eine Quick & Dirty Anleitung wie man in X Schritten die Einrichtung beendet soll dieser Artikel aber nicht werden.

Aufbau des Tunnels

In Phase 1 der IKE Tunnel Verhandlungen werden diverse Daten zum Aufbau der VPN Verbinden ausgetauscht. IKE steht für Internet Key Exchange und ist jenes Protokoll welches genutzt wird um eine Security Assosiation im IPsec Protokoll aufzubauen (SA).Falls man die VPN Verbindung mit Preshared-Keys (Passwörter) aufbaut, geschehen diese Phase 1 Verhandlungen im Agressive Mode. Setzt man bei der VPN-Verbindung auf Prublik Key Infrastructure (PKI), laufen die Verhandlungen im Main Mode ab.
Folgendes Bild veranschaulicht die Unterschiede zwischen beiden Verfahren:
Continue reading

SQL Injections

Dynamische Inhalte und deren Probleme

Die Meisten modernen Web-Applikationen verlassen sich auf dynamische Inhalte, um genauso attraktiv zu erscheinen wie die traditionelle Desktop-Fenstertechnik. Die Dynamik wird normalerweise dadurch gewährleistet, dass aktualisierte Daten aus einer Datenbank gelesen werden. SQL ist eine der beliebteren Plattformen für Web-Datastores, und viele Web-Applikationen basieren vollständig auf Frontend-Skripten, die lediglich eine SQL-Datenbank abfragen, wobei die Datenbank entweder auf dem Webserver selbst oder auf einem eigenständigen Backend-System residiert.

Einer der hässlicheren Attacken auf Web-Applikationen ist das Hijacking der Queries, die von den Frontend-Skripten selbst für die Steuerung der Applikation oder deren Daten genutzt werden. Einer der effizientesten Mechanismen für diese Aufgabe ist eine Technik, die unter dem Namen SQL-Injektion bekannt ist. Unter SQL-Injektion versteht man das Einschleusen von rohen Transact-SQL Queries in eine Applikation, um eine unvorhergesehene Reaktion zu provozieren. Oft werden bestehende Queries einfach editiert, um das gleiche Ergebnis zu erzielen. Transact SQL lässt sich sogar durch das Einschleusen eines einzelnen Zeichens an einer sorgfältig gewählten Stelle manipulieren. Dabei kann sich die Query absolut feindselig verhalten. Die folgenden Zeichen, die alle eine spezielle Bedeutung in Transact SQL besitzen, werden normalerweise für Eingabegültigkeitsangriffe benutzt: einfach Anführungszeichen links (‘), doppelter Bindestrich (–) und Semikolon (;).

Continue reading

Cross Site Scripting (XSS)

Diese Schwachstelle entsteht üblicherweise durch einen Fehler bei der Validierung von Input/Output in Web-Applikationen. Im Gegensatz zu vielen anderen Angriffen die über das Web laufen, zielt XSS normalerweise nicht auf die Applikation selbst, sondern auf die User dieser anfälligen Applikationen.

So könnte ein bösartiger User eine Meldung über das Gästebuch einer Web-Applikation hinterlegen, die ausführbaren Code enthält. Wenn diese Nachricht von einem anderen User gelesen wird, interpretiert der Browser den Code und führt ihn aus, wodurch der Angreifer möglicherweise die Kontrolle über das Zielsystem übernehmen kann. Meistens trifft der Payload des XSS-Angriffs den Enduser der Applikation selbst. Er wird oft dazu
benutzt, Benutzerkonten und Sessions zu Hijacken oder dient zum Cookie Diebstahl.

Continue reading

Remote GUI für den Raspberry Pi (TightVNC)

Der Textbasierte Zugriff (SSH)

Der Raspberry besitzt schon die ziemlich nützliche Funktion über SSH Zugriff auf das Gerät zu nehmen. Falls noch nicht geschehen kann man das sehr einfach über folgenden Kommandozeilenbefehl aktivieren:

sudo apt-get install ssh
sudo /etc/init.d/ssh start

Damit SSH-Dienst auch nach einem reboot ausgeführt wird, setzt man diesen Befehl ab:

sudo update-rc.d ssh defaults

Continue reading

PHP Code Injection

Die Sicherheitslücke

Unter Injection bezeichnet man Verfahren, bei denen, meist durch Ausnutzung einer Sicherheitslücke, fremder Programmcode zur Ausführung eingeschleust wird. Daher kommt auch der Begriff Injection, von Injizierung/Injektion.
Viele PHP Anwendungen werden von einem zentralen Script gesteuert, welches allgemeine Aufgaben übernimmt und je nach Requestparameter ein entsprechendes Modul zur Darstellung einbindet. Viele Entwickler machen es sich hier sehr einfach, indem sie als Requestparameter den Pfad des Scripts übergeben und diesen dann mit include() oder require() in ihr Programm einbinden.
Continue reading