Ein neues Notebook muss her

Mein bisheriges Notebook hat nun schon 7 Jahre auf dem Buckel. Es hat mich durch den Bachelor gebracht und auch durch 75 % des Master-Studiengangs. In 7 Jahren verändert sich doch so einiges, auch die eigenen Ansprüche und Gewohnheiten. Daher war ich in den letzten Monaten auf der Suche nach einem Nachfolger.

Mein bisheriges Notebook

Im Jahr 2012 hatte ich mir das ASUS Notebook K55VM gekauft. Mit i5 Prozessor (Dual-Core) und 8 GB DDR3 RAM. Als Storage war eine 750 GB HDD verbaut. Sogar zum Gaming war das Notebook damals einigermaßen geeignet. Die 8 GB RAM waren nicht schlecht und es war immerhin eine NVIDIA GeForce GT 630M verbaut mit 2 GB RAM. Für damalige Verhältnisse und zu dem damaligen Preis echt ordentlich.

Leider genügt das heute nur noch bedingt. Die fehlende SSD-Festplatte merkt man bei jedem Neustart, da dieser sich sehr … sehr lange zieht. Und mit dem Gaming ist es auch vorbei. Selbst alte Spiele belasten das System so sehr, dass der Prozessor wegen Überhitzung aussteigt. Inzwischen habe ich auch andere Ideen, wofür ich das Notebook benötige, und da reichen mir 8 GB bei weitem nicht mehr aus. Wer schon mal Kali Linux als VM mit weniger als 2 GB RAM gestartet hat, weiß, was ich meine.

Meine Anforderungen

Ich wollte nun also ein ähnliches Notebook, aber in schnell. Kein 5 kg Gaming-Notebook, aber trotzdem mit Power für Gaming. Kein 5.000 € Gerät, aber trotzdem mit guter CPU und so viel RAM wie möglich.

Grundsätzlich benutze ich das Gerät für die üblichen Office-Anwendungen mit 15 Zoll Bildschirmdiagonale. Surfen, Texte, Tabellen, Präsentationen, Coding. Ich möchte aber auch gern meine Fähigkeiten im Bereich Offensive Security weiter ausbauen. Also benötige ich Kali Linux und diverse VMs auch mehr Arbeitsspeicher, mind. 16 GB, besser 32 GB. Der Akku sollte auch länger als 60 Minuten aushalten bei einfacher Office-Last. Außerdem war mir eine beleuchtete Tastatur wichtig, da dies mittlerweile eigentlich Standard sein sollte, am besten mit separatem Ziffernblock. Und nicht zuletzt sollten auch aktuelle Spiele ohne größere Problemen und bei normalen Einstellungen flüssig laufen. Also muss eine solide Grafikkarte dabei sein. Idealerweise sollte auch der Storage nicht zu kurz kommen. Mit HDDs will ich mich eigentlich nicht mehr rumschlagen (hallo Gaming-Notebooks!), sondern die verbaute SSD sollte bereits eine solide Größe haben, am besten 1 TB.

Die Auswahl

Da ich mit meinem ASUS sehr zufrieden war, und bis auf die Haltbarkeit vom Akku keine Probleme hatte, wollte ich gern bei ASUS bleiben. Hier hatte ich mir das neueste, bis jetzt nicht erschienene Zenbook Pro Duo angesehen. Bei den aktuell verfügbaren ASUS Zenbooks finde ich, dass das Preis-Leistungsverhältnis nicht so richtig passt. Außerdem habe ich gelesen, dass viele mit der Verarbeitung nicht zufrieden sind, was bei einem 2.000 € Notebook kein Thema sein sollte.

Auf der Suche nach weiteren Ultrabooks bin ich auf Huawei und weitere Hersteller gestoßen. Interessant fand ich dabei das MSI GS65 Stealth Thin Notebook. Allerdings fand ich auch hier das Preis-Leistungsverhältnis nicht so gut, die Tastatur wäre ohne Ziffernblock und die Beschriftung etwas … gewöhnungsbedürftig.

