Falsche Daten angezeigt

Guten Morgen zusammen

Ubuntu 20.04
Nextcloud 26.0.3
PHP 8.1.20

Ein Benutzer hat sich gemeldet, dass er Daten von einem anderen Benutzer sieht. Er hat das Belegt, indem er ein Dokument ausgedruckt hat.

Die Daten sind jeweils auf einem “Externen Speicher” per SMB auf einem Windows Server. Der Zugriff von Nextcloud geschieht über eine globale Anmeldung.
Pro Externen Speicher habe ich dann eine Gruppe, welche Rechte auf diesen Speicher hat und schlussendliche schmeisse ich dann die berechtigten Benutzer einfach in diese Gruppe.

Funktioniert eigentlich bestens. Habe aber nun zum zweiten mal so ein Vorkommnis gemacht und das beunruhigt doch sehr. Im Nextcloud Log finde ich nichts interessantes weil der DebugLevel vermutlich zu niedrig eingestellt ist.

Hat jemand eine Idee an was das liegen könnte?
Linux Update - PHP Update und dann wird zugegriffen? Ist da ein solches Leak denkbar?

Bin für jeden Hinweis dankbar.

Grüsse aus der Schweiz

Haija

Ich denke eher keine Sicherheitslücke. Die Anlaufstelle dafür wäre issues. Ich denke es ist ein Konfigurationsfehler. Poste mal deine Konfigurationen und gerne geschwärzte Screenshots.

Auch wenn Ubuntu 20.04 LTS noch supportet wird, solltest du vielleicht auf Ubuntu 22.04 LTS wechseln. Dann kannst du auch die dort bereitgestellte PHP-Version nutzen und kannst auf eine Fremdquelle verzichten. Ich verstehe sowieso nicht dieses komische Vorgehen mit den PPA-Quellen. Warum nicht einfach Ubuntu LTS upgraden wenn es Zeit ist.

Wusste nicht, dass in Ubuntu 22.04 LTS PHP gleich mitgeliefert wird.

Hier das config.php:

<?php
$CONFIG = array (
  'instanceid' => 'xxxxxxxxxxxxxxxxxxx',
  'passwordsalt' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxx',
  'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxx',
  'trusted_domains' =>
  array (
    0 => 'xxxxxxxxxxxxxxx',
    1 => '10.10.2.1',
    2 => 'xxxxxxxxxxxxxxxxxxx',
  ),
  'defaultapp' => 'files',
  'overwrite.cli.url' => 'https://xxxxxxxxxxxxxxxxx',
  'overwriteprotocol' => 'https',
  'datadirectory' => '/var/www/nextcloud/data',
  'default_language' => 'de_CH',
  'default_locale' => 'de_CH',
  'dbtype' => 'mysql',
  'version' => '26.0.3.2',
  'dbname' => 'nextcloud',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'oc_Administrator',
  'dbpassword' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  'logtimezone' => 'UTC',
  'installed' => true,
  'mail_smtpmode' => 'smtp',
  'mail_from_address' => 'portal',
  'mail_domain' => 'xxxxxxxx.ch',
  'mail_smtphost' => 'mail.xxxxxxxxxxxx.ch',
  'mail_smtpport' => '25',
  'mail_smtpstreamoptions' =>
  array (
    'ssl' =>
    array (
      'allow_self_signed' => true,
      'verify_peer' => false,
      'verify_peer_name' => false,
    ),
  ),
  'appstore.experimental.enabled' => false,
  'maintenance' => false,
  'ldapIgnoreNamingRules' => false,
  'ldapProviderFactory' => '\\OCA\\User_LDAP\\LDAPProviderFactory',
  'ldapUserCleanupInterval' => 5,
  'filelocking.enabled' => 'true',
  'session_lifetime' => 1800,
  'session_keepalive' => false,
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' =>
  array (
    'host' => 'localhost',
    'port' => 6379,
  ),
  'updater.release.channel' => 'stable',
  'theme' => '',
  'log_type' => 'owncloud',
  'logfile' => '/var/log/nextcloud.log',
  'loglevel' => '3',
  'logdateformat' => 'F d, Y H:i:s',
  'skeletondirectory' => '',
  'mail_smtpauthtype' => 'PLAIN',
  'app_install_overwrite' =>
  array (
    0 => 'ransomware_protection',
    1 => 'activitylog',
  ),
  'auth.webauthn.enabled' => false,
  'mail_sendmailmode' => 'smtp',
  'mysql.utf8mb4' => false,
  'default_phone_region' => 'CH',
  'twofactor_enforced' => 'true',
  'twofactor_enforced_groups' =>
  array (
  ),
  'twofactor_enforced_excluded_groups' =>
  array (
  ),
);

