80端口被占用時的終極解決方法
阿新 • • 發佈:2018-06-04
In ets data- -c VC cache 內核驅動 fab sta 【摘要】 之前在某次安全測試時,遇到一個80端口被占用的坑,將解決方法共享出來。 使用netstat -ano 命令查看是哪個進程正在占用80端口
之前在某次安全測試時,遇到一個80端口被占用的坑,將解決方法共享出來
使netstat -ano 命令查看是哪個進程正在占用80端口
PID為4的進程正在占用80端口。此進程為system進程,無法直接結束進程
使用netsh命令查看http端口使用狀態
netsh http show servicetstate
這裏可以看到有兩個進程正在使用http功能。分別為 3164和3196
其中3196是sql server的report服務
可以將其服務關閉。
進程3164對應的是一個svchost服務。
我們也可以將這個服務關閉
再使用 netstat -ano 命令查看確實已經釋放了80端口
但是奇怪的是,50秒之後端口又自動被占用了。
從procmonitor中可以看到,每次關閉服務 BranchCache 每50s後就會繼續被svchost給調用起來。
通過services表中,我們發現這裏的BranchCache 依賴了HTTP.SYS這個內核驅動。
那我們手工將其禁用即可
以管理員權限打開cmd命令行
這種方法對80端口占用解決應該是100%
80端口被占用時的終極解決方法