Der Kauf

Hängen geblieben bin ich schlussendlich bei Gigabyte. Den Hersteller kannte ich bisher nur aus dem Hardwarebereich für Desktop-PCs, da ich bspw. eine Grafikkarte von Gigabyte hatte und diese erst kürzlich wieder durch eine Gigabyte ersetzt habe.

Bei meiner Suche nach einem leistungsstarken Notebook wurde das Gigabyte Aero 15X empfohlen. Und was soll ich sagen, das ist nun auch geworden. Es hat erstmal 15 Zoll Bildschirm und eine Tastatur mit Beleuchtung. Check. Außerdem 16 GB DDR 4 RAM, der auch noch erweitert werden kann auf bis zu 64 GB! Check!! CPU ist das einzige „Manko“ ist, dass es „nur“ einen i7 8750H mit 6 Cores ist. Aber der Aufpreis zum i9 mit 8 Cores ist echt immens, bei allen Herstellern. Als Storage ist meine Wunschgröße verbaut, 1 TB als SSD. Zu guter letzt kommt auch das Gaming nicht zu kurz mit einer NVIDIA GeForce RTX 2070 mit 8 GB RAM. Der Bildschirm ist auch noch PANTONE zertifiziert, dass mir bei der Bildbearbeitung auch entgegen kommen sollte. Aktuell scheint das Notebook bei einigen Händlern in der Aktion zu sein, so dass ich es für 1.999 € ergattern konnte.

Bisher kann ich nicht meckern. Erste Tests mit älteren Spielen wie Total War: Rome 2 sind bisher sehr gut gelaufen und auch mein aktueller Zeitfresser Magic The Gathering: Arena läuft mit hohen Einstellungen absolut flüssig und sieht dabei sehr gut auf dem Bildschirm aus.

Einzige Unschönheiten die mir bisher aufgefallen sind betreffen die Tastaturbeleuchtung und die Webcam. Die Beleuchtung lässt sich dimmen und farblich ändern, leider flackern dabei die LEDs leicht. Der andere Minuspunkt ist die Webcam. Diese ist nicht oben angebracht am Bildschirmrand sondern unten und wird dadurch eher zu einer Nosecam. Schade eigentlich, weil das Notebook sonst extrem viel richtig macht.

Erfahrungsbericht Seminar Architecting on AWS

AWS. Bei diesen drei Buchstaben musste ich immer an zahllose Blog-Einträge und Youtube-Videos denken, von denen ich nur die Hälfte verstanden habe. Und das war schon viel. Und an endlose merkwürdige 3D-Symbole und unerklärliche Bezeichnungen, wie S3, EC2, IGW, VPC, SNS, SQS, … die Liste ließe sich endlich fortführen.

Architecting on AWS

Ich hatte nun die Gelegenheit den Kurs „Architecting on AWS“ zu besuchen. Es handelt sich dabei nicht um ein paar Online-Videos von Amazon, sondern um eine echte Präsenzschulung. Anbieter der Schulung war bei mir der TÜV Rheinland, da Amazon hier mit verschiedenen Schulungsanbietern zusammen arbeitet. Mein Ziel war es, in dem Kurs endlich AWS besser zu verstehen und zu lernen, wie man in der Amazon Cloud Systeme richtig aufsetzt, welche Möglichkeiten es gibt, was die einzelnen Services machen und wie das alles am Ende zusammenhängt.

Meine Erwartungen wurden nicht enttäuscht. Zu Beginn der Schulung zeigte der Trainer eine Architekurskizze einer Systemungebung in AWS mit unendlich vielen Symbolen und Linien. Das Ziel der Schulung war es, dieses Bild am Ende zu verstehen, erklären zu können und selbst eigene Architekturen in AWS zu entwerfen und aufbauen zu können. Im nächsten Schritt wurde alles ausgeblendet, bis auf S3. Und so lernten wir eine statische Webseite in S3 zu hosten. Mit jedem Modul wurde die Skizze Schritt für Schritt wieder eingeblendet und wir haben uns so einen Service nach dem anderen erarbeitet. Dabei ging es nicht nur um die grundlegenden Funktionen, sondern auch um Vorteile, Nachteile, Einsatzmöglichkeiten, Anwendungsfälle und auch mögliche Fallstricke bzw. Anwendungsfälle, für die der Service nicht geeignet ist.

