Issue in Intercepting Burpsuite requests from iPad - ios

I am testing an application from iPad and using Burpsuite to capture the traffic. But, in that case, I was not able to capture the following requests for that application:
Login Request
Two Factor Authentication Request
Video Search Request in application
Video Play request in application
How can I capture above mentioned requests ?
(NOTE: I was able to capture some simple GET and POST requests of that application.)

Have you installed the Burp Certificate? If not, use these instructions.
If you have, it's likely that this application uses certificate pinning. There are some tools that can disable certificate pinning, including Burp Mobile Assistant. You need a jailbroken device running iOS 8 or 9. Be aware that Mobile Assistant cannot always disable pinning.

It was the issue of the system on which I am running the burpsuite, which is why the system was not able to process requests and responses.

Related

Using BurpSuite on third-party iOS Apps using ATS

I've been doing some mobile pentesting for a client and wanted to get stuck into some Network Analysis. I have jailbroken an iPhone & disabled SSL pinning, as well as configured Burp to intercept HTTP requests through Safari.
However, BurpSuite fails to intercept any traffic on the third-party app. After reviewing some scans, I can see the App uses ATS which I presume is my hindrance.
So my question is: How can I intercept traffic on Applications using ATS if it is at all possible?
Would appreciate some guidance.

Is Inter Process Communication possible between iOS applications using Sockets?

I have gone through a lot of articles on internet and most say that IOS applications allow IPC using protocol handlers (URL Schemes). But, Can't we achieve IPC using sockets, if one application opens a port and the other tries to connect to it ?
iOS8 introduced IPC support by exposing mach ports for so called "application groups". Check out this great tutorial:
http://ddeville.me/2015/02/interprocess-communication-on-ios-with-mach-messages/
It requires a bit of setup (to define application groups in dev portal, generate proper entitlements, etc..) but is not really so difficult and Xcode 6 does most of the job automatically (just enable "App groups" in general capacities section).
I can confirm, it works (I was able to create 2 apps sending messages to each other).
On iO7 there is no official support for IPS, but If you do not plan to upload your app to AppStore, you could try to exploit inter-app audio communication to achieve this.
Check out Apple's code sample, which demonstrated inter-app sound data stream between 3 apps:
https://developer.apple.com/library/ios/samplecode/InterAppAudioSuite/Introduction/Intro.html
Associated WWDS video:
https://developer.apple.com/wwdc/videos/#602
I haven't try to exploit it for non-audio usage but can't see the reason why shouldn't it work. Data rate is great, and sound data are just bytes and do not have to be redirected to the speaker, but interpreted however you like.
Of course, it will be rejected in AppStore review, but it is still fine for enterprise or own usage.
No, it is not for several reasons. 1) Apple does not allow this internally and has security layers to prevent this. 2) Applications fire applicationDiD/WillEnterBackground after a short delay, at which point the way you can interact with it plummets.
If you really want to send data between applications, set up a server with certs to match your app so you can use APN (apple push notifications) to send data in silent pushes to applications. Then, set up endpoints on the server that trigger those sends, and have apps consume the API that the server exposes.

Is it possible to verify, how does server performs while sending files/images to many devices using Apache Jmeter?

I have to verify server performance by sending images from server to many iOS devices, but I have only three iOS devices.
So anyone please tell me, that how I can test this scenario using Jmeter.
You need to record your test case by one iOS device via JMeter HTTP Proxy Server. For this you need to configure your iOS device to use JMeter as a proxy. After capturing requests flow you can parametrize your test by amending values in HTTP Header Manager to represent different iOS devices like iPod touch, iPhone, iPad, etc. and add necessary load scenario.
See Load Testing Mobile Apps. But Made Easy. guide for how-to and more details.

inspect http requests in ios simulator/devices

I am working on an ios app which communicate with the server via http request. And I want to monitor the network traffic when testing my app in ios simulator/devices.
Is there any software or tools I can used to inspect the http requests of a specified application on mac/ios, just like firebugs for web developers?
Thanks.
As far as I know, there are several tools in App Store that provide the network traffic monitor feature. But, they could only view iPhone as a whole and stay at that level. In other words, they could only tell how much traffic has been consumed of this iPhone. For each app? No data.
You can use HTTP Catcher to capture web traffic. It's a Web debugging proxy for iOS, so you can view requests and responses directly on iPhone.
You can use Proxyman to record/capture all the requests & responses from your app while developing.It will support ios simulators also. Without doing any code change we use this.
First Download the Proxyman app form the above link after that just go through this documentation for references.
Charles has recently released an iOS version for http traffic monitoring. it is a paid app though. Good news is that you can set up Charles free desktop version then setup HTTP proxy from your iOS device.

seeing http requests that ios app makes

I'd like to see the request / responses that an iphone app makes.
I mostly work on web apps, and I can use firebug / fiddler to see them. But how can I see incoming/outgoing traffic of an iOS app, if im running it on my wireless?
The Charles Web Proxy (and I believe Fiddler as well) allow connections from external hosts, when configured properly. In Charles, you will need to make sure your iPhone is added to the Access Control List in Proxy -> Access Control Settings.
After that, you can simply set your iPhone's proxy to your computer's Charles or Fiddler instance. In my case, my local desktop is at 192.168.10.1, thus my iPhone's proxy is set to:
192.168.10.1:8888
One problem, however, may be if you want to decrypt SSL traffic. It may be difficult to get the iPhone to add Fiddler or Charles' certificate to the keychain.
You could share your mac wireless to the iphone
And then use some tool, i personally use http://www.charlesproxy.com/ for these kind of issues
You could pick a tool from
https://superuser.com/questions/99870/mac-wireshark-alternatives

Resources