欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    [Web20桌面与移动应用程序安全性设计]net应用程序安全性警告.docx

    • 资源ID:86248653       资源大小:94.10KB        全文页数:8页
    • 资源格式: DOCX        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [Web20桌面与移动应用程序安全性设计]net应用程序安全性警告.docx

    访问控制、防火墙、入侵检测系统,以及入侵防御系统组成了一个完整的应用程序安全防线,向应用程序提供了全方位的保护。但是,这些机制并不能百分之百地防御网络应用程序攻击。因为这些应用程序是基于网络的,网络用户与应用程序进行的通讯支持直接的网络攻击,使得已建立的安全防线保护形同虚设。攻击者意识到了这一点,因此直接的网络应用程序攻击是当前大多数网络攻击类型。为了平衡这种状况,应用程序开发人员必须有意识来建立防御攻击的策略。他们必须要考虑一些构成一系列网络攻击方式的因素:大多数的网络应用程序开发人员都不是安全方面的专家,也不会意识到大多数存在的问题。许多开发人员都不会意识到网络应用程序开发中的最佳安全实践方式。功能通常最受人重视,而安全性问题都会在最后才会得到处理。部署网络应用程序的环境通常都会发生变化,包括应用程序代码自身的更新,以及基础设施的变化。有一些更改没有受到安全领域专家的足够重视。如果每一个应用程序开发人员都考虑以下因素的话,那么他们可以写出更好的代码。得到培训。查找建立的模式。将测试集成到开发计划之中。及早报告漏洞的存在。本文旨在帮助一些开发人员和部署人员,处理一些影响到 Web 2.0 应用程序的常见网络应用程序安全问题。文中还提供了一些关于移动设备特定安全性问题的介绍。常见的网络漏洞接下来的部分介绍了开发人员必须理解的顶级问题。跨网站脚本在这种一般的攻击中,恶意代码会植入到第三方的受信网站之中。如果 HTTP 请求可以将其注入到最终 HTML 页面上的话,那么跨站点脚本漏洞就向这种攻击开放了。例如,一项服务会接受名为 image 的参数,来接受来自于文件系统的图片,来执行一些处理:omedomain/myImageProceor image=myimage.jpg一个入侵者可以通过向 image 参数插入 JavaScript 代码,来占用该应用程序。其意图是耗尽错误处理系统的资源。如果一个包含恶意脚本的出错信息会被生成的话,那么入侵者就可以利用这一点了:omedomain/myImageProceor image=myimage.jpg如果出错信息返回图片参数的内容,而不用筛选的话,那么代码就会封闭到 作为搜索关键字输入时的结果。脚本代码会在搜索结果中显示出来,代码会得到执行,而警告窗口也会显示出来。图 3. 输入“JavaScript”作为 JavaScript 执行中的搜索词语结果反制措施按照下面的方法来避免跨网站脚本(某SS):不要向用户显示不受信任的输入。采取措施预处理输入与输出,以删除恶意代码,例如筛选或者 白板列表(定义什么是允许输入的,什么是不允许输入的)。Encode 输出以避免浏览器执行。对于 Altoro Mutual 来说,一个简单的修复操作将不会返回搜索结果。SQL 注入这种攻击同样关注于找到请求的缺点,然后向网络呈现的输入区域插入一个 SQL 条目。能够插入查询作为输入区域一部分的入侵者可以轻松绕过一个网站的认证机制,并访问数据库。这种攻击,与跨网站脚本一起已经泛滥了。这种范例向您展示了怎样使用 SQL 注入来耗尽一个结构糟糕的登录应用程序:一个网络应用程序会催促您输入一个用户名和密码来进行登录,而 SQL 语句是按照下面的方式组织的:String query = "SELECT 某 FROM uer WHERE uer =""uername+"" AND paword =""pawd"""变量 uername 以及 paword 没有得到细致的处理,并分配给用户在应用程序中输入的值。这就使得一些恶意的用户可以输入 uername 之类的值:anything" OR 1=1 -密码可以是任意值。在这种情况下,假设它是一个星号:某。对于输入来说,当代码替换 uername 以及 paword 变量时,结构化的查询是:SELECT 某 FROM uer WHERE uername ="anything" OR 1=1 - AND paword ="某"该语句解释了密码需求,并插入状况 1=1,这条语句的值一直都是真的。就算没有相关的权限,攻击者也会被确认为一个有效的用户。这种攻击在 Altoro Mutual 网络应用程序进行了演示(参见图 4)。切换至登录页面,并输入 anything" OR 1=1 - 的用户名以及任意的字符作为密码,就可以作为管理员登录了(图 5)。该账户有控制其他用户账户的权限。图 4. 尝试用任意的一个用户名以及一段 SQL 代码作为密码进行登录图 5. 执行 SQL 注入攻击之后攻击者作为管理员登录就像跨网站脚本一样,这种攻击是糟糕的或者根本不存在的输入检验和确认系统造成的结果。反制措施您可以执行以下操作以防御这种攻击:不信任来自用户的所有输入。采取措施来检验用户的输入,例如筛选或者白板列表。在 Altoro Mutual 案例中,一个可能的解决方案是筛选来自 Uername 与 Paword 区域的非字母数字字符。信息泄露一个有意志的攻击者可以通过识别缺点来研究一项应用程序。例如,一个攻击者可以按照不同的方式来获取信息:手动研究应用程序以做到隐藏的目录系统性地收集例外情况,以查看应用程序是否给出了详细的例外情况扫描 HTML 以得到揭示应用程序基础及行为具体内容的注释系统性地输入用户名以找出已存在的账户Altoro Mutual 应用程序会在系统之中泄露已存在的用户名。例如,在图 6 中,输入一个不正确的用户名和密码会产生这种出错信息:“登录失败:抱歉,在我们的系统中找不到该用户名。请重新尝试。”图 6. 应用程序清晰地声明系统中没有做到该用户接下来,入侵者会尝试用户名 jmith,而 Altoro Mutual 网络应用程序会收到以下的信息:“登录失败:您输入的密码无效,请确认后重新输入密码”。于是,入侵者从以上信息上了解到有一个用户账户名为 jmith。在此基础之上,入侵者可以把注意力放到破解密码上面,或者使用暴力破解方法来发现密码。图 7. Altoro Mutual 应用程序泄漏了用户名 jmith 的存在在这种情况之下,修复方法可以是产生一种通用的登录信息,不会精确地指出什么地方没有输对,例如:“登录失败:用户名或者密码无效。请确认后重新输入您的信息”。反制措施对于应用程序来说,信息泄漏需要受到人们的重视,开发人员的意识是最好的防御手段。记住这一点,开发人员可以考虑一些减轻问题的措施。所有评论的清晰 HTML 代码会揭示应用程序的实际情况。不要在浏览器中显示特定的例外。如果必须登录,将它们存储在服务器上,并显示常见的错误。不要揭示哪一部分的认证错误。同样,配置网络服务器和应用程序服务器设置,以避免在网站和应用程序上任意的导航。这种类型的信息泄漏不会再耗费您的精力了。查找特定应用程序和运行环境存在的其他泄漏问题。您可以在 OWASP 培训页面上找到关于信息泄漏的更多信息。参数干扰这些类型的攻击旨在控制传递给应用程序的参数。想象一下一段糟糕的应用程序让客户来设置要购买商品的价格。这一应用程序可以发送以下的请求:omedomain/myStore item=1234&price=$200如果业务逻辑并不会在服务器端执行任何类型的双重-检查的话,那么入侵者可以更改价格,以更低的价格买到商品。在这种情况下,允许从客户端更改价格显然是一个 bug。反制措施为了解决这一特定示例中的问题,您可以更改代码以从服务器的数据库端获得价格的信息,避免价格控制问题的产生。避免这种类型攻击的反制措施包括:参数确认,以及对应用程序逻辑进行仔细检查。cookie 破坏所谓的 cookie(缓存)就是服务器向客户端发送的信息,作为关键字/值对存储在一个文本文件或者内存之中。它的内容可以被创建该内容的网络应用程序使用。在执行一次网络应用程序之后编辑缓存的内容,缓存 破坏 攻击就发生了。反制措施cookie 破坏的反制措施包括参数认证,以及应用程序代码和逻辑的仔细检查。高级安全性机制也可以得到应用。一种常见的方法是使用数字签名,来确认文本文件存储没有受到篡改。另一种反制措施是在传递期间将其加密,以保护缓存。将安全性集成到开发过程之中安全成为网络应用程序开发的一个重要组成部分,也是移动网络应用程序的组成部分。许多公司机构非常注重软件交付。但是,在交付阶段修复一项缺陷的成本是非常高的。因此,将安全性评审和测试作为开发过程必要的一部分,是非常明智的。在整个开发过程中,从设计到部署,集成式地考虑安全性问题是最有效的。设计阶段在设计阶段,需要识别什么信息需要保护,存在什么风险,是否可以采取什么反制措施。在早期阶段所有可能的地方,将来自公司内部的安全专家加入到所有讨论和决策过程当中。这降低了开发周期晚期阶段才发现错误的可能性。晚期阶段才发现问题会导致问题解决起来更加困难和代价高昂。在设计阶段识别实践性的场景以便测试。这有助于为开发周期的测试建立一个集成化的进程。部署过程中不断增加的安全性测试(例如压力测试)可以帮助一家公司优化需要的技术,以确保品质优良的应用程序的开发。开发阶段培训开发人员去熟悉一些常见的问题以及安全性代码实践。在代码评审过程之中,处理安全性问题,包括机构的安全领域问题。实施安全测试,评审它们,并将它们加入到自动化测试套件内。开发团队应该计划一下处理代码评审和测试期间找到的安全性问题。部署阶段在预生产阶段完全地测试完成后的应用程序。这阶段的测试可能包含外部团队或者自动化安全扫描工具执行的应用程序压力测试。IT 治理实践通常会指定最终批准的标准。管理阶段部署之后,您可以使用扫描工具,压力测试,以及审计日志,来阶段性地监视应用程序及其环境,预防可能的攻击和问题。建立一个清晰的进程,以安全性地修改应用环境,并给应用程序打补丁。在开发阶段实行安全测试的自动化当您在建立一个最佳实践时,开发周期内创建一个可重复和稳定的安全性进程的关键在于自动化。IBM Rational AppScan 产品提供的工具,可以扫描代码,以帮助开发人员找到问题所在。在开发的后期可以重复使用自动化扫描工具,以监视部署的应用程序。在应用程序或者基础设施更改时,这将使得部署的网络应用程序得到较好的监视,并帮助您检查不经意间引入的安全性问题。Rational AppScan 家族的产品在开发与部署阶段提供了这些活动的自动化功能。开发阶段Rational AppScan Source Edition: 对于应用程序开发人员来说,该工具提供了代码的白盒分析功能,这样开发人员就可以在开发的早期阶段就识别到存在的问题。它还向开发人员提供了关于可能找到问题及其补救措施的信息。Rational AppScan Teter Edition: 对于质量保证(QA)团队来说,该工具有助于实现安全测试的集成化和自动化。测试员可以将其添加到已存在的测试环境,以将安全性测试集成到功能性测试以及性能测试。Rational AppScan Build Edition: 该版本支持在构建期间安全性问题扫描的集成。它与构建管理系统集成在一起,例如 Rational® Build Forge®,并且可以通过缺陷管理软件来追踪开发人员的报告,例如 Rational® Clear Quet®。部署阶段Rational AppScan Standard Edition: 对于安全审计员来说,该版本执行部署应用程序的黑框检查。审计员可以指定已存在应用程序的 URL(一般是在一个预生产系统上),而工具会扫描应用程序以检查问题。接着会创建一个优先级问题的列表,以及关于每一个处理措施的详细信息。开发与管理团队定制报告的创建也是支持的。Rational AppScan Enterprie Edition: 对于团队来说这是一种基于网络的多用户工具,它们需要以一种集中的方式处理应用程序扫描问题。就像 Rational AppScan Standard Edition 一样,它会扫描已存在的应用程序,并生成优先性列表和修复任务的报告。它有助于分配任务,以解决问题。从移动设备访问网络应用程序的独特性挑战应用程序和设备的许多风险,增加了当前桌面应用程序的问题。识别和访问控制的当前操作超出了本文的讨论范围,但是网络应用程序治理涉及到的标准领域包括:扫描应用程序上已存在的问题访问控制用户识别与认证末端识别与管理Malware移动设备由于其高度的定制性和移动性本质,呈现出较大的挑战性。移动设备更容易丢失。智能手机滑出口袋或丢失在出租车和飞机上,现在成为越来越常见的情形。智能手机也容易成为盗贼的盗取目标。出于这些原因考虑,移动设备能够访问的网络应用程序必须采用额外的安全性措施。部署移动设备时公司治理处理的其他领域包括:多因素认证:合并两种认证方法,例如,如果有条件的话,可以使用密码和指纹读取设备。设计精细的访问控制机制:用户应该被授予权限获得需要的资源,去完成自己的工作,或者更多。所有的访问控制机制都应该尽可能地完美。限制访问:支持从 Virtual Private Network(VPN)的因特网上访问内部网资源。数据加密:对于敏感性数据,匹配设备功能与需求。管理:如果能够访问敏感性信息的话,那么对于丢失或者被盗设备来说,建议使用设备的 安全抹除功能。总结桌面和移动设备的 Web 2.0 应用程序有一些共享的安全性问题,因此,也有相应的反制措施。开发人员必须对一些常见的问题有较好的认识,并学会在整个开发的生命周期内处理它们。开发和部署期间他们需要持续性的自动化搜索功能,来保证应用程序的安全性。移动设备由于其高度的定制性和移动性本质,呈现出独特性的挑战。在您部署移动性方案之前,您需要计划一下如果设备被盗或者丢失的话,数据的安全性问题

    注意事项

    本文([Web20桌面与移动应用程序安全性设计]net应用程序安全性警告.docx)为本站会员(教****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开