婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Nginx常見的錯誤配置舉例

Nginx常見的錯誤配置舉例

熱門標簽:信陽電銷外呼系統(tǒng)怎么樣 南充電銷外呼系統(tǒng) 南昌外呼系統(tǒng)定制 貴陽網(wǎng)絡(luò)外呼系統(tǒng)軟件 宿州外呼系統(tǒng)公司 地圖標注小程序 陜西辦理400電話 株洲電銷 海外工廠地圖標注

Nginx是當前主流的Web服務(wù)。 以下是一些最常見的錯誤配置。

Missing root location

server {
  root /etc/nginx;

  location /hello.txt {
    try_files $uri $uri/ =404;
    proxy_pass http://127.0.0.1:8080/;
  }
}

root指令指定Nginx的根目錄。 在上面的示例中,根目錄是/etc/nginx,這意味著我們可以訪問該目錄下的文件。 上面的配置沒有/的位置(location / {...}),只有/hello.txt的位置。 因此,將對root指令進行全局設(shè)置,這意味著對/的請求會將您帶到本地路徑/etc/nginx。

GET /nginx.conf這樣簡單的請求將顯示存儲在/etc/nginx/nginx.conf中的Nginx配置文件的內(nèi)容。 如果將根設(shè)置為/etc,則對/nginx/nginx.conf的GET請求將顯示配置文件。 在某些情況下,可能會訪問其他配置文件,訪問日志甚至HTTP基本身份驗證的加密憑據(jù)。

在我們收集的近50,000個Nginx配置文件中,最常見的根路徑如下:

Off-By-Slash

server {
  listen 80 default_server;

  server_name _;

  location /static {
    alias /usr/share/nginx/static/;
  }

  location /api {
    proxy_pass http://apiserver/v1/;
  }
}

借助Off-by-slash配置錯誤,由于缺少/,因此有可能沿路徑上移一步。 Orange Tsai在Blackhat的演講“ Breaking Parser Logic!”中使這項技術(shù)廣為人知。 在本次演講中,他展示了location指令與alias指令結(jié)合使用的缺失斜杠如何使讀取Web應用程序的源代碼成為可能。 鮮為人知的是,它還可以與其他指令(例如proxy_pass)一起使用。 讓我們來分解一下正在發(fā)生的事情以及它為什么起作用。

  location /api {
    proxy_pass http://apiserver/v1/;
  }

如果Nginx服務(wù)器可以訪問以下配置,則可以假定只能訪問http://apiserver/v1/下的路徑。

http://server/api/user -> http://apiserver/v1//user

當請求http://server/api/user時,Nginx將首先規(guī)范化URL。 然后,它會查看前綴/api是否與URL匹配,在這種情況下,它與URL匹配。 然后,從URL中刪除該前綴,因此保留/user路徑。 然后將此路徑添加到proxy_pass URL中,從而得到最終URL http://apiserver/v1//user。 請注意,URL中存在雙斜杠,因為location指令不以斜杠結(jié)尾,并且proxy_pass URL路徑以斜杠結(jié)尾。 大多數(shù)Web服務(wù)器會將http://apiserver/v1//user user標準化為http://apiserver/v1/user,這意味著即使配置錯誤,所有內(nèi)容仍將按預期運行,并且可能不會引起注意。

通過請求http://server/api../可以利用這種錯誤配置,這將導致Nginx請求標準化為http://apiserver/v1/../的URL http://apiserver/。 這可能產(chǎn)生的影響取決于利用這種錯誤配置可以達到的效果。 例如,這可能導致Apache服務(wù)器狀態(tài)通過URL http://server/api../server-status 公開,或者可能使不希望公開訪問的路徑可訪問。

Nginx服務(wù)器配置錯誤的一個跡象是,當URL中的斜杠被刪除時,服務(wù)器仍會返回相同的響應。 例如,如果http://server/api/user和http://server/apiuser返回相同的響應,則服務(wù)器可能容易受到攻擊。 這將導致發(fā)送以下請求:

http://server/api/user -> http://apiserver/v1//user
http://server/apiuser -> http://apiserver/v1/user

