所在分类:  其它网络技术 所属圈子: 计算机和网络技术

APNG解析:最近逛论坛看见apng图片的相关话题 结合网友给出的规避检测方案 查找了下apng相关的资料 有了一起粗浅的了解……

发帖4次 被置顶0次 被推荐0次 质量分1星 回帖互动57次 历史交流热度18.18% 历史交流深度0%
最近逛论坛看见apng图片的相关话题  结合网友给出的规避检测方案  查找了下apng相关的资料  有了一起粗浅的了解.
 
本质上apng是基于png的位图动画.由多张png图片组成,第一帧是标准的png单副图像 .用二进制数据查看apng,其文件头是固定
 
的,这跟其它文件格式一样,都有特有的标识.文件头 8字节:137 80 78 71 13 10 26 10 (十进制) 89504E470D0A1A0A(16进制 hex),一个标准的apng结构应包含 标志/数据块(Chunk).../结束块  .它的数据块组成有很两种 ,一种是标准的 可以称之为关键数据块 一种是辅助集 这个以后再探讨
 
 
不管什么类型的数据块 它都有4部分组成 
length  块数据长度  4字节
 
type code  (数据块类型) 4字节 由asc组成
data  数据     长度非固定  等于length ,根据type code 类型储存的数据
crc 4 冗余检测 4字节 只是用来校验数据的  

如下图 截了apng文件前面一部分
Snipaste_2021-04-14_11-50-23.jpg

可以清晰看到其数据结构  前8字节是文件头标志. 后面有两块数据块. 
0,0,0,13 代表第一块数据块长度为13 

DATA(0,0,3,202,0,0,2,88,8,3,0,0,0) 数数刚好是13字节.
TYPE为73,72,68,82,转成asc码为 IHDR
crc 141,104,239,250  校验

基于以上信息我们只需遍历出 ACTL(控制动画)和FCTL(帧信息)数据块.将其actl数据块跟第一帧FCTL的数据块调换一个位置即可规避检测(原因是有网友说亚马逊是检测actl,就是第38-41位的字节信息).其主体不受影响  .

等晚点写个程序
 
 
//2021.4.15 更新
 
写了个程序  正如楼下老哥所说 确实没用了.
 
经过分析  现在流程是先上传在图库  通过这个接口无法规避亚马逊的检测. 比对其他网友发来的现有a+动图的产品样例 发现接口是不一样的.所有有两种可能 1.现有能显示apng的动图是以前上传的  2.以前的接口亚马逊只是屏蔽但没有关闭 做ERP服务或大卖们保留有以前的接口 所以他们能通过以前的接口进行上传.
 
  
 
 
已邀请:

披个马甲挣口饭吃 - 深陷某个小疙瘩的菜鸡运营

赞同来自: standpan

不用写了,有现成的软件,还有这个规避方法也封了,已经有部分账号无法上传动图了

要回复问题请先登录注册

x 点击咨询