Network capture app & tool for iOS : capture my HTTP traffic, live forwarding of capture HTTP or MQTT
Budget: $250 – $750 USD
I am looking for someone to build a specific app for iOS, for private usage only. This app will not be released widely. The primary purpose of this app will be to analyze HTTP calls for security purposes.
While the app store already had apps that let me capture my HTTP traffic via an on-device VPN, I need a specific feature added to observe these capture in realtime. This is to be used mostly for debugging purposes, but also because I need to mock up some remote interactions for testing and validation.
(not in simulation, not with unit tests - end-to-end tests).
This is NOT a high-feature app for public use. It is really an on-device utility tool that I need. That is all.
This will be an exercise in good programming and solid iOS system knowledge.
This app must be able to:
1) Use an on-device proxy/VPN server and proxy/VPN configuration to intercept HTTP traffic live ("capture" apps like this already exist)
2) Must be able to apply a domain filter on which traffic to watch for
3) Record all relevant HTTP data - headers, body, and response
4) Captured data will then be immediately sent to a configurable HTTP endpoint
5) Optionally: MQTT endpoint for sending captured data
6) App must run in the background and do this operation perpetually, until stopped
This app will only ever be deployed to a single device, so I will likely need help setting up LaunchPad, or bringing up the code in my own developer environment for self-install.
The traffic capture going on is literally equivalent to what is already being done in published and approved App Store applications.
I will only be capturing my traffic, so it is not confidential.
No, this app will not be able to break encryption and decrypt securely encrypted data.
(Freelancer requires me to make this statement explicitly in the project description because they have genuinely no idea how encryption actually works on a technical level.)
Required skills:
- Knowledge of an iOS app implementation language (ObjC or Swift)
- Experience developing robust, well-functioning apps (buffering and saving data, stable without crashes, etc)
- Must know how to set up an on-device proxy, like similar existing apps
- Must know how to have an installable trust certificate, so the on-device proxy can be used via iOS VPN functionality
- Knowledge of TestFlight, ability to walk me through how to deploy the app privately to my device
- Some small amount of UI design, to make the UI for setting up and capturing
(actually - I would be happy with just doing this by having the app retrieve a JSON or YAML config from a static URL, or via MQTT, and have nearly no UI other than "Start/Stop Capture")
- Thorough knowledge of HTTP requests, their components, and the HTTP client request/response mechanism
- Familiarity with MQTT, if you can do the MQTT part
While the app store already had apps that let me capture my HTTP traffic via an on-device VPN, I need a specific feature added to observe these capture in realtime. This is to be used mostly for debugging purposes, but also because I need to mock up some remote interactions for testing and validation.
(not in simulation, not with unit tests - end-to-end tests).
This is NOT a high-feature app for public use. It is really an on-device utility tool that I need. That is all.
This will be an exercise in good programming and solid iOS system knowledge.
This app must be able to:
1) Use an on-device proxy/VPN server and proxy/VPN configuration to intercept HTTP traffic live ("capture" apps like this already exist)
2) Must be able to apply a domain filter on which traffic to watch for
3) Record all relevant HTTP data - headers, body, and response
4) Captured data will then be immediately sent to a configurable HTTP endpoint
5) Optionally: MQTT endpoint for sending captured data
6) App must run in the background and do this operation perpetually, until stopped
This app will only ever be deployed to a single device, so I will likely need help setting up LaunchPad, or bringing up the code in my own developer environment for self-install.
The traffic capture going on is literally equivalent to what is already being done in published and approved App Store applications.
I will only be capturing my traffic, so it is not confidential.
No, this app will not be able to break encryption and decrypt securely encrypted data.
(Freelancer requires me to make this statement explicitly in the project description because they have genuinely no idea how encryption actually works on a technical level.)
Required skills:
- Knowledge of an iOS app implementation language (ObjC or Swift)
- Experience developing robust, well-functioning apps (buffering and saving data, stable without crashes, etc)
- Must know how to set up an on-device proxy, like similar existing apps
- Must know how to have an installable trust certificate, so the on-device proxy can be used via iOS VPN functionality
- Knowledge of TestFlight, ability to walk me through how to deploy the app privately to my device
- Some small amount of UI design, to make the UI for setting up and capturing
(actually - I would be happy with just doing this by having the app retrieve a JSON or YAML config from a static URL, or via MQTT, and have nearly no UI other than "Start/Stop Capture")
- Thorough knowledge of HTTP requests, their components, and the HTTP client request/response mechanism
- Familiarity with MQTT, if you can do the MQTT part