Unsafe variable use

一些框架、腳本和Nginx配置不安全地使用Nginx存儲的變量。 這可能會導致諸如XSS,繞過HttpOnly保護,信息泄露甚至在某些情況下甚至是RCE之類的問題。

SCRIPT_NAME

如下配置:

  location ~ \.php$ {
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }

主要問題是Nginx會將所有URL發(fā)送到以.php結(jié)尾的PHP解釋器,即使該文件在磁盤上不存在。 這是Nginx創(chuàng)建的Pitfalls and Common Mistakes文檔中羅列的許多Nginx錯誤配置中的一種。

如果PHP腳本試圖基于SCRIPT_NAME定義基本URL,則將發(fā)生XSS。

<?php

if(basename($_SERVER['SCRIPT_NAME']) ==
basename($_SERVER['SCRIPT_FILENAME']))
 echo dirname($_SERVER['SCRIPT_NAME']);

?>

GET /index.php/<script>alert(1)</script>/index.php
SCRIPT_NAME = /index.php/<script>alert(1)</script>/index.php

Usage of $uri can lead to CRLF Injection

與Nginx變量有關(guān)的另一個錯誤配置是使用$uri或$document_uri而不是$request_uri。 $uri和$document_uri包含標準化的URI,而Nginx中的標準化包括對URI進行解碼的URL。 Volema 發(fā)現(xiàn),在Nginx配置中創(chuàng)建重定向會導致CRLF注入時,通常使用$uri。

易受攻擊的Nginx配置的示例如下:

location / {
 return 302 https://example.com$uri;
}

