Frage Linux: produktive Systemadministratoren ohne root (Sicherung geistigen Eigentums)?


Gibt es eine Möglichkeit, ein erfahrenes Linux-Syadmin produktiv zu machen, ohne ihm vollen Root-Zugriff zu geben?

Diese Frage kommt aus einer Perspektive des Schutzes von geistigem Eigentum (IP), die in meinem Fall vollständig Code und / oder Konfigurationsdateien sind (d. H. Kleine digitale Dateien, die leicht kopiert werden können). Unsere geheime Soße hat uns erfolgreicher gemacht als unsere kleine Größe vermuten lässt. Genauso sind wir Gebranntes Kind scheut das Feuer von einigen ehemaligen skrupellosen Angestellten (nicht Systemadministratoren), die versucht haben, IP zu stehlen. Die Position des Top-Managements lautet im Wesentlichen: "Wir vertrauen den Menschen, aber aus Eigeninteresse können sie sich nicht das Risiko leisten, einer Person mehr Zugang zu geben, als sie für ihre Arbeit unbedingt benötigen."

Auf der Entwickler Andererseits ist es relativ einfach, Workflows und Zugriffsebenen so zu partitionieren, dass Menschen produktiv sein können, aber nur sehen, was sie sehen müssen. Nur die Spitzenleute (tatsächliche Firmeninhaber) haben die Fähigkeit, alle Zutaten zu kombinieren und die spezielle Sauce zu kreieren.

Aber ich war nicht in der Lage, eine gute Möglichkeit zu finden, diese IP-Geheimhaltung auf der Linux-Admin-Seite aufrechtzuerhalten. Wir verwenden GPG für Code und sensible Textdateien ausgiebig ... aber was soll einen Admin davon abhalten, beispielsweise einem Benutzer einen Befehl zu geben und auf seine tmux- oder GNU-Bildschirmsitzung zu springen und zu sehen, was er tut?

(Wir haben auch überall einen Internetzugang, der mit sensiblen Informationen in Berührung kommen könnte. Aber nichts ist perfekt, und es könnte Löcher für clevere Systemadministratoren oder Fehler auf der Netzwerkadministration geben. Oder sogar gute alte USB. Es gibt natürlich zahlreiche andere Maßnahmen vorhanden, aber diese sind nicht Gegenstand dieser Frage.)

Das Beste, was ich mir vorstellen kann, ist die Verwendung von personalisierten Konten mit Sudo, ähnlich wie in beschrieben Mehrere Linux-Systemadministratoren arbeiten als Root. Konkret: Niemand außer den Firmeninhabern hätte tatsächlich direkten Root-Zugriff. Andere Admins hätten ein personalisiertes Konto und die Möglichkeit dazu Sudo in die Wurzel. Darüber hinaus würde Remote-Logging eingerichtet werden, und die Protokolle würden zu einem Server gehen, auf den nur die Besitzer des Unternehmens zugreifen können. Wenn die Protokollierung deaktiviert ist, werden einige Warnungen ausgegeben.

Ein cleverer Systemadministrator könnte wahrscheinlich noch Löcher in diesem Schema finden. Und das beiseite, es ist immer noch reaktiv eher, als proaktiv. Das Problem mit unserer IP ist so, dass die Teilnehmer sehr schnell davon Gebrauch machen können und in sehr kurzer Zeit viel Schaden anrichten können.

Also noch besser wäre ein Mechanismus, der das begrenzt, was der Administrator tun kann. Aber ich erkenne, dass dies eine heikle Balance ist (insbesondere im Hinblick auf die Behebung und Behebung von Produktionsproblemen, die gelöst werden müssen) jetzt sofort).

Ich kann nicht anders, als mich zu fragen, wie andere Organisationen mit sehr sensiblen Daten dieses Problem lösen? Zum Beispiel, militärische Systemadministratoren: Wie verwalten sie Server und Daten, ohne vertrauliche Informationen sehen zu können?

Bearbeiten: In der ersten Veröffentlichung wollte ich präventiv auf die Kommentare zur "Einstellungspraxis" eingehen, die jetzt auftauchen. Eins, das soll ein sein technisch Frage und Einstellungspraktiken IMO tendenziell mehr Sozial Fragen. Aber, zwei, ich sage das: Ich glaube, wir machen alles, was vernünftig ist, Leute einzustellen: Interview mit mehrere Leute in der Firma; Hintergrund- und Referenzprüfungen; Alle Mitarbeiter unterschreiben zahlreiche juristische Dokumente, darunter eines, das besagt, dass sie unser Handbuch gelesen und verstanden haben. Nun, es liegt außerhalb des Rahmens dieser Frage / Website, aber wenn jemand "perfekte" Einstellungspraktiken vorschlagen kann, die 100% der schlechten Schauspieler herausfiltern, bin ich ganz Ohr. Fakten sind: (1) Ich glaube nicht, dass es einen so perfekten Einstellungsprozess gibt; (2) Menschen verändern sich - der heutige Engel könnte der Teufel von morgen sein; (3) Der versuchte Code-Diebstahl scheint in dieser Branche etwas Routine zu sein.


