不正アクセス Nginx reverse proxy の場合
リバースプロキシのログ
Web サーバーを Nginx で作ってから、サーバーの作業をしている時に、よく、/var/log/nginx/access.log をリアルタイムに流すことが多い。
tail -f /var/log/nginx/access.log
......
4.185.137.64 - - [24/Aug/2025:01:23:26 +0900] "GET /ty.php HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:26 +0900] "GET /ty.php HTTP/1.1" 502 157 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:26 +0900] "GET /users.php HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:27 +0900] "GET /users.php HTTP/1.1" 502 157 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:27 +0900] "GET /w.php HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:27 +0900] "GET /w.php HTTP/1.1" 502 157 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:27 +0900] "GET /wp-aa.php HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:28 +0900] "GET /wp-aa.php HTTP/1.1" 502 157 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:28 +0900] "GET /wp-admin.php HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:28 +0900] "GET /wp-admin.php HTTP/1.1" 502 157 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:28 +0900] "GET /wp-admin/ HTTP/1.1" 301 169 "-" "-"
4.185.137.64 - - [24/Aug/2025:01:23:29 +0900] "GET /wp-admin/ HTTP/1.1" 502 157 "-" "-"
............
– “GET /ty.php HTTP/1.1” 301 169 “-” “-“
– “GET /ty.php HTTP/1.1” 502 157 “-” “-“
– “GET /users.php HTTP/1.1” 301 169 “-” “-“
– /users.php HTTP/1.1″ 502 157 “-” “-“
– /w.php HTTP/1.1″ 301 169 “-” “-“
– /w.php HTTP/1.1″ 502 157 “-” “-“
– /wp-aa.php HTTP/1.1″ 301 169 “-” “-“
– “GET /wp-aa.php HTTP/1.1” 502 157 “-” “-“
– “GET /wp-admin.php HTTP/1.1” 301 169 “-” “-“
– “GET /wp-admin.php HTTP/1.1” 502 157 “-” “-“
– “GET /wp-admin/ HTTP/1.1” 301 169 “-” “-“
– “GET /wp-admin/ HTTP/1.1” 502 157 “-” “-
…………………..
あれー!
あまり見ないアクセスログだな。
これまでは、リバースプロキシを使っていなかったからみなれていないだけか?
このログの意味
“GET /wp-admin.php HTTP/1.1” 301 169 “-” “-“
“GET /wp-admin.php HTTP/1.1” [エラー番号] [バイト] “[リファラー]” “-“
"GET /wp-aa.php HTTP/1.1" 502 157 "-" "-"
“GET /wp-aa.php HTTP/1.1” 502 157 “-” “-“
このログは、WordPressサイトにアクセスしようとした際にNGINXが502 Bad Gatewayエラーを返したことを示しています。このアクセス自体の意図は、wp-admin/admin.php
にアクセスしようとしたことですが、502エラーが発生したことから、そのアクセスが正常に処理されなかったことが分かります。
ログの解読
GET /wp-admin/admin.php HTTP/1.1
: ユーザーがブラウザを通じてWordPressの管理画面であるadmin.php
にアクセスしようとしたことを示しています。502
: HTTPステータスコードの502 Bad Gatewayです。これは、NGINXがバックエンドサーバー(この場合はPHP-FPM)から無効な応答を受け取った場合に発生するエラーです。157
: NGINXがクライアントに返したレスポンスのサイズ(バイト)です。502エラーページの内容が157バイトだったことを意味します。"-" "-"
: 通常、この部分にはリファラー(どのサイトから来たか)とユーザーエージェント(どのブラウザやアプリケーションがアクセスしたか)の情報が入りますが、今回は空欄です。これは、特定のツールやスクリプトからのアクセスである可能性を示唆しています。
不正アクセス確定
アクセス元は、多分プロキシを使っているので、相手の特定は難しい。
エラーログ(/var/log/nginx/error.log)
では、
no resolver defined to resolve backend_default,
とエラーで返しているので、実質的な被害はなさそう。
サーバーを乗っ取ろうとしているのだろうか?