Leakvent 20: Junge Liberale SH

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Bei den Jungen Liberalen Schleswig-Holstein, bekannt durch radikale Forderungen wie “Freies Parken für freie Bürger“, war 2023 ein git-Repository offen zugänglich. Dieses enthielt neben Quellcode auch einen Schlüssel im Klartext. Mit diesem konnte unter https://lako.julis-sh.de/export.php?token=█ auf Namen und E-Mail-Adressen der Teilnehmenden eines Landeskongresses zugegriffen werden.

Leakvent 19: GlobalLogic / Meelogic

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Kurz nach der erfolgreichen Integration von Meelogic in GlobalLogic, ein Softwareentwicklungsunternehmen, lag ein git-Repository offen herum. In der .git/config waren Bitbucket-Zugangsdaten zu finden.

...
[remote "origin"]
    url = https://jenkins-█:█@bitbucket.meelogic.com/██/frontend.git
    fetch = +refs/heads/develop:refs/remotes/origin/develop
... 

Der Account jenkins-█ hatte im Bitbucket auch Schreibzugriff auf verschiedene Projekte wie Automation oder DevOps Training. Dort waren weitere Zugangsdaten zu finden, darunter auch welche für Jira, einschließlich Zugriff auf das Projekt AWS-Vulnerability Management. Mit dem gleichen Account konnte auch auf das Meelogic-Intranet zugegriffen werden. Dort konnten u.a. Protokolle oder ein Personenverzeichnis eingesehen werden. Damit wurde der Ausflug abgebrochen und das Leck gemeldet.

Leakvent 16: Saatchi & Saatchi

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Die Werbeagentur Saatchi & Saatchi hatte ein git-Repository für alle zugänglich auf einem Webserver abgelegt. In der .git/config waren bitbucket-Zugangsdaten zu finden.

