web安全(暗号:散列表)
2020-09-18 23:37:00 0 举报
AI智能生成
web安全
作者其他创作
大纲/内容
XSS
XSS (Cross-Site Scripting),跨站脚本攻击,因为缩写和 CSS重叠,所以只能叫 XSS。跨站脚本攻<br>击是指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的非本站点HTML标签或<br>JavaScript进行的一种攻击。
影响
利用虚假输入表单骗取用户个人信息。
利用脚本窃取用户的Cookie值,被害者在不知情的情况下,帮助攻击者发送恶意请求。
显示伪造的文章或图片。
防御手段
CSP
内容安全策略 (CSP, Content Security Policy) 是一个附加的安全层,用于帮助检测和缓解某<br>些类型的攻击,包括跨站脚本 (XSS) 和数据注入等攻击。 这些攻击可用于实现从数据窃取到<br>网站破坏或作为恶意软件分发版本等用途
HEAD
启用XSS过滤。 如果检测到跨站脚本攻击,浏览器将清除页面并使用CSP report-uri 指令的功能<br>发送违规报告。
HttpOnly Cookie
这是预防XSS攻击窃取用户cookie最有效的防御手段。Web应 用程序在设置cookie时,将其<br>属性设为HttpOnly,就可以避免该网页的cookie被客户端恶意JavaScript窃取,保护用户<br>cookie信息。
黑名单
用户的输入永远不可信任的,最普遍的做法就是转义输入输出的内容,对于引号、尖括号、斜杠<br>进行转义
转义字符
CSRF
CSRF(Cross Site Request Forgery),即跨站请求伪造,是一种常见的Web攻击,它利用用户已登<br>录的身份,在用户毫不知情的情况下,以用户的名义完成非法操作。
危害
利用用户登录态
用户不知情
完成业务请求
盗取用户资金(转账,消费)
冒充用户发帖背锅
损害网站声誉
防御
禁止第三方网站带Cookie - 有兼容性问题
Referer Check - Https不发送referer
验证码
点击劫持
点击劫持是一种视觉欺骗的攻击手段。攻击者将需要攻击的网站通过 iframe 嵌套的方式嵌入自己<br>的网页中,并将 iframe 设置为透明,在页面中透出一个按钮诱导用户点击。
防御
X-FRAME-OPTIONS
X-FRAME-OPTIONS 是一个 HTTP 响应头,在现代浏览器有一个很好的支持。这个 HTTP 响应头 就<br>是为了防御用 iframe 嵌套的点击劫持攻击。
响应头分别是
DENY,表示页面不允许通过 iframe 的方式展示
SAMEORIGIN,表示页面可以在相同域名下通过 iframe 的方式展示
ALLOW-FROM,表示页面可以在指定来源的 iframe 中展示
ctx.set('X-FRAME-OPTIONS', 'DENY')
js方式
当通过 iframe 的方式加载页面时,攻击者的网页直接不显示所有内容了
SQL注入
OS命令注 入攻击指通过Web应用,执行非法的数据库命令达到攻击的目的
防御
所有的查询语句建议使用数据库提供的参数化查询接口**,参数化的语句使用参数而不是将用户<br>输入变量嵌入到 SQL 语句中,即不要直接拼接 SQL 语句。例如 Node.js 中的 mysqljs 库的 query<br>方法中的 ? 占位参数
严格限制Web应用的数据库的操作权限**,给此用户提供仅仅能够满足其工作的最低权限,从而<br>最大限度的减少注入攻击对数据库的危害
后端代码检查输入的数据是否符合预期**,严格限制变量的类型,例如使用正则表达式进行一些<br>匹配处理
对进入数据库的特殊字符(',",\,<,>,&,*,; 等)进行转义处理,或编码转换**。基本上<br>所有的后端语言都有对字符串进行转义处理的方法,比如 lodash 的 lodash._escapehtmlchar<br>库。
OS命令注入
OS命令注 入攻击指通过Web应用,执行非法的操作系统命令达到攻击的目的。只要在能调用Shell函数的地方就有存在 被攻击的风险。倘若调用Shell时存在疏漏,就可以执行插入的非法命令。
请求劫持
DNS劫持
DNS服务器(DNS解析各个步骤)被篡改,修改了域名解析的结果,使得访问到的不是预期的<br>ip
HTTP劫持
运营商劫持,此时大概只能升级HTTPS了
DDOS(distributed denial of service)
DDOS 不是一种攻击,而是一大类攻击的总称。它有几十种类型,新的攻击方法还在不断发明出来。网<br>站运行的各个环节,都可以是攻击目标。只要把一个环节攻破,使得整个流程跑不起来,就达到了瘫痪<br>服务的目的。
常见的攻击方式
CC
它就是简单粗暴地送来大量正常的请求,超出服务器的最大承<br>受量,导致宕机。我遭遇的就是 cc 攻击,最多的时候全世界大概20多个 IP 地址轮流发出请求,每个地<br>址的请求量在每秒200次~300次。我看访问日志的时候,就觉得那些请求像洪水一样涌来,一眨眼就是<br>一大堆,几分钟的时间,日志文件的体积就大了100MB。说实话,这只能算小攻击,但是我的个人网站<br>没有任何防护,服务器还是跟其他人共享的,这种流量一来立刻就下线了。
SYN Flood
此攻击通过向目标发送具有欺骗性源IP地址的大量TCP“初始连接请求”SYN数据包来利用TCP握<br>手。目标机器响应每个连接请求,然后等待握手中的最后一步,这一步从未发生过,耗尽了进程<br>中的目标资源。
HTTP Flood
此攻击类似于同时在多个不同计算机上反复按Web浏览器中的刷新 - 大量HTTP请求泛滥服务器,<br>导致拒绝服务。
防御手段
子主题
0 条评论
下一页