You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

151 lines
5.3 KiB

  1. package ITsecAufgaben;
  2. import java.util.Scanner;
  3. import java.lang.Math;
  4. public class ITsecAufgaben {
  5. public void vierteAufgabe() {
  6. System.out.println(
  7. "Erstellen Sie die Tabelle zu den sieben Angreifertypen, nennen Sie NACHEINANDER ihre Bezeichnung, ihre Motivation & mögliche Werkzeuge!\n Drücken Sie Zahl ungleich '0' für die nächste Frage.");
  8. String[][] lösung = {
  9. { "Nutzende", "Persönliche Vorteile (Features freischalten,...)",
  10. "Anwendung von Tools oder Anleitungen; Anheuerung organisierter Krimineller;..." },
  11. { "Mitarbeitende", "Rache; Geld; Whistleblower;...",
  12. "Zugriff auf und Kompromittierung interner Systeme" },
  13. { "White Hats, Pentester", "Prestige; Herausforderung; Geld;...",
  14. "Identifikation von Schwachstellen; Ausnutzung unter ethischen Richtlinien;..." },
  15. { "Grey Hats", "Prestige; Herausforderung; ideologische Ziele; Vandalismus; Geld",
  16. "Identifikation und Ausnutzung von Schwachstellen; Offenlegung des Eindringens" },
  17. { "Black Hats", "Geld oder Habgier",
  18. "Identifikation und Ausnutzung von Schwachstellen; Kompromittierung des Systems; Monetarisierung" },
  19. { "Konkurrenz", "Störung; Wirtschaftsspionage; Diskreditierung",
  20. "Reverse-Engineering von Produkten; Anheuerung organisierter Krimineller" },
  21. { "Staaten oder Geheimdienste", "Wirtschaftliche Vorteile, Destabilisierung",
  22. "Kompromittierung der Infrastruktur, Komponenten oder Standards; Tarnung vor Entdeckung" } };
  23. String[][] aufgabe = new String[7][3];
  24. // String[][] lösung = new String[7][3];
  25. int result = 1, frage = 1;
  26. Scanner in = new Scanner(System.in);
  27. frage = in.nextInt();
  28. if (frage == 0) {
  29. // aufgabe.length
  30. for (int i = 0; i <= 6; i++) {
  31. for (int j = 0; j <= 2; j++) {
  32. if (j == 3 || i == 8) {
  33. break;
  34. }
  35. hielfsMethodeVierteAufgabe(aufgabe, i, j);
  36. }
  37. if (i == 8) {
  38. break;
  39. }
  40. }
  41. }
  42. System.out.println("Zeigen Sie nun di2e Lösung mit '0' an & vergleichen Sie Ihre Eingabe:\n");
  43. result = in.nextInt();
  44. }
  45. public void dritteAufgabe() {
  46. System.out.println(
  47. "Schreiben Sie die sechs IT-Sicherheitsziele mit kurzer Erläuterung auf!\n Drücken Sie '0' für die Lösung, andere Zahl für nächste Frage.");
  48. Scanner in = new Scanner(System.in);
  49. int result = 1;
  50. result = in.nextInt();
  51. if (result == 0) {
  52. System.out.println(
  53. "1. Vertraulichkeit (Vert.) := allg. Schutz vor unbefugter Preisgabe von Informationen\r\n" + "\r\n"
  54. + "2. Integrität (I.) := Sicherstellung der Korrektheit von Daten & der korrekten Funktionsweise von Systemen\r\n"
  55. + "\r\n"
  56. + "3. Authentizität (Auth.) := Kommunikationspartner/angegebene Quelle ist tatsächlich diejenige Person/Entität, die sie vorgibt zu sein, bzw. ist authentisch\r\n"
  57. + "\r\n"
  58. + "4. Verfügbarkeit (Verf.) := Sicherstellung der vorgesehenen Nutzbarkeit eines IT-Systems\r\n"
  59. + "\r\n"
  60. + "5. Autorisierung (Autor.) := Freischaltung der eingeräumten Rechte für eine erfolgreich authentifizierte Person\r\n"
  61. + "\r\n"
  62. + "6. Verbindlichkeit (Verb.) := Empfangen/Senden einer Nachricht oder Durchführen einer Handlung kann nicht abgestritten werden (e.g. wegen falscher Beschuldigung oder Fährten)");
  63. }
  64. System.out.println("\n\nAufgabe 3 fertig");
  65. }
  66. public void zweiteAufgabe() {
  67. System.out.println("\nBerechnen Sie RSA per Hand. Taschenrechner & Website erlaubt.\n");
  68. System.out.println("Gegeben sind: p = 13, q = 17, e = 11, P1 = 23");
  69. System.out.println("Geben Sie das Ergebnis für N, phiOfN, encKey, decKey & C1:\n");
  70. boolean an = true;
  71. int N = 0, phiOfN = 0, decKey = 0, C1 = 0, encKey = 0, abbrechen = 0;
  72. Scanner in = new Scanner(System.in);
  73. while (an) {
  74. System.out.println("Abbrechen & Lösungen anzeigen mit '1', ansonsten weiter ");
  75. abbrechen = in.nextInt();
  76. if (abbrechen == 1) {
  77. an = false;
  78. break;
  79. }
  80. System.out.println(
  81. "Ergebnisse für N, phiOfN, decKey, Cipher1 & encKey eingeben:\n Vorsicht: encKey besteht aus N & '?' angehangen ; alle Werte sind integer");
  82. System.out.println("N:");
  83. N = in.nextInt();
  84. System.out.println("phiOfN:");
  85. phiOfN = in.nextInt();
  86. System.out.println("decKey:");
  87. decKey = in.nextInt();
  88. System.out.println("C1:");
  89. C1 = in.nextInt();
  90. System.out.println("encKey:");
  91. encKey = in.nextInt();
  92. if (N == 221 && phiOfN == 192 && encKey == 22111 && decKey == 35 && C1 == 56) {
  93. System.out.println("\nRichtiges Ergebnis\n");
  94. an = false;
  95. } else {
  96. System.out.println("\nFalsches Ergebnis\n");
  97. }
  98. }
  99. }
  100. public void erstesQuiz() {
  101. System.out.println("debug: erstesQuiz() fängt an\n");
  102. System.out.println("Was ist die Definition von 'Schwachstelle'?\n");
  103. System.out.println(
  104. "\n1. Ein sicherheitsrelevanter technischer oder Prozess-Fehler.\n2. Ein Softwarefehler, der ausgenutzt werden kann\n3. Die Verse eines Menschen.\n\n 0 -> Lösung ; 42 -> naechste Aufgabe");
  105. Scanner in = new Scanner(System.in);
  106. int age = 1;
  107. while (age != 0) {
  108. age = in.nextInt();
  109. // if(age == 0) { break; }
  110. if (age == 1) {
  111. System.out.println("Richtig!\n");
  112. } else if (age == 0) {
  113. System.out.println("Auf Wiedersehen.");
  114. } else {
  115. System.out.println("Falsch.\n");
  116. }
  117. }
  118. System.out.println("\n erstesQuiz() fertig");
  119. }
  120. }