So I reverse engineered two apps that are dating.

So I reverse engineered two apps that are dating.

Video and picture drip through misconfigured S3 buckets

Typically for photos or any other asserts, some form of Access Control List (ACL) could be in position. A common way of implementing ACL would be for assets such as profile pictures

One of the keys would serve as a “password” to gain access to the file, additionally the password would simply be offered users who require use of the image. When it comes to a dating application, it is whoever the profile is presented to.

We have identified several misconfigured S3 buckets on The League throughout the research. All photos and videos are inadvertently made general general public, with metadata such as which user uploaded them so when. Usually the application would have the pictures through Cloudfront, a CDN on top of this S3 buckets. Unfortunately the underlying S3 buckets are severely misconfigured.

Side note: as much as i can inform, the profile UUID is arbitrarily created server-side if the profile is established. To make certain that part is not likely to be really easy to imagine. The filename is managed because of the customer; the host takes any filename. In your client app its hardcoded to upload.jpg .

The seller has since disabled listObjects that are public. Nevertheless, we nevertheless think there must be some randomness into the key. A timestamp cannot act as key.

internet protocol address doxing through website link previews

Link preview is something this is certainly difficult to get appropriate in large amount of messaging apps. You will find typically three techniques for website website website website link previews:

The League makes use of link that is recipient-side. Whenever an email includes a web link to a outside image, the web link is fetched on user’s device as soon as the message is seen. This will effortlessly enable a malicious transmitter to submit an external image URL pointing to an assailant managed host, obtaining recipient’s internet protocol address once the message is exposed.

An improved solution could be in order to connect the image when you look at the message if it is delivered (sender-side preview), or have actually the server fetch the image and place it into the message (server-side preview). Server-side previews allows extra anti-abuse scanning. It may be a much better choice, but nevertheless perhaps maybe not bulletproof.

Zero-click session hijacking through talk

The application will attach the authorization sometimes header to needs that don’t need verification, such as for example Cloudfront GET needs. It will happily give fully out the bearer token in requests to outside domain names in some situations.

Those types of instances could be the outside image link in chat messages. We already know just the software makes use of link that is recipient-side, and also the demand into the outside resource is performed in recipient’s context. The authorization header is roofed into the GET demand towards the outside image Address. And so the bearer token gets leaked towards the domain that is external. Each time a harmful transmitter delivers a graphic website website link pointing to an attacker managed host, not just do they get recipient’s internet protocol address, nonetheless they additionally obtain victim’s session token. This might be a critical vulnerability as it permits session hijacking.

Keep in mind that unlike phishing, this assault will not need the target to click the link. As soon as the message containing the image website website website website link is seen, the application immediately leaks the session token to your attacker.

This indicates to become a bug pertaining to the reuse of a worldwide OkHttp customer object. It might be most useful if the designers ensure that the software just attaches authorization bearer header in demands to your League API.

Conclusions

I didn’t find any vulnerabilities that are particularly interesting CMB, but that will not suggest CMB is much more safe compared to League. (See Limitations and future research). Used to do locate a few protection problems within the League, none of that have been specially hard to find out or exploit. I suppose it is the typical errors individuals make over and over repeatedly. OWASP top anybody?

As customers we have to be careful with which companies we trust with your information.

Vendor’s reaction

I did so be given a response that is prompt The League after delivering them a message alerting them regarding the findings. The S3 bucket setup ended up being Click Tids Link swiftly fixed. One other weaknesses were patched or at the very least mitigated in just a couple weeks.

I do believe startups could undoubtedly provide bug bounties. It’s a good motion, and even more importantly, platforms like HackerOne offer scientists an appropriate way to the disclosure of weaknesses. Regrettably neither regarding the two apps when you look at the post has such system.

Limits and future research

This scientific studies are maybe maybe not comprehensive, and may never be viewed as a safety review. All of the tests in this article had been done from the system IO degree, and almost no on the customer it self. Particularly, we did not test for remote rule execution or buffer overflow kind weaknesses. In future research, we’re able to look more in to the protection associated with the customer applications.

This may be through with powerful analysis, utilizing techniques such as for instance:

Author

Consultoria

Leave a comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *