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 18: Team Cymru

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.

Team Cymru ist ein Unternehmen, das das Internet überwacht. Ihr Gründer und ehemaliger CEO Rabbi Rob Thomas war Mitglied des Tor Boards. Mit dem Nimbus Threat Monitor stellt Team Cymru Informationen zur Threat Detection gratis zur Verfügung, im Tausch gegen Netflow-Daten.

Share your network metadata, and in return, gain access to unparalleled threat detection, free of charge. (Team Cymru Nimbus Threat Monitor)

Wenn ISPs Netflow-Daten sammeln, dann ist das problematisch. Die Daten zeigen, wer mit wem, wann und wie viel kommuniziert hat. Sie umfassen Quell-/Ziel-IPs, Ports, Protokolle, übertragene Bytes und Pakete.

Wenn Team Cymru Netflow-Daten verschiedener ISPs zusammenführt, dann ist das noch problematischer. Zunächst haben die Nutzer*innen einer Übermittlung und Speicherung dieser sensiblen Daten wahrscheinlich nicht zugestimmt. Und dann können diese Daten genutzt werden, um per Traffic-Analyse Nutzer*innen von Anonymisierungsdiensten zu deanonymisieren.

Bei Team Cymru waren Elasticsearch-Instanzen unter etwa 70 verschiedenen IP-Adressen exponiert, überwiegend bei DigitalOcean.

Ich sah nur einen kleinen Ausschnitt der geleakten Daten mit den folgenden Quellen: Iperactive (263244), FIBERNET (269912), BDCONNECTNET-AS-AP (64063), VIJIJI-CONNECT-LIMITED (328856), Messagelabs-AS (328301), Syokinet-Solutions-AS (328271), PREPA-NETWORKS-LLC (23550), HRCOM (46962), IMINTERNET (398326).

2022 hat das Tor Project beschlossen, nicht länger auf von Team Cymru gespendete Infrastruktur zu vertrauen. Im gleichen Jahr hat Rob Thomas das Tor Board verlassen.

Offene Fragen: Welche Rolle spielt Team Cymru bei der Deanonymisierung von Tor-Nutzer*innen? Welche ISPs sammeln und teilen Netflow-Daten?

Leakvent 17: Europäischer Datenschutzbeauftragter

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.

Auf dem Webserver der Webseite zum 20-jährigen Jubiläum des Europäischen Datenschutzbeauftragten lag 2024 eine Webshell. Unter https://20years.edps.europa.eu/shell/ konnte man als root in einem docker-Container agieren. Mit mysql -h mysql -u root kam man an die Datenbank. Dort waren Daten von ungefähr 2123 Personen zu finden.

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 15: WhiteBIT

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.

WhiteBIT ist eine Börse für Kryptowährungen. 2022 betrieb sie ein Elasticsearch offen zugänglich am Internet. Dort lagen ungefähr 250 GB Log-Daten, die auch E-Mail-Adressen, Passwörter, 2FA-Secrets und andere personenbezogene Daten umfassten.