64
2018-02-01 18:20


Ursprung


Das erste, was Ihnen beim Lesen Ihrer letzten Frage in den Sinn kam ... Snowden. - Hrvoje Špoljar
Sie können mit den entsprechenden SELinux-Richtlinien weit kommen, aber die Implementierung ist ziemlich teuer. Am Ende des Tages, Systemadministratoren Muss haben Zugang zu dem System und den Dateien, um ihre Aufgaben zu erledigen. Ihr Problem ist nicht technisch, es ist im Einstellungsprozess. - Michael Hampton♦
Das Militär nutzt Sicherheitsfreigaben und Zwei-Personen-Integrität. Selbst dann gibt es manchmal Lücken. Die Chancen von beide Menschen, die ruchlose Pläne haben, sind viel weniger. - Steve
Der Grund dafür, dass es nach einem Menschenproblem riecht, ist, dass es ein Problem der Menschen ist. - Sirex
Dafür gibt es NDAs. - Michael Martinez


Antworten:


Worüber du sprichst, ist bekannt als das "Evil Sysadmin" Risiko. Das lange und kurze ist es:

  • Ein Systemadministrator ist jemand, der Privilegien erhöht hat
  • Technisch versiert, auf ein Niveau, das sie zu einem guten "Hacker" macht.
  • Interaktion mit Systemen in anomalen Szenarien.

Die Kombination dieser Dinge macht es im Wesentlichen unmöglich, böswillige Aktionen zu stoppen. Selbst das Auditing wird schwierig, weil Sie kein "normales" Vergleichsergebnis haben. (Und offen gesagt - ein gebrochenes System könnte auch das Auditing gebrochen haben).

Es gibt eine Reihe von mildernden Schritten:

  • Privilege Separation - Du kannst einen Typen mit root nicht davon abhalten etwas auf dem System. Aber Sie können ein Team für das Networking und ein anderes Team für "Betriebssysteme" (oder Unix / Windows separat) verantwortlich machen.
  • Begrenzen Sie den physischen Zugriff auf das Kit auf ein anderes Team, das keine Administratorkonten erhält ... aber kümmern Sie sich um alle "Hände".
  • Trennen Sie die Verantwortung für "Desktop" und "Server". Konfigurieren Sie den Desktop, um das Entfernen von Daten zu verhindern. Die Desktop-Admins haben keine Möglichkeit, auf das Sensible zuzugreifen, der Server kann sie stehlen, muss aber durch Reifen springen, um es aus dem Gebäude zu bekommen.
  • Auditing für ein System mit eingeschränktem Zugriff syslog und Auditing auf Ereignisebene zu einem relativ manipulationssicheren System, zu dem sie keinen privilegierten Zugriff haben. Aber das Sammeln ist nicht genug, Sie müssen es überwachen - und ehrlich gesagt gibt es eine Reihe von Möglichkeiten, Informationen zu "stehlen", die möglicherweise nicht auf einem Überwachungsradar angezeigt werden. (Wilderer gegen Wildhüter)
  • Wenden Sie die "Ruhe" - Verschlüsselung an, damit Daten nicht "im Klartext" gespeichert werden und ein Live-System für den Zugriff erforderlich ist. Dies bedeutet, dass Personen mit physischem Zugriff nicht auf ein System zugreifen können, das nicht aktiv überwacht wird, und dass in einem "anomalen" Szenario, in dem ein Systemadministrator daran arbeitet, die Daten weniger exponiert sind. (Wenn die Datenbank beispielsweise nicht funktioniert, sind die Daten wahrscheinlich nicht lesbar)
  • Zwei-Mann-Regel - wenn es dir gut geht, dass deine Produktivität gelähmt ist, und deine Moral ebenfalls. (Ernsthaft - ich habe es gesehen, und der andauernde Zustand des Arbeitens und Beobachtens macht es extrem schwierig Arbeitsbedingungen).
  • Überprüfen Sie Ihre Systemadministratoren - je nach Land gibt es möglicherweise verschiedene Datensätze. (Strafregister überprüfen, du könnte sogar finden Sie, dass Sie in einigen Fällen eine Sicherheitsfreigabe beantragen können, die eine Überprüfung auslösen wird)
  • Passen Sie auf Ihre Systemadministratoren auf - das absolut Letzte, was Sie tun möchten, ist, einer "vertrauenswürdigen" Person zu sagen, dass Sie ihnen nicht vertrauen. Und Sie wollen sicherlich nicht die Moral schädigen, weil das erhöht sich die Chance auf böswilliges Verhalten (oder "Nicht-sorglos-Fahrlässigkeit, aber eine Vernachlässigung der Wachsamkeit"). Aber zahlen Sie nach Verantwortung und Fähigkeiten. Und betrachten Sie "Vergünstigungen" - das sind billiger als Gehalt, aber wahrscheinlich mehr geschätzt. Wie kostenlosen Kaffee oder Pizza einmal pro Woche.
  • und Sie können auch Vertragsbedingungen versuchen und anwenden, um sie zu verhindern, aber seien Sie vorsichtig mit dem oben genannten.

Aber ziemlich grundlegend - Sie müssen akzeptieren, dass dies eine Vertrauenssache ist, keine technische Sache. Ihre Systemadministratoren werden immer potentiell sehr gefährlich für Sie sein, als Folge dieses perfekten Sturms.


19
2018-02-02 10:04



Ich trage gelegentlich den Sysadmin-Hut. Ich habe es für notwendig gehalten, mächtige Werkzeuge herumzulegen, wo ich an sie herankomme, von denen einige den beabsichtigten Zweck haben, Systemzugriffskontrollen zu umgehen (falls jemand es schafft, jeden von einem Arbeitsplatz aus zu sperren). Als das Wesen ihrer Operation ist das Auditing geschwächt oder ineffektiv. - joshudson
Ja. Aus allen Gründen können Schlosser in Ihr Haus eindringen, Systemadministratoren müssen möglicherweise in das Netzwerk eindringen. - Sobrique
@Sobrique: Es gibt etwas, das ich immer noch nicht verstehe: Warum hören wir von Rogue-Sysadmins, die viele Daten stolpern und nicht von Schurken, die dasselbe machen? (Sie könnten es tun, während alles auf Papier war). - user2284570
Volume - Terabytes von Hardcopy ist groß. Und Schaden. Die Sabotage eines IT-Systems kann ein Unternehmen regelrecht ruinieren. - Sobrique


Alles, was bisher gesagt wurde, ist eine gute Sache, aber es gibt eine "einfache", nicht technische Art, die hilft, einen Rogue-Sys-Admin zu negieren - den Vier-Augen-Prinzip was grundsätzlich erfordert, dass zwei Systemadministratoren für jeden erhöhten Zugriff anwesend sind.

BEARBEITEN: Die zwei größten Punkte, die ich in Kommentaren gesehen habe, sind Kosten und die Möglichkeit von Kollusion. Einer der größten Wege, die ich in Betracht gezogen habe, um diese beiden Probleme zu vermeiden, ist der Einsatz eines Managed-Service-Unternehmens, das nur zur Überprüfung der durchgeführten Maßnahmen verwendet wird. Richtig gemacht, die Techniker würden sich nicht kennen. Angenommen, die technischen Fähigkeiten, die ein MSP haben sollte, würde es leicht genug sein, sich von den Aktionen abzumelden. Vielleicht sogar so einfach wie ein Ja / Nein zu irgendetwas ruchlosen.


51
2018-02-01 19:52



@Sirex: Ja, das ist das Problem mit der Sicherheit - es hat immer seine Kosten. - sleske
Nein, ich habe in ziemlich kleinen Organisationen (100-1000 Personen) gearbeitet, die genau das getan haben. Sie akzeptierten nur, dass ihre Verfahren die gesamte Systemadministration zwischen vier und zehn Mal so viel Geld kosten würden, wie sie es sonst tun würden, und sie zahlten. - MadHatter
Dies ist die einzige wirkliche Antwort. Unser Kit befindet sich an einigen sicheren Standorten und (unter anderem) verwenden wir diesen Ansatz, um sicherzustellen, dass niemand auf ein erhöhtes Terminal zugreifen kann. Es wird eine detaillierte Anfrage für die zu erledigende Arbeit gestellt, viele Leute melden sich an (50+, Seufzer), dann kommen zwei Admins zusammen und machen den Wechsel. Es minimiert das Risiko (und auch dumme Fehler). Es ist teuer und ein monumentaler Schmerz, um etwas zu erledigen, aber das ist der Preis für die Sicherheit. Re: 50+ Unterzeichner, darunter Netzwerk-Team, DC-Team, Projektmanager, Sicherheit, Speicher, Pen-Tester, Softwareanbieter usw. - Basic
Du würdest wahrscheinlich Schwierigkeiten haben, dich einzustellen, ja. Es wäre ein sofortiger Show-Stopper für mich, da ich gerne Dinge erledigen würde und meinen Arbeitsgenuss lähmen würde. - Sirex
Beachten Sie, dass die erhöhten Kosten nicht für jede Sysadmin-Aktion gelten. Es gilt jedoch sowohl für die erhöhten Aktionen selbst als auch für ihre Vorbereitung. IOW, man kann nicht sagen: "Sysadmin arbeitet 40 Stunden pro Woche, 4 davon erhöht, so dass die Kostensteigerung nur 10% betragen würde". Auf der positiven Seite bemerkt das Programm auch normale, ehrliche Fehler. Das spart Geld. - MSalters


