Web安全开发指南--异常错误处理与日志审计
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安全开发指南--异常错误处理与日志审计的更多相关文章
- axis1,xfire,jUnit 测试案列+开Web Service开发指南+axis1.jar下载 代码
axis1,xfire,jUnit 测试案列+Web Service开发指南(中).pdf+axis1.jar下载 代码 项目和资源文档+jar 下载:http://download.csdn. ...
- 【web开发 | 移动APP开发】 Web 移动开发指南(2017.01.05更新)
版本记录 - 版本1.0 创建文章(2016.12.30) - 版本1.1 更正了hybird相关知识:增加了参考文章(2017.01.05): + Web APP更正为响应式移动站点与页面,简称响应 ...
- Springboot 系列(七)Spring Boot web 开发之异常错误处理机制剖析
前言 相信大家在刚开始体验 Springboot 的时候一定会经常碰到这个页面,也就是访问一个不存在的页面的默认返回页面. 如果是其他客户端请求,如接口测试工具,会默认返回JSON数据. { &quo ...
- Web安全开发指南--会话管理
1.会话管理 3.1.会话管理安全规则 1 避免在URL携带session id. 2 使用SSL加密通道来传输cookie. 3 避免在错误信息和调试日志中记录session id. 4 使用框架自 ...
- Web安全开发指南--文件系统
6.1.上传文件功能 简要描述 文件上传漏洞是由于文件上传功能实现代码没有对用户上传的文件进行正确处理,导致允许攻击者向服务某个目录上传文件. 解决方案 上传文件功能只对登录用户开放: 同时通过文件头 ...
- web安全开发指南--权限管理
2.1 访问控制安全规则 1 访问控制必须只能在服务器端执行. 2 只通过session来判定用户的真实身份,避免使用其它数据域的参数(比如来自cookie.hidden域 ...
- web安全开发指南--认证
1.认证 1.1. 认证和密码管理安全规则 1 认证控制必须只能在服务器端执行. 2 除了指定为公开的资源,对所有其它资源的访问都必须先经过认证. 3 为所有关键凭证实施防"暴力 ...
- Lightning Web Components 开发指南(二)
Lightning Web Components 是自定义元素使用html 以及现代javascript进行构建. Lightning Web Components UI 框架使用web compon ...
- Web安全开发指南--数据验证
1.数据验证 4.1.输入数据验证安全规则 1 数据验证必须放在服务器端进行. 2 至少对输入数据的数据类型.数据范围和数据长度进行验证. 3 所有来自不可信数据源(比如网络.用户命令.数据库和文件系 ...
随机推荐
- python基础===成员访问__len__()和__getitem__()
class A: def __init__(self,*args): self.name = arg pass def __len__(self): return len(self.name) a = ...
- JavaSE项目之聊天室swing版
引子: 当前,互联网 体系结构的参考模型主要有两种,一种是OSI参考模型,另一种是TCP/IP参考模型. 一.OSI参考模型,即开放式通信系统互联参考模型(OSI/RM,Open Systems In ...
- z-index失效的情况
1.父标签 position属性为relative: 2.问题标签无position属性(不包括static): 3.问题标签含有浮动(float)属性. 4.问题标签的祖先标签的z-index值比较 ...
- aliyun服务器ubuntu系统+MySQL+SqlDeveloper
首先按照 https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-16-04 https://w ...
- oracle 导入dmp文件
/*第1步:创建临时表空间 */ create temporary tablespace webdata_temp tempfile 'D:\oracle\product\10.2.0\oradat ...
- 创建一个支持ES6的Nodejs项目
文章来自于:https://www.codementor.io/iykyvic/writing-your-nodejs-apps-using-es6-6dh0edw2o 第一步:创建项目文件夹并初始化 ...
- MediaPlayer滑动不准的问题
因为MediaPlayer在seekto是异步进行的,如果在滑动过程中暂停,会导致滑动不准确的情况,这时候就需要添加滑动完成的监听即setOnSeekCompleteListener
- spring.net 在demo中的分析
1.认识spring.net Spring.NET是一个应用程序框架,其目的是协助开发人员创建企业级的.NET应用程序.它提供了很多方面的功能,比如依赖注入.面向方面编程(AOP).数据访问抽象及AS ...
- Loj10222 佳佳的Fibonacci(矩阵乘法)
题面 给定\(n,m\),求: \[ T(n)=\sum_{i=1}^ni\times f_i \] 其中\(f_i\)为斐波那契数列的第\(i\)项 题解 不妨设: \[ S(n)=\sum_{i= ...
- 北邮校赛 I. Beautiful Array(DP)
I. Beautiful Array 2017- BUPT Collegiate Programming Contest - sync 时间限制 1000 ms 内存限制 65536 KB 题目描述 ...