Penetrationstest-Tutorial: Was ist PenTest?

Inhaltsverzeichnis:

Anonim

Penetrationstests

Penetrationstests oder Pen-Tests sind eine Art von Sicherheitstests, mit denen Schwachstellen, Bedrohungen und Risiken aufgedeckt werden, die ein Angreifer in Softwareanwendungen, Netzwerken oder Webanwendungen ausnutzen könnte. Der Zweck von Penetrationstests besteht darin, alle möglichen Sicherheitslücken zu identifizieren und zu testen, die in der Softwareanwendung vorhanden sind. Penetrationstests werden auch als Pen-Tests bezeichnet.

Sicherheitslücke ist das Risiko, dass ein Angreifer den autorisierten Zugriff auf das System oder die darin enthaltenen Daten stören oder erhalten kann. Sicherheitslücken werden normalerweise versehentlich während der Softwareentwicklungs- und Implementierungsphase eingeführt. Häufige Sicherheitslücken sind Entwurfsfehler, Konfigurationsfehler, Softwarefehler usw. Die Penetrationsanalyse hängt von zwei Mechanismen ab, nämlich der Bewertung der Sicherheitsanfälligkeit und dem Penetrationstest (VAPT).

Warum Penetrationstests?

Penetration ist in einem Unternehmen unerlässlich, weil -

  • Finanzsektoren wie Banken, Investment Banking und Börsen möchten, dass ihre Daten gesichert werden, und Penetrationstests sind für die Gewährleistung der Sicherheit unerlässlich
  • Falls das Softwaresystem bereits gehackt ist und die Organisation feststellen möchte, ob noch Bedrohungen im System vorhanden sind, um zukünftige Hacks zu vermeiden.
  • Proaktive Penetrationstests sind der beste Schutz gegen Hacker

Arten von Penetrationstests:

Die Art des ausgewählten Penetrationstests hängt normalerweise vom Umfang ab und davon, ob die Organisation einen Angriff eines Mitarbeiters, eines Netzwerkadministrators (interne Quellen) oder externer Quellen simulieren möchte. Es gibt drei Arten von Penetrationstests

  • Black-Box-Test
  • White Box Penetrationstest
  • Gray Box Penetrationstests

Bei Black-Box-Penetrationstests hat ein Tester keine Kenntnisse über die zu testenden Systeme. Er ist dafür verantwortlich, Informationen über das Zielnetzwerk oder -system zu sammeln.

Bei einem White-Box-Penetrationstest erhält der Tester normalerweise vollständige Informationen über das zu testende Netzwerk oder die zu testenden Systeme, einschließlich des IP-Adressschemas, des Quellcodes, der Betriebssystemdetails usw. Dies kann als Simulation eines Angriffs durch einen beliebigen Tester betrachtet werden Interne Quellen (Mitarbeiter einer Organisation).

Bei einem Gray-Box-Penetrationstest wird einem Tester eine teilweise Kenntnis des Systems vermittelt. Dies kann als Angriff eines externen Hackers angesehen werden, der unrechtmäßigen Zugriff auf die Netzwerkinfrastrukturdokumente eines Unternehmens erhalten hat.

So führen Sie Penetrationstests durch

Im Folgenden sind die Aktivitäten aufgeführt, die ausgeführt werden müssen, um den Penetrationstest auszuführen:

Schritt 1) ​​Planungsphase

  1. Umfang und Strategie des Auftrags werden festgelegt
  2. Bestehende Sicherheitsrichtlinien, Standards werden zur Definition des Umfangs verwendet

Schritt 2) Erkennungsphase

  1. Sammeln Sie so viele Informationen wie möglich über das System, einschließlich Daten im System, Benutzernamen und sogar Passwörter. Dies wird auch als FINGERPRINTING bezeichnet
  2. Scannen und prüfen Sie die Ports
  3. Überprüfen Sie das System auf Schwachstellen

Schritt 3) Angriffsphase

  1. Suchen von Exploits für verschiedene Sicherheitslücken Sie benötigen die erforderlichen Sicherheitsberechtigungen, um das System auszunutzen

