iBet uBet web content aggregator. Adding the entire web to your favor.
iBet uBet web content aggregator. Adding the entire web to your favor.



Link to original content: https://phabricator.wikimedia.org/T299126
⚓ T299126 Update info returned by getProxyType retriever [S]
Page MenuHomePhabricator

Update info returned by getProxyType retriever [S]
Closed, ResolvedPublic

Description

I discovered while checking null values that isLegitimateProxy does not actually occur in the Anonymous-IP database. It's an Enterprise only value alongside isAnonymousProxy. If we want to pass along isLegitimateProxy, getProxyType needs to also be passed that information from the Enterprise db reader.

To confirm this, you can download and inspect the CSVs for Anonymous-IP and Enterprise. There's no header for isLegitimateProxy in Anonymous-IP but there is in Enterprise.

Additionally, it seems like every IP in the Anonymous IP database returns isAnonymous === true so we can remove that trait.

Finally, the Anonymous IP database contains the isHostingProvider trait and we should return that.

AC:

  • isLegitimateProxy value is read from the Enterprise db and passed into ProxyInfo
  • isAnonymous is removed from ProxyInfo
  • isHostingProvider is added to ProxyInfo

Event Timeline

STran renamed this task from Return a value for isLegitimateProxy from getProxyType info retriever to Update info returned by getProxyType retriever.Jan 18 2022, 5:40 PM
STran updated the task description. (Show Details)
STran renamed this task from Update info returned by getProxyType retriever to Update info returned by getProxyType retriever [S].Jan 18 2022, 7:58 PM
STran moved this task from Untriaged to The Letter Song on the Anti-Harassment board.

Change 758421 had a related patch set uploaded (by TsepoThoabala; author: TsepoThoabala):

[mediawiki/extensions/IPInfo@master] Update info returned by getProxyType retriever

https://gerrit.wikimedia.org/r/758421

Change 758421 merged by jenkins-bot:

[mediawiki/extensions/IPInfo@master] Update info returned by getProxyType retriever

https://gerrit.wikimedia.org/r/758421

For testing, note the comment about false vs null on https://gerrit.wikimedia.org/r/c/mediawiki/extensions/IPInfo/+/758421/comment/0619f5f0_23587c12/

TL;DR there is some inconsistency that we'd like to address in a follow-up.

dom_walden subscribed.

isLegitimateProxy value is read from the Enterprise db and passed into ProxyInfo

Yep, but so far I have only seen null values.

isAnonymous is removed from ProxyInfo

Yep.

isHostingProvider is added to ProxyInfo

Yep, I have seen true and false values (but no null values).

I tested the accuracy of the IPInfo API against my own script which pulls data from MaxMind databases. I didn't find any discrepancies.

Test Environment: local docker IP Info 0.0.0 (65bb3b2) 03:44, 1 February 2022.