Blog

  • Wie erreiche ich Audit-Assurance?

    Ich wurde gefragt, wie ich mit der steigenden Komplexität in der IT umgehe, um weiterhin eine angemessene Audit-Assurance zu erreichen. Das, finde ich, ist eine gute Frage, die ich gerne hier beantworte:

    In dem komplexen System stellt sich mir die Frage, wie Audit-Assurance entsteht.

    Soll ich das einzelne System prüfen oder den Prozess?

    Wenn ich das einzelne System prüfe, weiß ich, dass dieses System jetzt sicher ist. Aber wie ist es morgen? Also sind mir die Prozesse wichtiger. Wenn ich weiß, dass der Prozess funktioniert, dann sollten die betreuten Systeme doch sicher sein, oder? Hier sollten wir uns die Prozessziele genau anschauen. Beinhalten sie auch die Reduzierung von Risiken und die Einhaltung von externen Anforderungen? Jetzt nähern wir uns dem Ergebnis eines Prozesses. Jede Requirement muss erfüllt sein, damit der Prozess gut ist.

    Soll ich die Kontrolle oder den Prozess prüfen?

    Ist es nicht das Gleiche? Sichern wir nicht die wichtigen Requirements mit Kontrollen ab, so dass diese Requirements die Kontrollziele sind? Mich interessiert nicht, ob jemand ein Häckchen gemacht hat. Wenn jemand das mit nur einem bürokratischen Schritt dokumentiert, aber das wichtige Requirement nicht erfüllt ist, sieht es auf dem Papier gut aus, aber…

    Woher weiß ich denn, welche Requirement wichtig ist?

    Zumindest IT-Revisoren in der Finanzindustrie haben dafür eine sehr gute „Anleitung“: Wir sollen risikoorientiert prüfen. Da sich die Geprüften an gängigen Standards ausrichten sollen, können wir diese neben den externen Anforderungen heranziehen. Damit können wir situativ die wichtigen Requirements eines Prüfungsobjektes bestimmen.

    Jetzt haben wir übrigens die Bausteine eines GRCA-Tools aus Sicht eines Revisors beschrieben.

    Einen Aspekt haben wir bisher nicht angesprochen, der spätestens mit DORA umgesetzt sein muss. Neben der Revision muss auch die erste bzw. zweite Verteidigungslinie die Umsetzung ihrer Regelungen überwachen. D.h. auf diesen Erkenntnissen können wir aufbauen. Ich stelle in Frage, ob wir weiter prüfen müssen, wenn beide Verteidigungslinien diesbezüglich ihre Hausaufgaben nicht gemacht haben. Umgekehrt stellt eine gute Überwachung durch erste und zweite Verteidigungslinie sicher, dass auch zwischen zwei Prüfungen die Requirements eingehalten werden.

    Die alte Schule der Stichprobe

    Um eine Requirement zu überprüfen, machen wir es so wie die Wirtschaftsprüfer: wir ziehen eine Stichprobe. 1000 Systeme im Betrieb – eine Stichprobe von 30 sollte ausreichen, um zu validieren, dass die Requirement eingehalten ist. Sieht gut aus – alle 30 Systeme sind gepatcht. Blöd nur, dass bei den anderen Systemen ein schwieriger Kandidat ist, der leider veraltet ist und demnächst befallen wird. Meine Lehre daraus: wenn es darauf ankommt, ist eine Stichprobe ungeeignet. Wir sollten dann sicherstellen, dass die ersten und zweiten Verteidigungslinien alles vollständig im Griff haben.

    Prüfungsübergreifend

    Jede Prüfung ist für mich wie ein kleines Puzzlestück. Es sieht bereits gut aus. Schaue ich jedoch mit etwas Abstand auf alle Puzzlestücke, sehe ich das ganze Bild. Vielleicht sehe ich ich dann, dass zwar jedes einzelne Stück einigermaßen gut aussah, das Gesamtbild jedoch einen kleinen Farbstich in einem bestimmten Bereich des Bildes aufweist. Oder wir sehen, dass einzelnen Bereichen Puzzlestücke fehlen.

    Jetzt, glaube ich, haben wir eine gute Audit-Assurance auch bei einer steigenden Komplexität in der IT hergestellt.

    Sollte jemand einwenden, dass dieser Ansatz zu aufwendig ist, so kann ich dies bejahen, wenn man keine technische Unterstützung hätte…

  • HASI meets Secure Controls Framework and DORA!

    Ihr kennt es doch auch: „Das geht doch auch in Einfach!“

    Ich habe mal gefragt, ob HASI mal schauen kann, ob der Article 20 des RTS ICT Riskmanagement vollständig im Secure Controls Framework abgedeckt ist.

    Meine Schritte waren:

    Artikel öffnen und das Mapping anzeigen:

    HASI öffnen:

    Funktion auswählen:

    Da wir immer ein Prüfungsobjekt befüllen wollen, sollen die Ergebnisse immer an ein Audit Object gehängt werden:

    Das Ergebnis:

    Mist – Tokens wieder aufgebraucht 🙁

    Aber das Ergebnis:

    The assigned issues cover fundamental aspects of IAM, unique user identification, and automated account management, but do not satisfy the specific requirement to preserve identity assignment records following reorganisations or contract terminations. Furthermore, the explicit lifecycle management phases (specifically temporary deactivation) and scope (covering ICT third-party provider staff) are only partially addressed.

    Im letzten Schritt wird ein Vorschlag für eine Requirement gemacht, der dann übernommen werden kann…

    Okay, zweiter Versuch:

    Und hier ist der Vorschlag:

  • HASI is coming!

    HASI is coming!

    AI – Artificial Inteligence – hat jeder!

    Trump hat SI – Super Inteligence

    Wir haben HASI!

    Human-Guided Artificial Super Inteligence

    Damit lässt sich auf Knopfdruck überprüfen, ob die externen Anforderungen angemessen in den Requirements berücksichtigt wurden:

    Wird festgestellt, dass die Regelung nur teilweise abgedeckt ist, wird ein Vorschlag unterbreitet:

    Die Qualität muss noch im Gebrauch validiert werden.

  • neues Feature: Compliance-Mapping

    Für angemeldete User gibt es jetzt ein neues Feature im neuen Client: für jede externe Anforderung kann man jetzt schauen, wie diese in den verfügbaren Requirements oder Standards berücksichtigt wurden.

    Die Tabelle wird in Realtime auf Basis eurer geladenen Daten aufgebaut. Ergo kann das Laden dieses Mappings ein klein wenig dauern…

  • Neues Layout

    Neues Layout

    Aktuell arbeite ich an einem neuen Layout für die angemeldeten User. Ich möchte dem G-R-C-A angemessen Rechnung tragen.

    Im Risk-Bereich können alle Risiken über alle Sourcen eingesehen werden:

    Filtermöglichkeiten sind bereits implementiert.

    Ich hoffe, dass ich einerseits damit die Usability erheblich erhöhen kann, und dabei den Server entlaste

  • 191.412 Objekte!

    So viele Datenobjekte habe ich aktuell importiert!

    • Einen Großteil nimmt EULAW ein: pro Sprache habe ich über 8.000 Objekte importiert.
    • DELAW hat über 3.000 Objekte
    • NIST hat ca. 1.000 Objekte

    Noch werden Verknüpfungen aufgebaut. Über 260.000 sind es bereits.

  • NIST – Almost Done!

    Heute habe ich den Oscalreader in den Betrieb genommen. NIST-SP-800-53 wurde erst einmal importiert. Leider sind die anderen in OSCAL verfügbaren Standards noch nicht einlesbar. Sie entsprechen anscheinend nicht dem letzten OSCAL-Rev.

    Hier geht es zu den NIST-Sourcen.

  • EULAW – Multilingual und Aktuell!

    EULAW – Multilingual und Aktuell!

    Okay, it’s done! Am Wochenende habe ich mal schnell zwei neue Funktionen live genommen:

    • Automatisierte Aktualisierung von EULAW
      Sämtliche EU-Regulation werden jetzt per Script regelmäßig aktualisiert. D.h. bei jedem Lauf wird die SOAP-Schnittstelle von EUR-LEX abgefragt, ob es neue konsolidierte Versionen gibt. Diese werden dann automatisiert importiert.
    • Multilingual
      Nachdem der erste Schritt geschafft war, habe ich einfach mal „ein paar“ Übersetzungen mit eingespielt. Diese werden jetzt automatisiert in der jeweiligen Landessprache bei EULAW angezeigt.

    Sorry, die DORA-Regulations waren noch manuell eingespielt. Die kann ich aktuell noch nicht übersetzen. Ich werde das Zerlegen der Paragraphen noch verbessern (analog zur DORA-Regulation). Dann würde ich die DORA-Regulations auch übersetzbar machen.

    Technisch werden bei EULAW immer zwei Objekte pro angezeigtem Objekt geladen. Leider verdoppelt sich damit die Ladezeit grob – wenn der Cache leer ist.

  • 23.08.2026 – GRCA.PLANETH – Wo stehen wir?

    Ich bin jetzt etwa seit einem halben Jahr dabei, GRCA.PLANETH.DE aufzusetzen. Jetzt ist es mal Zeit zu schauen, wo wir stehen.

    Aktueller Stand

    System

    Das System selbst läuft stabil. Die Objekte stehen in festen Beziehungen. Technisch habe ich bereits Labels realisiert, um die Sourcen besser zu strukturieren.

    Ein Feature funktioniert bereits in der Entwicklung: Wir können eine Regulierung nehmen und schauen, wie sie sich in den einzeln Standards wiederfindet. Es funktioniert auch schon als angemeldeter Benutzer. Dauert jedoch die Zusammenstellung zu lange, bricht der Webserver ab. D.h. auf der Webseite kann man nur für kleinere Regelungen / oder Abschnitte die Analyse erstellen lassen.

    Technisch sehe ich derzeit keine Notwendigkeit, etwas anzupassen.

    Sourcen

    Die Sourcen habe hier aufgelistet. Einen Großteil der Sourcen habe ich automatisiert eingelesen. Hier ist mein Ziel, dass ich regelmäßig ein Update-Script laufen lasse und dann die Sourcen automatisiert aktualisiert werden. Dies habe ich bereits bei den deutschen Gesetzen realisiert. Als nächstes werde ich es bei den EU-Gesetzen umsetzen.

    Sowohl bei den europäischen als auch bei den deutschen Gesetzen muss ich bei dem automatischen Import noch einmal ran: Artikel werden korrekt importiert, ein Import der einzelnen Absätzen erscheint jedoch sinnvoll. Das habe ich noch nicht realisert. Dies ist auch der einzige Grund, warum die DORA noch separat aufgeführt sind.

    Gesamtheit der Sourcen

    Mit der Aufstellung der Sourcen habe ich aktuell den Eindruck, dass ich die Wünsche eines IT-Revisors abdecke. Sollte etwas fehlen, speziell aus der deutschen oder europäischen Regulatorik, so bin wäre ich für einen Hinweis dankbar.

    Sowohl von der CSA für das CCM als auch von der ISACA für COBIT habe ich zwei Statements, dass ich die Frameworks einbinden dürfte. Sobald ich alle anderen Themen umgesetzt habe, nehme ich mich dem gerne an.

    Verknüpfung der Sourcen

    Das Secure Controls Framework nimmt an dieser Stelle eine besondere Rolle ein, da eine Verknüpfungsmatrix zu diversen Standards gibt. Ich habe bereits angefangen, diese einzulesen. Das Ergebnis sieht man bereits auf der Webseite…

    Mein Ziel

    Mein großes Ziel ist, eine Plattform zu schaffen, auf der IT-Revisoren alle frei verfügbaren Sourcen aufrufen können und Auslegungshinweise erhalten. Oder, wenn sie Prüfungen durchführen sollen, Hinweise zu relevanten Anforderungen erhalten. Im Idealfall würde man bereits vorbereite Prüfungskonzepte erhalten.

    Hier ist die Frage wo wir stehen?

    • Sourcen eingebunden – erledigt
    • Sourcen in relevante Anforderungen zerlegt – teilweise erledigt
    • Einheitliche Prüfungsobjekte geformt und relvante Sourcen zugeordnet- offen

    M.E. beginnt jetzt der aufwendige Schritt. Jetzt gilt es, die anhand von Prüfungsobjekten die externen Anforderungen zu untersuchen und Requirements abzuleiten. Das wird jetzt sukzessive geschehen.

    Diesen Teil werde ich jedoch nicht mehr frei veröffentlichen. Ich bin an Mitarbeit interessiert. Soll heißen – wer etwas beisteuert, erhält auch Zugriff. Wer nichts beisteuert bleibt draußen.

  • Deutsche Gesetze – stets aktuell

    Deutsche Gesetze – stets aktuell

    Mittlerweile bin ich in der Lage, die Deutschen Gesetze automatisch einzulesen. Im Moment habe ich die für die deutsche Finanzindustrie relevanten Gesetze eingelesen:

    Fehlt Euch etwas? Es ist kein Aufwand weitere Gesetze zu ergänzen.

    Mit jedem „Lauf“ findet auch ein Update statt. D.h. wenn es einen neuen Build gibt, wird dieser direkt importiert.

    Aktuell hadere ich noch damit, wie ich mit Löschungen umgehen soll. Sollen sie sichtbar bleiben, oder direkt aus der Datenbank gelöscht werden? (Ich muss noch programmieren, dass der Status aktualisiert wird und damit der Eintrag als ungültig markiert wird…)

    Gleiches gilt für Änderungen. Aktuell lasse ich die Verknüpfungen und ändere lediglich den Text. Hat das Nachteile? Klar, aber vorerst ist das das Einfachste, sorry!