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 所有来自不可信数据源(比如网络.用户命令.数据库和文件系 ...
随机推荐
- 源码分析之tinyhttpd-0.1
1. 简介: tinyhttpd是使用c语言开发的超轻量级http服务器,通过代码流程可以了解http服务器的基本处理流程, 并且涉及了网络套接字,线程,父子进程,管道等等知识点: 项目地址:http ...
- Linux内核通知链分析【转】
转自:http://www.cnblogs.com/jason-lu/articles/2807758.html Linux内核通知链分析 1. 引言 Linux是单内核架构(monolithic k ...
- LeetCode解题报告—— Container With Most Water & 3Sum Closest & Letter Combinations of a Phone Number
1. Container With Most Water Given n non-negative integers a1, a2, ..., an, where each represents a ...
- hdu 4632(区间dp)
Palindrome subsequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65535 K (Java/ ...
- Letter Combinations of a Phone Number——简单的回溯算法
Given a digit string, return all possible letter combinations that the number could represent. A map ...
- ffmepg的基本使用
基本使用命令 ffmpeg -i input.mp4 output.avi //视频格式转换 ffmepg -i input.mp4 -r fps image%3d.jpg //视频转成图片 //fp ...
- debian 7 安装 rz sz lrzsz
https://blog.csdn.net/hchaoyangming/article/details/51582749
- saltstack认证报错问题
认证报错 [root@saltstack01 ~]# salt '*' test.ping saltstack01: True saltstack03: Minion did not return. ...
- redis三种连接方式
安装 tar zxvf redis-2.8.9.tar.gz cd redis-2.8.9 #直接make 编译 make #可使用root用户执行`make install`,将可执行文件拷贝到/u ...
- 转:攻击JavaWeb应用[2]-CS交互安全
转:http://static.hx99.net/static/drops/tips-164.html 攻击JavaWeb应用[2]-CS交互安全 园长 · 2013/07/08 14:54 注:本节 ...