Test for ooni-probe UK mobile networks
What it detects
HTTP requests to blocked websites are being redirected to known URL's
Inputs
A list of URL's, The network being tested, A known blocked pattern
Experiment
Http requests are sent and the returned response is tested against the blocking pattern
Control
I used these functions to test for censorship in my standalone script
#Orange: def testOrange(url): """test a url against the known orange redirect url""" if url == 'http://orangeworld.co.uk/r/avblocked/': return 1 else: return 0
#O2 def testO2(url): """match a pattern from the known O2 redirect url's"""
o2 returns dynamic URL's either from wap.co.uk or bango.net
pattern = re.match('^(https://bango.net/).',url) wap_pattern = re.match('^http://wap.o2.co.uk/(18plusaccess).',url) if pattern or wap_pattern: return 1 else: return 0
#T-Mobile def testTmobile(url): """test a url against the known t-mobile redirect url""" if url == "http://www.t-mobile.co.uk/common/system_error_pages/outage_wnw.html": return 1 else: return 0
#Vodafone def testVodafone(url): """test a url against the known vodafone redirect url""" if url == "http://online.vodafone.co.uk/en_GB/assets/static/contentcontrol/unbranded/restricted_access.html": return 1 else: return 0
#Three def testThree(url): """test a url against the known 3 network redirect url""" pattern = re.match('^(http://mobile.three.co.uk/pc/Live/pcreator/live/).*',url) if pattern: return 1 else: return 0
Output Datestamp, network tested against, url tested, result
Questions
<ARE THERE SOME OPEN QUESTIONS?>
Notes