nginx 漏洞(适用于0.1.0-0.8.14)补丁
文章来源:http://xok.la/
漏洞介绍:
http://www.kb.cert.org/vuls/id/180065
As with a number of other web servers, nginx is designed to operate with a single privileged master process and multiple unprivileged worker processes handling specific requests. A remote, unauthenticated attacker may be able to execute arbitrary code in the context of the worker process or cause the worker process to crash, resulting in a denial of service.
补丁说明:http://sysoev.ru/nginx/patch.180065.txt
进入Nginx源码包,找到src/http/ngx_http_parse.c 文件,修改:
 
u -= 4;    
             if (u < r->uri.data) {    
                         return NGX_HTTP_PARSE_INVALID_REQUEST;    
                                                                }    
                     while (*(u - 1) != '/') {
u -= 5; 
        for ( ;; ) { 
             if (u < r->uri.data) { 
             return NGX_HTTP_PARSE_INVALID_REQUEST;
                                        } 
              if (*u == '/') { 
                                  u++; 
                                  break; 
                                }

然后重新编译。
官网补丁说明:
Index: src/http/ngx_http_parse.c
===================================================================
--- src/http/ngx_http_parse.c (revision 2410)
+++ src/http/ngx_http_parse.c (revision 2411)
@@ -1134,11 +1134,15 @@
#endif
                         case '/':
                                 state = sw_slash;
-                                u -= 4;
-                                if (u < r->uri.data) {
-                                        return NGX_HTTP_PARSE_INVALID_REQUEST;
-                                }
-                                while (*(u - 1) != '/') {
+                                u -= 5;
+                                for ( ;; ) {
+                                        if (u < r->uri.data) {
+                                                return NGX_HTTP_PARSE_INVALID_REQUEST;
+                                        }
+                                        if (*u == '/') {
+                                                u++;
+                                                break;
+                                        }
                                         u--;
                                 }
                                 break;

转载于:https://blog.51cto.com/cqfish/202987

nginx 漏洞(适用于0.1.0-0.8.14)补丁相关推荐

  1. PHP 5.5.38 + mysql 5.0.11 + zabbix3.0 + nginx 安装

    PHP 5.5.38 + mysql 5.0.11 + zabbix3.0 + nginx 1.首先在安装好环境下安装 zabbix3.0情况下 2. yum install mysql-devel ...

  2. vc++ 6.0 创建程序快捷方式的一个例子源码_漏洞复现:phpcms v9.6.0任意文件上传漏洞(CVE201814399)...

    文章说明 漏洞复现是为了学习漏洞利用所写,漏洞都是互联网上以流传已久的各种漏洞的利用及原理,用来增强自己见识,培养自己动手能力,有兴趣的朋友可自行搭建环境练习.源码下载连接在文章最后. 漏洞说明 PH ...

  3. Linux配置Nginx与PHP-FPM出现[error] 80143#0: *1 connect() failed (111: Connection refused) while connectin

    原因是只启动了nginx 没有启动php-fpm /usr/local/sbin/php-fpm [root@localhost ~]# ps aux | grep 'php-fpm' root 80 ...

  4. 解决Mac nginx问题 [emerg] 54933#0: bind() to 0.0.0.0:80 failed (13: Permission denied)

    brew services restart nginx Stopping nginx... (might take a while) ==> Successfully stopped nginx ...

  5. 构建适用于Oracle 11.2.0.x的Linux单数据库实例的DataGuard

    构建适用于Oracle 11.2.0.x的Linux单数据库实例的DataGuard 使用脚本自动化构建Oracle DataGuard 下载脚本 git clone https://github.c ...

  6. thinkphp3.2.3漏洞_Chrome新版本修复CVE202015999 0 day漏洞

    10月20日,谷歌发布新版本的Chrome 86.0.4240.111,新版本中共修复了5个安全漏洞,其中一个是0 day 漏洞CVE-2020-15999.Windows.mac和Linux桌面版用 ...

  7. 渗透测试实战-OTRS 5.0.x/6.0.x漏洞利用

    nmap -T4 -A -sS -sV -vv --script vuln -p- --open -n -Pn 10.11.1.39 -oX 10.11.1.39.xml xsltproc -o 10 ...

  8. nginx启动失败(bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket…permissions)

    nginx启动失败,端口被占用 nginx启动失败(bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket ...

  9. 适用于Apache Hadoop 2.0 M5的Spring

    Spring高兴地宣布了Spring for Apache Hadoop 2.0 M5里程碑版本,同时它们也越来越接近候选版本. 在Spring博客中 ,新版本2.0与1.0版本之间有很好的比较. 根 ...

最新文章

  1. node.js的开发流程_Node.js子流程:您需要了解的一切
  2. 常用的数据交换格式有哪些_Linux后台开发6大常用的开源库,让你在同行中脱颖而出...
  3. 英特尔 620 显卡 驱动 七代cpu_英特尔的智能“整体厨房”
  4. linux p 参数,tar的-p参数解决方案
  5. springboot连接mysql乱码_springboot2.x——接口访问出现中文乱码
  6. 解决读取文件乱码问题
  7. 两个对象值相同(x.equals(y) == true),但却可有不同的hashCode,这句话对不对?
  8. 计算机技术在图形图像处理中的应用,计算机图形图像处理技术综述
  9. 数学规划求解器lp_solve超详细教程
  10. 微信扫描二维码跳转手机默认浏览器打开下载app的链接是怎么实现的
  11. 第五次网页前端培训(JavaScript)
  12. pyCUDA教程-系列学习(1):GPU结构、pyCUDA、numbapro安装及HelloGPU例子
  13. arduino有关软件卸载,库的卸载问题
  14. 基于音频和文本的多模态语音情感识别(一篇极好的论文,值得一看哦!)
  15. yolox的正负样本分配策略mmdet代码详解
  16. 【飞控开发基础教程9】疯壳·开源编队无人机-PWM(电机控制)
  17. Windows系列原版系统镜像下载
  18. 音视频数据采集及单向传输的实现(海思3516EV200平台)
  19. nessus在kali中的安装与详细使用
  20. 一笔画(AC)DFS算法

热门文章

  1. 车用计算机内部结构图,ecu的基本组成结构 ECU的工作过程
  2. 事物的开始和结束命令分别是什么_AutoCAD小秘密065:LOFT命令,创建天圆地方
  3. 异常处理-RestFul的异常处理
  4. springboot热部署工具
  5. 安装Nacos Server
  6. 标记-清除(Mark-Sweep)
  7. 分布式架构的分布式文件系统
  8. Redis中的客户端Sharding
  9. plsql(轻量版)_流程控制
  10. Spring Security源码解析(三)—— HttpSecurity