二狗子最近在看一个很火的电视剧《逆局》。作为一部悬疑犯罪剧,剧中多个案件交织并进,悬念和转折拉满,让狗子看的直呼过瘾。特别最后一幕,杨副座和主角团同时对 U 盘中的关键证据“器官移植名单信息”进行破解,却发现每个文件夹中都有一张相同的照片,且该照片文件大小明显比其他照片大好几倍。一番探查后发现是对手通过对 zip 压缩文件修改扩展名为 jpg 的方式伪装了核心档案。

文件扩展名

文件扩展名是早期操作系统用来标识文件格式的一种机制,比如一个名为 abc.txt 的文件,abc 是它的主文件名,txt 为扩展名表示这个文件的格式,二者以 “.” 分割。

扩展名的作用是在你打开文件时,让系统能够找到合适这个文件的应用软件。比如我们打开一个扩展名为 mp4 的文件,系统会在接到请求时通过扩展名得知文件格式,然后使用对应的视频播放类应用打开该文件。

这里可能有些小伙伴想问:“为啥自己的手机和电脑里的文件都只显示主文件名,不显示扩展名呢?”

这是因为出于数据安全的考虑,现在大部分的电脑和手机都会隐藏文件扩展名,这样可以减少修改文件扩展名造成的数据安全漏洞。那么如果我们需要使用扩展名,要怎么才能让扩展名显示呢?

如果你使用的是 windows 系统,那么你可以在文件管理中进行手动开启,具体操作如下图所示:

如果你需要在手机上进行扩展名修改,目前大部分安卓手机也已经支持修改扩展名了,可以直接在文件管理内进行修改,如果您当前手机不支持,也可以通过下载第三方文件管理工具来处理。下图以 ES 文件浏览器为例进行扩展名修改:

扩展名作用

不过扩展名在我们日常使用网络中,最令人印象深刻的应该是和病毒相关。在浏览网页或者下载文件时,一些恶意用户将病毒伪装成可执行文件像 apk,exe,bat 等,又或是伪装成一些看似无害的 txt 文本文件。我们毫无防备打开后会造成电脑内的信息泄露,进而导致我们的资产损失。

因此在遇到无法识别的文件或者可疑的文件时,不要轻易地直接双击打开执行。可以使用一些工具来检测文件安全和文件的真实扩展名后再打开,检测工具可以使用 File Detection 等。此外通过正规渠道下载软件和资源,也可以减少这种伪装文件的出现。

当然扩展名伪装文件并不都是坏事。如果我们想要隐藏一些不可以删除,又不想被他人发现的文件。那扩展名修改就是最简单的方式。完成扩展名修改后,系统会因为识别到错误的扩展名而无法正常打开文件。

而在互联网发展快速的今天,比起本地存储文件,我们可能更习惯将文件存储在云存储上。那云存储里的文件要怎么才能修改呢,总不能是下载到本地修改完再上传回去吧?

其实大部分云服务厂商都提供在线修改方式。以又拍云存储举例,文件扩展名修改有以下几种方式:

上传时修改

在上传文件时,进行同步修改,简单举个例子,本地文件属性如下图:

上传后云存储文件属性:

这种方式一共有两种:

  • 在上传时通过文件保存路径的方式自定义文件扩展名

  • 指定 Conten-Type 修改:特别注意,如果在上传时未进行参数指定,会默认使用文件内容和文件扩展名混合判断文件类型。

上传后修改

依然以又拍云存储举例,用户上传后可以登陆控制台“文件管理”界面直接修改。

不单单是这些,使用又拍云上传媒体资源时还可以指定云处理参数进行图片视频预处理,上传完成后也可以进行水印,视频转码等一系列后续图片操作。而且这些图片处理功能都是免费的,赶快来试试这些的强大功能吧。

推荐阅读

警惕!PHP、Node、Ruby 和 Python 应用,漏洞还没结束!

【白话科普】10s 从零看懂 H5

【白话科普】《逆局》最终 boss 隐藏自己的方式是?的更多相关文章

  1. 【白话科普】CDN & 游戏加速器,两者是一个原理吗?

    说起加速,大家可能就会联想到"游戏加速"之类的场景,而说到现在流行的云服务加速,则离不开 CDN 这个词.那么 CDN 和游戏加速器是同一种东西么?从效果上看两者都是为了" ...

  2. IOS中键盘隐藏几种方式

    在ios开发中,经常需要输入信息.输入信息有两种方式: UITextField和UITextView.信息输入完成后,需要隐藏键盘,下面为大家介绍几种隐藏键盘的方式. <一> 点击键盘上的 ...

  3. JS---元素隐藏的不同方式

    元素隐藏的不同方式 dispaly, visibility, opacity, height&border 为0 <!DOCTYPE html> <html lang=&qu ...

  4. 白话科普系列——双十一,竟然是一场有“预谋”的DDoS攻击?

    随著互联网与信息技术的发展,所有人都在享受互联网带来的舒适和便利.如今,无论是个人社交行为,还是商业活动都早已离不开互联网. 但是,网络空间在创造机遇的同时,也带来了威胁.随着企业价值.知名度的提高. ...

  5. 【白话科普】10s 从零看懂 H5

    最近大家有没有发现,很多微信公众号的动态内容变多了?我们常常可以看到,公众号内容中有很多动态图片甚至动画,还可以通过手指滑动切换页面,或者有一些小的点击互动. 这种看起来有点高级的小作品,其实是都是& ...

  6. 白话科普,10s 了解 API

    作为一名又拍云的技术支持工程师,小拍每天都会接收到很多客户的提问.这其中,有很多客户会问:"小拍,请问云存储上传除了使用控制台的文件管理和 FTP 工具之外,有没有其他的途径进行上传呢?&q ...

  7. 白话科普系列——最好用的浏览器 Chrome,你用了么?

    市面上的浏览器多种多样,而浏览器的王者--IE 浏览器,它在 2002 年市场份额高达 95.4%.直到后续 Firefox,Safari,Chrome 相继问世才动摇了 IE 浏览器的地位,其中 C ...

  8. iOS之隐藏键盘的方式

    一.//触摸空白处隐藏键盘 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [_feedBackTextView r ...

  9. iOS_隐藏顶部状态栏方式

    关键词:IOS.UIViewController. Status Bar iOS6和iOS7在隐藏 Status Bar 三种方式比较: Storyboard 界面上选中UIViewControlle ...

随机推荐

  1. CF616B Dinner with Emma 题解

    Content 翻译很明白,或者你也可以看我的简化版题意: 求一个 \(n\times m\) 的矩阵中每行的最小值的最大值. 数据范围:\(1\leqslant n,m\leqslant 100\) ...

  2. CF981B Businessmen Problems 题解

    Content 有一个长度为 \(n\) 的序列和长度为 \(m\) 的序列,两个序列中的元素都有一个编号 \(num\) 和一个值 \(val\),且同一个序列的元素之间的编号互不相同.现在从这两个 ...

  3. ubuntu16.04 开启ipv6支持

     1)vim /etc/default/grub将GRUB_CMDLINE_LINUX中下面的这一项删除:ipv6.disable=12)执行 grub-mkconfig -o /boot/grub/ ...

  4. 【九度OJ】题目1208:10进制 VS 2进制 解题报告

    [九度OJ]题目1208:10进制 VS 2进制 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1208 题目描述: 对于一 ...

  5. 【LeetCode】384. Shuffle an Array 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 库函数 Fisher–Yates 洗牌 水塘抽样 日 ...

  6. A. Toda 2

    A. Toda 2 time limit per test 2 seconds memory limit per test 512 megabytes input standard input out ...

  7. Codeforces 777C:Alyona and Spreadsheet(预处理)

    During the lesson small girl Alyona works with one famous spreadsheet computer program and learns ho ...

  8. Notepad++汉化教程

    Notepad++汉化方法总结 Notepad++系统只带了中文语言包,不需要像其他软件一样破解 打开Notepad++(通过文本文件右键选择以Notepad++打开或者找到Notepad++的快捷方 ...

  9. HDFS源码解析:教你用HDFS客户端写数据

    摘要:终于开始了这个很感兴趣但是一直觉得困难重重的源码解析工作,也算是一个好的开端. 本文分享自华为云社区<hdfs源码解析之客户端写数据>,作者: dayu_dls. 在我们客户端写数据 ...

  10. Java基础周测一、二(50题)

    一.单选题 (共50题,250分) 1.下列选项不可作为Java语言变量名的是(    ). A. a1 B. $1 C. _1 D. 21 正确答案: D 2.有一段Java应用程序,它的类名是a1 ...