Von wo hättest du denn gerne Screenshots?

Danke für deine Zeit und beste Grüsse
​ ​

Es befindet sich in allen Ubuntu Versionen eine bestimmte PHP Version in den offiziellen Repos. Wenn man aber eine neuere (oder ältere) Version nutzen möchte als diejenige, welche sich in den Repos der jeweiligen Ubuntu Version befindet, oder wenn man mehrere Versionen auf dem selben Server nutzen möchte, kann es (je nach Konstelation) Sinn machen das PPA einzubinden.

Zum eigentlichen Problem kann ich leider nicht viel beitragen, da ich kein External Storage nutze. Ich denke aber nicht, dass es an der verwendeten Ubuntu oder PHP Version liegt.

@devnull Ich weiss, dass du kein Fan von PPAs bist, denke aber nicht, dass das hier das Problem ist. :wink:

Abgehangenes Betriebssystem mit neustem PHP. Ist ja wie früher bei Windows XP. Mag nicht an PHP liegen. Aber die Nextcloud-Release-Anforderungen sind meist so, dass Fremdquellen gar nicht nötig sind, wenn man nach Betriebssystem-Release auch mal dist-upgradet. Und irgendwann muss man sowieso dist-upgraden, neu installieren oder Nextcloud aufgeben. PPA ist sinnvoll, wenn es einem selbst einen Mehrwert bringt.

Ubuntu 20.04 LTS wird noch bis 2025/2030 unterstützt. Kann man so lange nutzen, muss man aber nicht. Ist eher für Firmen und in Ausnahmen so gedacht. Ich empfehle Dist-Upgrade innerhalb des ersten Jahres nach neuem Release von Ubuntu oder Debian.

https://wiki.ubuntu.com/Releases
https://wiki.debian.org/LTS

Der Vergleich mit XP - na ja. Für was gibt es LTS Versionen???

Trotzdem herzlichen Dank für eueren Input. Werde natürlich asap auf 22.04 LTS gehen.

Du sprichst hier von Daten eines anderen Menschen, im Gegensatz zu…

…den Daten, die zwar von verschiedenen Menschen stammen, aber einem einzigen Benutzer „gehören“. (Globale Anmeldung)

Verstehe ich das so richtig?

Damit hätte auch jeder (theoretisch) Zugriff auf alles. Das wäre jetzt je nach Daten nicht unbedingt der Königsweg der Einbindung, weil das datenbeherbergende System nicht mehr weiss, wer da zugreift. Es muss sich darauf verlassen, dass die Nextcloud die daten „ordentlich“ versteckt.

Die Frage ist, wie du jetzt zwischen den Menschen unterscheidest.

Ich würde mir als aller erstes mal vorführen lassen, wie der Mensch der das fremde Dokument gedruckt hat, an dieses herangekommen ist.
Dann weisst du sofort, an welcher Stelle der Konfigurationsfehler ist, oder ob es kein Konfigurationsfehler, sondern eine Schwachstelle im Konzept ist :slight_smile:

LG Jesko

Von der Definition des externen Speichers siehe z. B. hier sowie die zugehörigen Gruppendefinitionen und zugehörigen Benutzer. Auch wäre die fehlerhafte Anzeige interessant und was du an dieser Stelle erwartet hättest. Du kannst beliebig viel schwärzen.

Vielleicht ist es so. Du legst unterschiedliche Gruppen auf gleiche externe Speicherbereiche an und somit können diese Gruppen sich gegenseitig sehen bzw. die Daten gruppenübergreifend editieren. Ist sichergestellt, dass die Gruppen tatsächlich getrennte Bereiche nutzen?

Es werden dann jeweils die Benutzer den Gruppen hinzugefügt auf welche sie rechte haben.
Wie du siehst, arbeite ich mit “Globale Anmeldung”. Der Storage ist auf einem Windows Server. Und diese “Globale Anmeldung” ist für alle “Externe Speicher” die gleiche.

Somit ergibt sich folgendes Szenario: Der Benutzer ist in einer oder mehreren Gruppen. Die Gruppen haben dann jeweils Rechte auf einen Externen Speicher.

Von der fehlerhaften Anzeige habe ich leider kein Screenshot.

Aus meiner Sicht sollte das passen.

Beste Grüsse