Ask HN: Tips for hacking a TV?

75 points by fewgrehrehre 5 days ago

I've got a spare television lying around (specifically, a Samsung UN24H4500), and I thought it'd be fun to take a crack at seeing what I can do with it. The only hitch is that I've never really done any hardware hacking before, so I don't really know where to start!

Any tips and pointers would be much appreciated, in terms of common ways to search for and exploit vulnerabilities, or the exploitation of other televisions. Alternatively, if this is an absolute fool's errand, and the whole thing is locked down tighter than Fort Knox, a firm warning that this is not a good thing to dick around with over a weekend would also be appreciated.

Benjamin_Dobell 3 days ago

Hacking TVs was a favourite pasttime of mine. There's nothing quite like flashing a TV with AOSP such that it thinks it's 55" smartphone. Lock screen and all.

See if you can find a service manual for your TV. You'll want to get UART as soon as possible.

Just remember crashes are for chumps: https://gist.github.com/Benjamin-Dobell/bb13f6169aaa48625453...

PS. I think that may be my favourite piece of code I've ever written. Mostly because it's completely absurd but worked just fine.

  • rubyfan 3 days ago

    I have a Samsung smart tv which I’ve never accepted t&c and never connected to wifi.

    I’d love to make it dumb or at least get rid of the nags to accept t&c or connect when someone accidentally hits the wrong button on the remote. Anything out there to do that?

    • Loughla 3 days ago

      I want that, so bad. Mine brings up the sign in screen every time you turn it on. I also want the ability to just change channels when you hit the channel button. My TV brings up a mini-guide when you hit the channel button, so that the down button goes up in station number and vice versa. Then once you select a channel, because it's not connected to the web, it blinks on and off for 5 seconds or so while it's trying to find program information from the internet connection it does not have. It's absolutely asinine. I miss the days when TV's were just screens to show whatever input I have connected to them.

      • completelylegit 2 days ago

        There are often hidden menus for “Hotel mode” that allow you to config which channel / input to default to on power up. No need to hack them.

    • phkahler 3 days ago

      Same. I'd be happy to turn it on and not have a menu over half the screen every time.

      • rubyfan 3 days ago

        In a world where Raspberry Pi exists you’d think we’d be able to make such a TV happen.

pabs3 2 days ago

First step would be to contact Samsung and ask for the Linux kernel and other open source code for your TV. Without it you won't be able to replace the original OS properly. Also mention to them that they have to allow you to update Linux on the TV or they have to stop using Linux on their TVs.

https://sfconservancy.org/blog/2021/mar/25/install-gplv2/

  • fensgrim 2 days ago

    And they will provide it as required per law. Note that the law does not require them to provide that in a form that would be usable for anything practical without doing moderate to heavy amount of reverse engineering (e.g. here's the source, here's the toolchain that was released in approximately same period of time, go figure out if this can even be built without recreating part of their internal build system, missing configs, etc).

    • pabs3 2 days ago

      See the blog post, the GPLv2 goes further than what you suggest.

      • minhaz23 2 days ago

        So if my Toyota head unit has FOSS they can provide that source code to me if I ask?

        • numpad0 2 days ago

            https://www.denso.com/global/en/opensource/ivi/toyota/
        • ChocolateGod 2 days ago

          For the parts covered under GPL, yes, which includes the kernel (if it uses Linux).

          If they're covered under a more permissive license (e.g. Apache, MIT) you're out of luck as these don't require redistribution of derivative work source code, only attribution.

  • cr3ative 2 days ago

    And how many times has this worked?

    • pabs3 a day ago

      Many times. OpenWRT is the most prominent example. Apart from SFC, in Germany, Harald Welte at gpl-violations.org was enforcing the GPL too for several years.

      https://gpl-violations.org/

zhrvoj 9 hours ago

It's fun reading all that posts about dangerous caps, dangerous flyback transformers... Those fears, and your findings I can read - were/are something normal in my world. I was paid to do that. But faked technology advance, ruined service techicians job. And now mices take over... So you have it. Deal with it. And be afraid - be very afraid :)

madaxe_again 3 days ago

Good luck. I learned an enormous amount about hardware design from a Philips plasma display I got for free some 20 years ago as it wouldn’t show an image for more than a few seconds and multiple repair people had said “buy a new one” to the business that gave it to me. £10,000 piece of kit, working.

Philips were actually enormously helpful. I just called them up (well, after going to a TV repair shop, picking the guy’s brains, and getting the number from him), got through to their technical service dept, got them to send me the full service engineer manual, schematics and all, and they were happy for me to quiz them on likely root causes - like, the guy I spoke to a few times seemed genuinely excited that someone was actually trying to repair a TV, and correctly pointed me in the direction of a group of oscillators, one of which had a blown cap. Fixed the thing.

