1、异常错误处理与日志审计

5.1、日志审计系统安全规则

1

日志系统能够记录特定事件的执行结果(比如 成功或失败)。

确保日志系统包含如下重要日志信息:

1、  日志发生的时间;

2、  事件的严重等级;

3、  能够标识该事件为安全事件的标签;

4、  导致事件产生的对象;

5、  导致事件产生的IP地址;

6、  事件的结果(成功或失败);

7、  关于事件的描述。

2

如果使用浏览器查看日志,确保先对日志数据进行净化。(item1、2请参考附录11.8)

3

不要在日志中存储任何敏感数据,比如密码和session id。

4

使用日志分析工具对日志进行安全事件定期分析。

5

针对业务敏感事件进行记录,比如:

1、  输入数据验证失败;

2、  用户登录(成功或失败);

3、  访问控制验证失败;

4、  尝试使用无效的或者过期的session进行连接;

5、  所有产生的异常和错误事件;

6、  所有管理员级别的操作,比如创建、删除用户,修改系统配置等。

 

5.2、详细的错误信息

简要描述

详细的错误信息能够提供攻击者大量有用的信息。

解决方案

要正确处理每一种异常;

不允许直接把异常错误信息返回给用户,配置所有错误和异常到定制页面;

已发布的产品不应包含产生debug信息的模块,如果有,保证debug功能只能通过服务器端配置文件内的选项来打开,不可通过程序自身的功能模块来打开;

如果使用的框架或开发语言包含结构化的处理机制,只应当优先使用,而处理函数错误返回值的方式次之;

如果使用判断函数错误返回值的方式处理异常,必须保证正确处理每一种错误的返回值。

备注

 

 

注:若IE浏览器显示格式不正确,请使用chrome浏览器

Web安全开发指南--异常错误处理与日志审计的更多相关文章

  1. axis1,xfire,jUnit 测试案列+开Web Service开发指南+axis1.jar下载 代码

    axis1,xfire,jUnit 测试案列+Web Service开发指南(中).pdf+axis1.jar下载    代码 项目和资源文档+jar 下载:http://download.csdn. ...

  2. 【web开发 | 移动APP开发】 Web 移动开发指南(2017.01.05更新)

    版本记录 - 版本1.0 创建文章(2016.12.30) - 版本1.1 更正了hybird相关知识:增加了参考文章(2017.01.05): + Web APP更正为响应式移动站点与页面,简称响应 ...

  3. Springboot 系列(七)Spring Boot web 开发之异常错误处理机制剖析

    前言 相信大家在刚开始体验 Springboot 的时候一定会经常碰到这个页面,也就是访问一个不存在的页面的默认返回页面. 如果是其他客户端请求,如接口测试工具,会默认返回JSON数据. { &quo ...

  4. Web安全开发指南--会话管理

    1.会话管理 3.1.会话管理安全规则 1 避免在URL携带session id. 2 使用SSL加密通道来传输cookie. 3 避免在错误信息和调试日志中记录session id. 4 使用框架自 ...

  5. Web安全开发指南--文件系统

    6.1.上传文件功能 简要描述 文件上传漏洞是由于文件上传功能实现代码没有对用户上传的文件进行正确处理,导致允许攻击者向服务某个目录上传文件. 解决方案 上传文件功能只对登录用户开放: 同时通过文件头 ...

  6. web安全开发指南--权限管理

    2.1               访问控制安全规则 1 访问控制必须只能在服务器端执行. 2 只通过session来判定用户的真实身份,避免使用其它数据域的参数(比如来自cookie.hidden域 ...

  7. web安全开发指南--认证

    1.认证 1.1.       认证和密码管理安全规则 1 认证控制必须只能在服务器端执行. 2 除了指定为公开的资源,对所有其它资源的访问都必须先经过认证. 3 为所有关键凭证实施防"暴力 ...

  8. Lightning Web Components 开发指南(二)

    Lightning Web Components 是自定义元素使用html 以及现代javascript进行构建. Lightning Web Components UI 框架使用web compon ...

  9. Web安全开发指南--数据验证

    1.数据验证 4.1.输入数据验证安全规则 1 数据验证必须放在服务器端进行. 2 至少对输入数据的数据类型.数据范围和数据长度进行验证. 3 所有来自不可信数据源(比如网络.用户命令.数据库和文件系 ...

随机推荐

  1. linux===linux后台运行和关闭、查看后台任务(转)

    fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的 一.& 最经常被用到这个用在一个命令的最后,可以把这个命令放 ...

  2. linux===给新手的 10 个有用 Linux 命令行技巧(转)

    本文转自:http://www.codeceo.com/article/10-linux-useful-command.html?ref=myread 仅用作学习交流使用.如有侵权,立删 我记得我第一 ...

  3. 升级OS10.11系统后 Xcode6.4的变化少了个按钮 could not launch “Xcode” Xcode 插件安装

    升级OS10.11系统后 Xcode6.4的变化少了个按钮 could not launch “Xcode”  Xcode 插件安装 A:  升级10.11后Xcode 左上角模拟器选择菜单不在了   ...

  4. linux sort排序命令

    1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. 2 sort的-u选项 在输出行中去除重复行. $ ...

  5. django wsgi nginx 配置

    """ WSGI config for HelloWorld project. It exposes the WSGI callable as a module-leve ...

  6. javascript 实现图片轮播和点击切换功能

    图片轮播是网页上一个比较常见的功能,下面我们来实现他吧 原理很简单: 1:固定的区域,所有的图片重叠,一次只能显示一张图片 2:通过改变图片的zIndex属性改变显示的图片,就可以达到切换的效果了 & ...

  7. pom报错解决方法大全

    1.Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom 解决方法: Windows: CMD --> c ...

  8. 修改VNCSERVER 默认的分辨率的方法

    vi /usr/bin/vncserver /1024 找到默认的1024*768修改为 :1680*1050 reboot 重启

  9. Xshell 找到上次执行的命令

    ctrl + p   返回上一次输入命令字符 ctrl + r       输入单词搜索历史命令

  10. 【转载】Web开发技术发展历史-版本2

    原文在这里. Web开发的发展史 导读:Arunr 把过去 15 年以来,Web开发从最初的纯 HTML 到 CGI.PHP\JSP\ASP.Ajax.Rails.NodeJS 这个过程简要地进行了介 ...