Schritt 4) Berichtsphase

  1. Ein Bericht muss detaillierte Ergebnisse enthalten
  2. Risiken gefundener Schwachstellen und deren Auswirkungen auf das Geschäft
  3. Gegebenenfalls Empfehlungen und Lösungen

Die Hauptaufgabe bei Penetrationstests besteht darin, Systeminformationen zu sammeln. Es gibt zwei Möglichkeiten, Informationen zu sammeln:

  • Modell "Eins zu Eins" oder "Eins zu Viele" in Bezug auf den Host: Ein Tester führt Techniken linear entweder gegen einen Zielhost oder gegen eine logische Gruppierung von Zielhosts (z. B. ein Subnetz) durch.
  • Modell "Viele zu Eins" oder "Viele zu Viele": Der Tester verwendet mehrere Hosts, um Techniken zum Sammeln von Informationen zufällig, ratenbegrenzt und nicht linear auszuführen.

Beispiele für Penetrationstest-Tools

Es gibt eine Vielzahl von Werkzeugen, die bei Penetrationstests verwendet werden, und die wichtigsten Werkzeuge sind:

  1. NMap- Dieses Tool wird zum Scannen von Ports, zur Identifizierung des Betriebssystems, zum Verfolgen der Route und zum Scannen von Sicherheitslücken verwendet.
  2. Nessus - Dies ist ein traditionelles netzwerkbasiertes Tool für Sicherheitslücken.
  3. Pass-The-Hash - Dieses Tool wird hauptsächlich zum Knacken von Passwörtern verwendet.

Rolle und Verantwortlichkeiten von Penetrationstestern:

Aufgabe des Penetrationstesters ist es:

  • Tester sollten die erforderlichen Informationen von der Organisation sammeln, um Penetrationstests zu ermöglichen
  • Finden Sie Fehler, die es Hackern ermöglichen könnten, eine Zielmaschine anzugreifen
  • Pen-Tester sollten wie echte Hacker denken und handeln, wenn auch ethisch.
  • Arbeiten von Penetrationstestern sollten reproduzierbar sein, damit Entwickler sie leicht beheben können
  • Startdatum und Enddatum der Testausführung sollten im Voraus festgelegt werden.
  • Ein Tester sollte für jeden Verlust des Systems oder der Informationen während des Softwaretests verantwortlich sein
  • Ein Tester sollte Daten und Informationen vertraulich behandeln

Manuelle Penetration vs. automatisierte Penetrationstests:

Manuelle Penetrationstests Automatisierte Penetrationstests
Für manuelle Tests müssen Experten die Tests durchführen Automatisierte Testtools bieten klare Berichte mit weniger erfahrenen Fachleuten
Für manuelle Tests sind Excel und andere Tools erforderlich, um dies zu verfolgen Automation Testing verfügt über zentralisierte und standardisierte Tools
Beim manuellen Testen variieren die Probenergebnisse von Test zu Test Bei automatisierten Tests variieren die Ergebnisse nicht von Test zu Test
Die Speicherbereinigung sollte den Benutzern in Erinnerung bleiben Automatisierte Tests werden umfassend bereinigt.

Nachteile von Penetrationstests

Penetrationstests können nicht alle Schwachstellen im System finden. Es gibt Einschränkungen hinsichtlich Zeit, Budget, Umfang und Fähigkeiten von Penetrationstestern

Folgende Nebenwirkungen treten auf, wenn wir Penetrationstests durchführen:

  • Datenverlust und Korruption
  • Ausfallzeit
  • Kosten erhöhen

Fazit:

Tester sollten sich wie ein echter Hacker verhalten und die Anwendung oder das System testen und prüfen, ob ein Code sicher geschrieben ist. Ein Penetrationstest ist effektiv, wenn eine gut implementierte Sicherheitsrichtlinie vorhanden ist. Richtlinien und Methoden für Penetrationstests sollten ein Ort sein, um Penetrationstests effektiver zu gestalten. Dies ist eine vollständige Anleitung für Anfänger für Penetrationstests.

Überprüfen Sie unser Live-Penetrationstestprojekt