Wenn Benutzer wirklich Administratorzugriff auf ein System benötigen, können Sie ihre Aktivitäten auf dieser Box nur wenig einschränken.

Was die meisten Organisationen tun vertraue, aber überprüfe - Sie können Personen Zugriff auf Teile des Systems geben, aber Sie verwenden named admin accounts (z. B. geben Sie ihnen keinen direkten Zugang zu Wurzel) und auditieren dann ihre Aktivitäten zu einem Protokoll, das sie nicht stören können.

Hier ist ein Balanceakt; Möglicherweise müssen Sie Ihre Systeme schützen, aber Sie müssen den Menschen auch vertrauen, dass sie ihre Aufgaben erledigen. Wenn das Unternehmen früher von einem skrupellosen Mitarbeiter "gebissen" wurde, könnte dies darauf hindeuten, dass die Einstellungspraktiken der Unternehmen in irgendeiner Weise schlecht sind, und diese Praktiken wurden vermutlich von den "Top-Managern" geschaffen. Vertrauen beginnt zu Hause; Was tun sie, um ihre Einstellungsentscheidungen zu treffen?


27
2018-02-01 19:18



Dies ist eine großartige Beobachtung - gutes Auditing lässt Menschen ihre Arbeit erledigen, bleibt aber für ihre Handlungen verantwortlich. - Steve Bonds
Die ordnungsgemäße Verwendung von auditd und syslog kann ebenfalls sehr hilfreich sein. Diese Daten können durch eine Vielzahl von Sicherheitstools überwacht werden, um nach merkwürdigem oder eindeutig schlechtem Verhalten zu suchen. - Aaron
Das eigentliche Problem beim Auditing ist, dass es eine Menge Lärm gibt. Nach einigen Monaten wird sich niemand mehr um die Protokolle kümmern, außer wenn etwas passiert ist. - TomTom
Ich stimme TomTom zu, das Signal-Rausch-Verhältnis direkt in Sicherheitsprotokollen zu bekommen ist ein Problem, aber Sie müssen sich trotzdem anmelden, denke ich. @Sobrique Ich würde allerdings sagen, dass "böse Systemadministratoren" eher ein Einstellungs-Thema als ein Technologie-Problem sind; Sie müssen beide Seiten der Lücke schließen, also würde ich Tag für Tag 'best practice' verlangen und Einstellungsprozesse verbessern, '4 Augen' für wahre geheime Soßenkram, wie Tim es anmerkte, ebenso beachten wie Logs sieben - Rob Moir
Ein bisschen, aber bedenken Sie, dass ein früherer gutgläubiger Schauspieler sich in einen "Job-Zyklus" verwandeln kann, der sich in einen bösartigen verwandelt. Das ist mehr als Entmündigung und Moral als Einstellungspraktiken per se. Die Dinge, die jemanden zu einem guten Systemadministrator machen, würden sie auch zu einem guten Hacker machen. Also vielleicht in diesem Punkt - die Einstellung von mittelmäßigen Systemadministratoren ist der Weg nach vorne? - Sobrique


Ohne sich in einen wahnsinnigen technischen Sinn zu versetzen, versuchen Sie, einen Weg zu finden, einem Systemadministrator Macht zu geben, ohne ihm Macht zu geben (das ist wahrscheinlich machbar, würde aber letztendlich in gewisser Weise fehlerhaft sein).

Aus der Sicht der Geschäftspraxis gibt es eine Reihe einfacher Lösungen. Nicht billige Lösung, aber einfach.

Du hast erwähnt, dass die Teile von IP, um die du dich sorgst, geteilt sind und nur Leute an der Spitze die Macht haben, sie zu sehen. Dies ist im Wesentlichen Ihre Antwort. Du solltest mehrere Admins haben, und KEIN von ihnen sollte ein Administrator sein, der genug Systeme hat, um das komplette Bild zusammenzustellen. Du brauchst natürlich mindestens 2 oder 3 Admins für jedes Stück, falls ein Admin krank ist oder bei einem Autounfall oder so. Vielleicht sogar taumeln sie. Sagen Sie, Sie haben 4 Admins und 8 Informationen. Admin 1 kann auf Systeme zugreifen, die Teil 1 und 2 haben, Admin 2 kann zu Teil 2 und 3 gelangen, Admin 3 zu 3 und 4 und Admin 4 zu 4 und 1. Jedes System hat einen Backup Admin, aber nein admin kann das komplette Bild kompromittieren.