Lived on the wall of our office for a decade until it fell off one day. On me. There’s karma.

  • tetris11 3 days ago

    I guess it's the kind of excitement one gets when someone else actively reads the documentation you painstakingly put together.

  • Scoundreller 3 days ago

    Must’ve been really nice for those cold days.

    Plasmas are great on someone else’s power connection.

    • bombcar 3 days ago

      We had a great one that almost fully negated the need for a heater in the winter. Blackest blacks!

      Still miss it, but probably miss the $5k I shelled out for it.

      • bookofjoe 3 days ago

        My 50" 2007 Pioneer Kuro Elite ($5,000 in 2007) still has the best picture I've ever seen. Almost 3D. No repairs/service ever.

fph 3 days ago

Not an answer but a follow-up question: is there open firmware for TVs like Openwrt for routers? I have never heard of such a project, but it sounds like it would be useful.

  • phrotoma 3 days ago
    • xattt 3 days ago

      That project has fallen victim to people losing interest. A section for 2011 model year TVs has WIP tags for the last 9 years. This might as well have a perpetual under construction shovelling man GIF.

      After I install it, then what?

  • user070223 3 days ago

    Perhaps Google TV(there is both an OS and a service by that name, the OS was once called Android TV)?

  • jonwinstanley 3 days ago

    Yes. I’d love this.

    The software on tvs is awful. Plus many new tvs have ads baked in.

    An open source OS would be a dream.

    • phantomathkg 3 days ago

      Software on TV (and worst, set top boxes) is awful is due to the fact that it is an under power CPU and limited memory. The app you saw is either web app in Webkit Embedded or similar embedded, Android app (Android TV) or Roku brightscript app.

purple-leafy 5 days ago

Whatever you do, don’t touch the capacitors, especially if it’s an old TV, even if it’s unplugged. Could kill you. Old TV caps pack a serious punch (even when unplugged)

  • ta1243 3 days ago

    The UN24H4500 is an LED monitor.

    The big risk in old TVs was the enormous voltages in the CRTs (which acted as a capacitor and stored energy even when off, and even pick up energy from background sources)

    • BoxOfRain 3 days ago

      Aren't a lot of old TVs 'live chassis' as well as using very high voltages?

  • squidgedcricket 4 days ago

    I think that's no longer true for modern flatscreen TVs. Older CRT TVs had caps charged to a dangerously high voltage, but all the caps on an LED/LCD TV should be a low enough voltage to be touch safe.

    • KaiserPro 3 days ago

      Mains will still kill you, even if its not 3.3kv or what was needed to run a CRT.

      Its always best to work out where the mains PSU is, and either cover/isolate it so that you don't touch it by accident. Even if turned off, there is a non-insigificant risk that there is either mains power lying around or some other large charge/current ready to bite.

      THe back of the inlet is also tends to be a hazard, so be really careful around there too.

      • i_am_proteus 3 days ago

        Can't echo this enough. If you're working on anything that has been connected to residential mains... use a multimeter. They're cheap! Check the power supply for residual voltage from PSU caps. Discharge them safely before working on the equipment!

        • maayank 3 days ago

          How do you discharge them safely?

          • i_am_proteus 3 days ago

            The correct answer is "bleeder resistor."

            The other answer is "pliers."

            (Make a connection across the terminals that have a voltage difference)

          • avidiax 2 days ago

            If the maximum voltage is within range, a neon line tester with the button grounded should work well. When the light goes out, the remaining voltage is below the sustain voltage of the neon lamp.

            That kind of tester is usually built into a screwdriver and often comes free with some electrical items. They are maybe $2 otherwise.

    • ale42 3 days ago

      Except for the switching power supply, where you have capacitors charged at (rectified) mains voltage so around 155 or 325 volts depending on where you are. They should discharge relatively quickly, but they might be dangerous for a few minutes.

    • purple-leafy 4 days ago

      Touch safe, how about lick safe?

      • throwup238 3 days ago

        That’s what flyback transformers were for. If you licked them, you’d fly back.

    • implements 3 days ago

      Some older flat panels use “cold-cathode fluorescent display backlights” and they’re driven by a high-voltage inverter, I believe - so it’s still a good idea to be wary.

  • hagbard_c 3 days ago

    That may have been true a long time ago in the age of CRT (picture tube) televisions but anything with a flat screen contains a bog-standard switching power supply with a bunch of 450V-or-so capacitors which will give you a nasty bite but not much more than that. In CRT sets it typically [1] wasn't the discrete capacitors which posed a problem but the CRT itself which was used as a smoothing capacitor for the HT power supply. The in- and outside of the back of the tube were (are) covered with a conducting paint (e.g. 'Aquadag' [2], a colloidal graphite coating) with the inside connected to the HT power supply and the outside connected to ground. That 'internal capacitor' can keep its charge for a long time. As to whether it 'can kill you' that seems to depend on a lot of factors ranging from the discharge path, physical condition of the subject and more. There are many reports on people getting zapped who describe it as 'a nasty jolt' but survivor bias means this is not what you should go by - just avoid getting zapped by discharging the tube.

    [1] there are exceptions, e.g. older vacuum tube sets which used a mains-driven EHT circuit with discrete capacitors

    [2] https://en.wikipedia.org/wiki/Aquadag

  • HumanOstrich 3 days ago

    TVs that old didn't need to be hacked.

  • fewgrehrehre 5 days ago

    Thank you very much! I will keep that in mind.

  • laserstrahl 4 days ago

    Ya, i can relate.

    • dommer 3 days ago

      Me too. I was about 8 when I took my TV apart and brushed my arm against that capacitor. Packed a wallop, and kept my arm in a ridged state for a bit.

