base64编码图片二进制数据后直接保存在html文件中

相关内容:

在markdown编辑器中嵌入base64图片



看到一个帖子,那就是base64编码用来http服务中对二进制文件编码,那么可以不可以直接在html文件中使用base64编码后的字符串来表示图片呢,于是就有了本文的尝试。

注意,这里使用的是markdown格式的图片插入链接格式,即\(![图片文字描述](图片的物理地址)\),但是我们把图片的物理地址替换为了base64编码后的字符串。


将一个一寸照片转成base64格式,即将一个二进制文件转为base64编码的字符串:

image-20241020181335178


编码网站:

https://base64.us/

image-20241020181445251


可以说,这真的是一件很神奇的事情,我们真的通过把二进制的图片数据转为base64编码的字符串后放到了html文件中,并且该种方式正确的被web服务器解析并发送给客户端的浏览器,而且在浏览器中也是可以成功打开这个图片的。

这里的尝试证明了这种操作的可行性,也就是把图片二进制数据以字符串的格式保存到网页文件中,该种方式可以成功的躲避web服务器上的文件正规性审查,你可以自由的用这种类似黑客技术的手段绕过网站的审核而实现任意上传图片的目的,不过该种方式的上传图片的方式虽然可以躲避网站管理方的审查但是却不一定能躲避上级监管部门的市场审查,毕竟这种小聪明般的技术也不是多么高深。

使用base64编码方式将图片嵌入到网页中对web服务器也是有着一定性能影响的,因为这种方式上传图片并不会将这些图片存入博客官方的图床库中,而是会把这些图片存入到html文本数据库中,从而极大程度上消耗web服务器上文本数据库的容量,并且该种方式的图片由于没有被存入图库中,因此也不存在图片缓存加速这种可能,总之,该种方式的上传图片对web的性能影响是不好的。






下面给出一个cnblogs官方判定为敏感违禁的图片,这里也是通过base64编码的方式试图绕过官方的审查,如果下图可见,那么就证明本文的方式是可行的,下图的敏感性个人认为还是合规的,于是就上传下面的这种维纳斯图片:


PS:

事实证明该图片成功躲避了cnblogs官方的图片审查成功上传并成功显示在客户端浏览器中,当然,我这里还是认为上面的这张维纳斯图片不应该算作违规的,因此,即使通过这种类似黑客手段的方式绕过官方审查也还是在心理过的去的。


posted on 2024-10-20 18:27  Angry_Panda  阅读(292)  评论(0)    收藏  举报

导航