Eine Technik, die das Militär auch verwendet, ist die Beschränkung beweglicher Daten. In einem sensiblen Bereich kann es nur ein einziges System geben, das in der Lage ist, eine Festplatte zu brennen oder ein USB-Flashlaufwerk zu verwenden. Alle anderen Systeme sind eingeschränkt. Und die Fähigkeit, dieses System zu verwenden, ist extrem begrenzt und erfordert eine spezifische dokumentierte Genehmigung durch höhere Ups, bevor irgendjemand erlaubt ist, irgendwelche Daten auf etwas zu setzen, was zu einem Verschütten von Informationen führen könnte. Gleichzeitig stellen Sie sicher, dass der Netzwerkverkehr zwischen verschiedenen Systemen durch Hardware-Firewalls begrenzt ist. Ihre Netzwerkadministratoren, die die Firewalls steuern, haben keinen Zugriff auf die Systeme, die sie routen. Daher können sie nicht explizit auf Informationen zugreifen, und Ihre Server / Workstation-Administratoren stellen sicher, dass alle Daten von und zu einem System verschlüsselt werden dass Ihre Netzwerkadministratoren nicht auf das Netzwerk zugreifen und Zugriff auf die Daten erhalten.

Alle Laptops / Workstations sollten über verschlüsselte Festplatten verfügen und jeder Mitarbeiter sollte über ein persönliches Schließfach verfügen, in dem die Laufwerke / Laptops am Ende der Nacht gesperrt werden müssen, damit niemand zu früh kommt, sich verspätet und Zugang zu etwas erhält sie sollen nicht.

Jeder Server sollte sich zumindest in seinem eigenen gesperrten Rack befinden, wenn nicht in seinem eigenen verschlossenen Raum, so dass nur die für jeden Server verantwortlichen Admins darauf zugreifen können, da der physische Zugriff am Ende des Tages alle übertrifft.

Als nächstes gibt es eine Übung, die entweder weh tun / helfen kann. Begrenzte Verträge Wenn Sie der Meinung sind, dass Sie genug bezahlen können, um weiterhin neue Talente zu gewinnen, würde die Option, nur einen Admin für eine bestimmte Zeit (IE 6 Monate, 1 Jahr, 2 Jahre) zu behalten, Ihnen erlauben, die Dauer zu begrenzen um zu versuchen, alle Teile Ihrer IP zusammenzusetzen.

Mein persönliches Design wäre etwas im Sinne von ... Teilen Sie Ihre Daten in so viele Teile, sagen wir, um eine Nummer 8 zu haben, haben Sie 8 Git-Server, jeder mit seinem eigenen Satz redundanter Hardware, von denen jeder verwaltet wird eine andere Gruppe von Admins.

Verschlüsselte Hardrives für alle Workstations, die die IP-Adresse berühren. mit einem bestimmten "Projekt" -Verzeichnis auf dem Laufwerk, das das einzige Verzeichnis ist, in das Benutzer ihre Projekte einfügen dürfen. Am Ende jeder Nacht müssen sie ihre Projektverzeichnisse mit einem sicheren Löschwerkzeug sanieren, dann werden Festplatten entfernt und eingesperrt (nur um sicher zu sein).

Jedem Bit des Projekts ist ein anderer Administrator zugewiesen, sodass ein Benutzer nur mit dem Arbeitsstationsadministrator interagiert, dem er zugewiesen ist. Wenn sich seine Projektzuordnung ändert, werden seine Daten gelöscht, und ihnen wird ein neuer Administrator zugewiesen. Ihre Systeme sollten keine Brennfunktionen haben und sollten ein Sicherheitsprogramm verwenden, um zu verhindern, dass USB-Sticks für die unberechtigte Übertragung von Daten verwendet werden.

nimm davon was du willst.


18
2018-02-01 23:28



Danke, viele gute Sachen dort und viele, die wir machen. Während ich die Idee der Multiple Admins mag, sind wir nicht groß genug, um das zu brauchen. Ich wirklich nur brauchen ein Admin, also wenn ich vier hätte, wären sie normalerweise aus ihren Gedanken gelangweilt. Wie finden wir die Top-Talente, die wir wollen, aber nur ein winziges Arbeitspensum? Ich fürchte, schlaue Leute werden sich schnell langweilen und zu grüneren Weiden übergehen. - Matt
Ja, das ist ein großes Problem, und tatsächlich leidet das Regierungsgebiet stark darunter. Der Ort, an dem ich als Administrator anfing, wurde oft als "Drehtür" bezeichnet. Das Ganze ist ein schwieriges Problem. Informationssicherung im Allgemeinen ist eine ziemlich harte Nuss zu knacken: - Gravy
@Matt How do we find the top-tier talent we want, but only give them a teeny-tiny workload? Bis zu einem gewissen Grad können Sie dies abschwächen, indem Sie ihnen eine große Test- / F & E-Umgebung zur Verfügung stellen, Zugang zu den coolen neuen Spielzeugen erhalten und sie ermutigen, einen bedeutenden Teil ihres Arbeitstages damit zu verbringen, ihre technischen Fähigkeiten zu entwickeln. Eine effektive Arbeitsbelastung von 25% treibt das wahrscheinlich zu weit, aber ich wäre absolut überglücklich über einen Job, der 50% der tatsächlichen Arbeit und 50% technische Entwicklung / F & E ausmacht (unter der Annahme, dass der Lohn auf einem normalen Niveau von 100% liegt). " tatsächliche Arbeit "Job). - HopelessN00b


