搜索
bottom↓
回复: 12

【漏洞】发现 ICCAVRv7.22 数学库漏洞

[复制链接]

出200入2554汤圆

发表于 2015-12-28 10:50:06 | 显示全部楼层 |阅读模式
前些年做项目积攒了一些 AVR 的开发板,简单的采样、发波什么的用的一直挺顺手。

最近做了一批 WS2812 的驱动,写了些颜色渐变效果,结果用到三角函数时,发现开始坑爹。

最开始是用 AvrStudio 仿真时发现三角函数转一会就转不动了,后来用 M64 实物运行,串口上传计算结果,才发现果然存在问题。

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

漏洞表现为:sin/cos 的定义域(自变量范围)被限制在了 -4π~+4π 之间。
以前在 VC 当中用三角函数时,没出现过这种情况(类似颜色发生器也没有爆掉)。

测试平台:ATMEGA64A,PC串口

测试环境:ICCAVR v7.22

测试函数:sin(x), cos(x), tan(x).  ("math.h")

测试结果:坑爹的漏洞

相关附件:

(测试项目+原始数据)

(数据曲线)


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

M64是常规的 AVR 内核,如果数学库存在这个漏洞的话,估计低端的 MEGA 系列都跑不掉(所以TINY也别随便搞数学库了,查表多好)。
好在 AVR 本来就不是什么高端单片机,真心用到三角函数时大多是要查表来做的,也就没那么些烦心事了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入8汤圆

发表于 2015-12-28 13:59:02 | 显示全部楼层
一直用AVR,又学到新知识了,谢谢前辈分享经验!!

出0入0汤圆

发表于 2016-1-3 15:17:40 | 显示全部楼层
模拟器有这个问题吗?如果是库漏洞的话应该也有吧。按这个样子来说库函数多半也是查表……

出200入2554汤圆

 楼主| 发表于 2016-1-3 23:57:05 | 显示全部楼层
runapp 发表于 2016-1-3 15:17
模拟器有这个问题吗?如果是库漏洞的话应该也有吧。按这个样子来说库函数多半也是查表…… ...

不光是模拟器,我用实物运行的,说明直接是库函数的问题(结果模拟器、实物运行出了相同的BUG)

出200入2554汤圆

 楼主| 发表于 2016-1-3 23:57:52 | 显示全部楼层
不舍的六年 发表于 2015-12-28 13:59
一直用AVR,又学到新知识了,谢谢前辈分享经验!!

感谢大家来捧场!

出0入0汤圆

发表于 2016-1-4 00:09:06 | 显示全部楼层
本帖最后由 dhbighead 于 2016-1-4 00:11 编辑

库的文档里应该有相应的说明吧
大家可能容易忽略了

出200入2554汤圆

 楼主| 发表于 2016-1-4 00:30:35 | 显示全部楼层
dhbighead 发表于 2016-1-4 00:09
库的文档里应该有相应的说明吧
大家可能容易忽略了

整篇 PDF 都读无数遍了,只知道是个弧度三角函数,自变量范围真心没写

ICCAVR 毕竟是免费的玩意,做成这样也就不错了

出0入93汤圆

发表于 2016-1-4 00:34:27 | 显示全部楼层
t3486784401 发表于 2016-1-4 00:30
整篇 PDF 都读无数遍了,只知道是个弧度三角函数,自变量范围真心没写

ICCAVR 毕竟是免费的玩意,做成这 ...

iccavr是收费的商业软件

出0入0汤圆

发表于 2016-1-4 00:38:14 | 显示全部楼层
t3486784401 发表于 2016-1-4 00:30
整篇 PDF 都读无数遍了,只知道是个弧度三角函数,自变量范围真心没写

ICCAVR 毕竟是免费的玩意,做成这 ...

ICC大多用的都是破解版。
所以。。没法反映bug吧

出0入0汤圆

发表于 2016-1-8 20:09:39 | 显示全部楼层
一直用的都是一些简易的功能,还有这个问题,长知识了,果断右击保存,谢谢楼主……

出0入0汤圆

发表于 2016-1-8 21:56:25 | 显示全部楼层
可能是破解版故意坑你,一般的专业软件都是官方出的破解,你用破解他知道,在某些方面故意坑你,以前被坑过

出200入2554汤圆

 楼主| 发表于 2016-1-10 20:24:58 | 显示全部楼层
hitgds 发表于 2016-1-8 21:56
可能是破解版故意坑你,一般的专业软件都是官方出的破解,你用破解他知道,在某些方面故意坑你,以前被坑过 ...

目前除了这个明显的BUG外,感觉 v7.22 还是比较亲民的

虽然说的确是破解的玩意

出0入0汤圆

发表于 2016-1-10 20:43:58 | 显示全部楼层
从来都不用库,所以没发现任何问题
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-10 01:31

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表