Ich bin total begeistert von der Schulung und dem Trainer. Ich habe in den drei Tagen so viel gelernt über den konkreten Einsatz von AWS, dass ich die Schulung eigentlich jedem empfehlen kann, der in AWS endlich durchstarten will. Allein und nur mit Online-Ressourcen hätte es erheblich länger gedauert alles zu verstehen und ich bin davon überzeugt, dass ich nicht so viel mitgenommen hätte, wie in den vergangenen Tagen. Der Kurs vermittelt einem konkret und hands-on Wissen, um wirklich eigenständig AWS nutzen zu können, auch ohne offizielle Zertifizierung. Diese kann aber natürlich auch bei Amazon abgelegt werden.

Fazit

Nur die Schulung besuchen reicht aber nicht. Ich werde ich den nächsten Tagen das gelernte selbst wiederholen und versuchen, die Beispiele aus der Schulung selbst nochmal in AWS aufzubauen. Das schöne ist ja, mit einem Klick steht einem alles zur Verfügung, und wenn man rechtzeitig die Instanzen und Services wieder abschaltet, entstehen auch nur minimal kosten.

Jetzt muss ich aber weg, ich muss noch eine High-Availability-Umgebung mit mehreren Auto-Scaling-Groups in AWS einrichten. 🙂

Der Anfang vom Ende …

… des Masterstudiums.

Die vergangenen Wochen waren geprägt von viel Schreibarbeit. Ich habe inzwischen alle Hausarbeiten aus meinem Masterstudium abgeschlossen. Die Themen waren moderne Authentifikationsverfahren für Webanwendungen im Modul IT-Sicherheit, Serverless für Webanwendungen im Modul Softwareengineering für verteilte Anwendungen und zuletzt Sicherheitsanforderungen im agilen Softwareentwicklungsprozess für das Modul IT-Security-Management.

Damit bin ich jetzt durch alle Module des Masterstudiengangs durch. Das Thema für meine Masterthesis konnte ich mit meinem Wunschbetreuer bereits im April/Mai festziehen. Dadurch konnte ich heute endlich meinen Antrag zur Masterprüfung vorbereiten und werde diesen morgen absenden. Wenn alles nach Plan verläuft und das Prüfungsamt der Wilhelm Büchner Hochschule zustimmt, starte ich dann am 02.09.2019 (erster Werktag des Monats) offiziell mit der Thesis. Für die Bearbeitung habe ich insgesamt 6 Monate Zeit, muss also Ende Februar 2020 spätestens abgeben.

Das scheint noch sehr weit weg, aber davon sich nicht in Sicherheit wiegen lassen. Sechs Monate sind für eine Abschlussarbeit von 100 Seiten Nettotext trotzdem nicht so viel Zeit.

Ich bin froh, dass ich es geschafft habe doch noch bis August alle Prüfungsleistungen zu erbringen. Dies war mein Ziel zu Beginn des Jahres. Auch wenn es viel Verzicht mit sich gebracht hat, bin ich froh, dass ich mich durchgebissen habe und mit der Masterthesis stehe ich nun am Anfang vom Ende meines Studiums.

Meine erste Bug Bounty Meldung – ausgerechnet bei Facebook

Gestern ist mir -mehr durch Zufall als durch bewusstes Suchen- ein Sicherheitsproblem bei Instagram aufgefallen, als ich jemanden helfen wollte. So beginnt meine erste Sicherheitsmeldung im Rahmen eines Bug-Bounty-Programms und dann ausgerechnet bei Facebook.

