qq空间说说如何发gif-豆豆语录迷
返回
豆豆语录迷
菜单
造句大全 组词大全 句子大全 个性签名 心情说说 经典语录 换背景

qq空间说说如何发gif

来源:网络 发布时间:2019-11-06 点击:
心情说说 > 说说大全 > > qq空间说说如何发gif
《qq空间说说如何发gif》正文内容

qq空间说说如何发gif

你好,首先准备一张GIF格式的图片放在电脑桌面上,进入空间,在发表说说的地方有一个电视机一样的标志,点一下就会看到本地照片,然后把准备那张图片上传就好了。

兔子、程序猿与网红

首先声明我真不是腾讯的......

截至4/27已经100万赞了,害怕(早知道QQ空间开打赏我可能就是人生赢家了哇哈哈哈)

注:只有在手机QQ新版客户端(不是QQ空间)

并且在系统设置中需启用QQ的健康/陀螺仪访问权限才能看到以下效果

故事的缘起,是我在小伙伴的群里看到了一个消息。

点开视频,看到一对魔性的兔子(狐狸)在魔性的走路。。。

什么? 一个动图还能根据重力感应倒着放?

实践是检验真理的唯一标准,好吧!那就按照他说的试试看!

打开万年不碰的QQ空间-上传图片-选择好刚才的魔性兔子们....

上传成功!

诶...点开大图,也没什么变化啊。

好吧,被骗了,退出去吧。。。

-------------------------------------------------------------------------------------------------

本来。。。。。故事应该在这里结束。。。。

----------------------------------------------

然而...不小心倾斜了一下手机,果然跟说的一样!

嗯~ o(* ̄▽ ̄*)o有点意思

想了半天,不知道这个是怎么实现的,因为GIF只是一种图片格式啊,难道说这就是传说中的GIF中的战斗鸡嘛!!!

“嗯...应该不是吧”,我想,同时看了看群,

群里面已经炸开了锅:

嗯。。。有点道理,

仔细分析下:

点开大图,没反应

在小图界面下(应该是WebView/Browser控件)会受到影响

想了想,感觉很有可能这是一个精心构造的GIF,里面嵌套了Javascript脚本,而Javascript是可以调用浏览器的接口获取重力感应的数据的。

回想起当年PSP3000 用TIFF蛋图破解的故事。。。

==========科普环节==========

为什么仅仅查看一个图片就可能达到触发漏洞呢?

简单的来说,漏洞产生的主要原因是打开这个图片所用的软件在读取图片的时候

由于图片通过构造一些精心设计的结构,使程序读取时发生溢出,从而破坏程序的堆栈,使程序转而执行其它指令,以达到攻击的目的。造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。

举一个简单的栗子:

例如下面程序:

void function(char *str) { char buffer[16]; strcpy(buffer,str); }

上面的strcpy()将直接把str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在像strcpy这样的问题的标准函数还有strcat()、sprintf()、vsprintf()、gets()、scanf()等。

当然,随便往缓冲区中填东西造成它溢出一般只会出现分段错误(Segmentation fault),而不能达到攻击的目的。

看这里:TIFF漏洞_百度百科 。。。。Wololo.net

====================================

这下子一切都说的通了。嗯,回去睡觉。

没准还发现QQ内置浏览器的漏洞了呢!o(* ̄▽ ̄*)ブ

========第二天===========

当我醒来的一刻,我被QQ的推送吓到了 1.5w+的赞

我可从来就没见过这么大场面,吓一跳。

同学在下面评论:转发过500(可是要付法律责任的)

我在懵逼中。。。突然心中一凉:

这要是利用了QQ内置浏览器的漏洞,通过GIF加载脚本的话就意味着除了做到重力感应切换播放方向外,还可以加载恶意的JS脚本,那可就完了!

我还是发图的!

完了!

我连忙打开电脑,把这个GIF导入到电脑上。开始分析JS脚本到底做了什么

打开文件:

一堆乱码。。。无从下手。。。。

隐隐约约的看到了GIF89a...

看来不找到他是不行了!于是我决定开始找GIF的数据结构,把所有的帧去掉应该就只剩下代码和文件头了,这下总可以了吧2333

好吧,是时候祭出大杀器: Hex Editor!

嘛。。这下子清晰多了嘛<(^-^)>

大家都知道,GIF文件之所以能放动图,是因为他其实内部存储了每一张图(或者称为帧)的数据,那么我们只需要把每一帧的数据去掉,剩下的不就是藏在里面的脚本/恶意代码了嘛~

有人要问了,为什么我要这么害怕呢?

因为我怕GIF里面藏着能拿到你们QQ空间Cookie(不懂得同学可以理解为发空间需要的钥匙)的恶意跨站攻击脚本啊。

还记得空间里有些点进去就会自动转发奇奇怪怪内容的链接嘛,不是你的QQ被盗了,是你的那个Cookie“钥匙”被人通过一种特殊的方式拿到了。所以他们将可以使用这个钥匙,访问你的QQ邮箱,空间,增删东西,修改你的空间访问权限等一系列操作。。。

好奇的同学们可以看这里:

揭秘--黑客是如何使用xss的 - 知乎专栏

听说GIF中带代码的在Chrome的console里面会提示MIME类型错误,我试了下,果然有!!!!

Storing JavaScript code in GIF images

Why is "MIME type mismatch on image file" a security vulnerability?

于是根据维基百科:GIF - Wikipedia,GIF Signature Format: Introduction & Recovery

嗯,整个文件结构应该是清晰了,走起!

for (i=0, len = length - 9; i < len, frames < 2; ++i) { if (arr[i] === 0x00 && arr[i+1] === 0x21 && arr[i+2] === 0xF9 && arr[i+3] === 0x04 && arr[i+8] === 0x00 && (arr[i+9] === 0x2C || arr[i+9] === 0x21)) { frames++; } }

删掉相应的数据块后。。。。

Excuse ME???????

Excuse ME???????

难道是混淆过的?不对啊。。。没见过混淆成这样的啊。。。。

并扔进去反混淆器看看....GG,不行。。。

于是对照了网上做GIF injection的方法:

//代码

//代码们

。。。总之,发现按这种方法插入的话在有效JS前面

必定会有2A 2F 3D 31 3B的,遂搜索HEX,并没有。。。。

最后的尝试失败了,我决定求助信息安全专业的哥们W

“W啊,我不小心成网红了,你看到我发的图没?”

“看到了,好像有点意思,怎么做的啊”

“不是我做的啊,我只是单纯的发了而已,万一里面被人嵌了恶意JS,我可吃不了兜着走哇!老哥你快帮我看看”

“这么严重!我看看!”

>>>>>>>>>>>>>>>>>>>>>>>>20分钟过去了>>>>>>>>>>>>>>>>>>>>>>>>>

“好像没找到Javascript的嵌入代码啊,我在看是不是Image的参数导致了这个问题”

“我觉得不是,因为我只是正常上传了一个GIF”

“奇怪啊。。。”

“而且我看了,这个图片是写在img下面的,就算有js应该也不能执行吧。”

“。。。"

正当我们郁闷的时候,他突然发来消息

“别找了!根本不是那个GIF的事!"

“?????”

“你试试上传别的GIF,也是一样的!!!”

“哦???我试试”

于是我又下载了一个图,重新上传!

果然!!!!!!!!!!!!

原来是手机QQ偷偷更新的一个功能,通过调用陀螺仪改变GIF播放顺序。。。。。

也就是说。。。这个动画之所以这样是因为手机QQ的隐藏功能,跟上传的图片无关……

哈哈哈哈哈哈哈哈!我不用背锅啦!

感觉自己被企鹅全家耍了一遍,吓死了!

上一篇:怎么一键删除空间说说
下一篇:写说说粽子

相关说说大全

推荐说说大全

热门说说大全

  • 烟说说配图,烟酒伤感配图图片大全,关于烟的霸气说说
  • 家乡的说说,赞美家乡的经典说说,家乡风景短语句子
  • 写兄弟说说
  • 好人说说
  • 狠毒的说说
  • 煮鱼的说说
  • 焦急的说说
  • 说说精灵刷赞
  • 最新说说大全

  • 介酒的说说
  • 特价房说说
  • 上庐山说说
  • 毛牛说说
  • 跳海的说说
  • 两天假说说
  • 离不开说说
  • 西财说说