Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 14709|Odpowiedź: 2

[Web] NGinx jest chroniony przeciwdziejnie przeciwdziejnie zgodnie z http_user_agent

[Skopiuj link]
Opublikowano 20.12.2016 10:37:01 | | |

Frontend squid reverse proxy do nginx
NGinx jest chroniony przeciwdziejnie przeciwdziejnie zgodnie z http_user_agent
Najpierw przejrzyj logi dostępu, aby zidentyfikować cechy podejrzanych wizyt http_user_agent, a następnie je przefiltruj
"Mozilla/4.0 (kompatybilny; MSIE 5.01; Windows NT 5.0; MyIE 3.01)Kontrola pamięci podręcznej: bez przechowywania, konieczna rewalidacja"
if ($http_user_agent ~ must-revalidate) {
return 503;
}
#这样就返回503错误
lokalizacja = / {
include proxy.conf;
if ( $http_user_agent ~* "MSIE 5.01" ) {
proxy_pass http://www.qq.com;
#access_log /usr/local/nginx/logs/k.log główny;
      }
proxy_pass http://windows.abc.com;
}
#判断一下user-agent, jeśli to MSIE 5.01, po prostu przerzuć go w inne miejsce, na przykład wskaż na www.qq.com, żeby sprawdzić, czy może się wytrzymać, haha
proxy_hide_header Kontrola pamięci podręcznej;
Na koniec wróć do Cache-Control i odwiedź stronę
Teraz link jest buforowany do front-endowego squida, a serwer aplikacji nie zawiesza się
#########################################################
Szczegółowy opis parametrów modułu lokalizacji w nginx
Lokalizacja Nginx może mieć następujące dopasowania:
1. = Ściśle dopasuj to zapytanie. Jeśli go znajdziesz, przestań szukać.
2. ^~ Dopasuj przedrostek ścieżki, jeśli go znajdziesz, przestań szukać.
3. ~ to dopasowanie na wielką literę i regularność   
4. ~* to dopasowanie nierozróżniające wielkości liter
5. !~ i !~* to niedopasowania zależne od wielkości liter i niewielkości

Dopasowywanie plików i katalogów
* -f i !-f są używane do określenia, czy plik istnieje
* -d i !-d są używane do określenia, czy katalog istnieje
* -e i !-e są używane do określenia, czy istnieje plik lub katalog
* -x i !-x są używane do określenia, czy plik jest wykonywalny, czy nie

Niektóre z dostępnych zmiennych globalnych
$args
$content_długość
$content_typ
$document_root
$document_uri
$host
$http_user_agent
$http_cookie
$limit_rate
$request_plik_ciała
$request_method
$remote_addr
$remote_port
$remote_user
$request_nazwa pliku
$request_uri
$query_string
$scheme
$server_protokół
$server_addr
$server_nazwa
$server_port
$uri

Flaga po przepisaniu może wyglądać:
ostatni
przerwa
Przekierowanie
stały

proxy_pass http://localhost:80;
proxy_set_header Prowadzący $host;
Możesz automatycznie zmienić informacje o nazwie domeny po przekierowaniu




Poprzedni:Obejście C# na brak dostępu do uwolnionych obiektów
Następny:PowerShell zamienia wiele przestrzeni w jedną przestrzeń, aby usunąć nadmiar przestrzeni
 Ziemianin| Opublikowano 20.12.2016 10:37:25 |

Serwer jest dotknięty przez cc (atakujący używa serwera proxy do generowania legalnych żądań do hosta ofiary, implementacji DDOS i ukrycia jego nazwy: cc (ChallengeCollapsar). ) Nginx po prostu sobie z nim poradz.

Ponieważ useragent atakującego CC jest zazwyczaj stały, używamy nginx do oceny useragatet w obsłudze ataków CC.
W konfiguracji serwera nginx

(1) useragent jest równy pewnej funkcji (nierozróżniające wielkość liter)
if ($http_user_agent ~* OliveHC3){
   return 403;
}
(2) useragent zawiera określoną funkcję (nie rozróżniającą wielkość liter)
if ($http_user_agent ~* (*OliveHC3*)){
   return 403;
}
(3) useragent to funkcja pusta
if ($http_user_agent ~ ^$){
        return 403;
}


W ten sposób atak powrócił do 403 roku.
 Ziemianin| Opublikowano 20.12.2016 11:03:41 |

1. $remote_addr i $http_x_forwarded_for są używane do zapisywania adresu IP klienta;
2.$remote_user: Używany do zapisywania nazwy użytkownika klienta;
3.$time_lokalnie: Używany do zapisywania czasu dostępu i strefy czasowej;
4.$request: URL i protokół HTTP używany do rejestrowania żądań;
5.$status : Służy do rejestrowania statusu zgłoszenia; Sukces to 200,
6.$body_bajtów_s ent: Rejestruje rozmiar głównej treści pliku wysyłanego do klienta;
7.$http_referer: używany do rejestrowania odwiedzin z linku na tej stronie;
8.$http_user_agent: Rejestruj istotne informacje przeglądarki klienta;
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com