[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = http://saatchi██:██████@bitbucket.org/saatchilondon/██████-website.git
	fetch = +refs/heads/*:refs/remotes/origin/*
[branch "develop"]
	remote = origin
	merge = refs/heads/develop

Das Repository enthielt auch zwei Dateien (config/database.php, config/config.php) mit weiteren, auch gültigen Zugangsdaten.

$db['dev']['hostname']  = 'localhost';
$db['dev']['username']  = '████';
$db['dev']['password']  = '████';
$db['dev']['database']  = '████';
$db['dev']['server_name']   = '████.saatchidigital.co.uk';
$db['dev']['dbdriver']  = 'mysqli';
$db['dev']['cache_on']  = FALSE;

$db['live']['hostname'] = '████.rds.amazonaws.com';
$db['live']['username'] = '████';
$db['live']['password'] = '████';
$db['live']['database'] = '████_live';
$db['live']['server_name']  = 'www.████.co.uk';
$db['live']['cache_on'] = TRUE;

$config['s3_bucket'] = 'static.████.co.uk';
$config['s3_access_key'] = '████';
$config['s3_secret_key'] = '████';
$config['s3_endpoint']   = 's3-eu-west-1.amazonaws.com'; //Ireland

$config['twitter']['api_key']   = '████';
$config['twitter']['api_secret']= '████';
$config['twitter']['access_token']  = '████';
$config['twitter']['token_secret']  = '████';

$config['fb']['app_id'] = '████';
$config['fb']['secret'] = '████';
$config['fb']['page_id'] = '████';
$config['fb']['page_access_token'] = '████';  

Die Datenbank-Zugangsdaten konnten dank eines exponierten phpMyAdmin unter https://████/phpmyadmin/ auch genutzt werden. Alternativ konnte ein Datenbank-Backup unter https://████/database.sql.gz heruntergeladen werden.

Die s3-Zugangsdaten erlaubten den Zugriff auf 93 Buckets mit weiteren Backups, Quellcode, anderen Zugangsdaten und personenbezogenen Daten. Auf diverse E-Mails haben Saatchi & Saatchi sowie einige direkt kontaktierte Mitarbeiter nicht geantwortet. Ob und wann Keys rotiert wurden, kann ich nicht sagen.

Leakvent 13: Fonds Finanz

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Gleich mehrere Datenlecks hatte die inzwischen nicht mehr erreichbare Plattform maklermovie.de der Fonds Finanz Maklerservice GmbH. Früher wurden dort Erklärvideos für Finanzprodukte veröffentlicht. Über die Datenlecks konnte auf Quellcode und Konfiguration sowie Daten von tausenden Nutzer*innen zugegriffen werden.

  1. Unter https://www.maklermovie.de/█.zip lag ein Archiv mit Quellcode und Konfigurationsdaten
  2. Die in diesem Archiv enthaltenen SQL-Zugangsdaten konnten unter https://www.maklermovie.de/phpmyadmin█/ genutzt werden, um auf die Datenbank zuzugreifen. In der Datenbank waren u.a. Namen, Adressen, Kontaktdaten und gehashte Passwörter von tausenden Nutzer*innen gespeichert.
  3. Im Quellcode stand an diversen Stellen das root-Passwort für den Server, der unter www.maklermovie.de zu erreichen war: sshpass -p "█"
  4. Im Quellcode waren auch Zugangsdaten für den E-Mail-Account service@… zu finden. Im Postfach lagen weitere Zugangsdaten für info@, service@, admin@, webmaster@.
  5. Diverse weitere Dateien mit Quellcode konnten vom Webserver heruntergeladen werden, bspw.: https://www.maklermovie.de/…/███.php.ol4. Auch diese Dateien enthielten z.T. sensible Informationen.
  6. Ein git-Repository gab ebenfalls Quellcode und sensible Informationen preis.

Nach meiner Meldung und einer rechtsgrundlageorientierten Rückfrage hatte ich dem Unternehmen noch einmal geantwortet, mich dann aber längere Zeit nicht weiter mit dem Leck befasst. Erst jetzt fällt mir auf, dass es laut LeakIX zumindest in Teilen noch fast zwei Jahre nach meiner Meldung im Mai 2022 Bestand hatte.

Screenshot von https://leakix.net/host/138.201.58.110/

Hinweis: Ich habe das Leck lediglich gemeldet. Konkret an die Sitzung des Ausschusses und deren Verlauf den Finder des Datenlecks und den Ablauf der Meldung kann ich mich nicht erinnern.

Leakvent 12: Prisa

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Ein git-Repository des Medienkonzerns Prisa (u.a. El Pais) lag offen zugänglich im Internet. Die config-Datei enthielt Zugangsdaten für gitlab.com, ein zweiter Faktor wurde nicht verlangt:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = https://███Prisa:██@gitlab.com/prisa/tecnologia/██/██.git
[branch "master"]
    remote = origin
    merge = refs/heads/master

Mit dem gitlab-Account konnte auf 478 Projekte zugegriffen werden, auch auf Projekte, die Teile einer Pipeline sind. Eine kleine Auswahl:

prisa-corporacion/portal-prisa.com/prisa.com_████
prisanoticias/el-pais/estaticos-el-pais/████.elpais.com
prisa/prisabs/portal-prisabs.com/prisabs.com_████
prisaradio/los40/los40.████
prisaradio/████.podiumpodcast.com
prisa/tecnologia/infraestructura/████.elpais.com/pipeline_jenkins_static███

Leakvent 11: medbill

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Medbill ist eine Abrechnungs-Plattform für Ärzt*innen.

Der Schutz Ihrer Daten hat für uns oberste Priorität.
Wir setzen modernste Sicherheitstechnologien ein,
um Ihre Informationen bestmöglich zu schützen
und sicher aufzubewahren.

https://medbill.de/

Konfigurationsdaten und Quellcode der Plattform waren 2022 offen zugänglich. Die Daten ermöglichten Zugang zu einem SuperAdmin-Account von https://app.medbill.de/ und den Zugriff auf ca. 40.000 Rechnungen. Aus den Rechnungen gehen Namen und Adressen von Patient*innen sowie abgerechnete Leistungen und Diagnosen hervor.

Leakvent 8: LandesSportBund Sachsen-Anhalt

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Unter https://ivy.lsb-sachsen-anhalt.de/.git/ lag 2023 ein git-Repository. Dieses enthielt neben Quellcode auch Konfigurationsdaten, einschließlich gültiger Zugangsdaten für den mysql-Server, der unter der gleichen Domain erreichbar war. Auf diesem Server waren Daten von mehr als 130.000 Personen einsehbar.

Die Datenbank-Zugangsdaten konnten auch unter https://ivy.lsb-sachsen-anhalt.de/configdata/configdata.xml gefunden werden:

<project name="ivy5serverdev">
<database-connections>
<connection name="ivy5dev">
<hostname>localhost:3306</hostname>
<port>3306</port>
<database>ivy5dev</database>
<user>████████████0001</user>
<password>████████████████</password>
<characterEncoding>utf8</characterEncoding>
<useUnicode>true</useUnicode>
<useSSL>false</useSSL>
</connection>
</database-connections>
...

Auf dem Datenbank-Server lagen diverse Tabellen für verschiedene Jahre, bis zurück ins Jahr 2008:

TABLE_SCHEMA TABLE_NAME TABLE_ROWS
archiv2008_1501 mitglieder_personen 6130
...
ivy_dev2017_development mitglieder_personen 139369
ivy_dev2018 mitglieder_personen 132202
ivy_dev2019 mitglieder_personen 133035
xx_ivy_dev2016 mitglieder_personen 139475

Dabei konnten die folgenden Felder befüllt werden: vernr, sportartid, verbandsid, jahrgang, m, w, aenderung, personid, vernr, nachname, vorname, geburtsdatum, geschlecht, strasse, plz, ort, blz, kontonr, kontoinhaber, iban, bic, abbuchung, einzug, telefonvorw, telefon, mobilvorw, mobil, email, mitglied_seit, mitglied_bis.

Passwörter der IVY-Nutzenden wurden im Klartext gespeichert. Zum Glück steht die IVY-Datenbank heute nicht mehr zur Verfügung.

Screenshot von https://ivy.lsb-sachsen-anhalt.de/

Leakvent 3: Emma Matratze

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Unter http://www.admin.emma-matratze.de/ leakte ein git-Repository, das neben Quellcode auch gültige Zugangsdaten enthielt:

==> cron/██████████.php <==
<?php
require_once '██████.php';
// todo put to system configuration

$hostname = '{imap-mail.outlook.com:993/ssl}MC';
$username = '██████@bettzeit.com';
$password = '██████████████';

Das Kontaktformular unter https://www.emma-matratze.de/kontakt/ hat meine Meldung blockiert: “Sorry, you have been blocked
You are unable to access emma-matratze.de
“, auch meine E-Mail wurde offenbar ignoriert. Die Zugangsdaten sind nach mehr als drei Jahren noch immer gültig.

Leakvent 1: Ferrari Academy

Bis zum 39C3 öffne ich täglich ein Türchen zu den langweiligsten Datenlecks der letzten Jahre. Es geht um .git, .env, exponierte dev-Umgebungen und andere technisch langweilige Ursachen. Aber manchmal ist interessant, was sich hinter einem Türchen verbirgt. Alle Türchen sind hier zu finden.

Es geht los mit der Ferrari Academy. Betroffen waren 2022 nicht besonders viele Menschen. Dafür gab es .git und .env mit Zugangsdaten, eine exponierte dev-Umgebung sowie directory listings und herunterladbare Backups von php-Dateien.

  1. Unter https://academy.ferrari.com/ waren directory listings aktiviert. So konnte u.a. unter https://academy.ferrari.com/<redacted>/HubSync/users.csv eine csv-Datei mit personenbezogenen Daten (u.a. Ausweisnummer) gefunden werden.
  2. “Backups” von php-Dateien erlaubten den Zugriff auf Quellcode, bspw. https://academy.ferrari.com/<redacted>/class.ilCompetence.php.backPrimadiAPOS. Im Quellcode sind auch Zugangsdaten zu finden.

$mail->Username = ‘AKIA████████████████’;
$mail->Password = ‘████████████████████’;

#$mail->addCustomHeader(‘X-SES-CONFIGURATION-SET’,’ConfigSet’);
$mail->Host = ’email-smtp.eu-west-1.amazonaws.com’;
$mail->Port = 465;

  1. Unter https://<redacted>/.env lag eine Datei mit Umgebungsvariablen.

APP_NAME=Laravel
APP_ENV=local

DB_CONNECTION=mysql
DB_HOST=█████████
DB_PORT=3306
DB_DATABASE=█████████
DB_USERNAME=█████████
DB_PASSWORD=█████████

DB_HOST2=█████████
DB_DATABASE2=lmsdb_prod
DB_USERNAME2=█████████
DB_PASSWORD2=█████████

ACADEMYURL=“http://dev.academy.ferrari.com”

  1. Unter https://<redacted>/lms-ferrari/.git/ und https://<redacted>/fixitproject/.git/ lagen zwei git-Repositories mit Quellcode, Konfiguration und personenbezogenen Daten.