Es wäre vergleichbar mit der Herausforderung, einen Hausmeister für ein Gebäude zu engagieren. Der Hausmeister muss alle Schlüssel haben, kann jede Tür öffnen, aber der Grund ist, dass der Hausmeister sie braucht, um die Arbeit zu erledigen. Gleiches gilt für Systemadministratoren. Symmetrisch kann man an dieses uralte Problem denken und nach Wegen suchen, wie man historisch Vertrauen genießt.

Obwohl es keine saubere technische Lösung gibt, die Tatsache, dass es keine gibt, sollte kein Grund sein, dass wir keine versuchen, eine Ansammlung von unvollkommenen Lösungen kann einige großartige Ergebnisse liefern.

Ein Modell, in dem Vertrauen erworben wird:

  • Geben Sie zu Beginn weniger Berechtigungen ein
  • Erhöhen Sie die Berechtigungen schrittweise
  • Setzen Sie einen Honigtopf und überwachen Sie, was in den nächsten Tagen passiert
  • Wenn der Systemadministrator es meldet, anstatt es zu missbrauchen, ist das ein guter Anfang

Implementieren Sie mehrere Ebenen der administrativen Befugnisse:

  • Stufe 1: Kann die untere Stufe der Konfigurationsdateien modifizieren
  • Level 2: Kann etwas höhere Stufe von Konfigurationsdateien modifizieren
  • Stufe 3: Kann etwas höhere Stufe von Konfigurationsdateien und Betriebssystemeinstellungen ändern

Erstellen Sie immer eine Umgebung, in der der vollständige Zugriff durch eine Person nicht möglich ist:

  • Split-Systeme in Clustern
  • Weisen Sie verschiedenen Gruppen Cluster-Administratorrechte zu
  • Mindestens 2 Gruppen

Verwenden Sie die Zwei-Mann-Regel, wenn Sie Kernänderungen auf hoher Ebene durchführen:

Vertrauen und verifizieren:

  • Alles protokollieren
  • Protokollüberwachung und -benachrichtigung
  • Stellen Sie sicher, dass alle Aktionen unterscheidbar sind

Papierkram:

  • Lassen Sie sie Papierkram unterzeichnen, um das Rechtssystem in die Lage zu versetzen, Ihnen zu helfen, indem Sie sie verklagt, wenn sie Ihnen schaden, gibt mehr Anreiz, es nicht zu tun

11
2018-02-02 03:39



Protokollieren Sie nicht nur alles, sondern etwas, das auf diesen Protokollen überwacht und alarmiert werden muss, idealerweise auf eine Weise, die für Menschen einfach zu konsumieren ist. - Aaron


Es ist sehr sehr schwierig, Hosts gegen solche mit Administratorzugriff zu sichern. Während Werkzeuge wie PowerBroker versuchen, dies zu tun, die Kosten fügen beide etwas hinzu, das brechen kann UND Hinzufügen von Hindernissen zu Versuchen, es zu beheben. Ihre Systemverfügbarkeit WERDEN fallen, wenn Sie so etwas implementieren, so setzen Sie diese Erwartung früh als die Kosten für den Schutz der Dinge.

Eine weitere Möglichkeit besteht darin, zu überprüfen, ob Ihre App auf einem verfügbaren Host über einen Cloud-Provider oder in einer lokal gehosteten Private Cloud ausgeführt werden kann. Wenn einer bricht, anstatt einen Admin zu senden, um ihn zu reparieren, wirfst du ihn weg und erstellst automatisch einen Ersatz. Dies erfordert eine Menge Arbeit auf der Anwendungsseite, um sie in diesem Modell laufen zu lassen, aber es kann viele Betriebs- und Sicherheitsprobleme lösen. Wenn es schlecht gemacht wird, kann es einige erhebliche Sicherheitsprobleme verursachen, also erfahren Sie Hilfe, wenn Sie diese Route gehen.


9
2018-02-01 18:36





