halfy,
@halfy@half-shot.uk avatar

Bought an internet radio for the kitchen so I can play my snapcast streams to it.

Obviously:

  • I had to enter the WiFi password with a dial.
  • It doesn't allow you to load your own streams, but
  • it loads the streams through a dodgy unencrypted http connection.

Time to hack in my own functionality?

halfy,
@halfy@half-shot.uk avatar

We're a few hours in and unfortunately they patched the unencrypted part so I have to figure out how to serve it a "valid" https site.

Plenty of other things wrong though. They left a debugger running on port 514 that is just farting out noise every 500ms.

Also, I found a web interface. I enabled the test language and I regret it.

halfy,
@halfy@half-shot.uk avatar

So here is a question for the room, and I'm not sure I'm ready to handle the truth:

If I want to fool my local internet (https) radio device into talking to a local server, and have it trust the cert I give it...am I shit outta luck with this one?

I've not determined if it's certificate pinning airable.wifiradiofrontier.com yet, all I've so far figured out is that it hits it for an A record and gives up if I respond with anything to it.

halfy,
@halfy@half-shot.uk avatar

Valid responses include: Halfy for gods sake it's a cheap ass radio just buy one you can stream to.

penguin42,
@penguin42@mastodon.org.uk avatar

@halfy I suspect you'll find most of them are based around the same module from the same company Frontier; https://www.frontiersmart.com/

halfy,
@halfy@half-shot.uk avatar

@penguin42 yeah, seems to be basically the same OS off the shelf, with small adjustments depending on the seller.

philpem,
@philpem@digipres.club avatar

@halfy Oh! It runs the same software as the Pure radios. There's a Home Assistant API integration for them. But if you wanted to MITM the server comms, the tool you want is mitmproxy. Set up a Pi to act as a WiFi AP and use Mitmproxy to strip the SSL. And cross fingers they're not pinning certificates.

Bubu,
@Bubu@chaos.social avatar

@philpem @halfy mitmproxy/ssl strip would only work if the device actually tries to establish a http connection to begin with, right? Cert pinning would only be relevant if you could install your own root CA's onto the device iiuc?

philpem,
@philpem@digipres.club avatar

@Bubu @halfy My understanding was the thing did connect out to an external server - so Halfy's goal was creating a local version which allowed them to add their own stations to it.
In which case, if it's using HTTPS without pinning, Mitmproxy or OWASP ZAP would probably be the way to go, at least for initial analysis.
If the device requires certificates to have a specific CA, signature or whatever, all bets are off.

edit: yes, see this toot from Halfy: https://mastodon.half-shot.uk/@halfy/110972600321494095

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • kavyap
  • thenastyranch
  • ethstaker
  • DreamBathrooms
  • osvaldo12
  • magazineikmin
  • tacticalgear
  • Youngstown
  • everett
  • mdbf
  • slotface
  • ngwrru68w68
  • rosin
  • Durango
  • JUstTest
  • InstantRegret
  • GTA5RPClips
  • tester
  • cubers
  • cisconetworking
  • normalnudes
  • khanakhh
  • modclub
  • anitta
  • Leos
  • megavids
  • provamag3
  • lostlight
  • All magazines