Network Extensions and Youtube filtering

Hello,

Our application performs web filtering by using NEFilterControlProvider and NEFilterDataProvider. Recently we’ve been requested by clients to improve our app by performing filtering on Youtube while using Safari. Problem that we encountered is that while navigating through Youtube and playing videos, flow is not firing and thus we are not able to return verdict. Can You help us with a suggestion of how we can resolve this issue either by introducing another network extension or by using the current one but with a solution that we are currently unaware of?

Thank you

Are you able to see the Ajax requests on the web page loading the video content, but your filter is not able to claim the flow? Are you able to see the initial flow being loaded?


Matt Eaton
DTS Engineering, CoreOS
meaton3@apple.com
We are able to track Ajax requests from within our app by passing WKUserScript to WKWebViewConfiguration and then applying this configuration to WKWebView but we are also required to keep track in Safari (and other third party browsers) so we can't rely only on that. Is there a way to track Ajax requests from network extensions?

Is there a way to track Ajax requests from network extensions?

I was running some tests related to another issue last week in macOS 11.3 and was able to see Ajax requests running through NEFilterDataProvider in handleOutboundDataFromFlow. However, since you mentioned NEFilterControlProvider I am assuming that this is iOS. However, on the NEFilterDataProvider I would expect that you are able to see the same thing. What do you see if on the iOS side if you examine the inbound/outbound bytes for the flow?


Matt Eaton
DTS Engineering, CoreOS
meaton3@apple.com
Network Extensions and Youtube filtering
 
 
Q