Dies ist Ihre grundlegende Diskussion: https://security.stackexchange.com/questions/7801/keeping-secrets-from-root-on-linux

Sie teilen Ihre Verantwortung, indem Sie Sicherheitsingenieure beauftragen, deren Aufgabe es ist, Systemkonfigurationen und -installationen vorzunehmen, aber sie erhalten keine Anmeldeinformationen oder keinen Zugriff auf Maschinen in der Produktion. Sie führen auch Ihre Audit-Infrastruktur aus.

Sie haben Produktionsadministratoren, die die Systeme erhalten, aber nicht über die erforderlichen Schlüssel verfügen, um die Maschine zu starten, ohne dass die SELinux-Richtlinien aktiv sind. Sicherheit erhält nicht die Schlüssel, um vertrauliche Daten, die im Ruhezustand auf der Festplatte gespeichert sind, zu entschlüsseln, wenn sie eine beschädigte Maschine aus dem Dienst ziehen.

Nutzen Sie ein zentralisiertes Authentifizierungssystem mit starken Auditierungen wie Gewölbe und nutze seine Kryptooperationen. Verteilen Sie Yubikey-Geräte, um Schlüssel absolut privat und unlesbar zu machen.

Maschinen werden entweder bei Bruch abgewischt oder gemeinsam von Ops und Security gehandhabt, und wenn Sie das Gefühl haben, dass die Geschäftsleitung überwacht werden muss.


4
2018-02-03 18:49





Administratoren haben aufgrund der Art des Jobs Zugriff auf alles. Sie können jede Datei im Dateisystem mit ihren Administratoranmeldeinformationen anzeigen. Sie benötigen also eine Möglichkeit, die Dateien zu verschlüsseln, so dass Administratoren sie nicht sehen können. Die Dateien können jedoch weiterhin von den Teams verwendet werden, die sie sehen sollen. Einblick in die Vormetric Transparent Encryption (http://www.vormetric.com/products/transparent-encryption)

Die Art und Weise, wie es funktionieren würde, ist, dass es zwischen dem Dateisystem und den Anwendungen, die darauf zugreifen, sitzt. Die Verwaltung kann die Richtlinie erstellen, die besagt "Nur der httpd-Benutzer, der den Webserver-Daemon ausführt, kann die Dateien unverschlüsselt anzeigen". Dann kann ein Administrator mit seinen Root-Anmeldeinformationen versuchen, die Dateien zu lesen und nur die verschlüsselte Version zu erhalten. Aber der Webserver und alle Tools, die er benötigt, sehen sie unverschlüsselt. Es kann sogar die Binärsumme überprüfen, um es dem Admin zu erschweren, herumzukommen.

Natürlich sollten Sie die Überwachung aktivieren, damit, wenn ein Administrator versucht, auf die Dateien zuzugreifen, eine Nachricht markiert wird und die Leute darüber Bescheid wissen.


2
2018-02-01 19:47



Wer kann dann die Dateien aktualisieren? Wie gehen sie damit um? - Michael Hampton♦
Plus ... Wenn ich auf dieser Box root, sind die Chancen, dass ich den Webserver-Daemon unterlaufen kann. Selbst wenn ich binäre Hashes überprüfe, um sicherzustellen, dass ich den Daemon nicht ersetzt habe, gibt es eine Möglichkeit, den Webserver dazu zu bringen, eine scheinbar legitime Anfrage nach den Daten zu machen. - Basic
Tatsächlich haben SysAdmins möglicherweise keinen Zugriff auf alle Dateien - C2 und besser gesicherte Systeme können Admins blockieren. Sie können den Zugriff erzwingen, aber dies ist unwiderruflich (sie werden als Benutzer festgelegt) und hinterlässt Spuren (Protokoll, die sie löschen, aber nicht leicht ändern können). - TomTom
Dies würde nicht helfen, da ein Admin httpd werden kann ... Admins können auch / dev / mem und damit alle Schlüssel lesen. - John Keates
@TomTom: Die Möglichkeit, dass ein Betriebssystem C2 erfüllt, ist ein Mythos. Windows NT4 hat die Zertifizierung bestanden, aber es stellte sich heraus, dass es sich um einen betrügerischen Pass handelte. Die Möglichkeit, den Force-Zugriff zurückzusetzen, existierte immer, und ich habe es verwendet, und wir haben eine Prozedur, die davon abhängt, dass es funktioniert, weil ein Programm versucht, zu überprüfen, dass seine Dateien nicht manipuliert wurden, aber wir müssen es ändern Sie. - joshudson


Der einzige praktische Weg ist, einzuschränken, wer mit sudo was machen kann. Sie könnten möglicherweise auch das meiste von dem, was Sie wollen, mit selinux machen, aber es würde wahrscheinlich ewig dauern, um die richtige Konfiguration herauszufinden, die es möglicherweise unpraktisch macht.

Vertraulichkeitsvereinbarungen. Einen Sysadmin anstellen, sie müssen eine NDA unterzeichnen, wenn sie ihr Versprechen brechen, sie vor Gericht bringen. Dies darf nicht verhindern Sie sind dabei, Geheimnisse zu stehlen, aber jegliche Schäden, die sie dadurch verursachen, sind vor Gericht erstattungsfähig.

Militärische und staatliche Systemführer müssen, je nachdem, wie empfindlich das Material ist, Sicherheitsabfertigungen unterschiedlicher Güteklassen erhalten. Die Idee ist, dass jemand, der eine Freigabe erhalten kann, weniger wahrscheinlich stehlen oder betrügen wird.


2
2018-02-02 04:14



Die Idee ist, dass 1) das Erlangen und Aufrechterhalten dieser Freigabe ihre Fähigkeit einschränkt, zwielichtige Geschäfte zu machen; 2) Arbeitsplätze, die höhere Sicherheitsfreigaben erfordern, zahlen besser, was einen starken Anreiz darstellt, diese Abfertigung zu behalten, unabhängig davon, ob Sie Ihren Wunsch haben aktuell Arbeitgeber. - Shadur
Das heißt, wiederum hat das OP ausdrücklich gesagt, dass er um Präventivmaßnahmen bittet - sicher, Sie können sie später wegen NDA-Verletzung verklagen, aber wird ein Systemadministrator Ihnen wahrscheinlich genug Geld geben, um die Art von Schadenersatz zu bekommen, die er impliziert? - Shadur
Du erhälst nicht nur Verluste vom Systemadministrator, sondern auch von wem oder was auch immer anderes Geschäft mit diesen Geheimnissen Geld verdient. - Michael Martinez
Dies ist eine sehr geheimnisvolle Umgebung für den Anfang. Sag also, dass ein schlechter Systemadministrator eine geheime Soße stiehlt, und herauszufinden, an wen er verkauft hat, ist im Grunde unmöglich. Was ist, wenn er einen Code stiehlt, zu guten Bedingungen verkauft, Code an einen Konkurrenten verkauft? Plötzlich erodieren unsere Profite, aber wir wissen nicht wie (das ist die Finanzierung, ein anonymer Marktplatz). - Matt
@Matt Für die Verantwortlichen ist das genauso ein Risiko wie für diejenigen, die es nicht sind. Leute mit geheimer Soße sorgen sich darum, dass jemand anderes es stiehlt, wenn es genauso wahrscheinlich ist, dass einer von ihnen es tut. - Michael Martinez