HTTP請求的新行字符為\r(回車)和\n(換行)。 對新行字符進行URL編碼將導致以下字符%0d%0a的表示形式。 如果這些字符包含在對服務(wù)器的配置錯誤的請求(例如http://localhost/%0d%0aDetectify:%20clrf)中,則該服務(wù)器將使用名為Detectify的新標頭進行響應,這是因為$uri變量包含URL解碼后的換行字符。

HTTP/1.1 302 Moved Temporarily
Server: nginx/1.19.3
Content-Type: text/html
Content-Length: 145
Connection: keep-alive
Location: https://example.com/
Detectify: clrf

Any variable

在某些情況下,用戶提供的數(shù)據(jù)可以視為Nginx變量。 目前尚不清楚為什么會發(fā)生這種情況,但如本H1報告所示,這種情況并不罕見或不容易測試。 如果搜索錯誤消息,我們可以看到它在 SSI filter module中找到,從而表明這是由于SSI引起的。

測試方法如下:

$ curl -H ‘Referer: bar' http://localhost/foo$http_referer | grep ‘foobar'

Raw backend response reading

使用Nginx的proxy_pass,可以攔截后端創(chuàng)建的錯誤和HTTP標頭。 如果要隱藏內(nèi)部錯誤消息和標頭,以便由Nginx處理,則這非常有用。 如果后端響應一個請求,Nginx將自動提供一個自定義錯誤頁面。 但是,如果Nginx無法理解這是HTTP響應怎么辦?

如果客戶端向Nginx發(fā)送無效的HTTP請求,則該請求將按原樣轉(zhuǎn)發(fā)到后端,后端將使用其原始內(nèi)容進行應答。 然后,Nginx將無法理解無效的HTTP響應,而會將其轉(zhuǎn)發(fā)給客戶端。 想象一下這樣的uWSGI應用程序:

def application(environ, start_response):
 start_response('500 Error', [('Content-Type',
'text/html'),('Secret-Header','secret-info')])
 return [b"Secret info, should not be visible!"]

Nginx配置如下:

http {
 error_page 500 /html/error.html;
 proxy_intercept_errors on;
 proxy_hide_header Secret-Header;
}

如果后端的響應狀態(tài)大于300, proxy_intercept_errors將提供自定義響應。在上面的uWSGI應用程序中,我們將發(fā)送500錯誤,Nginx將攔截該錯誤。

proxy_hide_header:可以隱藏任何指定的來自客戶端的HTTP標頭。

如果我們發(fā)送普通的GET請求,則Nginx將返回:

HTTP/1.1 500 Internal Server Error
Server: nginx/1.10.3
Content-Type: text/html
Content-Length: 34
Connection: close

但是,如果我們發(fā)送無效的HTTP請求,例如:

GET /? XTTP/1.1
Host: 127.0.0.1
Connection: close

我們將收到以下響應:

XTTP/1.1 500 Error
Content-Type: text/html
Secret-Header: secret-info

Secret info, should not be visible!

merge_slashes set to off

默認情況下,merge_slashes指令設(shè)置為on,這是一種將兩個或多個正斜杠壓縮為一個的機制,因此///將變?yōu)?code>/。 如果Nginx用作反向代理,并且被代理的應用程序容易受到本地文件包含的影響,則在請求中使用額外的斜杠可能會留出利用空間。 Danny Robinson and Rotem Bar對此進行了詳細描述。

以上就是Nginx常見的錯誤配置舉例的詳細內(nèi)容,更多關(guān)于Nginx 錯誤配置的資料請關(guān)注腳本之家其它相關(guān)文章!

標簽:三明 開封 鄭州 拉薩 玉林 汕頭 晉城 石嘴山

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Nginx常見的錯誤配置舉例》,本文關(guān)鍵詞  Nginx,常見,的,錯誤,配置,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Nginx常見的錯誤配置舉例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Nginx常見的錯誤配置舉例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    在线区一区二视频| 美女视频黄久久| 一本大道综合伊人精品热热| 精品噜噜噜噜久久久久久久久试看 | 在线成人高清不卡| 精品夜夜嗨av一区二区三区| 欧美国产欧美亚州国产日韩mv天天看完整| 99riav久久精品riav| 蜜臀精品久久久久久蜜臀| 一区二区成人在线| 中国色在线观看另类| 在线播放一区二区三区| 欧美少妇bbb| 日本黄色一区二区| 91女人视频在线观看| 大尺度一区二区| 国产a区久久久| 成人免费毛片aaaaa**| 国产精品亚洲第一| 豆国产96在线|亚洲| 国产成a人亚洲| 国产不卡免费视频| av激情亚洲男人天堂| 91丨porny丨首页| 色婷婷激情一区二区三区| 91丨porny丨国产入口| 欧美私模裸体表演在线观看| 欧美精品日韩综合在线| 日韩欧美资源站| 欧美不卡一区二区| 国产亚洲va综合人人澡精品| 国产精品系列在线| 亚洲色图欧洲色图婷婷| 亚洲一区二区在线观看视频 | 久久综合久久综合久久| 久久久久久久性| 中文字幕第一区二区| 国产精品久久久久久久岛一牛影视| 国产精品激情偷乱一区二区∴| 亚洲黄色在线视频| 日韩高清电影一区| 国产河南妇女毛片精品久久久| 一本到不卡免费一区二区| 日韩成人午夜电影| 国产在线麻豆精品观看| av在线不卡免费看| 欧美精品一卡二卡| 久久久午夜电影| 亚洲美女区一区| 极品瑜伽女神91| 91亚洲资源网| 欧美成人女星排名| 国产精品久久久久久久久免费桃花| 亚洲一区二区三区在线看| 久久99久久99小草精品免视看| 成人性生交大片免费看中文| 欧美日韩亚洲综合一区二区三区| 久久久.com| 日韩影院免费视频| 成人黄色小视频| 777奇米四色成人影色区| 国产精品美日韩| 日韩福利电影在线观看| 97久久精品人人做人人爽50路| 制服丝袜av成人在线看| 欧美最猛黑人xxxxx猛交| 在线不卡一区二区| 亚洲一区二区三区美女| 日韩一区国产二区欧美三区| 中文字幕成人av| 午夜电影一区二区三区| 国产乱码精品一区二区三区av | 午夜伦欧美伦电影理论片| 久久99久久99| 欧美日韩国产综合一区二区 | 在线观看亚洲成人| 久久网站最新地址| 天堂精品中文字幕在线| 国产成人午夜99999| 精品三级在线看| 亚洲一级片在线观看| 成人毛片在线观看| 中文字幕一区在线观看视频| 91精品国产欧美一区二区18 | 亚洲123区在线观看| 国产成人亚洲综合a∨婷婷| 日韩你懂的在线观看| 亚洲精品免费视频| 成人av在线资源网站| 中文字幕精品综合| 国产999精品久久久久久| 久久久久久久久久久久久久久99| 免费高清视频精品| 日韩亚洲欧美成人一区| 日韩精品一级二级 | 日本一区免费视频| 成人性生交大片免费看在线播放 | 亚洲国产精品ⅴa在线观看| 中文字幕欧美日本乱码一线二线| 日韩欧美电影一二三| 在线电影国产精品| 欧美一区二区精品| 亚洲激情网站免费观看| 首页国产欧美久久| 国产精品一区不卡| 日本一区二区动态图| 国产麻豆午夜三级精品| 久久亚洲一区二区三区明星换脸| 国产乱妇无码大片在线观看| 国产日本欧洲亚洲| 91视频com| 日韩国产高清影视| 日韩精品资源二区在线| 国产成人精品一区二区三区四区| 国产精品伦理在线| 粉嫩高潮美女一区二区三区 | 粉嫩欧美一区二区三区高清影视| 国产精品久久久久国产精品日日| eeuss鲁片一区二区三区在线观看| 亚洲欧洲成人自拍| 欧美日韩一区二区三区高清| 久久99精品久久久久婷婷| 欧美国产一区二区| 日本韩国一区二区三区| 美女爽到高潮91| 综合久久久久综合| 日韩精品最新网址| av在线不卡免费看| 丝袜诱惑亚洲看片| 国产人妖乱国产精品人妖| 在线一区二区三区四区五区| 日韩黄色一级片| 337p粉嫩大胆噜噜噜噜噜91av| 91老师国产黑色丝袜在线| 日韩国产一区二| 国产精品进线69影院| 欧美精品久久一区二区三区| 成人一区二区三区视频| 视频一区欧美日韩| 亚洲国产激情av| 欧美一级在线视频| 色综合久久综合网| 国产精品亚洲视频| 免费观看成人av| 亚洲在线观看免费视频| 国产欧美日韩不卡免费| 欧美高清你懂得| 92精品国产成人观看免费| 麻豆国产一区二区| 一区二区三区不卡在线观看| 日本一区二区在线不卡| 精品国产伦一区二区三区免费| 欧美色图12p| 国产一区二区三区四区五区美女| 亚洲愉拍自拍另类高清精品| 国产精品天干天干在线综合| 精品剧情v国产在线观看在线| 欧美午夜精品电影| 色综合久久久久久久久久久| 成人精品在线视频观看| 精品在线视频一区| 午夜久久久影院| 亚洲电影欧美电影有声小说| 中文字幕电影一区| 国产精品欧美久久久久无广告| 欧美电影在线免费观看| 欧美日韩专区在线| 亚洲日本在线看| 99在线热播精品免费| 欧美日韩五月天| 国产一区二区三区最好精华液| 亚洲激情中文1区| 国产精品天干天干在观线| 久久久亚洲综合| 26uuu亚洲综合色| 精品对白一区国产伦| 欧美精品一区二区三区久久久| 91精品国产一区二区三区 | 亚洲精品免费在线播放| 最新热久久免费视频| 国产精品久久久久久久久图文区| 国产欧美一区二区精品仙草咪 | 亚洲国产美女搞黄色| 亚洲一区日韩精品中文字幕| 亚洲国产中文字幕在线视频综合| 亚洲女与黑人做爰| 精品国产a毛片| 国产91色综合久久免费分享| 亚洲美女淫视频| 综合分类小说区另类春色亚洲小说欧美 | 久久久久久久网| 国产午夜亚洲精品羞羞网站| 久久久www免费人成精品| 国产精品伦一区| 一区二区三区在线高清| 亚洲国产aⅴ成人精品无吗| 日韩专区欧美专区| 国内偷窥港台综合视频在线播放| 风流少妇一区二区| 一本色道久久综合狠狠躁的推荐|