Orion-Sicherheit
.
- “Sicherheit durch Dunkelheit ist überhaupt nicht viel Sicherheit.”
- Sicherheit der Orion-Infrastruktur
- Orion-Anwendungssicherheit
- Öffentliche SSR ist ein Geruch .
- ACL-Verwaltung
- OpenIDC SSO-Sicherheit
- Bcrypt für Subversion-Kennwörter
- Beschädigter Datenschutz
- Wiki-Probleme
- Inhaltssicherheits-Policys
- Quellübergreifende Ressourcenfreigabe
- Abhängigkeiten von Drittanbietern
- Index
“Sicherheit durch Dunkelheit ist überhaupt nicht viel Sicherheit.”
Beliebte Paraphierung des amerikanischen Schlossers Alfred Charles Hobbs 1851, der während einer Londoner Ausstellung in diesem Jahr leicht die Crystal Palace Schlösser auswählte. Wir sind uns voll und ganz einig, weshalb unsere Blueprints für unsere Oracle Cloud Infrastructure-(OCI-)Automatisierungs-Engine verfügbar auf GitHub.
Sicherheit der Orion-Infrastruktur
FIPS 140-3-konform mit MFA-Dreifachverschlüsselung für Reverse-Port-Weiterleitungsservices (HTTPS/SSH/IPsec). Gürtel, Hosenträger und Steigbügel!
RBAC Modell, gepfeffert mit Atrus OTP/TOTP-Herausforderungen
Der gesamte Anmeldezugriff für den Infrastrukturaccount erfordert die Bereitstellung von Zugangsdaten für die Multifaktor-Authentifizierung, einschließlich OCI-Accounts. Es gibt keine Hintertüren zu dieser Richtlinie.
Für den SSH-Zugriff aller Mitarbeiter auf Unternehmensrechner ist eine YubiKey PKI-Integration mit privaten ECDSA-SHA-2-NISTP-256-Autorisierungsschlüsseln erforderlich, die in PKCS11-Slots auf dem Yubikey gespeichert sind, oder eine direkte Smartcard-Integration mit ED25519-sk Pkeys.
Keine festen Passwörter auf Festplatten gespeichert. Diese limits kopflose Automatisierung von sudo / RBAC Nutzung, aus gutem Grund. Allerdings haben wir Werkzeug die Mühe zu beseitigen, auf Aufforderungen verschiedener Art zu reagieren.
Sandboxed-Ausführung für Builds und CGI-Skripte
Wir stellen “Shared-Nichts” Zonen-Builds, Standard ist null Netzwerkverfügbarkeit. Dies bedeutet, dass ein Kunden-Build nur auf seine eigenen Assets zugreifen oder diese ändern kann, nicht auf die anderen Kunden oder auf andere Systempfade in der Zone selbst (neben /tmp). Darüber hinaus haben nur Geschäfts- und Unternehmenskunden während ihrer Builds Internetzugriff, da sie ihre eigenen eindeutigen Solaris-Zonen verwenden, die genau auf ihre Build-Anforderungen zugeschnitten werden können.
Ditto für CGI-Skripte, die vollständig im Hinblick auf den Schreibzugriff auf andere als /tmp.
Ende-Ende-Verschlüsselung
TLS 1.3 (+FS) AES(256) SHA(256) für HTTPS-FIPS 140-3-Verbindungen
SSHv2 ED25519 FIPS 140-3-/NIST-konforme Schlüssel für hostübergreifende Schlüssel
LoReverse-Port-WeiterleitungIPsec/IKEv2/PFS AES(256) für regionsübergreifendes VPN
AES(256) für ZFS-Verschlüsselung
Zero Trust-Aspekte
Die Grundvoraussetzung von Zero Trust-Architektur Es ist zu vermeiden, Ihre Netzwerksicherheit um die Physiologie der Muschel zu gestalten: hart auf der Außenseite, aber weich und locker, wenn Sie in sind. Wir spenden’t tun das; jeder bedeutende privilegierte Netzwerkport innerhalb der verschiedenen Point of Presence (POP) LANs ist nur der Bare-Metal-Maschine ausgesetzt’s-Loopback-Geräteschnittstelle lo0, und ist nur im Kontext einer (umgekehrten) übermittelten SSH-Verbindung zu dieser sinnvoll.
Wir verwenden TCP-Proxys, keine HTTP-Proxys und keine MSA-Backends. Der einzige Host, der Ihren unverschlüsselten TLS-Webverkehr sieht, ist der Host, der ihn entschlüsselt. Dieselben Regeln gelten für Subversion-Traffic — Nur direkter, End-to-End-TLS-verschlüsselter Datenverkehr zum Service-Endpunkt sieht Ihre unverschlüsselten Daten auf der Leitung.
Viel Glück mit den MSA-Ebenen und Ebenen der privaten Datenexposition mit anderen Anbietern. Der Feind von “Nichtfunktionales Engineering” Komplexität ist. Es ist viel einfacher, aussagekräftige Sicherheitsversprechen zu geben, wenn Ihr Produkt ein föderierter Monolith anstelle eines massiven MSA-Minenfeldes ist, was ein weiteres konträres Unterscheidungsmerkmal zwischen Orion und seinem Wettbewerbsgebiet ist.
Diese Infrastruktur ist voll automatisiert, sobald eine Region online gestellt wird, aber’Alles, was wir öffentlich über die Architektur teilen können (Ausgleich der hobbsischen Transparenz mit dem militärischen Mantra) “Lose Lippen spülen Schiffe” mehr Kunst als Wissenschaft). Sicher sein — über das Brechen des Antispoofings hinaus lo0 Schutz innerhalb Solaris 11’s (BSD) Paketfilter selbst, es gibt keine sinnvollen Mittel, um Zugriff auf diese Dienste zu erhalten, auch nicht für Kundenkonten.
Selbst wenn der Master-OCI-Kontrollaccount kompromittiert ist, bleibt die Vertraulichkeit und Integrität aller Kundenassets unverletzlich. Alles, was ein Black-Hat tun kann, ist ein Chaos mit der Kundenwebsite Verfügbarkeit zu machen. Insbesondere können sie nicht auf die Subversion-Servicedatensätze zugreifen. Wir können die gesamte OCI-Infrastruktur von Grund auf in 48-72 Stunden nach dem schlechten Apfel rekonstruieren’OCI-Zugriff wurde beendet.
Logging, Überwachung und Auditing
Wir empfehlen Enterprise-Kunden, ein Splunk-Konto zu erstellen, und wir werden Ihrem Konto nahezu Echtzeit-Weblogs von jedem globalen POP aus bereitstellen, den Sie benötigen. Fehlerprotokolle für das serverseitige CGI-Skripting werden auch Splunk zur Verfügung gestellt.
Wir überwachen die Serviceverfügbarkeit von allen unseren OCI-POPs weltweit und lösen HA (Availability-Domain) oder regionale Failover-Ereignisse aus, wenn ein Serverausfall länger als 30 Sekunden dauert.
ACL-Auditing kann durch einfaches Erstellen einer Website durchgeführt werden’s Subversion HEAD mit Apache Licensed Orion SSG Skript und Prüfung des resultierenden Builds www/.acl Datei in Ihrem Kassenausgangsverzeichnis, jederzeit wünschen. Normalerweise dauert der Build-Prozess auf moderner Hardware weniger als 10-15 Sekunden.
Subversion Server-seitige Commit-Hooks sind auch an Ihre Aufsichtsprobleme anpassbar. Von einem einfachen Commit-Mailer bis hin zum sicheren Zugriff auf unseren svnpubsub-Daemon gibt es eine beliebige Anzahl von benutzerdefinierten Konfigurationen.
Orion-Anwendungssicherheit
Öffentliche SSR ist ein Geruch.
ACL-Verwaltung
Orion’Das Sicherheitsmodell wird zentral von den Einstellungen verwaltet, die in @path::acl als verstopft in lib/path.pm. Offshoot-Serverkonfigurationsdateien werden bei jeder erstellten Änderung dynamisch generiert.
Wenn Sie das Sicherheitsmodell des POSIX-Dateisystems verstehen, sind Sie mit Orion zu Hause’s mod_dav_svn Autorisierungsmodell und der Apache HTTPd Webserver’s .htaccess-Kontrollen, die automatisch von Ihrer Website generiert werden’s lib/acl.yml YAML-Konfiguration.
OpenIDC SSO-Sicherheit
Alle OpenID-Sessioncookies sind HttpOnly und “Sicher” gekennzeichnet, sodass Javascript-Session-Stealing-Versuche vom Orion Online Editor effektiv neutralisiert werden.
Alle Cookie-Zugangsdaten werden zusätzlich AES-256 verschlüsselt unter einem HMAC SHA-1 Hash.
Bcrypt für Subversion-Kennwörter
Anpassbare Anzahl von Runden (derzeit standardmäßig 5).
Beschädigter Datenschutz
Alle unsere Perl-Laufzeiten haben obligatorische Taint-Prüfungen mit der -T-Flagge aktiviert; ein leistungsstarker, einzigartiger Perl-Schutz vor Remote Shell Exploits.
Wiki-Probleme
Wiki-Sicherheit umfasst mehrere Faktoren:
UI-/API-Sicherheit
Middleware-/Backend-Sicherheit
Schutz vor Vorlagendurchlauf
ACL-Kompatibilität für Suchmaschine
Wir befassen uns mit diesen Themen, wie sie sich unten auf Orion beziehen.
Online-Editor
Der Online-Editor unterstützt eine JSON-UI, indem Sie einfach Ihren User-Agent festlegen’s Akzeptieren Sie die Kopfzeile, um die Anwendung/json MIME-Typ, sodass die Sicherheitskontrollen sowohl für die UI als auch für die API identisch sind.
Außerhalb des direkten Subversion-Zugriffs ist keine administrative UI/API vorhanden.
Subversion-ACLs steuern den serverseitigen Lesezugriff auf Arbeitskopien
Jede über die Benutzeroberfläche verfügbare Arbeitskopierressource wird mit Ihren Subversion-ACLs verglichen, bevor sie dem Benutzer präsentiert wird. Auf diese Weise stellen wir sicher, dass der Lesezugriff auf nicht autorisierte Ressourcen für die Assets unter Versionskontrolle (auch alles genannt) verhindert wird.
Commit-Zugriff wird direkt mit Subversion-ACLs gesteuert
Nichts kann ohne einen entsprechenden autorisierten Subversion Commit über das Netzwerk erstellt und anschließend angezeigt werden. Das Hauptproblem hier ist die Kontrolle darüber, welche Informationen einem Wiki-Seitenautor zur Verfügung stehen.’S festgeschriebene und erstellte Bearbeitungen.
Wenn Sie die Vorverarbeitung von Vorlagen auf den Markdown-Quellseiten zulassen, müssen Sie wissen, wie Vorlagenargumente den Inhalt anderer Dateien im Baum als Variablen für die Quelle der bearbeiteten Seite verfügbar machen.
Oft kann die bearbeitete Seite, wenn sie dazu konfiguriert ist, ihre eigenen Abhängigkeitsdateien in den Kopfzeilen der Seite deklarieren, was zu denken ist, wenn Sie Feature-Sets gegen Sicherheitseinstellungen in Ihrem Wiki abwägen.’s Informationsarchitektur.
Während wir Ihnen Unterstützung und Unterstützung anbieten können, um Ihren Bedürfnissen gerecht zu werden,’Es liegt wirklich an Ihnen, zu entscheiden, wie Sie die Skalen für Ihr Unternehmen ausgleichen.’Unternehmens-Wiki.
Siehe folgenden Abschnitt auf Abhängigkeits-/ACL-Injection-Steuerelemente für weitere Details und Checkout dieses Live-Beispiel, wie einfach ACL’s kann zentral konfiguriert werden in lib/acl.yml:
- path: content
rules:
"@staff": rw
"@svnadmin": rw
"*": r
- path: content/orion
rules:
"@marketing": rw
"@staff": rw
"@svnadmin": rw
"*": r
- path: lib
rules:
"@svnadmin": rw
"@devops": rw
- path: lib/acl.yaml
rules:
"@svnadmin": rw
"@security": rw
- path: templates
rules:
"@svnadmin": rw
"@frontend": rw
- path: cgi-bin/search.pl
rules:
"@svnadmin": rw
"*":
Inhaltsautoren können Seitenbeschränkungen auf der Seite konfigurieren’s Kopfzeilen:
Title: Orion Security
Dependencies: *.md.en api/index.md.en
ACL: @staff=rw, *=r, joe=rw
Keywords: security,infosec,appsec,ipsec,devsecops,it,acl,svnauthz,zerotrust
Geschützte Ressourcen können von nicht autorisiertem Personal nicht in eine Verzweigung kopiert werden, auch wenn keine zusätzlichen ACL-Steuerelemente bei der Erstellung und Änderung von Verzweigungen vorhanden sind. Das heißt, das System unterstützt Filialexperimente ohne zusätzliche Kontrollen Ihrerseits, um sicherzustellen, dass geschützte Vermögenswerte in jeder Filiale geschützt bleiben.’natürlichen Lebenszyklus.
System-ACLs erstellen?
Das Build-System ist allsehend und allwissend, aber wir können sicherstellen, dass Ihre gebauten, geschützten Assets nur für die Teams sichtbar sind, die Sie in den Subversion-ACLs verwalten und kontrollieren.
Das Build-System zeigt die Liste der Dateinamen an, die bei einem Commit über die Browser-IDE erstellt wurden. Diese Liste basiert jedoch nur auf einem Benutzer.’s Lesezugriff auf die vom Benutzer abhängigen Ressourcen’s Hinzufügen, Aktualisieren oder Löschen von Inhaltsaktionen im Commit.
Durchlaufkontrollen für Vorlage
Siehe sanitize_relative_path:
sub sanitize_relative_path {
for (@_) {
s#^[\\/]+##g;
s/^\w+://g; #Windows GRR
s#([\\/])+#$1#g;
s#/\./#/#g;
1 while s#[\\/][^\\/]+[\\/]\.\.[\\/]#/#;
s#^(?:\.\.?[\\/])+##;
}
}
Dieser Code erzwingt die folgenden Regeln in diesem Abschnitt.
Tags einschließen und erweitern
Alle Zieldateien befinden sich in einem Unterordner der /Vorlagen/ Ordner und muss als absolute Pfade referenziert werden, die in diesem Ordner verwurzelt sind.
SSI-Tag
Alle Zieldateien befinden sich in einem Unterordner der /Inhalt/ Ordner und muss als absolute Pfade referenziert werden, die in diesem Ordner verwurzelt sind.
Wenn der Zielpfad nicht konfiguriert ist in @path::Muster mit einer übereinstimmenden Einstellung, mit der der betreffende Zielpfad entweder archiviert oder kategorisiert werden kann, Ssi Vorgang nicht erfolgreich.
Das liegt daran, Ssi Unterstützung ist eine Voraussetzung für diese Featuresets, um Ihre Site zu erhalten’s taget permalinks.
Abhängigkeits-/ACL-Injection-Steuerelemente
Kontrolliert von lib/path.pm Importe.
Bibliothek/{Pfad, Anzeigen}.pm Subversion-ACLs
Es’klug, den Schreibzugriff auf diese Ressourcen zu kontrollieren, indem sie auf Personen beschränkt werden, die sowohl in der Codebase als auch autorisiert sind, Sicherheitskontrollen für den gesamten Satz von Assets unter Versionskontrolle (auch alles genannt) zu implementieren.
Es ist auch eine gute Idee, die @svnadmin Gruppe unter denen mit Lese- und Schreibzugriff, aber es’Es ist nicht unbedingt notwendig, auch wenn Sie von uns verlangen, dass wir Ihre Subversion-ACLs manuell zurücksetzen.
Dynamisch generierte Regeln über @Pfad::acl
Das Build-System nimmt Ihre lib/path.pm Importe von seed_file_deps() und seed_file_acl() oder beides und übertragen diese Auswahl bei der internen Verarbeitung von Subversion Commit-Änderungen, die zu einem inkrementellen Build führen.
Tracking der kontrollierten Inhaltsmigration
Wenn Sie den Benutzern die vollständige Versionskontrollhistorie zur Verfügung stellen, müssen Sie darauf achten, dass die Autorisierungskontrollen am ursprünglichen Standort des kontrollierten Materials beibehalten werden.
Andernfalls könnte das Material versehentlich einem historischen Forscher ohne die erforderlichen Autorisierungen ausgesetzt werden.
Das Orion CMS’Die Verfolgungslogik zum Verschieben/Löschen verarbeitet diese nahtlos.
Benutzerdefinierte Steuerelemente für die Verwendung von seed_file_deps() und seed_file_acl() in lib/path.pm
Neben dem Import dieser Symbole auf lib/path.pm, gibt es auch eine Wahl, wie und auf welche Dateien Sie sie anwenden möchten, während einer walk_content_tree ()-Codeblockausführung. Schließlich ist es’s nicht nur eine Konfigurationsdatei, sondern eine Codebasis, mit allen Turing-Funktionen Perl wir’Sie kennen und schätzen es!
Built Website .htaccss-Dateien und Subversion-Autorisierungsdateien werden mit @Pfad::acl sofort nach Commit
Automatischer ACL-Schutz für ephemere Zweig-Builds. Keine zusätzliche Konfiguration erforderlich.
Integrierte Steuerelemente für PCRE-Suchmaschine
Gleiche Situation wie die allgemeine Benutzeroberfläche: sie prüft den Subversion-Server über die Benutzeroberfläche.
Auf der Live-Website wird die Suchmaschine dasselbe tun, wenn Sie Markdown-Suchen (Quellbaum) aktivieren. Andernfalls führt es httpd-Unteranfragen auf Ihrer Live-Site aus, um zu testen, ob der Benutzer autorisiert ist, auf diese Live-Datei zuzugreifen (vorausgesetzt, Sie haben Ihre Suchmaschine passwortgeschützt, damit sie mit Benutzerdaten arbeiten kann).
Inhaltssicherheits-Policys
- Analyseeinschränkungen
Google und/oder LinkedIn.
- Dateneinschränkungen
Daten müssen von unseren Servern geliefert werden.
- Inhaltseinschränkungen
Die Inhalte müssen von unseren Servern geliefert werden.
- Codeeinschränkungen
Javascript Code muss von unseren Servern ausgeliefert werden.
- Stileinschränkungen
CSS muss von unseren Servern geliefert werden.
- Plugin-Einschränkungen
Aktuell PDF’Nur s.
Quellübergreifende Ressourcenfreigabe
Alle Benutzer mit einem Account können UI/APIs von anderswo mit ihren Anmeldedaten nutzen.
Geschäfts- und Unternehmenskunden können Orion als Headless CMS wenn sie ihre eigene Benutzeroberfläche aus der JSON Subversion Porzellan oder JSON-Suche APIs.
Abhängigkeiten von Drittanbietern
Bemerkenswert kurze und bewährte Abhängigkeiten, deren Hauptbestandteile auf der Orion-Technologie Seite.
Software Bill of Materials (SBOM) auf Anfrage verfügbar
Kontakt für weitere Details.
Index
Orionpläne — Jährliche Vorabrabatte (bis zu 20% Rabatt auf monatliche Abrechnungskosten)…
SunStar System-Orion — Enterprise Jamstack Wiki-Plattform für Erstellen, Verwalten und Bereitstellen statische Webseiten mit Jamstack Technology für dynamische Features…
Orion-Technologie — Jetzt mit mod_perl v2.0.13 w/ithreads und httpd v2.4.58 w/ event mpm….
Orion-Funktionen — Dieselbe Javascript-Code-Rendering-Engine in Ihrem Browser und im (node.js-basierten) markdown.js-Build-Skript…
Orionreferenz — Diese Hot-Pink-Bleistift-Icons
oben rechts neben den Brotkrümeln wird Ihnen eine Live-Demonstration geben…Orion-API — Auf dieser Seite werden die APIs Search, Online Editor, Django Template Library und Build System indexiert…
Orion Datenschutzerklärung — Es handelt sich um ein DSGVO-konformes Opt-in-System. Beim ersten Besuch im Orion ™ CMS/IDE, Sie werden zu einer Google-Seite weitergeleitet, die Sie zur Autorisierung auffordert…