Screenshot von https://whitebit.com/about-us
"msg": "*54717273 FastCGI sent in stderr: "
PHP message: [2022 - 05 - 10 16: 23: 58] production.ERROR: An exception occurred
while executing 'INSERT INTO users (name, email, password, █, █, █2fa_secret, █2fa_active, ...) VALUES (?, ..., ?)'
with params["██████", "██████@gmail.com", "$2y$10$██████", 0, null, null, 0, null, null, "2022-05-10 16:23:57", "2022-05-10 16:23:57", "$2y$10$██████"
while reading response header from upstream, client: ██████, server: ██████.whitebit.com, request: "POST /v2/register HTTP/1.1", upstream: "fastcgi://██████", host: "██████.whitebit.com", ...
, {
    "name": "Subject",
    "value": "Password changed"
}, {
    "name": "From",
    "value": "WhiteBIT Exchange <system@whitebit.com>"
}, {
    "name": "To",
    "value": "████@gmx.de"
}, {
    "name": "Content-Transfer-Encoding",
    "value": "quoted-printable"
}], "commonHeaders": {
    "from": ["WhiteBIT Exchange <system@whitebit.com>"],
    "date": "Thu, 12 May 2022 14:40:01 +0000",
    "to": ["████@gmx.de"],
    "messageId": "<████@swift.generated>",
    "subject": "Password changed"
...

Leakvent 14: Stova / Eventscloud

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.

Auf der Event-Management-Plattform von Stova kann man IDs von Events hochzählen:

Wenn man dies tut, findet man viele langweilige und einige interessante Events, z.B.:

  • den Iftar-Empfang einer Botschaft,
  • einen Segelnachmittag,
  • den CFO Summit einer Bank oder ein Hedge Fund Frühstück,
  • ein AI-inspiriertes Frühstück,
  • einen Workshop zu Kriminalität und Terrorismus, organisiert bei der Europäischen Kommission,
  • Offsite events in Nizza, Monaco oder auf Madeira,
  • Informelle Treffen der EU-Verteidigungsminister*innen oder der Minister*innen für Telekommunikation,
  • andere interne Veranstaltungen von Frontex,
  • das Tannenbaumschlagen einer Privatbank.

Manche der Events sollen sicherlich öffentlich sein, andere richten sich an einen geschlossenen Personenkreis, etwa an bestimmte Kund*innen, ausgewählte Mitarbeiter*innen oder Delegationen bestimmter Ministerien.

Eigentlich hatte ich vor, einen Adventskalender mit Berichten von Besuchen verschiedener Veranstaltungen zu füllen. Aber leider ist meine Anmeldung bei einem Event zu früh aufgefallen. Der CISO des Unternehmens rief mich an und bat darum, nicht aufzutauchen. Daraufhin habe ich mich bei vielen Events wieder abgemeldet und Stova informiert.

Stova hat nicht auf meine Meldung geantwortet. Viel Spaß beim Hochzählen von IDs.

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 10: Voxsmart

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.

Voxsmart hat 2022 mehr als 13 TB Daten ins Internet gepustet, nicht ausschließlich langweilige Telemetriedaten:

We capture and store mobile communications to give you the most sophisticated mobile surveillance capability in the world. (PlayStore Beschreibung)

Screenshot von https://www.voxsmart.com/communication-surveillance

In den Logs tauchen mehr oder weniger bekannte Namen auf: bankofamerica, blackheathcapital, burnhamsterling, clarksons, nedbank, softbank, smithandwilliamson. Auch Coinbase teilt(e?) seine Kundengespräche mit Voxsmart:

{ id=224436, message="HELP" }
{ id=224437, message="i have been hackewd" }
{ id=224438, message="someone is trying to take 521,000 pending off my coinebae pro account" }
{ id=224439, message="plese help" }
{ id=224440, message="The line you gave me was wrong" }
{ id=224441, message="please stop that transaction!" }
{ id=224442, message="hey ████████, moment" }
{ id=224443, message="pinging security" }
{ id=224444, message="i followed everything custody told me" }
{ id=224445, message="the line that gave me was hacked or something" }
{ id=224446, message="this is a transfer from Custody or Exchange?" }
{ id=224447, message="what do you mean the line that you were given?" }
{ id=224448, message="no its someone trying to pull it off my pro exchange" }
{ id=224449, message="its not me" }
{ id=224451, message="I had to do a passowrd reset you guys were hlepng me" }
{ id=224453, message="your chat feature you guys told me to follow on coinsbase support was hacked" }
{ id=224454, message="can you send screenshots" }
{ id=224455, message="i am so freaking out" }
Indices: 846, document count: 54017329277, size: 13.2 TB
cloudtrail-2022.01.17 with 752429 documents (513.7 MB)
cloudtrail-2022.04.19 with 1299137 documents (811.5 MB)
cloudtrail-2022.04.20 with 759529 documents (532.2 MB)
deadletter-prod-broker-2022.01.17 with 8029 documents (11.9 MB)
eks-2022.01.17 with 832214 documents (156.2 MB)
eks-2022.04.19 with 742248 documents (261.9 MB)
eks-2022.04.20 with 403275 documents (147.3 MB)
logs-2022.01.17 with 393864826 documents (102.5 GB)
logs-2022.04.19 with 674281379 documents (160.4 GB)
logs-2022.04.20 with 398431321 documents (97.4 GB)
sandbox-2022.01.17 with 3737345 documents (1.6 GB)
sandbox-2022.04.19 with 15735864 documents (9.0 GB)
sandbox-2022.04.20 with 8162190 documents (4.9 GB)
tcap-logs-2022.01.17 with 5791457 documents (1.2 GB)
tcap-logs-2022.04.19 with 43087656 documents (11.2 GB)
tcap-logs-2022.04.20 with 27793404 documents (10.5 GB)
voxsmart-vpc-flow-logs with 13322938 documents (2.5 GB)
...