Heim > Web-Frontend > CSS-Tutorial > Ich habe einen Fehler im Code einer Dating-App ausgenutzt

Ich habe einen Fehler im Code einer Dating-App ausgenutzt

Patricia Arquette
Freigeben: 2025-01-06 01:15:44
Original
946 Leute haben es durchsucht

Als ich eine Dating-App im Tinder-Stil nutzte, bei der die Anwendung nach einem gegenseitigen Like die beteiligten Personen miteinander in Kontakt bringt, ist mir aufgefallen, dass sie zur Bewerbung ihres Premium-Plans unscharfe Bilder verwendet haben, um Sie vorzustellen die Personen, die in Ihrem Profil auf die Schaltfläche „Gefällt mir“ geklickt haben.

Nachdem ich ein paar Übereinstimmungen hatte, bemerkte ich, dass die unscharfen Bilder zu echten Konten gehörten, das heißt, es handelte sich nicht um eine Reihe allgemeiner Bilder oder Platzhalter.

I took advantage of an error in the code of a dating app
Beispiel für den Unschärfeeffekt bei der Fotografie

Es klang zu offensichtlich, also öffnete ich die Entwicklerkonsole meines Browsers und ging zum CSS-Code, um meinen Verdacht zu überprüfen. Sie können unmöglich einen so einfachen Fehler machen – dachte ich – sie schützen die Identität der Fotos mit einem einfachen CSS-Filter: Unschärfe.

.hidden-image {
    filter: blur(4px);
}

Nach dem Login kopieren

Bildverarbeitung dieser Dating-App.

Die tatsächlichen Bilder wurden vom CDN dieser App bereitgestellt und dann wurde ein Filter angewendet, um sie auszublenden. Um also herauszufinden, wem Sie gefallen haben, mussten Sie nur den Filter entfernen.

Leider war es nicht möglich, andere Daten aus den Bildern oder aus der URL-Struktur, API-Aufrufen oder anderen Angaben zu erhalten; Weder der Name, noch das Profil oder andere Informationen außer dem Profilbild waren zugänglich.

Wie verstecke ich Bilder in Dating-Apps?

Sicherlich war das ein Architekturfehler, es ist zwar sehr einfach, die Bilder im Frontend auszublenden, mit CSS spart man Speicherplatz und vermeidet Verarbeitungszeit im Backend, aber eine bessere Option wäre die Verwendung gewesen eine Reihe allgemeiner Bilder für alle Konten.

Eine andere Alternative wäre gewesen, automatisch jedes Mal, wenn ein Benutzer sein Hauptprofilbild aktualisiert, ein Miniaturbild (und andere Änderungen, wie z. B. das Ändern des Formats, Beispiel: webp) zu generieren; Es verbraucht etwas mehr Platz, schützt aber die echten Bilder und personalisiert das Erlebnis für jeden Benutzer.

I took advantage of an error in the code of a dating app

Ausnutzen des Fehlers mit einer Browsererweiterung

Um den Fehler auszunutzen, habe ich ein kleines Javascript-Skript erstellt und es in eine Erweiterung integriert, um den Prozess der Entsperrung jedes Mal zu automatisieren, wenn ich die Seite betrete.

Dieses kleine Versehen der Entwickler dauerte etwa zwei Jahre. Der Fehler wurde nun behoben. Wenn Sie also versuchen, auf den Haupt-Dating-Seiten nach dem Fehler zu suchen, werden Sie ihn nicht mehr finden. Dies ist auch der Hauptgrund, warum ich beschlossen habe, darüber zu posten

Die Anwendung hat den Code für ihre Webversion geändert, wobei der Rest der Benutzeroberfläche nahezu intakt blieb, und hat sich dafür entschieden, für jedes Konto ein verschleiertes Miniaturbild zu erstellen, es jedoch vom Backend aus zu verarbeiten, sodass es völlig unmöglich ist, das echte Bild zu erhalten .

Haben Sie das auch ausgenutzt? Bonuspunkte, wenn Sie den Namen der Website kennen.

Das obige ist der detaillierte Inhalt vonIch habe einen Fehler im Code einer Dating-App ausgenutzt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage