Mobile Browsers: Why It’s a Huge Vulnerability to Hide the Address Bar on Scroll Down

The address bar of the browser has a very important role. Apart from allowing to enter a URL, it helps with the domain name and the SSL certificate to make sure on which website you are. When a security flaw hits the address bar, it’s considered a critical vulnerability.

The vulnerability I’m about to talk is not new. There have already been many proof of concept but despite the various warnings it is still present.

Here is an example of behavior on Chrome Android (and many others browsers) used to save a little space on the screen:

We see very well that the address bar is masked by scrolling down and reappears as soon as we scroll up. In fact it reappears in many circumstances: when you have to enter something in a form, when you go to another website… And this is precisely to avoid any URL spoofing. Unfortunately this doesn’t really protect the user.

To demonstrate this, I created a proof of concept that consists of an alleged link to Facebook:

As you can see, when you click on the Facebook button, because you’re leaving to another website, the address bar appears. Then the url changes accordingly and the address bar theme color too. If we try to scroll up, the refresh icon appears since we are already at the top of the page.

This address bar is fake, the refresh icon too, as well as the loading animation! In reality you have never been to another website. I combined elements with CSS and JavaScript to make the illusion.

Of course you’ll tell me that if you enter data in some forms, it would bring up the real address bar. In this case, what prevents attackers to make a false form and display a fake Android keyboard? It’s certainly relatively complex, it requires to adapt the UI to the main phones on the market, but it’s not impossible.

Chrome on Android has more than one billion users, it’s a lot of people likely to be affected by this vulnerability. Although it’s difficult to exploit, it can do many victims.

The only way to prevent this is simply to never hide the URL of a website. This is certainly losing some space but it’s necessary for the safety of users.

Full stack JS developer —

Full stack JS developer —