Instagram gehört zu Facebook und es gibt von Facebook ein offizielles Bug-Bounty-Programm. Weitere Infos kann man hier finden. Wenn man der Meinung ist, dass man ein Sicherheitsproblem gefunden hat, kann man dieses hier melden. Das Formular zum Melden ist relativ überschaubar. Man gibt an, was man gefunden hat, welche Auswirkungen dies hat und wie man den Fehler reproduzieren kann. Bedingung von Facebook ist, dass man das gefundene Problem nicht veröffentlicht, bis es von den Security Engineers von Facebook geprüft und behoben wurde. Im Gegenzug stellt Facebook dem Melder eine Belohnung (Bounty) in Aussicht. Laut Beschreibung mind. 500 $, kann aber je nach schwere der Sicherheitslücke auch mehr werden. Darüber hinaus wird man auf einer Art Wall of Fame namentlich genannt – ok, geschenkt. 😉

Ich denke meine gefundene Schwachstelle ist nicht extrem kritisch, trotzdem war ich überrascht, dass sie überhaupt existiert. Sobald Facebook meine Meldung geprüft hat, kann ich hier hoffentlich mehr ins Detail gehen. Gleichzeitig bin ich natürlich gespannt, wie schnell meine Anfrage bearbeitet wird von Facebook und ob diese tatsächlich als Sicherheitslücke eingestuft wird. Ich werde hier auf jeden Fall berichten, egal wie die Geschichte am Ende ausgeht.

Es ist ruhig … zu ruhig

Huch, über Weihnachten ist es hier sehr ruhig geworden und das direkt nach dem Start. Das sollte so nicht sein. Im Dezember ist das Projekt im Studium gestartet und das kostet im Moment auch den letzten Rest freier Zeit, daher fehlt mir im Moment die Zeit hier in der Qualität zu bloggen, die ich eigentlich bringen möchte. Nebenbei versuche ich noch Hausarbeiten zu schreiben unter anderem zum Thema Progressive WebApps. Also alles in allem viel zu tun, aber der Blog ist nicht vergessen!

Buchempfehlung: Wissenschaftliche Poster

Wer meinen Twitter-Feed verfolgt hat, weiß schon, was jetzt kommt. Ich studiere aktuell Master Informatik an der Wilhelm Büchner Hochschule (WBH) und im Rahmen des Masterstudiums muss ich auch diverse Hausarbeiten schreiben. Zu einer dieser Hausarbeiten muss ich ein englisches Abstract schreiben, ein Poster erstellen und dies bei einem Termin mit anderen Studenten an der WBH präsentieren und diskutieren.

In meiner „wissenschaftlichen Karriere“ war das Maximum an wissenschaftlicher Arbeit bisher die Verteidigung der Bachelorarbeit. Und tatsächlich habe ich bisher auch auf diversen Konferenzen noch nie eine Posterpräsentation gesehen. Zum Thema wissenschaftliches Arbeiten im Sinne von Haus- und Abschlussarbeiten gibt es Unmengen an Literatur, Internetseiten und Youtube-Videos. Wenn man aber nach wissenschaftlichen Postern sucht, findet man erschreckend wenig Hilfe. Dass es auf Deutsch oft wenig bis keine Quellen gibt, ist man ja als Informatiker gewohnt, aber selbst auf Englisch finden sich nicht so viele Bücher zum Thema.

Umso mehr freut es mich, dass ich ein sehr gutes Buch zu dem Thema gefunden habe und das auch noch auf Deutsch. Letzte Woche habe ich mir das Buch „Wissenschaftliche Poster“ – „Vom Konferenzabstract bis zur Postersession“ von Stefan Lang bestellt. Mit gut 83 Seiten fällt das Buch recht schmal aus, weshalb ich zunächst sehr skeptisch war. Eingeteilt ist das Buch in vier Kapitel die an wie folgt beschreiben kann: Abstract erstellen, Posterinhalte, Postergestaltung, Posterpräsentation. Und trotz oder vielleicht gerade wegen seiner wenigen Seiten schafft es der Autor, den Inhalt klar, deutlich und praxistauglich rüber zu bringen.

Das Thema Postergestaltung hat mich bisher wirklich sehr abgeschreckt. Mit dem Buch von Lang fühle ich mich aber bereits nach erstem, schnellen Durchlesen wesentlich besser vorbereitet, da es auch von meiner Hochschule dazu nur wenige Infos und Vorgaben gibt. Wer also ebenfalls vor der Aufgabe steht, sein/ihr erstes Poster zu gestalten, dem kann ich das Buch nur wärmstens empfehlen! 

Auch wenn auf vielen Konferenzen inzwischen Poster-Sessions durchgeführt werden und bei den Call-for-Papers explizit nach Poster-Einsendungen gefragt wird, ist es schwierig, die Poster dann auch online zu finden. Häufig findet man nur die Abstracts zu den Postern, aber die eigentlichen Poster gibt es nicht. Die CppCon hat auf GitHub aber auch die Poster online gestellt. Die kann man sich auf jeden Fall als Inspiration mal anschauen:

Wenn jemand noch weitere Quellen kennt, wo Poster online einsehbar sind, bitte gerne hier teilen! 🙂

Authentifikation vs. Autorisation

In meinem ersten Beitrag hatte ich angekündigt, dass ich mich als erstes mit den Begriffen Authentifikation und Autorisation beschäftigen möchte. Mir fällt immer wieder auf, dass diese beiden Begriffe oft zusammen auftauchen, aber von vielen Menschen falsch oder sogar synonym verwendet werden. Dies führt im (Arbeits-)Alltag häufig zu Missverständnissen bei allen Beteiligten. Daher möchte ich hier mal grundlegend die beiden Begriffe voneinander abgrenzen und den Unterschied verständlich darstellen.

Authentifikation

Die Authentifikation lässt sich bspw. mit der Passkontrolle am Flughafen vergleichen. Bevor ich in ein Land einreisen kann, muss meine Identität geprüft und bestätigt werden. Ich könnte ja einfach sagen, ich bin übrigens Herr Schmidt aus Berlin. Der Beamte wird mir das aber nicht glauben, weil das könnte ja jeder behaupten. Stattdessen muss er meine Identität feststellen. Mir als Person kann er nicht vertrauen, aber er vertraut anderen Staaten, die Reisedokumente ausstellen. Anhand von meinem (gültigen) Reisepass kann ich nun meine Identität bestätigen und der Grenzbeamte kann dies auch überprüfen.

Bei Informationssystemen (bspw. Webanwendungen), muss ebenfalls meine Identität festgestellt werden. Die Authentifikation kann dabei mittels verschiedener Faktoren erfolgen. Der bekannteste Authentifikationsfaktor ist sicher Benutzername und Passwort. Das bedeutet man geht davon aus, dass jemand, der den Benutzernamen und das dazugehörige Passwort kennt, sicher die Identität ist, die der Anwender vorgibt zu sein. Wenn jemand anderes dieses Passwort kennt oder errät, kann er in dem Fall die Identität des Anwenders annehmen. Weitere Faktoren, die zur Authentifikation dienen können, sind Client-Zertifikate, zusätzliche zur Anmeldung notwendige Sicherheitscodes per SMS oder mobiler App, oder auch biometrische Merkmale wie Fingerabdruck oder Gesicht. [1]

Autorisation

Bei der Authentifikation geht es somit ausschließlich um die Indentitätsfeststellung des Anwenders. Es wird dabei nicht entschieden, welche Rechte oder Zugriffe innerhalb der Anwendung für den Anwender möglich bzw. verboten sind. Die Steuerung von Zugriffen und das Erteilen von Berechtigungen ist die Autorisation. [2]

Oft hängt die Autorisation mit der Authentifikation zusammen. Nur wenn die Anwendung weiß, wer der Anwender ist, kann die Entscheidung getroffen werden, welche Funktionen und Informationen der Anwender aufrufen darf. Die Berechtigung kann dabei direkt mit der Identität des Anwenders zusammenhängen (bspw. Zugriff auf eigenes/persönliches Bankkonto) oder mit einem anderen Merkmal verknüpft sein, wie bspw. einer Rollen- oder Gruppenzuordnung (Datenbank-Administratoren, die auf alle Bankkonten zugreifen können). Das Festlegen und Erteilen von Zugriffsberechtigungen ist somit zwar abhängig von der Authentifikation ist aber je nach Applikation sehr spezifisch und muss daher separat davon betrachtet werden.

tl;dr

Die Authentifikation ist die Feststellung der Identität. Die Autorisierung ist die Festlegung, welche Zugriffe für die authentifizierte Identität möglich sind. Die beiden Begriffe hängen zwar zusammen, sollten aber bei der Entwicklung von Systemen und Anwendungen einzeln betrachtet werden. Auf jeden Fall muss darauf geachtet werden, dass diese Begriffe keine Synonyme sind.

Quellen

  1. Eckert, Claudia (2014): IT-Sicherheit, 9. Auflage, S. 8 
  2. Eckert, Claudia (2014): IT-Sicherheit, 9. Auflage, S. 5

Neuanfang

Neuer Blog, neues Glück? Nach langer Zeit, die dieser Blog nun schon rum gammelt, wird jetzt endlich angefangen! Aber worum soll es hier eigentlich gehen?

Nachdem ich bereits einen englischsprachigen Blog zu meinem Studium und generell Informatik-Themen hatte, möchte ich mich nun auf das Thema IT-Security fokussieren. Da es in diesem Bereich im deutschsprachigen Raum wenig „Player“ gibt, dachte ich mir, nicht den 100. Blog auf Englisch zu dem Thema zu starten, sondern über die Themen IT-Security, Penetration Testing und sicherer Applikationsentwicklung auf Deutsch zu schreiben.

Dieser Beitrag ist quasi die Stunde Null für diesen Blog. Es ist vieles noch nicht fertig, aber ich will jetzt endlich anfangen. Gleichzeitig ist dieser Blog auch ein Experiment. Mit meinem englischen Blog hatte ich generell sehr wenig Interaktion und Feedback, ein paar Studenten ausgenommen. Jetzt bin ich gespannt, ob es Interesse am Thema IT-Sicherheit in deutscher Sprache gibt und welche Diskussionen daraus entstehen. Über Rückmeldungen und Kommentare freue ich mich jedenfalls sehr und hoffe, dass ihr (die Leser meiner Beiträge) euch auch zu Wort meldet. Mein Ziel ist es, jede Woche mindestens einen Beitrag zu schreiben und ich denke, dass ich so nach ca. 25 Beiträgen mal ein Zwischenfazit ziehen werde.

Wo wir gerade bei Interaktion waren: Wenn du, als mein Leser, einen Wunsch für ein Thema hast, auf dass ich eingehen soll, dann schreib mir einfach hier, per Mail oder auf Twitter. Ich werde dann versuchen, wenn es thematisch passt, dazu etwas zu schreiben. Als kleinen Ausblick möchte ich heute schon das Thema des nächsten Beitrags ankündigen, sozusagen „teasern“.  😉 Mein erster Beitrag wird das Thema Authentifizierung (Authentication) und Autorisierung (Authorisation) behandeln, da es hier immer wieder zu Verwechslungen kommt und viele den Unterschied nicht genau kennen. Dies ist jedoch für viele Themen, gerade in der IT-Security wichtig zu verstehen, dass es sich um zwei grundsätzlich verschiedene Aspekte handelt, die nicht immer ohne weiteres vermischt oder gar synonym verwendet werden können.

Was gibt es sonst noch? Rechts oben findet ihr einen Link „Rabbit Hole“ und wie bei Alice im Wunderland soll euch das ggf. tiefer in den Kaninchenbau führen, so zumindest der Plan. Ich werde da eine Liste mit anderen interessanten Seiten pflegen. Dies soll keine Werbemaßnahme sein, sondern ist auch für mich einfach eine relativ lose Sammlung an Seiten im Netz, die sich aus IT-Security- oder Entwicklersicht lohnen.