⬆️ ⬇️

Local proxy server for Siri

The story of the recent hacking of the Siri communication protocol has a natural continuation: a proxy server SiriProxy has been developed , with which you can easily add additional functionality to this program. For example, through a voice interface, you can send text messages to arbitrary sites or activate voice control of devices in your home network. Let's say here is a plugin for a thermostat :



- Siri, what is the temperature in the room?

- Twenty degrees.

- Drop to eighteen.

- OK.



Recall that after forging an SSL certificate and installing your DNS server, the Siri program exchanges data with your own server, and not with the default guzzoni.apple.com.



The task of SiriProxy is to connect its plug-ins to control home devices to Siri, and route this traffic not through the Internet, but through the home network, that is, the local proxy server. The program does not help to use Siri on other devices, including Android, although if you have a valid UDID and you were able to install Siri on Android, then you can also use SiriProxy.

')

SiriProxy demo





The installation mechanism of its proxy was first described by developers from Applidium, and now on Youtube you can find several video instructions describing each stage.



1. Create your own certificate authority through OpenSSL,



  /System/Library/OpenSSL/misc/CA.pl -newca 


provide your server with a certificate in the name guzzoni.apple.com. The private key and certificate are saved as server.passless.key and server.passless.crt in the SiriProxy folder.



Step-by-step instruction





2. Download an open certificate authority certificate to your phone, for example, you can send it to yourself by mail and just click the mouse.



3. Install a DNS server on the local network, for example, dnsmasq.







4. Install Ruby components:

5. Run start.rb on the rights of root (since it must listen to TCP / 443)



6. Start the Siri program and check the performance of the proxy. To the phrase “Test Siri proxy” he should answer “Siri Proxy is up and running!”



After that, you can connect your modules to the program, which will work through your proxy. Theoretically, you can tunnel traffic through VPN and manage devices in your home network via the Internet. If the iPhone 4s is jailbroken, you can make changes to / etc / hosts to tunnel only Siri traffic through the home network.



From your proxy, you can send traffic anywhere. For example, here is the eliza.rb plugin for communicating with the famous Elize chatbot.



Source: https://habr.com/ru/post/133069/



All Articles