- 主动攻击:SQL注入攻击、OS命令注入攻击;
- 被动攻击:跨站脚本攻击、跨站点请求伪造;
- 彩虹表;
- 点击劫持;
- Dos攻击;
- 输出值转义漏洞;
- 设计缺陷安全漏洞;
-
疑问:
书摘&心得
主动攻击
以服务器为目标的主动攻击
- 代表:SQL注入攻击、OS命令注入攻击
-
被动攻击
以服务器为目标的被动攻击
- 利用圈套执行攻击代码
- 代表:跨站脚本攻击、跨站点请求伪造
-
被动攻击企业内部网络
企业内网依旧可以连到互联网上
-
输出值转义安全漏洞
输出值转义不完全可引发安全漏洞
安全对策
Cross-Site Scripting,XSS
- 在动态生成HTML处发生
栗子们
针对web应用使用的数据库运行非法SQL
-
OS命令注入攻击
通过web应用执行操作系统OS命令
-
其他攻击
HTTP首部注入攻击
- 在响应首部字段内插入换行,添加任意首部字段的攻击
- 属于被动攻击
- 设置任意cookie、任意重定向、显示任意主体
- 邮件首部注入
- 利用Web应用中的邮件发送功能,向邮件首部添加非法内容
- 目录遍历攻击
- 对本无意公开的目录非法访问
远程文件包含漏洞
设计缺陷导致的安全漏洞。
- 产品应该好好看看这一块。
强制浏览
不正确的错误消息处理
在DS中屡见不鲜的报错:
在开发排查时确实方便,但从设计的角度出发,这种报错是存在安全隐患的。开放重定向
会话管理疏忽安全漏洞
(1)会话劫持XSS
解决方案:httpOnly(2)会话固定攻击
(3)跨站点请求伪造CSRF
Cookie中的「同站」判断比较(相比同源策略)宽松:只要两个 URL 的 eTLD+1 (有效顶级域名+二级域名,例如 taobao.com 等)相同即可,不需要考虑协议和端口。
对嵌入iframe的影响较大SameSite 属性
可以让 Cookie 在跨站请求时不会被发送,从而可以阻止跨站请求伪造攻击(CSRF)。
SameSite 可以有下面三种值:
- Strict 仅允许一方请求携带 Cookie,即浏览器将只发送相同站点请求的 Cookie,即当前网页 URL 与请求目标 URL 完全一致。
- Lax 允许部分第三方请求携带 Cookie
- None 无论是否跨站都会发送 Cookie
之前默认是 None 的,Chrome80 后默认是 Lax。
其他安全漏洞
密码破解
(1)通过网络进行密码试错
- 穷举法
- 字典攻击
- 实现收集好备选密码
- 枚举字典中的密码
(2)对已加密的密码破解
web应用在保存密码时不用明文,而是通过加盐+散列处理后保存