19.9.26

Linux VXLAN in lab 使用 Scapy 模擬VTEP 注入攻擊的攻防腳本 CVE2026-92542

 在Linux 或 WSL 環境中,透過建立兩個模擬主機node1與node2來建立底層的路由網路,在上面建立 VXLAN 介面 掛載至Bridge,實現跨主機的 Layer 2 Overlay ,就是兩個L2的Bridge打隧道串起來,VXLAN 是一種MAC-in-UDP的隧道機制,開一條UDP隧道,跟L2一樣IP對MAC

很疑惑,九月寫十月就被開採,是有人看了這篇那個模擬注入的腳本去開採了CVE2026-92542




更新到Docker Engine 29.8.2 透過引入 Linux iptables 的 socket 模組(xt_socket)來修補此漏洞,藉此精準區分「Kernel 原生封裝的流量」與「User-space 應用程式偽造的流量」。

在 Linux 網路堆疊中,由使用者空間(如 Python 腳本或本地 Socket 行程)發出的封包,在核心中會帶有明確的 Socket 結構關聯;而由 Kernel 內部的虛擬網路介面(如 Docker Swarm 建立的 vxlan 介面)進行 L2 二次封裝後發出的底層封包,則不屬於任何特定的 User-space Socket。

以下是修補前後在 iptables mangle 表 OUTPUT 鏈中的具體規則差異:

修補前(受影響版本)的寬鬆規則

在存在漏洞的舊版 Docker Engine 中,防火牆規則僅單純匹配協定與連接埠:

# 只要是送往 UDP 4789 埠的封包,一律打上 IPsec 加密標記 (fwmark)
iptables -t mangle -A OUTPUT -p udp --dport 4789 -j MARK --set-xmark 0x1234

這種「無差別標記」導致主機上的非特權行程只要向外送出特製的 UDP 封包,就會被該規則捕捉,隨後被本機的 XFRM 子系統無條件套用 ESP 加密。

修補後(29.8.2)的嚴格規則

修補後的版本利用 -m socket(或 ! -m socket 反向匹配)來修補來源身分的驗證缺口。Docker 會加入排除條件,確保只有核心本身發出的 VXLAN 流量才會被加密:

# 做法 1:新增前置規則,若封包有關聯的本地 User-space Socket,則直接跳出(RETURN),不予標記
iptables -t mangle -A OUTPUT -p udp --dport 4789 -m socket -j RETURN


# 做法 2:直接在加密標記規則中,排除帶有 Socket Context 的來源
iptables -t mangle -A OUTPUT -p udp --dport 4789 ! -m socket -j MARK --set-xmark 0x1234

防禦生效的底層機制

加入 ! -m socket 條件後,當攻擊者執行稍早討論的 Socket 注入腳本時,核心防火牆會比對出該封包源自一個活躍的本地 Socket 行程。因為不符合標記條件,該封包無法獲得觸發加密所需的 fwmark。

失去這個標記後,偽造的 VXLAN 封包就會以「明文 UDP」的型態離開主機網卡。當它抵達目標節點時,接收端的 IPsec 策略資料庫(Security Policy Database, SPD)預期該網段的 VXLAN 流量必須受到 ESP 加密保護;面對這個未加密的明文 UDP 4789 封包,接收端的核心會直接將其丟棄(Drop),從而徹底粉碎了這條注入攻擊鏈。

22.8.26

Proxmox virtio-win-pkg

 最近在測試Proxmox

測試windows的虛擬機,要裝virtio.ISO周邊的驅動才會掛起來,但奇怪都找不到載點

後來找到fedora有提供,各個版本的

https://github.com/virtio-win/virtio-win-pkg-scripts/blob/master/README.md

https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/

Ubuntu系列有整合進去,所以不用下載

Red Hat系列的需要下載,載點一樣


16.8.26

Linux Bridge VLAN SVI nftables in labs

測試環境 wsl + ubuntu22.04 實驗軟體式網路橋接,VLAN,SVI功能

[ Host A (ns-a) ]           [ Linux Bridge (br0) ]           [ Host B (ns-b) ]

veth-a (10.0.0.1) <======> veth-a-br <======> veth-b (10.0.0.2)

7.6.26

Security Onion setup help

 如果安裝時設定值選錯中斷,不要重開機再跑一次

直接進入Security Onion的資料夾內,找兩個腳本

so-desktop-install #桌面

so-setup-network #網路

看你哪個設定錯誤,讓他重跑一次

主機IP設定是-例如192.168.1.1/24,後面要加子網路

開放連線的IP也要設定,不然連不進去

最後要設定信箱跟密碼,不要覺得自建實驗室不會對外,就亂輸入

那是WEB介面後台的帳密