Ein anderer Weg, um das Risiko zu senken (verwenden Sie neben den oben genannten, nicht statt), ist es, Ihren Systemadministratoren gutes Geld zu zahlen. Bezahlen Sie sie so gut, dass sie nicht von Ihrer IP stehlen wollen und Sie verlassen.


1
2018-02-02 16:06



Ich sehe, woher du kommst, aber ich denke, die meisten von uns haben eine professionellere Ethik. Ich stehle nicht die Geheimnisse meiner Kunden, aber es ist nicht, weil sie mich genug bezahlen, dass ich nicht das Bedürfnis verspüre, weil es falsch wäre, das zu tun; Ich vermute, ich bin nicht die einzige Person hier, die sich so fühlt. - MadHatter
Ja, wie Ben Franklin einmal schrieb: "Lade niemals jemanden mehr auf, als es kostet, dich zu töten." Aber umgekehrt. - Bruce Ediger
Sie können niemanden in Integrität bestechen. Das wird einfach nicht funktionieren. Wie ein weiser Mann einmal sagte: Wir haben festgestellt, was für eine Person Sie sind, jetzt feilschen wir nur um den Preis. Aber Sie können die Treue von jemandem verdienen, indem Sie richtig handeln. Lohn ist ein Teil davon, aber auch viele Dinge. Autonomie und Meisterschaft - geben Freiheit und Ausbildung und Entwicklung. Das Problem ist, die Versuchung könnte sein, sie zu unterdrücken, damit sie sich nicht verirren und sie dann bestechen, um das zu "reparieren". Aber wie alle missbräuchlichen Beziehungen wird das fehlschlagen. - Sobrique
Ich habe es nur geschrieben, es ist ein anderer Weg, nicht gut. Ich denke, wenn jemand einen neuen Systemadministrator anstellt, muss Vertrauen herrschen. Denn Sysadmin ist - neben CEO und CFO - jemand, der in wenigen Minuten die Firma zerstören kann. Guter Admin wird nicht funktionieren für kleines Geld (oder jemand von Ihnen wird?) Und Sysadmin, der für wenig Geld arbeitet, ist gefährlicher. - Ondra Sniper Flidr