Kibana: Internet Explorer detection (for URL length warnings) doesn't work

Created on 23 Feb 2017  路  6Comments  路  Source: elastic/kibana

In IE 11 on Windows 10, my user agent is the following:

Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; rv:11.0) like Gecko

The code to detect if IE is being used (and thus warn when the URL reaches near 2000 characters) uses the following regex:

/(;MSIE |Edge\/\d)/

Thus, we are improperly assuming that the browser isn't IE and aren't warning the user, and the browser crashes without warning:

screenshot

(To reproduce, you can create a filter, edit the JSON and add a bunch of bool/should match conditions until the length of the URL is 2000+ characters.)

IE11 PR sent Core bug

All 6 comments

Perhaps also matching on Trident?

I don't know if those are still relevant. I think they're targeting IE8 and below.

I dont now if it will help with solving this problem but here is a list with possible User-Agent Strings that IE11 could send:
IE11 Compatibility List

@lukasolson if you want to try it, this is the regex which we're using:

const IE_REGEX = /(; ?MSIE |Edge\/\d|Trident\/[\d+\.]+;.*rv:*11\.\d+)/;

According to https://blogs.msdn.microsoft.com/ieinternals/2013/09/21/internet-explorer-11s-many-user-agent-strings/ looking for Trident seems to be the only way to match IE11.

This still effects on Kibana 5.4.0 on I.E. 11.0.9600.18665

Was this page helpful?
0 / 5 - 0 ratings