Rails应用安全与部署指南
1. Rails应用安全问题及解决方法
1.1 避免会话固定攻击
攻击者会吸引目标域名应用的用户访问自己的表单,若用户提交表单,隐藏字段内容会被发送到目标域名端口7的回显服务器,服务器会将内容回显给浏览器。若浏览器将返回数据当作HTML显示(部分IE版本会这样),就会执行JavaScript代码。由于来源域名是目标域名,会话cookie会对脚本可用。
为降低应用遭受攻击的概率,应停用Web服务器上的回显服务,但这并不足以保证完全安全,因为还有其他服务(如FTP和POP3)也可能被利用。
避免会话固定攻击的方法如下:
- 记录IP地址 :在会话数据中记录创建会话的请求的IP地址,若IP地址改变,可取消会话。不过这会对跨网络移动笔记本的用户和PPPOE租约到期后IP地址改变的家庭用户造成不便。
- 每次登录创建新会话 :每次用户登录时创建新会话,合法用户可继续使用应用,而攻击者持有的会话ID将失效。
1.2 直接从表单参数创建记录
以用户注册系统为例,用户表结构如下:
create table users (
id integer primary key,
name varchar(20) not null,
password varchar(20) not null,
role varchar(20) not null default "user",
approved inte
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



