Nginx/OpenRestyÄÚ´æÐ¹Â©/Ŀ¼´©Ô½·ì϶·çÏÕ¹«¸æ
°ä²¼¹¦·ò 2020-03-20·ì϶±àºÅºÍ¼¶±ð
CVE±àºÅ£ºÔÝÎÞ£¬Î£ÏÕ¼¶±ð£ºÖÐΣ£¬CVSS·ÖÖµ£º³§ÉÌ×ÔÆÀ£º¹Ù·½Î´ÆÀ¶¨
Ó°Ïì°æ±¾
nginx <= v1.17.7 (commit af8ea176a743e97d767b3e1439d549b52dd0367a)
openresty <= v1.15.8.2
·ì϶¸ÅÊö
½üÈÕ£¬openwall oss-security Óʼþ×é°ä²¼¹«¸æÅû¶ÁËÁ½¸ö·ì϶¡£ÔÚÌØ¶¨ÅäÖÃÏ nginx/openresty ´æÔÚ ÄÚ´æÐ¹Â©·ì϶/Ŀ¼´©Ô½·ì϶¡£
NGINXÊÇÃÀ¹úNGINX¹«Ë¾µÄÒ»¿îÇáÁ¿¼¶Web·þÎñÆ÷/·´Ïò´úÀí·þÎñÆ÷¼°µç×ÓÓʼþ£¨IMAP/POP3£©´úÀí·þÎñÆ÷¡£OpenRestyÊÇÒ»¿î»ùÓÚNginxºÍLuaµÄWebƽ̨¡£¸Ãƽ̨ÓÃÓڴÓÃÓÚ´¦Öø߲¢·¢¡¢¸ßÀ©´óÐԵĶ¯Ì¬WebÀûÓá¢Web·þÎñºÍ¶¯Ì¬Íø¹Ø¡£
¸Ã¹«¸æÖÐÏÔʾ£¬OpenRestyͨ¹ýÔÚnginxÖнøÐÐÔʼ³ÁдÀ´ÊµÏÖngx.req.set_uri()£¬¶øÎÞÐè½øÐÐÈÎºÎÆäËû¹ýÂË»ò³ß¶È»¯¡£ÈôÊÇÓë²»ÊÜÐÅÀµµÄÊäÈëһ·ʹÓã¬Ôò¿ÉÄܵ¼ÖÂCRLF/header×¢È룬Ŀ¼±éÀú/±¾µØÎļþ¶ÁÈ¡£¬ÏÞ¶ÈÈÆ¹ý¡£ÓÉÓÚnginxµÄ¡°³Áд¡±ÊµÏÖÖÐÓÐÒ»¸öbug£¬Ò²Äܹ»µ¼ÖÂÄÚ´æÐ¹Â¶¡£
·ì϶ÑéÖ¤
PoC:https://www.openwall.com/lists/oss-security/2020/03/18/1¡£
½¨¸´½¨Òé
1. Nginx¹Ù·½ÒѰ䲼½¨¸´°æ±¾£¬Óû§±ØÒª¸üе½ v1.17.9 £¨commit a5895eb502747f396d3901a948834cd87d5fb0c3£©
2. OpenResty Óû§±ØÒªÅŲéNginxÅäÖÃÎļþÖÐ rewrite ÒÔ¼° ngx.req.set_uri£¬½¨ÒéÔÚ²»ÊDZØÐëʹÓõÄÇé¿öÏ£¬Ò»Ê±½ûÓÃÓйØÅäÖá£
²Î¿¼Á´½Ó
https://www.openwall.com/lists/oss-security/2020/03/18/1


¾©¹«Íø°²±¸11010802024551ºÅ