反射模型(精选3篇)
反射模型 篇1
1 引言
Web View漏洞是Android系统上的一个Web应用漏洞。 攻击者通过构造Web页面上的恶意脚本,绕过系统限制,获取系统API的使用权,以达到窃取用户隐私信息、 远程非法控制等目的。 目前, 有相当数量的Android应用被证实存在此漏洞,其中包括百度浏览器、QQ客户端、微信客户端等软件,其危害性不容忽视。
2 Web View漏洞分析
Web View漏洞位于Android系统的Web View组件上, 其产生的原因有两点:(1)Web View组件向Web页面提供了一个本地Java类;(2)Java是一种具有反射机制的语言,一个Java类可以通过反射,实现其他Java类的功能。 如图1 所示为攻击者利用Web View漏洞进行攻击的示意图。 攻击者通过构造恶意脚本, 利用本地Java类反射至系统API,实现诸多非授权功能。
2.1 桥梁函数分析
按照Web View组件架构设计,网页和Android系统之间采取Java类交互模式。 网页通过调用系统提供的本地Java类,实现本地方法,从而提高了用户在网页端的交互性、丰富了网页的功能。 Java类交互模式是通过调用Web View组件上的add Java Script Interface()函数建立起来的, 该函数架构起了网页和系统之间的桥梁关系,因此本文称之为桥梁函数。
桥梁函数有两个参数, 第一个参数是在Android系统上实现的本地Java类的类名, 该类即为Web View组件向网页提供的本地Java类; 第二个参数是访问本地Java类时所须用到的入口名称。 例如:my Web View.add Java Script Interface (Local_object,"Web_object"); 即网页可以通过入口“Web_object”调用本地Local_object类。
2.2 恶意脚本绕过系统限制
恶意脚本通过调用本地Java类进入系统, 并经反射绕过系统限制,获取非授权API的使用权,实现非授权功能。 如图2 所示为恶意脚本的攻击流程。
Java语言允许程序在Runtime通过反射取得任何一个已知名称的class的内部信息,包括其成员变量、内部方法、父类等相关信息,并且可以在Runtime调用class的内部方法。 恶意脚本通过网页调用本地Java类进入Android系统Dalvik虚拟机中的Runtime,然后利用Java反射机制,显性的调用系统API,从而实现系统功能。
如下代码:
Js2Java.get Class ().for Name ("android.telephony.Sms-Manager").get Method("get Default",null).invoke(null,null).send Text Message("15111111111",null,"Web View漏洞!!",null,null)。 其中,Js2Java是Web View组件向网页提供的本地Java类。 上述代码实现如下功能:通过Js2Java反射至系统的android.telephony.Sms Manager类, 并调用send Text Message方法,发送内容为“Web View漏洞!! ”的短信至15111111111。
3 Web View漏洞检测
3.1 漏洞检测方案
通过结合静态分析和动态分析,能够快速、有效地检测漏洞。其中静态分析是通过研究目标软件反编译后的代码,分析其中的桥梁函数,获知其拟向网页提供的本地Java类,并将其归入可疑Java类集;动态分析是对静态分析生成的可疑Java类集进行黑盒测试,并根据系统的反馈判断是否存在漏洞。
3.2静态分析
静态分析主要包括获取先验信息、反编译获取源代码、代码分析和建立可疑Java类集四个环节。
首先通过研究Android SDK查询先验信息,可知add Java Script Interface()为目标桥梁函数。接着反编译目标APK软件,获得smail代码;通过遍历代码,定位到add Java Script Interface()函数,其smail代码如下:
由代码分析可知,程序调用了桥梁函数addJava Script Interface(),其向Web页面提供的本地Java类的名称为Js2Java,因此将Js2Java类归入可疑Java类集。
3.3动态分析
在静态分析建立可疑Java类集的基础上, 动态分析对可疑Java类集进行黑盒测试, 通过分析系统的反馈检测是否存在Web View漏洞。
在进行黑盒检测之前,为避免检测出现误报或者漏报等现象, 须先从网页可调用的所有类中筛选出Java类,从而防止Java类和Java Script类之间出现混淆冲突,影响检测效果。 选取是否包含get Class()内部方法作为判断Java类和Javascript类的依据, 当类中包含该内部方法时判别为Java类,反之则判别为Javascript类。 通过遍历网页上的所有类,筛选并建立起网页可调用的Java类库。 然后把筛选后的网页可调用Java类库和静态分析得出的可疑Java类集进行合成,生成黑盒测试集。
检测模块采用黑盒测试的方法对测试类集进行测试。当Web应用访问构建的测试脚本时,系统给出相应反馈,根据系统反馈的信息判断Web View漏洞的存在性。
恶意脚本控制系统输入输出的代码如下:
其中“xxxxxx”处即为恶意代码的核心功能。
3.3.1 Android系统通用Java反射漏洞检测模型架构
在Web View漏洞检测方法的基础上, 提出了一种通用Java反射漏洞的检测模型, 该模型对Java反射型漏洞的检测具有指导性作用。 模型主要分为静态分析模块和动态分析模块。 静态分析模块在Windows平台上对目标程序进行反编译获取源代码,并对源代码进行分析处理,经静态引擎分析后建立可疑Java类集;动态模块在Android平台上对目标程序进行黑盒测试,检测是否存在Web View漏洞。 图3 所示为检测模型的结构图。
3.3.2 静态分析模块
静态分析模块分为预处理模块和静态分析引擎。 预处理模块负责反编译工作和代码解析工作,静态分析引擎负责建立可疑Java类集。 由于Android程序一般由Java语言编写,而Java语言是一种跨平台的语言,它是以中间代码的形式运行在虚拟环境之中, 这使得Android程序容易被反编译, 并能获取90%以上的源代码。 反编译器正是利用这一特性来提取软件的源代码,并对源代码进行整理。 代码解析器通过IDA软件提供的分类功能对反程序源代码进行类和函数的分类,并建立相应的类库和函数库,为分析引擎提供信息基础。
静态分析引擎通过遍历类库和函数库,建立可疑类集。 根据源码中函数的调用关系,构建程序流程图,并遍历函数库,最终定位到桥梁函数,获知可疑Java类,再从类库中找出相应Java类,生成可疑Java类集。 图4 所示为静态分析模块结构图。
3.3.3 动态分析模块
动态分析模块主要包括预处理模块、Java测试集生成模块、黑盒测试模块。 预处理模块负责对目标软件的测试环境进行整理,剔除掉可能会影响实验结果的环境成分,建立针对性较强的测试环境。 并遍历程序在测试环境中所能触及到的所有Java类, 建立网页可触及Java类库。 Java测试集生成模块通过对比静态分析模块生成的可疑Java类集和预处理模块生成的网页可触及Java类库,合并处理,生成黑盒测试集。 黑盒测试模块构建针对黑盒测试集的测试代码,输入目标软件,通过获取系统对测试代码的反馈判断是否存在漏洞。
反射模型 篇2
1 三维动画对中医药文化的意义
目前, 关于中医方面的动画比较匮乏, 尤其是一些具有针对性的三维模型。由于中医知识大多晦涩难懂, 只是通过书本中的文字、图片来学习中医文化知识效率较低, 难度较大, 间接地提高了中医学习的门槛。借助三维动画技术可以较好地解决一部分中医基础理论知识表现难的问题。三维动画生动直观, 简明易懂, 其在多个行业的运用都取得了较好的效果。将三维动画运用到中医文化知识中, 可以使人们更直观地了解中医, 理解中医, 运用中医。三维动画技术与中医药学科的结合使中医不再局限于中医师的治病工具, 更是每个热爱生活的人的养生之法。
2 三维动画在中医药方面的运用
三维技术在医学中已经得到了广泛应用, 但是更侧重于西医, 三维打印技术更是当今科研界乃至商业界的一大热点, 人体器官三维打印技术也取得了一定的成绩。而中医方面的动画则比较匮乏, 现有的一些成品通常是因为个人的教学或者科研需要制作的二维或三维动画, 比如:李彦华在中医耳鼻喉科方面利用3Dsmax制作的三维动画, 包括解剖部位的立体观察, 解剖部位的功能和某些疾病的发生过程, 是在教学方式方法上的一种尝试。余轮等在人体经络的三维数据模型和动画显示方面作了一定的研究, 提出一种基于齐次坐标变换的人体经络数据模型, 为解决计算机人体经络模型的动画演示和经络穴位的透明叠加显示等问题提供了一条新思路。还有一些人体经络的三维模型和基于舌诊的三维动画等三维技术对中医基础知识的展示。
3 运用三维技术建立中医足底反射区模型
(1) 背景。现今人们崇尚绿色生活, 重视健康及养生, 中医养生成为热门话题。其中足底按摩也是一种流行的保健方法。足是人类的“第二心脏”, 人之脚犹如树根, 树枯根先竭, 人老脚先衰。古语有云:“牵一发而动全身”, 足底反射区与人体脏腑紧密相连。根据国际研究表明, 人体的许多疾病都可通过足底穴位的按摩达到康复保健的效果。“鹤发童颜、步履轻健”也表明了足部保健的重要性。
(2) 意义。足底反射区疗法是通过对足部相对应的反射区进行手法刺激调节机体内部功能的疗法, 是一种非常好的查病、治病、无药保健的方法。通常人们看到的是书面的二维图像, 没有立体感, 不能直观地了解足部穴位结构, 通过三维仿真技术显示立体足底和人体模型, 人们可以更直观地观察和了解足底穴位与人体器官的联系、对应的病症及治疗方法, 更全面地揭示了中医的治疗原理。制作一款关于中医足底反射区与脏腑内在关联的三维模型的系统, 可以帮助人们更好地学习和认识中医足底按摩的原理与功效, 成为行业技能学习的辅助工具和普通人自我保健的指导工具。
(3) 实施。中医足底反射区与脏腑内在关联的三维模型系统的建立主要经过以下几个阶段:首先, 对整个系统进行详细的设计, 了解中医足底穴位的知识和基本的分布布局特点, 收集并整理足底穴位相关信息说明介绍资料以及相关区域与人体脏腑之间的关系, 进行分类后录入数据库;其次, 运用3Dsmax软件建立人体足底的三维模型、人体三维模型以及脏腑器官模型, 利用Photoshop等图形图片处理软件对人体的足部进行纹理皮肤等绘制、渲染;其后, 运用Flash3d技术进行相关三维技术的引擎开发, 并利用引擎和标准人体模型在Flash CS4开发环境中进行处理接口和交互操作的程序编写;最后, 利用Flex完成系统的前台界面, 连接数据库和Flash3d模块。整个系统最终实现足底的三维表现, 通过点击足底不同的反射区显示相关文字说明, 并通过人体经络反馈到相应的人体脏腑组织, 生动、直观地揭示人体足底与脏腑之间的关联。
4 结语
中医足底反射区与脏腑内在关联的三维模型的建立将更全面地揭示中医足疗的治疗原理, 打破人们对于中医的神秘感, 了解中医药科学的内涵, 特别是在证明和阐释中国传统医学的学术思想上, 将产生巨大的推动作用, 也有助于中医文化的广泛传播。
参考文献
[1]李彦华, 汪常伟, 安杨.三维动画在中医耳鼻喉科多媒体教学中的运用[J].新疆中医药, 2011 (1) :57-58.
反射模型 篇3
1 材料与方法
1.1 动物
健康雄性白色Wistar大鼠30只,由河南省实验动物中心提供,合格证号:SCXK(豫)2005-0001。所有动物耳道清洁,耳廓反射灵敏,对电刺激反应敏感,体重300 g~418 g。
1.2 主要试剂与仪器
水杨酸钠(sodium salicylate,美国Sigma公司,生产批号:057k0696);尼莫地平(德国Bayer公司,生产批号:CAGFT3);自拟补肾活血方(由山茱萸、熟地黄、丹参、茯苓、桔梗、葛根和醋五味子组成);专用屏蔽训练室(自制);大鼠跳台仪(北京药物研究所,DTT-2型);飞乐牌扬声器(YD-2502型,8Ω);计算机控制系统。
1.3 方法。
1.3.1 建立条件反射
将大鼠置于隔音室内适应性分笼喂养,每笼6只。室内温度恒定控制在25℃,人工控制照明12小时灯光开/关使动物的昼夜节律保持稳定,饮食及饮水充足,一直到实验结束。条件反射训练于另一隔音室内进行,各频率背景噪声均<25 dB SPL,每只大鼠均单独进行训练。将大鼠置于跳台仪内,箱顶扬声器给予10kHz,70 dB SPL的白噪声作为条件刺激,持续时间为20秒,非条件刺激为大鼠足底电击(50v),持续时间至多17秒(与声刺激同步进行),条件刺激和非条件刺激出现的时间间隔为3秒。训练大鼠当听到声刺激信号后,因足底受到电击而产生向箱内绝缘跳台跳跃的逃避反应。每次训练的间隔期为3分钟。每只大鼠每天连续训练10次,记录大鼠在给声期间及刺激间期的行为反应情况。经过(4~5)天的适应性训练,有大鼠开始学会建立“声刺激-跳台逃避”的条件反射。再经过(20~27)天的强化训练,使此条件反射加强至稳定。
1.3.2 动物分组
条件反射相对稳定后,根据动物正确反应率大小,将动物随机均衡分为水杨酸钠模型组、尼莫地平组、补肾活血方小剂量和大剂量组,每组6只。其余6只因对电击不敏感或学习能力相对较差而未学会跳台逃避被淘汰。
1.3.3 动物行为观测及给药
当大鼠条件反射相对稳定后,即进入实验观测期,观察药物对大鼠行为反应的影响。此阶段的大鼠行为观测指标为正确反应率,即为外界给声时动物正确跳上跳台的百分率。整个行为观测期分为两个阶段:①给药前期:记录每天大鼠的正确反应率,共10天。②给药期:水杨酸钠模型组大鼠前5天连续每日经腹腔注射10%水杨酸钠350mg/kg,后5天每日灌胃生理盐水1m1/100g;尼莫地平组大鼠前5天连续每日经腹腔注射10%水杨酸钠350 mg/kg,第(5~10)天每日连续灌胃尼莫地平12mg/kg。中药复方大剂量和小剂量组前5天均连续每日经腹腔注射10%水杨酸钠350 mg/kg,大剂量组第(1~10)天每日连续灌胃补肾活血方18.7g/kg,1ml/100g,小剂量组则灌胃补肾活血方9.35g/kg,1ml/100g。
1.3.4 统计分析
所有实验数据均经SPSS 11.5统计软件处理,对实验结果进行单因素方差分析。
2 结果
2.1 在跳台反射训练结束后
共有24只大鼠形成了相对较稳定的条件反射,其余6只因对电击不敏感或学习能力相对较差而未学会跳台逃避被淘汰。
2.2 水杨酸钠模型组
大鼠注射水杨酸钠后对声音的正确反应率为(14.0±2.7)%,与给药前相比(21.7±4.5)%,曲线明显下降(P<0.05),且有显著性差异;尼莫地平组给药期对声音的正确反应率为(15.5±6.6)%,与给药前相比(21.3±9.0)%,曲线呈轻度下降(P>0.05),但无显著性差异;中药复方大剂量组给药后对声音的正确反应率为(11.7±7.5)%,与给药前相比(16.4±7.0)%,曲线稍有下降(P>0.05),无显著性差异;中药复方小剂量剂量组给药期对声音的正确反应率为(1 1.5±4.5)%,与给药前相比(16.5±4.0)%,曲线亦略有下降(P>0.05),无显著性差异。
3 讨论
众所周知,水杨酸钠可引起可逆性的听力下降和耳鸣,其耳鸣通常表现为首发的或唯一主观症状。水杨酸钠已成为耳鸣研究中常用的工具药物[2],经水杨酸盐诱导建立的耳鸣动物模型是目前最常用、有效的建模方法。为深入研究耳鸣形成机制及有效治疗方法,自Jastreboff[3]创立基于饮水抑制的耳鸣动物行为学模型以来,国内外学者从不同的应用角度出发,对这一方法进行了多种改进,但在操作上仍存在不完善之处[4]。
2003年Guitton等[1]利用跳台法建立的耳鸣动物模型也取得了令人满意的结果。与饮水抑制法相比,此模型具有在实验过程中对动物的全身状态影响较小的优点。本实验根据Guitton的跳台法耳鸣动物模型,并加以适当地进行了如下改进:①针对文献报道中条件刺激结束1秒后给予30秒的非条件刺激的方式,考虑到耳鸣为持续性信号的特点,我们将条件声刺激增加为20秒,以使外界声信号与耳鸣的存在形式更为相似。非条件刺激持续时间至多17秒,与声刺激同步进行,使动物在接受电击的同时始终有声刺激的存在;②文献要求在条件刺激结束1秒后给予非条件刺激,但我们在条件反射训练过程中发现动物较难在1秒内对声音作出正确反应,因此我们将条件刺激和非条件刺激出现的时间间隔设为3秒,取得良好的效果。③Guitton将动物至少在连续3个训练系列(即连续30次条件反射训练)中对声音的正确反应率均≥80%判定为条件反射建立成功。但在参加本次实验的30只大鼠中仅有1只在训练中期完全符合这一条件,在训练后期其正确反应率成下降趋势。其余大鼠声音的正确反应率均较低,范围在0.8%~65.2%,平均正确反应率仅为20.4%。因此把动物至少在连续3个训练系列中对声音的正确反应率均≥80%作为条件反射建立成功的条件是值得商榷的。此外,在训练过程中我们发现大鼠对电刺激的状态反应波动较大,时而灵敏时而迟钝,这些都是需要重视的问题。
除把正确反应率列为跳台法动物行为学指标之外,Guitton又同时引入“假阳性反应次数”即把在刺激间隔期(未给予声刺激)动物跳上跳台的次数作为动物行为学指标。他认为动物注射水杨酸盐后感受到了耳鸣的信号,与训练中的声刺激相联系,诱发了对电击的恐惧反应,导致出现跳台动作,假阳性反应增加。然而在本实验给药前期中,部分大鼠尤其是正确反应率较高的大鼠存在着明显的假阳性反应,我们把大鼠从跳台上取下,大鼠随即跳台躲避或给予声刺激后跳上跳台。我们推测,随着大鼠对训练过程的熟悉,其对电刺激这一危险信号可能已建立起预警防御机制以避免电刺激带来的疼痛反应。因此,把假阳性反应次数列为动物行为学指标是值得商榷的。总之,利用该跳台法建立的耳鸣大鼠模型仍有改进的余地。
本次实验结果显示,水杨酸钠模型组给药前后的正确反应率出现了显著性差异,证明动物感觉到了耳鸣的存在;尼莫地平组给药前后的正确反应率差异无统计学意义,提示尼莫地平可改善水杨酸钠所致耳鸣。尼莫地平为双氢吡啶类的钙通道拮抗剂,其药理特性是能调节细胞内钙的水平,有抗血管收缩和抗局部缺血的作用[5],可能通过改善内耳局部微循环而改善耳鸣症状。中药复方大、小剂量组给药前后的正确反应率差异无统计学意义,提示补肾活血方对水杨酸钠致大鼠耳鸣可能有一定的改善作用。中医认为耳为肾之窍,肾病则耳病,故耳鸣多与肾虚相关。耳鸣之治,补肾为治虚鸣之首。实验中所用的补肾活血方取自于临床实践中对部分肾虚耳鸣者治疗有效、无副作用的方剂,其治则为补益肝肾,活血化瘀,安神利窍。从现代药理学的观点来看,组方中的药物具有促进肾上腺皮质分泌功能进而调节机体代谢的作用、降低中枢神经的兴奋性、调节大脑皮层功能、改善微循环等作用[6]。本实验所用的补肾活血方能改善水杨酸钠所致的耳鸣,但实验结果并不能提示是通过什么途径达到此效果的,其作用机理尚待进一步深入研究。
摘要:目的:建立跳台反射法耳鸣动物行为学模型,并观察药物对其影响。方法:将30只健康雄性Wistar大鼠于隔音室内进行条件反射训练,并在训练期间记录各大鼠对声刺激的正确反应情况。经(20~27)天的强化训练后,动物基本形成“声刺激-跳台逃避”的条件反射。根据动物正确反应率大小随机均衡分为水杨酸钠模型组、尼莫地平组、补肾活血方小剂量和大剂量组,并给药观察测试,分别记录各组动物在给药期间对声刺激的正确反应率。结果:模型组动物给药期间正确反应率,经方差分析,与给药前存在显著性差异(P<0.05),说明大鼠经注射水杨酸钠后有耳鸣的产生。尼莫地平组、补肾活血方小剂量和大剂量组与给药前相比较,均无显著性差异(P>0.05)。结论:跳台反射法耳鸣动物模型可验证水杨酸钠动物耳鸣的产生,可为耳鸣的基础研究提供一种较好模型。补肾活血方对水杨酸钠致大鼠耳鸣有一定的改善作用。
关键词:耳鸣模型,大鼠,水杨酸钠,补肾活血方
参考文献
[1] Guitton MJ,Caston J,Ruel J,et al.Salicylate induces tinnitus through activation of cochlear NMDA receptors. The Joumal of Neuroscience,2003;23(9) :3944~3952
[2] 施建蓉,胡寿铭.耳鸣动物模型的建立及药物对大鼠耳鸣的影响[J].中国应用生理学杂志,2000;16(3) :275~278
[3] Jastreboff P J, Brennan J F, Coleman J K,et al. Phantom, Auditory Sensation in Rats: An Animal Model for Tinnitus. Behavioral Neurosicence, 1988;102(6) :811~822.
[4] 贾明辉,秦兆冰耳鸣动物行为学模型的制作[J].听力学及言语疾病杂志,2007;15(1) :73~75.
[5] 张宏颖,张砚.应用尼莫地平治疗老年性耳鸣[J].中华临床医学研究杂志,2005;11(19) :2823