xFrame

Nginx & Haproxy 使用HTTP响应头字段来提高Web安全性

巧了我就是萌 提交于 2020-08-11 14:30:08
URL: https://securityheaders.com/ 用于检测安全级别 & 配置HTTP响应头字段是否生效. 一.Nginx 使用HTTP响应头字段来提高Web安全性 Step 1.X-Frame-Options 说明: X-Frame-Options HTTP 响应头是用来给浏览器 指示允许一个页面 可否在 , , 或者 中展现的标记。站点可以通过确保网站没有被嵌入到别人的站点里面,从而避免 clickjacking 攻击 语法 X-Frame-Options 有三个值: X -Frame- Options : deny X -Frame- Options : sameorigin X -Frame- Options : allow- from https://example.com/ 参数说明: 如果设置为deny,不光在别人的网站 frame 嵌入时会无法加载,在同域名页面中同样会无法加载。另一方面,如果设置为sameorigin,那么页面就可以在同域名页面的 frame 中嵌套。 deny 表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。 sameorigin 表示该页面可以在相同域名页面的 frame 中展示。 allow-from uri 表示该页面可以在指定来源的 frame 中展示 add_header X-Frame

前端必备的 web 安全知识手记

跟風遠走 提交于 2020-08-10 08:16:06
前言 安全这种东西就是不发生则已,一发生则惊人。作为前端,平时对这方面的知识没啥研究,最近了解了下,特此沉淀。文章内容包括以下几个典型的 web 安全知识点:XSS、CSRF、点击劫持、SQL 注入和上传问题等(下文以小王代指攻击者),话不多说,我们直接开车🚗(附带的例子浅显易懂哦😯)。 XSS(Cross-site scripting) XSS 中文叫做跨站脚本攻击。 一句话解释:小王在网页中注入恶意代码,当用户访问页面时,代码会自动运行。 具体点说:凡是在页面中可输入的地方(如地址栏、搜索框和评论区等等)都有隐藏的风险,小王可以在这些地方输入一些特殊的代码(形如 <script>alert(1)</script> ),于是乎本来只是单纯的文本变成了可执行的代码,从而造成了攻击。你可能会觉得 alert(1) 能有多大点事,但把它换成别的威力就不一样了,它可以重定向到一个由小王控制的页面、冒充用户发送请求、窃取用户信息发送到小王的服务器上等等。当然了,这还不够具体,例子才是最直白的👇。 举个栗子 因为 XSS 攻击有反射型、存储型和 DOM 型三种类型,所以我们每种都举个简单的栗子🌰: 反射型 反射型 XSS 主要有以下两个步骤: 假设我们访问一个 www.a.com/?name=hh 页面,后端会把其中的 name 参数取出来并拼接到 html 中(形如 <p>你好啊,hh<

11.2. WAF

筅森魡賤 提交于 2020-08-08 16:34:20
文章目录 11.2. WAF 11.2.1. 简介 11.2.1.1. 概念 11.2.1.2. 常见功能 11.2.1.3. 布置位置 11.2.2. 防护方式 11.2.3. 扫描器防御 11.2.4. WAF指纹 11.2.5. 绕过方式 11.2.5.1. 基于架构的绕过 11.2.5.2. 基于资源的绕过 11.2.5.3. 基于解析的绕过 11.2.5.4. 基于规则的绕过 11.2.6. 参考链接 11.2. WAF 11.2.1. 简介 11.2.1.1. 概念 WAF(Web Application Firewall,Web应用防火墙)是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供加固的产品。 在市场上,有各种价格各种功能和选项的WAF。在一定程度上,WAF能为Web应用提供安全性,但是不能保证完全的安全。 11.2.1.2. 常见功能 检测异常协议,拒绝不符合HTTP标准的请求 对状态管理进行会话保护 Cookies保护 信息泄露保护 DDoS防护 禁止某些IP访问 可疑IP检查 安全HTTP头管理 X-XSS-Protection X-Frame-Options 机制检测 CSRF token HSTS 11.2.1.3. 布置位置 按布置位置,WAF可以分为云WAF、主机防护软件和硬件防护。云WAF布置在云上

动态jsp页面转PDF输出到页面

强颜欢笑 提交于 2020-07-27 12:52:44
最近工作中遇到不少问题。总结一下。这段代码主要功能是将一个生成JSP页面转发成PDF输出到页面 需要利用ITEXT String html = ServletUtils. forward(request,response, "/WEB-INF/jsp/depot/print/jhd.jsp"); //转发请求到jsp,返回解析之后的内容而不是输出到浏览器 //System.out.println(html); byte[] pdf = PDFUtils. html2pdf(html); response.setContentType( "application/pdf"); response.setHeader( "Content-Length",String. valueOf(pdf. length)); response.setHeader( "Connection", "keep-alive"); response.setHeader( "Accept-Ranges", "none"); response.setHeader( "X-Frame-Options", "DENY"); OutputStream out = response.getOutputStream(); out.write(pdf); out.flush(); public class

[书籍精读]《Web前端黑客技术揭秘》精读笔记分享

回眸只為那壹抹淺笑 提交于 2020-04-27 10:16:25
写在前面 书籍介绍:Web前端的黑客攻防技术是一门非常新颖且有趣的黑客技术,主要包含Web前端安全的跨站脚本(XSS)、跨站请求伪造(CSRF)、界面操作劫持这三个大类,涉及的知识点涵盖信任与信任关系、Cookie安全、Flash安全、DOM渲染、字符集、跨域、原生态攻击、高级钓鱼、蠕虫思想等,这些都是研究前端安全的人必备的知识点。本书作者深入剖析了许多经典的攻防技巧,并给出了许多独到的安全见解。 我的简评:这本书出版好几年了(13年出版的),上面写的很多HTML漏洞、CSS漏洞、JavaScript漏洞以及浏览器漏洞现在已经都被修复了。但Web前端安全这个主题对于我们开发人员来说,还是非常重要的一块知识点,特别是对于大型公司项目的开发人员。而且对于Web前端黑客技术的了解,体现出一个技术人员的技术层次及对于技术的热衷和钻研程度。所以还是很推荐朋友们阅读此书。 !!福利:文末有pdf书籍、笔记思维导图、随书代码打包下载地址哦 第一章 Web安全的关键点 1.1.数据与指令 用浏览器打开一个网站,呈现在我们面前的都是数据,有服务端存储的(如:数据库、内存、文件系统等)、客户端存储的(如:本地Cookies、Flash Cookies等)、传输中的(如:JSON数据、XML数据等),还有文本数据(如:HTML、JavaScript、CSS等)、多媒体数据(如:Flash、Mp3等)

5个REST API安全准则

我们两清 提交于 2020-04-11 17:22:14
当开发REST API时,从一开始就必须注意安全方面。 REST是通过URL路径元素表达系统中特定实体的手段。REST不是一个架构,而是一种在Web上构建服务的架构风格。 REST允许通过简单的URL(而不是复杂的请求主体或POST参数)与基于web的系统交互。 1 - 授权 (1)保护HTTP方法 RESTful API通常使用GET(读),POST(创建),PUT(替换/更新)和DELETE(删除记录)。 对于每个资源并非都要提供所有这些操作。 必须确保传入的HTTP方法对于会话令牌/API密钥和相关资源集合,操作和记录都是有效的。 例如,如果您有一个RESTful API的库,不允许匿名用户删除书目录条目,但他们可以获得书目录条目。 另一方面,对于图书馆员,这两个都是有效的。 请了解CORS,请启用网站的CORS。 (2)白名单允许的方法 对于某个URL,有多种方法对应实体上的不同操作。 例如,GET请求可能是对应读取实体,而PUT将更新现有实体,POST将创建一个新实体,DELETE将删除现有实体。 只允许需要的动词,其他动词将返回适当的响应代码 ( 例如,禁止一个403)。 (3)保护特权操作和敏感资源集合 并非每个用户都有权访问每个Web服务。 这是至关重要的,因为您不希望Web服务的管理被滥用: https://example.com/admin

克服“ X框架选项禁止的显示”

限于喜欢 提交于 2020-02-27 06:39:44
我正在写一个很小的网页,其目的是构架其他页面,只是将它们合并到一个浏览器窗口中,以便于查看。 我试图框住的页面中有几页被禁止装帧,并抛出“拒绝显示文档,因为X-Frame-Options禁止显示”。 Chrome中的错误。 我了解这是一个安全限制(有充分的理由),并且无权对其进行更改。 是否有其他替代的框架或非框架方法来显示单个窗口中不会被X-Frame-Options标头绊倒的页面? #1楼 当我尝试在iframe中嵌入moodle 2时遇到了相同的问题,解决方法是 Site administration ► Security ► HTTP security 并选中“ Allow frame embedding #2楼 添加一个 target='_top' 到我在facebook选项卡中的链接为我解决了这个问题... #3楼 这是解决方案的家伙! FB.Event.subscribe('edge.create', function(response) { window.top.location.href = 'url'; }); 唯一适用于Facebook应用程序的东西! #4楼 我在mediawiki上也遇到了同样的问题,这是因为出于安全原因服务器拒绝将页面嵌入到iframe中。 我写解决了 $wgEditPageFrameOptions = "SAMEORIGIN";

一分钟了解【X-Frame-Options设置】

浪尽此生 提交于 2020-02-26 19:21:10
含义 通过设置X-Frame-Options来控制网页能否被frame或iframe嵌入。 目的 防止出现 点击劫持 :攻击者使用一个透明的iframe,覆盖在一个网页上,然后诱使用户在网页上进行操作,此时用户将在不知情的情况下点击透明的iframe页面。通过调整iframe页面的位置,可以诱使用户恰好点击在iframe页面的一些功能性按钮上。 一般来说,后台站点应该设置X-Frame-Options,防止被其他站点嵌入。 设置方式 服务端输出header头 X-Frame-Options: SAMEORIGIN #仅允许被同域名页面引入 nginx配置 add_header X-Frame-Options SAMEORIGIN #server或者http上下文中设置 参数说明 1、DENY:不能被嵌入到任何iframe或者frame中。 2、SAMEORIGIN:页面只能被本站页面嵌入到iframe或者frame中 3、ALLOW-FROM uri:只能被嵌入到指定域名的框架中 参考链接 https://blog.csdn.net/weixin_42728957/article/details/89357550 https://www.haoht123.com/680.html 来源: oschina 链接: https://my.oschina.net/crazymus

网站设置X-Frame-Options 响应头

别等时光非礼了梦想. 提交于 2020-01-07 06:56:48
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Apache 编辑目标配置文件 xxx.conf 添加 Header always append X-Frame-Options SAMEORIGIN 保存。 执行命令开启header模块(已开启忽略) a2enmod headers 然后重启 service apache2 restart 来源: oschina 链接: https://my.oschina.net/u/3578722/blog/2236743