A network extension app to block a user input URI. Meant as a network extension filter proof of concept.

Overview

URIBlockNE

A network extension app to block a user input URI. Meant as a network extension filter proof of concept. This is just a research effort to display one of the many capabilities of the NetworkExtension APIs from Apple.

Again, this is just a proof of concept. It pull in a number of different projects, most notably Sift-ios (https://github.com/agrinman/sift-ios) and AwesomeCache (https://github.com/aschuch/AwesomeCache). Therefore I'm not licensing out my work but please be careful to adhere to their licenses if used for anything other than research. Sift-ios doesn't really block but does much more so I'm using maybe a percent of the wonderful code in there. Check it out as it's pretty rad. It's meant for monitoring opened sockets and in this project we're just monitoring to see if the attempt matches a pattern. To rewrite the important bits for just the blocking could probably be done much more succinctly but by starting with sift-ios we're able to expand the capabilities to block based on much more complex patterns for more than just a URI fairly easily later.

What URIBlockNE does

This app simply presents a user with a text input and based on the text provided blocks access to the site using a network extension. That text input could easily be replaced with a large text blob of URIs, an engine that produces expressions, etc. Compiling will require the entitlement and the developer team in the Xcode project will need to be set to your own. Here's what that looks like:

alt text

You might also like...
Passepartout is a non-official, user-friendly OpenVPN® client for iOS and macOS.
Passepartout is a non-official, user-friendly OpenVPN® client for iOS and macOS.

Passepartout Passepartout is a non-official, user-friendly OpenVPN® client for iOS and macOS. Overview All profiles in one place Passepartout lets you

Vrrrroom - An aplication that allows the user to perform remote actions on a car
Vrrrroom - An aplication that allows the user to perform remote actions on a car

Vrrrroom Vrrrroom is an aplication that allows the user to perform remote action

Dratini is a neat network abstraction layer.

Dratini Dratini is a neat network abstraction layer. If you are looking for a solution to make your network layer neat, Dratini is your choice. Dratin

Network abstraction layer written in Swift.
Network abstraction layer written in Swift.

Moya 14.0.0 A Chinese version of this document can be found here. You're a smart developer. You probably use Alamofire to abstract away access to URLS

A lightweight, one line setup, iOS / OSX network debugging library! 🦊
A lightweight, one line setup, iOS / OSX network debugging library! 🦊

Netfox provides a quick look on all executed network requests performed by your iOS or OSX app. It grabs all requests - of course yours, requests from

Elegant network abstraction layer in Swift.
Elegant network abstraction layer in Swift.

Elegant network abstraction layer in Swift. 中文 Design Features Requirements Communication Installation Usage Base Usage - Target - Request - Download

Lightweight network abstraction layer, written on top of Alamofire
Lightweight network abstraction layer, written on top of Alamofire

TRON is a lightweight network abstraction layer, built on top of Alamofire. It can be used to dramatically simplify interacting with RESTful JSON web-

iOS network debugging, like a wizard 🧙‍♂️
iOS network debugging, like a wizard 🧙‍♂️

Start debugging iOS network calls like a wizard, without extra code! Wormholy makes debugging quick and reliable. What you can do: No code to write an

A generic network layer written in swift

SwiftyNet 1.0.0 A generic network layer written in swift. you can use it as an abstraction layer above Alamofire with generic returned types. Installa

Owner
Charles Edge
Charles Edge
This package is meant to make http request of an easy way inspiren in the architecture of Moya package

NetworkAgent This package is meant to make http request of an easy way inspiren in the architecture of Moya package. This package is 100% free of depe

Angel Rada 19 Sep 8, 2022
Swish is a networking library that is particularly meant for requesting and decoding JSON via Decodable

Swish Nothing but net(working). Swish is a networking library that is particularly meant for requesting and decoding JSON via Decodable. It is protoco

thoughtbot, inc. 369 Nov 14, 2022
Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application.

Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application. Install Carthage

Ronan Rodrigo Nunes 89 Dec 26, 2022
Say goodbye to the Fat ugly singleton Network Manager with this Network Layer

MHNetwork Protocol Oriented Network Layer Aim to avoid having bloated singleton NetworkManager Philosophy the main philosophy behind MHNetwork is to h

Mohamed Emad Hegab 19 Nov 19, 2022
NWReachability - a pure Swift library for monitoring the network connection of iOS devices using Apple's Network framework.

NWReachability is a pure Swift library for monitoring the network connection of iOS devices using Apple's Network framework.

null 4 Dec 2, 2022
Easy and lightweight network layer for creating different set of network requests like GET, POST, PUT, DELETE customizable with coders conforming to TopLevelDecoder, TopLevelEncoder

Easy and lightweight network layer for creating different set of network requests like GET, POST, PUT, DELETE customizable with coders conforming to TopLevelDecoder, TopLevelEncoder

Igor 2 Sep 16, 2022
A toolkit for Network Extension Framework

NEKit NEKit is deprecated. It should still work but I'm not intent on maintaining it anymore. It has many flaws and needs a revamp to be a high-qualit

zhuhaow 2.8k Jan 2, 2023
An iOS app for communicating with your clightning node over the lightning network

An iOS app for communicating with your clightning node over the lightning network

William Casarin 18 Dec 14, 2022
WKZombie is an iOS/OSX web-browser without a graphical user interface.

WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests / snapshots and manipulate websites using Javascript.

Mathias Köhnke 1.1k Dec 16, 2022
Simple and user-friendly application for doing the shopping list.

Shlist Simple and user-friendly application for doing the shopping list. Light _ Dark _ Features intuitive interface ability to import/export the list

Pavel Lyskov 12 Aug 20, 2022