31.5.26

sliver-C2-docker

 /opt/sliver-lab/ 

├── sliver/ # git clone https://github.com/BishopFox/sliver.git #自行下載

└── docker-compose.yml

Dockerfile #要替換掉

24.5.26

sysmon的log拋到alloy loki



Sysmon 是「行為監控」只負責記錄
用 Sysmon 抓取即時的攻擊(如行程注入)
先安裝sysmon,win11有內建,直接從舊版的控制台\開啟或關閉windows功能裡面啟動
如果是win10或以下,直接下載使用sysmon64,是執行檔不用安裝
下載跟說明參考微軟的文件https://learn.microsoft.com/zh-tw/sysinternals/downloads/sysmon
使用預設設定進行安裝(處理用 SHA1 雜湊的影像,且不監控網路)
sysmon -accepteula -i  #先執行這個因為有時候並沒有裝成功
sysmon -c c:\windows\config.xml     #套用設定檔

17.5.26

Havoc C2-docker



Havoc_Project/Havoc

Havoc_Project/Dockerfile

Havoc_Project/docker-compose.yml

Havoc_Project/profiles/havoc.yaotl

git clone https://github.com/HavocFramework/Havoc.git cd Havoc #自行下載

Client端請自行架設

--------------------------------------------------------------------------------------------------------

3.5.26

snort3搭配Promtail拋json到loki

我改用snort3搭配Promtail拋json到loki就成功了



Promtail跟snort3都安裝在kali-linux上

snort3的安裝跟設定方式略過,參考snort3 alloy loki 那一篇

安裝promtail跟設定

2.5.26

CVE-2026-31431的修補方式

 POC驗證腳本,這是本地權限提升 (LPE)漏洞,修改記憶體內容,達成越權

這個用snort3這種網路型的IDS沒用,要用HIDS或EDR才偵測的到

https://github.com/theori-io/copy-fail-CVE-2026-31431

1.5.26

snort3 alloy loki grafana 傳遞alert_json

測試完成重寫,alloy好像有比較快,還是錯覺



看來看去Promtail跟alloy真的很像,所以就測試成功了

用snort3搭配alloy拋json到loki

alloy跟snort3都安裝在kali-linux上

14.4.26

greenbone community edition docker 掛載容器遇到有元件無法下載的問題

 https://greenbone.github.io/docs/latest/22.4/container/index.html

原廠的安裝說明文件,說只能掛在這些系統上

Debian stable (bookworm)

Ubuntu 24.04 LTS

Fedora 35 and 36

CentOS 9 Stream

所以我就在windows上,蓋WSL2,在蓋上Ubuntu24.4測試

1.3.26

SecureClaw

專案網址在這裡,有玩龍蝦的人應該知道是什麼

 https://github.com/adversa-ai/secureclaw

SecureClaw is a 360-degree security plugin and skills that audits your OpenClaw installation for misconfigurations and known vulnerabilities, applies automated hardening fixes, and gives your agent behavioral security rules that protect against prompt injection, credential theft, supply chain attacks, and privacy leaks.

27.2.26

Fedora-IoT-raw-43-20251024.0.aarch64.raw

 最近研究一個Fedora-IoT的開源專案

寫進樹莓派後開機沒有預設帳密

所以要在燒入映像檔時就要寫入

先去下載Fedora-IoT-raw-43-20251024.0.aarch64.raw這個版本

建立一個SSH-key

把公鑰加在映像檔寫入

arm-image-installer

--image=Fedora-IoT-raw-43-20251024.0.aarch64.raw.xz       //版本

--target=rpi5             //看你是哪一代的

--media=/dev/sdc       //隨身碟路徑

--resizefs                    

--addkey=/XXX/.ssh/id_XXXX.pub       //公鑰的路徑

--norootpass -y

開機後從遠端SSH使用私鑰登入

最近在資源回收場撿到一台SRX-300防火牆

 最近在資源回收場撿到一台SRX-300防火牆,開機發現韌體損毀,死馬當活馬醫,去抓韌體寫進去開看看,問AI看看,方法有很多種,但不是都可以成功,最簡單就是找一個USB隨身碟,寫入一個autoinstall.conf檔跟韌體檔junos-srxsme-X.X.X.tgz,conf檔內不用寫腳本,防火牆開機後就會偵測到隨身碟直接安裝,然後就活過來了

最近發現Podman比Docker好用

FortiAnalyzer跟Forti防火牆搭配,很吃版本

 最近在資源回收場撿到一台FortiAnalyzer 100C 跟Forti防火牆搭配,很吃版本搭配,AI跟我說連線協定降低可以用SYSLOG模式通吃,不行就是不行,6.X.X就是配6.X.X