精华内容
下载资源
问答
  • javaWEB安全开发基本原则

    千次阅读 2019-01-14 19:49:35
    javaWEB安全开发基本原则 最小化设计 用户输入最小化,尽可能少地使用用户的输入 用户输入范围最小化,过滤参数时尽量使用白名单策略 用户权限最小化,只对用户进行所需的最少授权 输出数据字段最小化,限制数据输出...

    javaWEB安全开发基本原则

    最小化设计

    	用户输入最小化,尽可能少地使用用户的输入
    	用户输入范围最小化,过滤参数时尽量使用白名单策略
    	用户权限最小化,只对用户进行所需的最少授权
    	输出数据字段最小化,限制数据输出并且不输出业务无关的数据
    

    所有(客户端)输入都不可信

    	通信协议中从客户端传来的一切数据
    	从数据库/文件/网络等,一些不直接来源于用户,但又不是程序中定义好的常量数据
    

    安全编码不依赖任何安全配置

    	编写程序时不能有侥幸心理,不能依赖于配置文件的安全选项
    

    禁止输出程序错误或调试信息

    	程序的错误和异常进行统一的日志记录,禁止输出到用户界面
    

    禁止任何程序后门

    	应用系统不应保留任何非正常渠道需求的功能点.例如,出于程序调试目的的后门代码等
    
    展开全文
  • 软件安全开发 - 流程规范

    千次阅读 2019-03-20 15:37:20
    写一篇软件安全开发流程分享给大家,帮助从事软件开发,测试,管理的人员,规范操作,重视软件工程安全。 现今社会存在各种网络安全事件,比如勒索病毒导致许多网络系统瘫痪,大量注册用户个人数据泄露导致企业...

      写一篇软件安全开发流程分享给大家,帮助从事软件开发,测试,管理的人员,规范操作,重视软件工程安全。

          现今社会存在各种网络安全事件,比如勒索病毒导致许多网络系统瘫痪,大量注册用户个人数据泄露导致企业面临破产,银行职员留后门为自己牟利。网络安全形势严峻,各个国家、政府、企业、医院、学校都积极投入到捍卫网络安全,保护公司资产,维护用户合法权益的保卫战当中,网络安全工程师成为新兴和稀缺岗位。

    一、优秀软件安全开发流程

           微软为了提升公司研发的操作系统和各类办公软件的安全,提出了SDL security development lifecycle(安全开发生命周期),即从安全角度指导软件开发过程的管理模式。SDL是一个安全保证的过程,重点是软件开发,它在开发的所有阶段都引入了安全和隐私的原则。

    以下是微软SDL流程框架图:

    其主要由以下7部分组成:

    1、安全培训(training):提升团队安全意识,对齐安全要求

    2、需求分析(requirements): 建立安全需求管理、安全质量标准、安全与隐私风险评估

    3、系统设计(design): 制定设计规范、攻击面分析、威胁建模

    4、实现(implementation):使用优选工具、消减危险函数、对代码进行静态安全检查

    5、验证(verification): 动态安全测试、Fuzz测试、攻击面评审

    6、发布(release): 制定安全应急响应计划、最终安全审计、发布归档

    7、响应(response):执行安全应急响应计划

     根据微软的SDL流程框架,我们看出软件安全开发是软件开发的必然趋势,即必须要将安全纳入到传统软件开发流程的每个环节。

    二、总结软件安全开发流程新增的安全活动

    传统软件开发流程

    软件安全开发流程新增项

    客户需求收集

    客户安全需求收集

    需求分析与澄清

    分析客户安全需求,制定安全标准和要求,建立安全需求管理、安全与隐私风险评估

     

    软件设计

    在特性设计中结合安全设计规范进行安全设计,对模块进行威胁建模和攻击面分析

    软件编码

    1. 安全编码:新代码使用安全函数,老代码替换危险函数,对代码进行安全检视;
    2. 使用第三方开源工具或者库,需要使用最好的最新的

    版本构建

    1. 满足安全编译选项的要求
    2. 选择安全的构建工具

    软件测试

    1. 对安全设计进行分析与评审,输出安全测试用例
    2. 对软件暴露的接口进行Fuzz测试
    3. 对软件暴露的攻击面进行攻防渗透测试
    4. 对软件进行安全扫描与漏洞挖掘

    客户质量验收

    1. 提供验收的安全交付件,如安全设计说明书、安全测试报告
    2. 提供测试环境给客户,让客户进行安全评估

    发布与运维

    1. 制定安全应急响应计划,并在实际运维中落地
    2. 日常运维中做好安全巡检,遇到黑客攻击,及时告警,并快速修复安全漏洞

     

     


     

    展开全文
  • 对于没有基础的人来说,对软件开发又很感兴趣,但又不知道前端发展好还是做后台发展,此时比较迷茫的朋友们本文或许可以给你比较的启示。希望能帮助到大家。



    对于没有基础的人来说,对软件开发又很感兴趣,但又不知道做前端发展好还是做后台发展好,此时比较迷茫的朋友们本文或许可以给你比较好的启示。希望能帮助到大家。


    一、从后台转前端, 将要舍弃的有哪些呢?

    具体的开发技术,知识;
    开发过程中所获得的关于特定技术的实践经验;
    这些在技术进阶、职位晋升过程中起着比较重要的作用;


    如果已经有了很多的积累, 所舍弃的还是比较多的, 那就要看这个人的决心和性格了,是选择安稳还是冒险。实际上,具备一两年后台开发经验的初级工程师转前端开发,相比那些通过编写页面进入前端的人拥有更多的优势:


    1. 后台开发者通常从比较成熟的后台技术体系中学到了很多有益的思想、方法和技能,比如设计模式、迭代开发等,以及对编程语言、工具、方法和开发框架的运用能力。


    2. 他们实际上花费较少的代价就可以很快熟悉和使用前端语言、开发技术及相应框架,达到与同等工作年限的前端人员的水平,并且,由于其特殊的后台开发背景显得与众不同。


    3. 更注重工程的可维护性、系统整体和代码质量, 关注前端架构, 而不是陷入编写页面那些琐碎的细节;


    这就好比一个学工科的童鞋进入文科领域,智商是足够的,所要弥补的是对美的感知。前端开发与后台开发的本质是一致的, 都是为了解决问题, 都是运用智慧、技术和框架来构建应用系统的一个组成部分,不同的是关注的侧重点。前端开发无疑是给软件增添了一种灵性之美, 让用户感受到使用更舒畅。



    二、除了这些“直接”的价值,是否有长远价值呢?

    我希望能作出怎样的成就?
    我是否能够以及如何在前端开发领域中实现自己的愿景呢?
    此外,有足够有趣好玩的事情吗?
    在前端领域有哪些值得探索的前沿技术呢?


    1. 前端的最直接价值是为软件增添灵性之美, 增强用户体验。

    2. 前端的内涵是数据呈现与交互, 外延其实很广,除了视觉设计、交互设计等倾向于设计的方面,也有数据可视化技术这种可比拟搜索技术的极具研究性的课题。

    3. 即使是开发层面,将前端视为完整应用系统的一个重要组成部分,从工程的角度来审视,也可以看出前端开发领域不逊于后台的深度,这包括浏览器技术、前端语言设计、框架开发、标准制定、移动终端等很多方面;前端不仅仅是JS,CSS 之类的页面开发,不是JS 框架。

    4. 没有前端的完美体现, 后台做再多工作,最终效果都会大大打折。

    5. 如果有什么新奇的想法,比如人工智能, 也可以在最贴近用户的层面直接做,可以考虑在 Javascript 中嵌入 LISP 语言。


    这说起来,可有一点难度了。前端开发没有技术含量?非也!事在人为, 用心的人总能做到最好。前端,大有可为。


    三、选择前端, 将面临怎样的世界?

    就像进入一个战场,首先要摸清地形和敌情,而不是贸然冲锋。

    想起前端,通常会令人联想起不可胜数的细节微调,浏览器兼容问题等令人颇为头疼的问题, 那真是考验耐心、耗费大好光阴的地方。相比处于平稳发展期,在编程语言、开发框架、库、组件、软件工程规范等都形成了百花齐放的局面的后台来说,前端确实够“混沌”了。只能说,前端开发是一个值得挑战的领域,迎接每一个敢于直面“混乱”的勇士。


    当然,问题总有解决的办法。 后台开发,不也是从混乱中一步步走出来的么?细节微调?


    那就更深入地理解定位和布局知识,精准地计算,那不就转化为考察严谨的能力了?浏览器兼容问题, 根本原因在哪里?是不是能够更加促进理解浏览器技术?


    一个真的勇士,敢于正视惨淡的人生,敢于面对淋漓的困境, 用精湛的技艺和无畏的胆识创出属于自己的一片天地。


    四、前端ER如何确立自己的优势?

    这通常也是做前端ER容易纠结的困惑之一。花费了大量时间、气力去改进页面外观,去改进用户体验,而在技术精进上似乎看不到明显的东西,不像后台开发人员,聊起技术侃侃而谈。


    前端ER必须探索出一种可靠的职业能力模式,很好地展示自己的技术实力和设计理念,赢得雇主的青睐。


    怎样才能与普通的页面编写人员区分出来呢?

    • 首先, 真正娴熟地掌握前端编程的开发,理解其中的机制和原理;
    • 其次,去思考前端架构方面的东西,致力于构造可维护性强、稳定、可靠、快速的系统;
    • 最后,选择一种自己感兴趣的前沿技术来探索,致力于全新的用户体验,去做些别人不曾做过的事情。

    其实优势并不仅仅在于自己具备什么,更在于自己是否拥有运用它的天赋和嗅觉。


    你能够用自己的所学创造出别人做不出来的东西, 尽管你的所学是通用的;你在程序、技术、项目、产品上具备广泛的能力、引导力和影响力, 具备无可替代性;技术能力,只是一个侧面;而人, 是一个综合体。


    开发人员未能利用技能去探索自己感兴趣的东西并助推工作,而只是做别人指定的功能,这真是一个遗憾。我们应该运用自己所掌握的技术技能去探索自己感兴趣的领域,并将其应用于现实,产生效益和影响,而工作只不过是这一行为的衍生品而已。我们需要自己去发现价值,而不是总让别人牵着走。 让那些没有方向感的人去做那些别人指定的事情吧!


    五、前后端的异同?

    后端更注重服务的安全、可靠、可用性;而前端更注重美观、易用性。两者均追求稳定、性能优化。
    

    在上层,前后端会形成不同的技术体系和平台架构, 而在下层, 两者又是相同的, 语言、引擎、规范,更优雅地执行。


    因为两者在本质上是一致的,因此,做前端开发的时候,完全可以从比较成熟的后台体系中汲取有益的启发;当然,前端更注重细节,后台更注重严谨。


    六、其它一些比较现实的问题

    前端的“钱途”?

    当然,非常值得关注的问题。 由于计算机软件发展的缘故, 人们最先更注重功能的实现,而前端只是作为一种补充,用来配合后台开发。而在更注重用户体验的今天及未来,前端已经成为更贴近用户的一种独立力量,将可能引导后台开发,至少与后台平起平坐,地位提高了,待遇自然会上去。




    展开全文
  • 随想录(功能安全和软件开发

    千次阅读 2018-12-16 22:29:58
     要说现在汽车软件开发,最火的安全概念就是功能安全。至于标准,那就是ISO26262。当然标准只是提供了一个规范,具体怎么,大家都是摸着石头过河。不过可以明确的就是,功能安全涉及到软件和硬件两个方面,当然...

    【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】

     

        要说现在汽车软件开发,最火的安全概念就是功能安全。至于标准,那就是ISO26262。当然标准只是提供了一个规范,具体怎么做,大家都是摸着石头过河。不过可以明确的就是,功能安全涉及到软件和硬件两个方面,当然功能是前提。下面主要总结一下个人最近这方面的一些想法。

     

    1、功能安全=功能+安全

        没有功能的安全都是耍流氓。首先需要谈功能,否则即使安全了,也没有人来买单。

     

    2、功能安全很多时候和成本是冲突的

        功能安全常常要求双备份、主备同步。这要是软件来做还好,无非增加一些工作量。但是如果硬件做,那就是实实在在的成本。

     

    3、符合功能安全的chip成本大于普通chip

        很多时候,一些自称符合功能安全的soc会涨价很多,但是相同功能却不含功能安全的soc则要便宜很多。DDR也一样。

     

    4、功能安全要求编译器提供新的功能

        传统编译器可能只负责代码生成,但是功能安全要求编译器生成额外代码,包括代码覆盖率、性能分析和堆栈检查等等。

     

    5、功能安全要求rtos平台

        目前开源社区最大的平台是linux,但是它本身不是rtos。如何将linux改造成可抢占、没有优先级翻转的rtos,这本身就是挑战。

     

    6、功能安全的软件

        如果说传统的软件只是完成基本的功能,那么功能安全要求流程安全、数据安全、监控安全、算法安全。

     

    7、功能安全离不开业务团队的支持

        很多时候功能安全的同学不太熟悉硬件、软件,他们自己没有业务团队的支持,可能根本无法开展工作。

     

     

    展开全文
  • 动态网站Web开发用什么语言?PHP、ASP还是ASP.NET。这是一个 经常被提出的问题,并且它很容易把人们带入争论Linux还是Windows的歧途。这样的争论事实上反映出了对于相互竞争的Web开发技术要进行并行分 析是...
  • 程序员前端好还是做后台

    万次阅读 多人点赞 2019-05-24 10:21:01
    从事嵌入式开发多年,最近在后台相关相关的开发,现在很多程序员在学校或者入行之前都会考虑是选择前端开发还后台研发,很多女生或者基础不是很的学生一般会选择前端开发,现在的前端算是比较火,也是很多培训...
  • 安全开发生命周期(SDL)是一个帮助开发人员构建更安全的软件和解决安全合规要求的同时降低开发成本的软件开发过程。 安全应用从安全设计开始,软件的安全问题很大一部分是由于不安全的设计而引入的,微软用多年的...
  • 游戏开发这八年

    万次阅读 多人点赞 2019-08-25 19:11:08
    游戏开发这八年简述与编程擦肩而过从图像设计到痴迷编程入门编程沉迷编程Java的图形编程就职游戏开发2011,第一次面试&实习生第一个游戏2012年,第二个重量级IP游戏2013年,转战手游与创业2014-2015,第一次...
  • Java也非常就业,薪资也恨可观。我国现在最看中的就是IT和AI,java就属于前者,IDC数据统计,在所有软件开发类人才中,对java工程师的要求占全部需求量的60%-70%。 Java在国内外受欢迎的程度也只增不减,尤...
  • 前端和后端哪个工资高?前端好还是做后端

    万次阅读 多人点赞 2020-03-04 10:44:25
    要问前端好还是做后端?其实无论前端还是做后端,只要有实力,其实差别并不大。主要还是要看你喜欢哪个,适合哪个。 前端工作内容: 前端开发主要的是用户所能看到的前端展示界面。前端开发用到的技术...
  • Web 开发常见安全问题

    万次阅读 2016-03-01 19:46:11
    这就是这篇科普文章的存在意义,希望 Web 开发者在开发时能依此逐条检查代码中的安全问题。 注:服务器运维相关的安全注意事项不在本文之列 这篇文章主要包含以下内容: 前端安全 XSS 漏洞CSRF 漏洞 后端安全...
  • PHP开发api接口安全验证

    万次阅读 多人点赞 2017-03-20 12:41:04
    使用PHP写api接口是经常的,PHP写接口后,前台就可以通过链接获取接口提供的数据,而返回的数据一般分为两种情况,xml和json,在这个过程中,服务器并不知道,请求的来源是什么,有可能是别人非法调用我们的接口...
  • 软件安全开发生命周期-基础理论

    千次阅读 2018-05-25 17:32:02
    一、SDL简介SDL security development lifecycle(安全开发生命周期),是微软提出的从安全角度指导软件开发过程的管理模式。SDL是一个安全保证的过程,起重点是软件开发,它在开发的所有阶段都引入了安全和隐私的...
  • Java 对外接口开发安全如何避免

    千次阅读 2017-11-28 00:30:52
    Java 对外接口开发安全如何处理,之前用的是http post提交 结果安全还是没保障; ------解决思路---------------------- 如果可能,用些单点登录框架,不能的话,双方约定认证方式,加解密方式等等 ----...
  • Android地图开发 安全码生成

    千次阅读 2015-11-28 19:33:13
    最近在学习安卓地图开发,可是无奈Google地图在使用的时候有很多限制,只好使用百度地图了,但是百度地图在使用其API的时候我们先得申请一个API key。但是当我们申请的时候会发现需要输入一个“安全码”的东西。看了...
  • ISO26262功能安全--产品开发过程

    千次阅读 多人点赞 2019-10-18 14:37:48
    2.4 安全需求与安全概念 3. 系统阶段——闭门造神车,我们开始修炼 3.1 技术安全需求(TSC) 3.2 系统架构设计 3.3 安全分析与独立性分析 3.4 软硬件接口(HSI) 4. 硬件阶段——苦其心志,苦练经骨 4.1 硬件...
  • Unity3D用什么语言开发好?用什么开发工具?
  • 软件安全开发周期 - SDL

    千次阅读 2007-05-08 15:12:00
     概述安全开发周期,即Security Development Lifecycle (SDL),是微软提出的从安全角度指导软件开发过程的管理模式。SDL不是一个空想的理论模型。它是微软为了面对现实世界中安全挑战,在实践中的一步步发展起来的...
  • 选择最好的PHP MVC开发框架

    千次阅读 2011-05-27 00:38:00
    因为在实际使用中,即使是不使用框架,也总会创建一些辅助类库,并在运行时加载,比如安全、日志,而且性能和类库加载策略有关。再加上代码缓存、页面缓存等技术,实际上一些流行的成熟框架在经过充分的优
  • JavaWeb开发使用jsp还是html前端页面

    万次阅读 2019-03-03 14:12:00
    刚开始学习Javaweb开发的小伙伴都有一个疑惑:用jsp开发前端还是用HTML开发前端呢? 这个疑惑的来源主要是:刚接触完前端但又不深入学习js,接着学习jsp,发现老师们都一直用着jsp页面进行教学,发现自己一直...
  • 关于WEB开发-jsp的安全

    千次阅读 2010-03-18 09:56:00
    虽然了大半年的web开发了,但一直浮于表面,东西会,但很多原理不通,要想成为技术牛人光会是远远不行的,因为即使会但不会讲且不能举一反三,哎,想当年高中数学之所以这么就是因为高中数学原理我都...
  • 刚接触微信开发,对后台设置的几个域名有点... 也不知道是否有其他用处,现在微信后台(服务号设置3个)2.JS接口安全域名: 主要是基于微信的js开发相关功能,如自定义分享功能,录音,上传视频等。具体参见https://...
  • 前端好还是Java?看这三方面

    千次阅读 2018-01-20 23:53:39
    这几年来伴随着互联网的迅速发展,新兴互联网产业的兴起,传统行业也逐渐开始互联网化,使得互联网职业在这样的背景下成了备受瞩目的热门职业,其中“前端开发”和“Java开发”就是热门职业其中之二,两者在关注度和...
  • 前面在学习使用google的protobuf时在VS2012中一直无法编译编译通过,经过查找一些资料...现在就来说说为什么没有编译通过,在VS2012创建项目时,会有一个勾选项,叫做“安全开发生命周期(SDL)检查”,这个东西是微软

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 915,056
精华内容 366,022
关键字:

做安全好还是开发好