`
fffvvvzz
  • 浏览: 24377 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

使用nginx实现跨站脚本

阅读更多
    最近在做一个系统整合的项目,目的是把某政府机关中的N个系统进行深度整合。由于这些系统分属于多家不同公司,无法拿到系统的源代码。
    初步构思是使用Frame/IFrame将对方的系统加载到页面中,然后用Javascript模拟用户的操作去获取或设置某些信息,以达到深度整合的目的。
    技术上没有什么太难得地方,但是发觉Javascript无法操作Frame/IFrame内容是不同域的页面中的DOM,报出的错误提示的“没有权限”。Google了一下,原来这种操作被成为跨站脚本(XSS),是被浏览器禁止的。
    解决这个问题的思路是使用代理服务器,将其他系统映射到整合系统所在的服务器上。这样在浏览器看来所有的系统都是同一台服务器的,就解决了XSS的限制。
    我们在这里选用nginx做代理,首先去nginx.org下载程序,nginx支持Windows和*nix操作系统。在开发环境中,我们选用Windows版本。
    下载完成后,打开conf/nginx.conf,将旧的server节点完全删除。在删除的位置上添加下面代码
    server {
        listen       8081;
        location / {
                proxy_pass http://192.168.1.10:8000;
        }

    这段配置信息的作用告诉nginx创建一个服务,监听在8081端口上,当用户访问该Web服务根目录的时候,代理到http://192.168.1.10:8000端口。
    配置完成后,现在就可以在页面中的Frame/IFrame中访问http://server_addr:8081/了,也可以用Javascript操作Frame/IFrame中的DOM元素。
   整合多个系统就配置多个server节点,将每个系统配置在不同的端口上既可。
分享到:
评论

相关推荐

    linux-使用NginxLua实现的WAF

    WAF的主要功能是保护Web应用程序免受各种攻击,如SQL注入、跨站脚本(XSS)、文件包含漏洞等。它通过检查HTTP请求,识别并阻止潜在的恶意行为。在Nginx Lua实现的WAF中,我们可以编写Lua脚本来实现这些功能。 **3. ...

    Tomcat+memcached+Nginx实现session共享

    总结来说,Tomcat+memcached+Nginx实现session共享是通过MSM中间件,配合Nginx的负载均衡,将session数据存储在memcached中,实现跨服务器的用户状态一致性。配置过程涉及到Tomcat、memcached和Nginx的安装、配置...

    nginx+redis实现session共享

    通过这种方式,我们不仅可以实现跨应用的单点登录,还可以提高整体系统的可扩展性和容错性。值得注意的是,尽管这里没有提及特定的框架,但很多现代Web框架如Spring Boot等都有成熟的工具和插件支持这种session共享...

    nginx-1.21.6.zip和nginx-1.21.6.tar.gz

    Nginx有丰富的第三方模块,如mod_security用于安全防护,lua模块实现动态脚本处理,模块的添加可以进一步增强Nginx的功能。 综上所述,Nginx-1.21.6.zip和nginx-1.21.6.tar.gz是针对不同操作系统的Nginx部署包,...

    Nginx软件依赖包

    - **autoconf**:自动化配置脚本生成工具,帮助编译Nginx时生成合适的配置文件。 - **automake**:与autoconf配合使用,为源代码树生成Makefile.in文件。 - **libtool**:提供跨平台的编译和链接工具,简化库的...

    nginx-http-flv实现rtmp格式的直播

    标题“nginx-http-flv实现rtmp格式的直播”揭示了我们即将探讨的核心技术:使用Nginx服务器与HTTP-FLV模块来处理RTMP格式的直播流。RTMP(Real-Time Messaging Protocol)是一种广泛用于实时视频传输的协议,而...

    nginx依赖包linux操作系统使用

    9. **luajit** 或 **lua51**(可选):对于使用Nginx的Lua模块(如ngx_lua)进行服务器端脚本处理,需要安装相应的Lua运行时环境。 10. **make**:构建系统的一部分,用于编译源代码。 在大多数Linux发行版中,...

    nginx学习电子书

    这部分内容会介绍OpenResty(一个集成LuaJIT的Nginx发行版)的使用,以及如何编写Lua脚本来增强Nginx的功能。 5. **架构解析:** 了解Nginx的内部工作原理,如连接处理、请求分发、内存池管理等。这有助于优化...

    nginx-1.16.1

    这包括对 HTTP/2 头部注入攻击的防护以及对跨站脚本(XSS)和跨站请求伪造(CSRF)等常见Web攻击的防御措施。 最后,Nginx 1.16.1 可能改进了错误处理和调试工具,使开发者更容易诊断和修复问题。这些改进可能包括...

    redis2-nginx-module-0.15

    - **会话持久化**:通过 Redis 存储用户会话,实现跨服务器的会话保持。 - **负载均衡**:结合其他 NGINX 模块,实现基于 Redis 的负载均衡策略。 通过 Redis2-NGINX-Module,开发者可以构建更高效、更灵活的 Web...

    nginx的各项详细配置-超多注释

    - **add_header**: 添加HTTP响应头,如添加X-XSS-Protection防止跨站脚本攻击。 ### 6. 配置文件管理 Nginx支持在http块内包含其他配置文件,方便管理。例如: ```nginx http { include /etc/nginx/mime.types; ...

    Web应用安全:Nginx日志配置实验.doc

    这有助于理解网站的流量模式,检测潜在的攻击行为,如SQL注入、跨站脚本攻击等。同时,错误日志(error.log)提供了关于服务器内部错误和警告的信息,对排查服务异常和性能问题非常关键。 通过这次实验,参与者将...

    nginx全家桶安装包.zip

    5. 安装完成后,需要将Nginx的服务脚本添加到系统服务中,以便启动和管理Nginx。 **Nginx与Spring Boot整合**: Nginx可以作为Spring Boot应用的反向代理服务器,负责接收来自外部的请求,再转发给内部的Spring ...

    lua版waf web防火墙 redis+nginx版

    Web应用程序防火墙(WAF)的主要目的是保护网站免受各种恶意攻击,如SQL注入、跨站脚本攻击(XSS)、文件包含漏洞等。通过在HTTP/HTTPS流量和服务器之间设置一层过滤,WAF可以识别并阻止潜在的恶意请求。 **Redis**...

    Nginx+tomcat+redis

    配置Nginx+Tomcat+Redis环境时,可能会用到各种依赖包,如编译工具、库文件、配置脚本等。这些包确保所有组件能够正常安装和运行。 综上,"Nginx+Tomcat+Redis"的架构为构建高可用、高性能的Web服务提供了坚实的...

    Nginx开发指南.pdf

    **Nginx开发指南**是一份详尽的技术文档,旨在为开发者提供全面的Nginx开发指导,包括其内部架构、编程接口以及实现原理等内容。对于希望深入了解Nginx工作原理或打算为其贡献模块的开发者来说,这份指南具有极高的...

    nginx-rtmp-module.zip

    【Nginx与RTMP模块】 Nginx是一款高性能的HTTP和反向代理服务器,同时也支持流媒体服务。在本压缩包“nginx-rtmp-...此外,配合HLS或DASH协议,可以实现跨平台的适应性流媒体传输,确保不同网络环境下的流畅播放体验。

    Linux系统 安装Nginx 所需包

    Nginx使用PCRE来解析和执行URL重写规则,这在实现动态URL和自定义路由策略时非常关键。安装完PCRE库后,Nginx将能够使用更复杂的匹配条件。 4. **Zlib库**:`zlib-1.2.8.tar.gz` Zlib是一个自由的、跨平台的数据...

    nginx-1.11.10.tar.gz

    - **安全**:启用HTTP Strict Transport Security (HSTS)、Content Security Policy (CSP)等安全策略,防止跨站脚本攻击(XSS)和中间人攻击。 总之,Nginx是一个强大且灵活的Web服务器,1.11.10版本提供了稳定的...

    nginx-1.13.1.tar.gz

    5. **安全增强**:增加了对X-XSS-Protection、X-Content-Type-Options等安全头的支持,防范跨站脚本攻击和内容类型嗅探。 ### 三、安装与配置 1. **解压安装**:首先需要将`nginx-1.13.1.tar.gz`解压,然后编译并...

Global site tag (gtag.js) - Google Analytics