freedomben 3 days ago

This is probably obvious, but so important that I feel it's worth saying: do not connect it to the internet! The last thing you want right now is up-to-date software, and chances are very good that if it goes online it will update its software and install all the latest security patches.

You will need to connect it to a network in order to scan it for vulnerabilities, but make that a network that has no internet access.

I would start by doing some searching on the exact make and model, especially searching through the CVE database to see what may be out there. There. If your TV has been connected to the internet, it may have had its software updated to patch any cves, but if it has not been connected, then there's a good chance it is still vulnerable and you can exploit them to get root or further access.

You can also throw scans at it. I would start with nmap and scan all the ports, also do service recognition to try and figure out what exact service is running on the other side of the port. For something like a TV, I would not expect a high success rate with identifying, but it's easy to run. What you can identify, the most important part is typically the version number. You can take that version number and compare it with CVEs with a lot more precision to see if there are vulnerabilities.

You can also try any number of scanners on it, such as nessus or openvas. There are tons of scanners out there so it's definitely worth doing some searches. I would suggest looking at the Kali Linux list of scanning tools, and either running Kali on a machine you have laying around, or use it with docker. If one of these scanners actually crashes the TV, that is ironically a great sign for your purposes.

If the TV has been connected to the internet, and you aren't able to find any vulnerabilities, it might be worth keeping it off the internet for a while to give some time for new vulnerabilities to pop up. That does require a long-term commitment to this project, but it's not like you can't use the TV. I don't connect mine to the internet ever anyway, because I don't want it spying on me and I hate its ads and crappy built-in software. I just use it with a Chromecast with Google TV and good old HDMI.

Depending on what you want to do, it's also worth going thoroughly through the menu and looking for any sort of developer or debug options. Sometimes these menus are very hidden, requiring on occasion weird keyboard incantations in order to even appear as options, but once you get these enabled you can connect using tools like ADB or SSH, and get a shell on the machine.

All in all, good luck! It sounds like a very fun project. It's a shame we don't live near each other because this sounds like a fun weekend project :-)

  • plingbang a day ago

    That's probably rare but I had a no name TV which just let me just enable adb over network with full root access. IIRC I had to install an app that can launch arbitrary activities so I could access the buildin Android settings menu instead of the crippled TV settings UI.

  • fewgrehrehre 2 days ago

    Thank you so much for writing all this up! It'll take me a bit to get to it, but if you'd like I'll keep you posted on if I have any luck!

walterbell 5 days ago

Prior work for LG televisions: https://github.com/RootMyTV/RootMyTV.github.io

  • fewgrehrehre 5 days ago

    Oh hey great! This might be really helpful. I've actually also got an LG TV upstairs, I'll have a peek at this, could be very helpful!

    • laserstrahl 4 days ago

      Rootmytv is Not working anymore if you are above a specific webos version. You can also try fiddling around with a USB to USB device and ADB shell.

rgovostes 2 days ago

A decade ago my LG plasma TV had a serial port for using it as digital signage (I think). If I spammed the serial port during boot I could interrupt U-Boot but they had disabled echoing out. I never figured out if I could do something useful or not.

  • bigbaguette 2 days ago

    Serial ports on tv are usually for screen control, as in turn on/off, change input, set volume... Like what you can do with the OSD and the remote

stoobs 3 days ago

Anyone know if there's anything for non-android Sony and Panasonic tv's?

laserstrahl 4 days ago

Try xda forum.

  • RandomCountry 2 days ago

    It’s certainly possible to explore vulnerabilities in TVs and IoT devices, but proceed carefully and legally. If you’re a beginner, focus on learning in safe labs and contributing to bug bounty programs rather than experimenting without a plan. Smart devices are becoming increasingly secure, and bypassing protections can be more complex than it seems. Source https://randomcountry.world/

alfiedotwtf 3 days ago

I shit a brick when you said TV and thought you were talking about old CRTs.

If you're going to hack on an OLD TV or microwave, please don't unless you know what you're doing. If you're still going to continue, at least unplug it for over 24+ hours before cracking it open. Those capacitors may still be charged and will not tickle.

  • grepfru_it 2 days ago

    Microwaves are easy, the schematics are online and usually there is more than enough room to see something dangerous before touching it. An unshielded microwave won’t kill you but will destroy the WiFi noise floor in your dwelling.

    If your microwave doesn’t turn on, it’s likely due to a $0.25 switch that has failed (use the stop or off button folks, the emergency stop on the door switch takes the full brunt of the magnetron)

RandomCountry 2 days ago

[flagged]

  • caseyy 2 days ago

    What is legally complex about hacking your own TV that you own, in the comfort of your own home? The device and all its components are yours.

    If Samsung or anyone else wants to tell people their TVs are licenses/rentals or some corporate delusions like that, they are welcome to lose in court(s).